#include <fcntl.h>
#include <fnmatch.h>
#include <arpa/inet.h>
-#include <ifaddrs.h>
#include <net/if_arp.h>
#include <linux/if_vlan.h>
#include <linux/if_bonding.h>
#include <linux/wireless.h>
#include <linux/sockios.h>
#include <linux/filter.h>
-#include <linux/if_vlan.h>
#include <linux/if_packet.h>
#define SYSFS_PATH_MAX 256
static int
iface_is_bridge(struct lldpd *cfg, const char *name)
{
+#ifdef SYSFS_BRIDGE_FDB
char path[SYSFS_PATH_MAX];
int f;
}
close(f);
return 1;
+#else
+ return old_iface_is_bridge(cfg, name);
+#endif
}
#ifdef ENABLE_DOT1
static int
iface_is_bridged_to(struct lldpd *cfg, const char *slave, const char *master)
{
+#ifdef SYSFS_BRIDGE_PORT_SUBDIR
char path[SYSFS_PATH_MAX];
int f;
}
close(f);
return 1;
+#else
+ return old_iface_is_bridged_to(cfg, slave, master);
+#endif
}
#endif
memset(&ifr, 0, sizeof(ifr));
memset(&ifb, 0, sizeof(ifb));
strlcpy(ifr.ifr_name, name, sizeof(ifr.ifr_name));
- ifr.ifr_data = &ifb;
+ ifr.ifr_data = (char *)&ifb;
if (ioctl(cfg->g_sock, SIOCBONDINFOQUERY, &ifr) >= 0)
return 1;
return 0;
memset(&ifr, 0, sizeof(ifr));
memset(&ifb, 0, sizeof(ifb));
strlcpy(ifr.ifr_name, master, sizeof(ifr.ifr_name));
- ifr.ifr_data = &ifb;
+ ifr.ifr_data = (char *)&ifb;
if (ioctl(cfg->g_sock, SIOCBONDINFOQUERY, &ifr) >= 0) {
while (ifb.num_slaves--) {
memset(&ifr, 0, sizeof(ifr));
memset(&ifs, 0, sizeof(ifs));
strlcpy(ifr.ifr_name, master, sizeof(ifr.ifr_name));
- ifr.ifr_data = &ifs;
+ ifr.ifr_data = (char *)&ifs;
ifs.slave_id = ifb.num_slaves;
if ((ioctl(cfg->g_sock, SIOCBONDSLAVEINFOQUERY, &ifr) >= 0) &&
(strncmp(ifs.slave_name, slave, sizeof(ifs.slave_name)) == 0)) {