diff options
author | Daniel Borkmann <dborkman@redhat.com> | 2013-06-04 10:32:48 +0200 |
---|---|---|
committer | Daniel Borkmann <dborkman@redhat.com> | 2013-06-04 10:32:48 +0200 |
commit | ac5fd9168efaa4e149340340805b1be7425d8834 (patch) | |
tree | 6f87f03c79d0168c44f472c03f9f800c9883d266 /promisc.c | |
parent | 92206a78c27de6442f1428ccf8cd622fa3364a5a (diff) |
xutils: break out promisc mode functions
Put them separately for the sake of maintanence.
Signed-off-by: Daniel Borkmann <dborkman@redhat.com>
Diffstat (limited to 'promisc.c')
-rw-r--r-- | promisc.c | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/promisc.c b/promisc.c new file mode 100644 index 0000000..721da18 --- /dev/null +++ b/promisc.c @@ -0,0 +1,25 @@ +#include <string.h> + +#include "promisc.h" +#include "xutils.h" + +short enter_promiscuous_mode(char *ifname) +{ + short ifflags; + + if (!strncmp("any", ifname, strlen("any"))) + return 0; + + ifflags = device_get_flags(ifname); + device_set_flags(ifname, ifflags | IFF_PROMISC); + + return ifflags; +} + +void leave_promiscuous_mode(char *ifname, short oldflags) +{ + if (!strncmp("any", ifname, strlen("any"))) + return; + + device_set_flags(ifname, oldflags); +} |