aboutsummaryrefslogtreecommitdiffstats
path: root/libbridge/libbridge_devif.c
diff options
context:
space:
mode:
authorshemminger <shemminger>2004-05-11 19:46:58 +0000
committershemminger <shemminger>2004-05-11 19:46:58 +0000
commit914abde5566e3c03bf144a93ff9c2f051da55c3e (patch)
treeea6a4cdf8c33c238405a26e6c42d711a74c87d76 /libbridge/libbridge_devif.c
parent9e65dd9b37f465fc8a62e0e2baa9084d79657d0b (diff)
downloadandroid_external_brctl-914abde5566e3c03bf144a93ff9c2f051da55c3e.tar.gz
android_external_brctl-914abde5566e3c03bf144a93ff9c2f051da55c3e.tar.bz2
android_external_brctl-914abde5566e3c03bf144a93ff9c2f051da55c3e.zip
Update for 1.0. Use new ioct interface.
Diffstat (limited to 'libbridge/libbridge_devif.c')
-rw-r--r--libbridge/libbridge_devif.c10
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);
}