]> git.proxmox.com Git - mirror_frr.git/blobdiff - lib/srcdest_table.h
bgpd: `neighbor X:X::X default-originate` complains about (null)
[mirror_frr.git] / lib / srcdest_table.h
index 9ceb876f81b81bba96a85b8133d6ccd0d7da1c31..8845931de79cc29847f0b786abfc4e755b768959 100644 (file)
 #include "prefix.h"
 #include "table.h"
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 #define SRCDEST2STR_BUFFER (2*PREFIX2STR_BUFFER + sizeof(" from "))
 
 /* extended route node for IPv6 srcdest routing */
@@ -84,7 +88,8 @@ static inline int rnode_is_srcnode(struct route_node *rn)
 static inline struct route_table *srcdest_rnode_table(struct route_node *rn)
 {
        if (rnode_is_srcnode(rn)) {
-               struct route_node *dst_rn = rn->table->info;
+               struct route_node *dst_rn =
+                       (struct route_node *)route_table_get_info(rn->table);
                return dst_rn->table;
        } else {
                return rn->table;
@@ -92,7 +97,11 @@ static inline struct route_table *srcdest_rnode_table(struct route_node *rn)
 }
 static inline void *srcdest_rnode_table_info(struct route_node *rn)
 {
-       return srcdest_rnode_table(rn)->info;
+       return route_table_get_info(srcdest_rnode_table(rn));
+}
+
+#ifdef __cplusplus
 }
+#endif
 
 #endif /* _ZEBRA_SRC_DEST_TABLE_H */