diff options
author | Neale Ranns <nranns@cisco.com> | 2017-10-21 10:53:20 -0700 |
---|---|---|
committer | Damjan Marion <dmarion.lists@gmail.com> | 2017-11-09 15:16:52 +0000 |
commit | d792d9c01e60656cbfe1b0f1fd6a9b125f5dab0c (patch) | |
tree | db88d99dd8102389fb92e8ed44bc7d6a55dc3080 /src/vnet/fib/fib_entry_src.c | |
parent | a2ff7b8cfc829ffbb6d5de7534efb51f7cba9cf3 (diff) |
BIER
- see draft-ietf-bier-mpls-encapsulation-10
- midpoint, head and tail functions
- supported payload protocols; IPv4 and IPv6 only.
Change-Id: I59d7363bb6fdfdce8e4016a68a9c8f5a5e5791cb
Signed-off-by: Neale Ranns <nranns@cisco.com>
Diffstat (limited to 'src/vnet/fib/fib_entry_src.c')
-rw-r--r-- | src/vnet/fib/fib_entry_src.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/src/vnet/fib/fib_entry_src.c b/src/vnet/fib/fib_entry_src.c index 173df74f0a4..667aa485f7c 100644 --- a/src/vnet/fib/fib_entry_src.c +++ b/src/vnet/fib/fib_entry_src.c @@ -275,6 +275,7 @@ fib_entry_src_get_path_forwarding (fib_node_index_t path_index, case FIB_FORW_CHAIN_TYPE_UNICAST_IP6: case FIB_FORW_CHAIN_TYPE_MCAST_IP4: case FIB_FORW_CHAIN_TYPE_MCAST_IP6: + case FIB_FORW_CHAIN_TYPE_BIER: /* * EOS traffic with no label to stack, we need the IP Adj */ @@ -480,8 +481,8 @@ fib_entry_src_mk_lb (fib_entry_t *fib_entry, } else { + fib_protocol_t flow_hash_proto; flow_hash_config_t fhc; - fib_protocol_t fp; /* * if the protocol for the LB we are building does not match that @@ -489,16 +490,17 @@ fib_entry_src_mk_lb (fib_entry_t *fib_entry, * then the fib_index is not an index that relates to the table * type we need. So get the default flow-hash config instead. */ - fp = dpo_proto_to_fib(lb_proto); - - if (fib_entry->fe_prefix.fp_proto != fp) + flow_hash_proto = dpo_proto_to_fib(lb_proto); + if (fib_entry->fe_prefix.fp_proto != flow_hash_proto) { - fhc = fib_table_get_default_flow_hash_config(fp); + fhc = fib_table_get_default_flow_hash_config(flow_hash_proto); } else { - fhc = fib_table_get_flow_hash_config(fib_entry->fe_fib_index, fp); + fhc = fib_table_get_flow_hash_config(fib_entry->fe_fib_index, + flow_hash_proto); } + dpo_set(dpo_lb, DPO_LOAD_BALANCE, lb_proto, |