Module: xenomai-3
Branch: master
Commit: d4516377f6d74099ab0be74e3f8d76991ccc6b12
URL:    
http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=d4516377f6d74099ab0be74e3f8d76991ccc6b12

Author: Anders Blomdell <anders.blomd...@control.lth.se>
Date:   Wed Feb 11 21:11:22 2015 +0100

drivers/rtnet: add support for SIOCGIFNAME ioctl

---

 kernel/drivers/net/stack/socket.c |    9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/kernel/drivers/net/stack/socket.c 
b/kernel/drivers/net/stack/socket.c
index 085e5ec..a38f560 100644
--- a/kernel/drivers/net/stack/socket.c
+++ b/kernel/drivers/net/stack/socket.c
@@ -252,7 +252,7 @@ int rt_socket_if_ioctl(struct rtdm_fd *fd, int request, 
void *arg)
                    break;
                }
 
-               strncpy(cur_ifr->ifr_name, rtdev->name,
+               strlcpy(cur_ifr->ifr_name, rtdev->name,
                        IFNAMSIZ);
                sin = (struct sockaddr_in *)&cur_ifr->ifr_addr;
                sin->sin_family      = AF_INET;
@@ -266,6 +266,13 @@ int rt_socket_if_ioctl(struct rtdm_fd *fd, int request, 
void *arg)
        ifc->ifc_len = size;
        return 0;
     }
+    if (request == SIOCGIFNAME) {
+        rtdev = rtdev_get_by_index(ifr->ifr_ifindex);
+        if (rtdev == NULL)
+            return -ENODEV;
+        strlcpy(ifr->ifr_name, rtdev->name, IFNAMSIZ);
+        return 0;
+    }
 
     rtdev = rtdev_get_by_name(ifr->ifr_name);
     if (rtdev == NULL)


_______________________________________________
Xenomai-git mailing list
Xenomai-git@xenomai.org
http://www.xenomai.org/mailman/listinfo/xenomai-git

Reply via email to