]> git.ipfire.org Git - thirdparty/lldpd.git/blobdiff - src/lldpd-structs.h
build: fix compilation with `--enable-fdp --disable-cdp`
[thirdparty/lldpd.git] / src / lldpd-structs.h
index b44a43f34035389bc25e33ea7e50d7d1fb5c9bb3..f6b03d7de821b4fc458d84ebc2a9203d2f8f760d 100644 (file)
@@ -129,6 +129,13 @@ struct lldpd_dot3_power {
 MARSHAL(lldpd_dot3_power);
 #endif
 
+#if defined (ENABLE_CDP) || defined (ENABLE_FDP)
+struct cdpv2_power {
+       u_int16_t request_id;
+       u_int16_t management_id;
+};
+#endif
+
 enum {
        LLDPD_AF_UNSPEC = 0,
        LLDPD_AF_IPV4,
@@ -136,17 +143,6 @@ enum {
        LLDPD_AF_LAST
 };
 
-inline static int
-lldpd_af(int af)
-{
-       switch (af) {
-       case LLDPD_AF_IPV4: return AF_INET;
-       case LLDPD_AF_IPV6: return AF_INET6;
-       case LLDPD_AF_LAST: return AF_MAX;
-       default: return AF_UNSPEC;
-       }
-}
-
 #define LLDPD_MGMT_MAXADDRSIZE 16 /* sizeof(struct in6_addr) */
 union lldpd_address {
        struct in_addr          inet;
@@ -243,6 +239,8 @@ struct lldpd_port {
        struct lldpd_chassis    *p_chassis;    /* Attached chassis */
        time_t                   p_lastchange; /* Time of last change of values */
        time_t                   p_lastupdate; /* Time of last update received */
+       time_t                   p_lastremove;  /* Time of last removal of a remote port. Used for local ports only
+                                                * Used for deciding lldpStatsRemTablesLastChangeTime */
        struct lldpd_frame      *p_lastframe;  /* Frame received during last update */
        u_int8_t                 p_protocol;   /* Protocol used to get this port */
        u_int8_t                 p_hidden_in:1; /* Considered as hidden for reception */
@@ -275,6 +273,10 @@ struct lldpd_port {
        struct lldpd_med_power   p_med_power;
 #endif
 
+#if defined (ENABLE_CDP) || defined (ENABLE_FDP)
+       struct cdpv2_power p_cdp_power;
+#endif
+
 #ifdef ENABLE_DOT1
        u_int16_t                p_pvid;
        TAILQ_HEAD(, lldpd_vlan) p_vlans;
@@ -380,6 +382,7 @@ struct lldpd_config {
        char *c_cid_pattern;    /* Pattern to match interfaces to use for chassis ID */
        char *c_cid_string;     /* User defined string for chassis ID */
        char *c_iface_pattern;  /* Pattern to match interfaces to use */
+       char *c_perm_ifaces;    /* Pattern to match interfaces to keep */
 
        char *c_platform;       /* Override platform description (for CDP) */
        char *c_description;    /* Override chassis description */
@@ -407,6 +410,7 @@ MARSHAL_STR(lldpd_config, c_mgmt_pattern)
 MARSHAL_STR(lldpd_config, c_cid_pattern)
 MARSHAL_STR(lldpd_config, c_cid_string)
 MARSHAL_STR(lldpd_config, c_iface_pattern)
+MARSHAL_STR(lldpd_config, c_perm_ifaces)
 MARSHAL_STR(lldpd_config, c_hostname)
 MARSHAL_STR(lldpd_config, c_platform)
 MARSHAL_STR(lldpd_config, c_description)