mirror_frr/zebra
Philippe Guibert a9ff90c41b lib: increase vrf_id from 16 bit to 32 bit identifier
This is a preparatory work for configuring vrf/frr over netns
vrf structure is being changed to 32 bit, and the VRF will have the
possibility to have a backend made up of NETNS.

Let's put some history.
Initially the 32 bit was because one wanted to map on vrf_id both the
VRFLITE and the NSID.
Initially, one would have liked to make zebra configure at the same time
both vrf lite and vrf from netns in a flat way. From the show
running perspective, one would have had both kind of vrfs, thatone
would configure on the same way.
however, it leads to inconsistencies in concepts, because it mixes vrf
vrf with vrf, and vrf is not always mapped with netns.
For instance, logical-router could also be used with netns. In that
case, it would not be possible to map vrf with netns.
There was an other reason why 32 bit is proposed. this is because
some systems handle NSID to 32 bits. As vrf lite exists only on
Linux, there are other systems that would like to use an other vrf
backend than vrf lite. The netns backend for vrf will be used for that
too. for instance, for windows or freebsd, some similar
netns concept exists; so it will be easier to reuse netns
backend for vrf, than reusing vrflite backend for vrf.

This commit is here to extend vrf_id to 32 bits. Following commits in a
second step will help in enable a VRF backend.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
2018-01-22 13:52:17 +01:00
..
.gitignore build: convert zebra/ to non-recursive build 2017-07-31 23:03:30 +02:00
client_main.c *: Make zapi route install Notifications optional 2017-11-27 09:09:35 -05:00
connected.c Merge branch 'master' into evpn-symmetric-routing 2018-01-11 09:00:23 -08:00
connected.h zebra: Refactor connected_down_ipv[4|6] 2017-08-31 13:47:26 -04:00
debug.c *: add missing \n in some help strings 2017-10-24 19:30:30 -02:00
debug.h zebra: add pseudowire manager 2017-08-09 12:35:15 +02:00
GNOME-PRODUCT-ZEBRA-MIB Initial revision 2002-12-13 20:15:29 +00:00
GNOME-SMI Initial revision 2002-12-13 20:15:29 +00:00
if_ioctl_solaris.c *: introduce new rb-tree to optimize interface lookup by ifindex 2017-10-10 09:05:02 -03:00
if_ioctl.c *: use the FOR_ALL_INTERFACES abstraction from babeld 2017-10-10 09:05:46 -03:00
if_netlink.c zebra: Add one-shot thread to recheck speed 2018-01-11 09:52:34 -05:00
if_netlink.h *: reindent 2017-07-17 14:04:07 +02:00
if_sysctl.c build: zebra: remove *_method Makefile hacks 2017-07-31 23:03:30 +02:00
interface.c zebra: Add one-shot thread to recheck speed 2018-01-11 09:52:34 -05:00
interface.h zebra: Add one-shot thread to recheck speed 2018-01-11 09:52:34 -05:00
ioctl_solaris.c build: zebra: remove *_method Makefile hacks 2017-07-31 23:03:30 +02:00
ioctl_solaris.h *: reindent 2017-07-17 14:04:07 +02:00
ioctl.c zebra: remove useless iotcl linux calls 2017-12-13 16:54:10 +01:00
ioctl.h *: reindent 2017-07-17 14:04:07 +02:00
ipforward_proc.c bgpd, zebra: Use sscanf return value 2017-12-04 21:28:19 -05:00
ipforward_solaris.c build: zebra: remove *_method Makefile hacks 2017-07-31 23:03:30 +02:00
ipforward_sysctl.c configure, zebra: Kame is not responsible for on/off of v6 forwarding 2017-12-05 17:26:32 -05:00
ipforward.h *: reindent 2017-07-17 14:04:07 +02:00
irdp_interface.c *: Convert list_delete(struct list *) to ** to allow nulling 2017-10-05 10:53:13 -04:00
irdp_main.c *: use the FOR_ALL_INTERFACES abstraction from babeld 2017-10-10 09:05:46 -03:00
irdp_packet.c *: fix assorted issues detected by Coverity Scan 2017-08-24 21:49:39 -03:00
irdp.h zebra: Fix irdp so it doesn't crash when looked at 2017-09-26 19:57:27 -04:00
kernel_netlink.c zebra: Make zserv.h the true api for zapi northbound 2017-12-13 07:57:15 -05:00
kernel_netlink.h *: reindent 2017-07-17 14:04:07 +02:00
kernel_socket.c Merge branch 'master' into evpn-symmetric-routing 2018-01-11 09:00:23 -08:00
kernel_socket.h zebra: cleanup blackhole support 2017-08-28 05:07:51 +02:00
label_manager.c ldpd: Add privs to label manager 2018-01-05 14:08:05 +01:00
label_manager.h *: reindent 2017-07-17 14:04:07 +02:00
main.c bgpd, lib, zebra: fix style problems 2017-12-27 11:47:10 -08:00
Makefile build: convert zebra/ to non-recursive build 2017-07-31 23:03:30 +02:00
redistribute.c zebra: proper refcounting for rmac/nh entries 2017-12-14 10:57:06 -08:00
redistribute.h *: Cleanup multiple is_default... code 2017-08-31 16:11:17 -04:00
rib.h Merge branch 'master' into evpn-symmetric-routing 2018-01-11 09:00:23 -08:00
router-id.c *: use clang's 'ForEachMacros' format style option 2017-09-15 14:53:46 -03:00
router-id.h *: make consistent & update GPLv2 file headers 2017-05-15 16:37:41 +02:00
rt_netlink.c Merge branch 'master' into evpn-symmetric-routing 2018-01-11 09:00:23 -08:00
rt_netlink.h sharpd: Add Super Happy Advanced Routing Protocol 2017-11-27 09:16:30 -05:00
rt_socket.c zebra: Add one-shot thread to recheck speed 2018-01-11 09:52:34 -05:00
rt.h zebra: Add one-shot thread to recheck speed 2018-01-11 09:52:34 -05:00
rtadv.c zebra: do not display ipv6 ra commands created by bgpd 2017-12-06 09:00:48 -08:00
rtadv.h zebra: No need to pass sock descriptor around. 2017-10-23 18:09:22 -04:00
rtread_getmsg.c zebra: Add ability to support tags -> realms in linux 2017-12-14 09:44:44 -05:00
rtread_netlink.c zebra: Make zserv.h the true api for zapi northbound 2017-12-13 07:57:15 -05:00
rtread_sysctl.c zebra: Make zserv.h the true api for zapi northbound 2017-12-13 07:57:15 -05:00
subdir.am zebra: irdp: convert into module 2017-08-15 13:26:55 +02:00
testrib.conf zebra: Build the test client, can be useful, and add IPv6 to testrib.conf 2016-05-26 01:13:58 +00:00
zebra_fpm_dt.c *: reindent 2017-07-17 14:04:07 +02:00
zebra_fpm_netlink.c zebra: cleanup blackhole support 2017-08-28 05:07:51 +02:00
zebra_fpm_private.h *: reindent 2017-07-17 14:04:07 +02:00
zebra_fpm_protobuf.c zebra: cleanup blackhole support 2017-08-28 05:07:51 +02:00
zebra_fpm.c zebra: Replace SELECTED_FIB flag with a rib_dest_t pointer 2017-12-05 17:26:32 -05:00
zebra_l2_null.c *: reindent 2017-07-17 14:04:07 +02:00
zebra_l2.c *: use the FOR_ALL_INTERFACES abstraction from babeld 2017-10-10 09:05:46 -03:00
zebra_l2.h Revert "*: reindent pt. 2" 2017-07-22 14:52:33 +02:00
zebra_memory.c *: reindent 2017-07-17 14:04:07 +02:00
zebra_memory.h zebra: Refactor 'struct rib' to be 'struct route_entry' 2017-06-01 08:00:05 -04:00
zebra_mpls_netlink.c zebra: Fix route replace flags 2017-11-29 13:01:01 -05:00
zebra_mpls_null.c zebra: Fix lsp add/del from kernel using SETFLAG 2017-11-29 13:01:00 -05:00
zebra_mpls_openbsd.c zebra: Fix lsp add/del from kernel using SETFLAG 2017-11-29 13:01:00 -05:00
zebra_mpls_vty.c zebra: remove redundant DEFUNs for labeled static routes 2017-07-27 21:47:23 -03:00
zebra_mpls.c zebra: Fix route replace flags 2017-11-29 13:01:01 -05:00
zebra_mpls.h zebra: install MPLS LSPs with appropriate protocol type 2017-09-21 13:27:50 -03:00
zebra_mroute.c lib, zebra: Modify zebra to use STREAM_GET for zapi 2017-11-13 14:16:13 -05:00
zebra_mroute.h zebra: No need to pass sock descriptor around. 2017-10-23 18:09:22 -04:00
zebra_ns.c zebra, lib: zebra changes for symmetric routing support 2017-12-14 10:56:44 -08:00
zebra_ns.h zebra, lib: zebra changes for symmetric routing support 2017-12-14 10:56:44 -08:00
zebra_ptm_redistribute.c *: reindent 2017-07-17 14:04:07 +02:00
zebra_ptm_redistribute.h *: reindent 2017-07-17 14:04:07 +02:00
zebra_ptm.c lib: increase vrf_id from 16 bit to 32 bit identifier 2018-01-22 13:52:17 +01:00
zebra_ptm.h zebra: No need to pass sock descriptor around. 2017-10-23 18:09:22 -04:00
zebra_pw.c zebra, ldpd: fix display of pseudowire status 2017-11-29 20:39:19 -02:00
zebra_pw.h zebra: add support for static pseudowires 2017-08-09 13:03:36 +02:00
zebra_rib.c Merge branch 'master' into evpn-symmetric-routing 2018-01-11 09:00:23 -08:00
zebra_rnh.c zebra: slight mods to commit for nexthop resolution with /32 nexthop 2017-11-22 16:25:44 +00:00
zebra_rnh.h zebra: add nexthop tracking for pseudowires 2017-08-09 12:35:15 +02:00
zebra_routemap.c doc, zebra: Add 'match ipv6 address prefix-len (0-128)' command 2017-11-06 10:05:55 -05:00
zebra_routemap.h zebra: Make zserv.h the true api for zapi northbound 2017-12-13 07:57:15 -05:00
zebra_snmp.c *: use clang's 'ForEachMacros' format style option 2017-09-15 14:53:46 -03:00
zebra_static.c zebra: Replace SELECTED_FIB flag with a rib_dest_t pointer 2017-12-05 17:26:32 -05:00
zebra_static.h zebra: display static blackhole routes consistently 2017-09-05 11:50:34 -03:00
zebra_vrf.c zebra: only write vni config under vrf if the vni is valid 2017-12-14 10:57:07 -08:00
zebra_vrf.h zebra, lib: zebra changes for symmetric routing support 2017-12-14 10:56:44 -08:00
zebra_vty.c Merge branch 'master' into evpn-symmetric-routing 2018-01-11 09:00:23 -08:00
zebra_vxlan_null.c zebra, lib: zebra changes for symmetric routing support 2017-12-14 10:56:44 -08:00
zebra_vxlan_private.h zebra/bgpd: cleanup l3vni on no advertise-all-vni 2017-12-14 10:57:08 -08:00
zebra_vxlan.c bgpd, lib, zebra: fix style problems 2017-12-27 11:47:10 -08:00
zebra_vxlan.h bgpd, lib, zebra: fix style problems 2017-12-27 11:47:10 -08:00
zebra.conf.sample *: Remove cvs control points 2017-12-05 17:28:12 -05:00
zserv.c lib: increase vrf_id from 16 bit to 32 bit identifier 2018-01-22 13:52:17 +01:00
zserv.h zebra, lib: zebra changes for symmetric routing support 2017-12-14 10:56:44 -08:00