]> git.proxmox.com Git - mirror_frr.git/blobdiff - zebra/rt_netlink.h
lib, zebra: Add LIB_ERR_INTERFACE
[mirror_frr.git] / zebra / rt_netlink.h
index 4ec5f18535cb15a12fe561753324cc00b0c43af3..c4f21d1504ebfc57d09ab9d790d808ed95e9f45c 100644 (file)
 
 #define NL_DEFAULT_ROUTE_METRIC 20
 
-/* Additional protocol strings to push into routes */
+/*
+ * Additional protocol strings to push into routes
+ * If we add anything new here please make sure
+ * to update:
+ * zebra2proto                 Function
+ * proto2zebra                 Function
+ * is_selfroute                Function
+ * tools/frr                   To flush the route upon exit
+ *
+ * Finally update this file to allow iproute2 to
+ * know about this new route.
+ * tools/etc/iproute2/rt_protos.d
+ */
 #define RTPROT_BGP         186
 #define RTPROT_ISIS        187
 #define RTPROT_OSPF        188
 #define RTPROT_RIP         189
 #define RTPROT_RIPNG       190
+#if !defined(RTPROT_BABEL)
+#define RTPROT_BABEL        42
+#endif
+#define RTPROT_NHRP        191
+#define RTPROT_EIGRP       192
+#define RTPROT_LDP         193
+#define RTPROT_SHARP       194
+#define RTPROT_PBR         195
+#define RTPROT_ZSTATIC     196
+
+void rt_netlink_init(void);
 
-void rt_netlink_init (void);
+extern int netlink_mpls_multipath(int cmd, zebra_lsp_t *lsp);
 
-extern void
-clear_nhlfe_installed (zebra_lsp_t *lsp);
-extern int
-netlink_mpls_multipath (int cmd, zebra_lsp_t *lsp);
+extern int netlink_route_change(struct nlmsghdr *h, ns_id_t ns_id, int startup);
+extern int netlink_route_read(struct zebra_ns *zns);
 
-extern int netlink_route_change (struct sockaddr_nl *snl, struct nlmsghdr *h,
-                                 ns_id_t ns_id, int startup);
-extern int netlink_route_read (struct zebra_ns *zns);
+extern int netlink_neigh_change(struct nlmsghdr *h, ns_id_t ns_id);
+extern int netlink_macfdb_read(struct zebra_ns *zns);
+extern int netlink_macfdb_read_for_bridge(struct zebra_ns *zns,
+                                         struct interface *ifp,
+                                         struct interface *br_if);
+extern int netlink_neigh_read(struct zebra_ns *zns);
+extern int netlink_neigh_read_for_vlan(struct zebra_ns *zns,
+                                      struct interface *vlan_if);
 
 #endif /* HAVE_NETLINK */