]> git.proxmox.com Git - mirror_frr.git/blobdiff - zebra/rib.h
zebra, lib/memtypes.c: the netlink sockets work per VRF
[mirror_frr.git] / zebra / rib.h
index f18b311d47b6a3078176cdce0b003711594fef8d..25ab68df131110564a9c363b719f405a9efe4efa 100644 (file)
@@ -310,6 +310,17 @@ struct rtadv
 };
 #endif /* RTADV && HAVE_IPV6 */
 
+#ifdef HAVE_NETLINK
+/* Socket interface to kernel */
+struct nlsock
+{
+  int sock;
+  int seq;
+  struct sockaddr_nl snl;
+  const char *name;
+};
+#endif
+
 /* Routing table instance.  */
 struct zebra_vrf
 {
@@ -340,6 +351,12 @@ struct zebra_vrf
   /* Routing tables off of main table for redistribute table */
   struct route_table *other_table[AFI_MAX][ZEBRA_KERNEL_TABLE_MAX];
 
+#ifdef HAVE_NETLINK
+  struct nlsock netlink;     /* kernel messages */
+  struct nlsock netlink_cmd; /* command channel */
+  struct thread *t_netlink;
+#endif
+
   /* 2nd pointer type used primarily to quell a warning on
    * ALL_LIST_ELEMENTS_RO
    */