|
|
@ -120,8 +120,8 @@ set_recv_type(pcap_t *p, bool rx) |
|
|
|
#ifdef PACKET_RECV_TYPE |
|
|
|
#ifdef PACKET_RECV_TYPE |
|
|
|
struct sockaddr_ll sll; |
|
|
|
struct sockaddr_ll sll; |
|
|
|
struct ifreq ifr; |
|
|
|
struct ifreq ifr; |
|
|
|
int ifindex, mask; |
|
|
|
int mask; |
|
|
|
int fd, ret; |
|
|
|
int fd; |
|
|
|
|
|
|
|
|
|
|
|
fd = pcap_get_selectable_fd(p); |
|
|
|
fd = pcap_get_selectable_fd(p); |
|
|
|
if (fd < 0) |
|
|
|
if (fd < 0) |
|
|
@ -132,7 +132,7 @@ set_recv_type(pcap_t *p, bool rx) |
|
|
|
else |
|
|
|
else |
|
|
|
mask = 0; |
|
|
|
mask = 0; |
|
|
|
|
|
|
|
|
|
|
|
ret = setsockopt(fd, SOL_PACKET, PACKET_RECV_TYPE, &mask, sizeof(mask)); |
|
|
|
setsockopt(fd, SOL_PACKET, PACKET_RECV_TYPE, &mask, sizeof(mask)); |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
@ -841,7 +841,7 @@ static int |
|
|
|
check_bridge_port(const char *br, const char *port, void *arg) |
|
|
|
check_bridge_port(const char *br, const char *port, void *arg) |
|
|
|
{ |
|
|
|
{ |
|
|
|
struct ead_instance *in; |
|
|
|
struct ead_instance *in; |
|
|
|
struct list_head *p, *tmp; |
|
|
|
struct list_head *p; |
|
|
|
|
|
|
|
|
|
|
|
list_for_each(p, &instances) { |
|
|
|
list_for_each(p, &instances) { |
|
|
|
in = list_entry(p, struct ead_instance, list); |
|
|
|
in = list_entry(p, struct ead_instance, list); |
|
|
@ -873,7 +873,7 @@ check_all_interfaces(void) |
|
|
|
{ |
|
|
|
{ |
|
|
|
#ifdef linux |
|
|
|
#ifdef linux |
|
|
|
struct ead_instance *in; |
|
|
|
struct ead_instance *in; |
|
|
|
struct list_head *p, *tmp; |
|
|
|
struct list_head *p; |
|
|
|
|
|
|
|
|
|
|
|
br_foreach_bridge(check_bridge, NULL); |
|
|
|
br_foreach_bridge(check_bridge, NULL); |
|
|
|
|
|
|
|
|
|
|
|