diff options
Diffstat (limited to 'libbridge/libbridge_devif.c')
-rw-r--r-- | libbridge/libbridge_devif.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/libbridge/libbridge_devif.c b/libbridge/libbridge_devif.c index 085eaea..d4f5265 100644 --- a/libbridge/libbridge_devif.c +++ b/libbridge/libbridge_devif.c @@ -23,6 +23,7 @@ #include <sys/fcntl.h> #include <sys/ioctl.h> #include <sys/time.h> + #include "libbridge.h" #include "libbridge_private.h" @@ -39,7 +40,14 @@ int br_device_ioctl(const struct bridge *br, unsigned long arg0, strncpy(ifr.ifr_name, br->ifname, IFNAMSIZ); ((unsigned long *)(&ifr.ifr_data))[0] = (unsigned long)args; - +#ifdef SIOCBRDEV + { int err = ioctl(br_socket_fd, SIOCBRDEV, &ifr); + if (err >= 0) + return err; + } +#else +#warn SIOCBRDEV not defined +#endif return ioctl(br_socket_fd, SIOCDEVPRIVATE, &ifr); } |