X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fvnet%2Ffib%2Ffib_test.h;h=b2abcf537fa778d19d99fb2a5f446c8abf1023b1;hb=2303cb1;hp=b98680bf6838c4d04ef4ebe752a62d334fcacee1;hpb=0f26c5a0138ac86d7ebd197c31a09d8d624c35fe;p=vpp.git diff --git a/src/vnet/fib/fib_test.h b/src/vnet/fib/fib_test.h index b98680bf683..b2abcf537fa 100644 --- a/src/vnet/fib/fib_test.h +++ b/src/vnet/fib/fib_test.h @@ -17,15 +17,26 @@ #define __FIB_TEST_H__ #include +#include +#include +#include +#include +#include +#include typedef enum fib_test_lb_bucket_type_t_ { FT_LB_LABEL_O_ADJ, FT_LB_LABEL_STACK_O_ADJ, FT_LB_LABEL_O_LB, FT_LB_O_LB, - FT_LB_SPECIAL, - FT_LB_ADJ, + FT_LB_MPLS_DISP_PIPE_O_ADJ, FT_LB_INTF, + FT_LB_L2, + FT_LB_BIER_TABLE, + FT_LB_BIER_FMASK, + FT_LB_DROP, + FT_LB_PUNT, + FT_LB_ADJ, } fib_test_lb_bucket_type_t; typedef struct fib_test_lb_bucket_t_ { @@ -37,6 +48,7 @@ typedef struct fib_test_lb_bucket_t_ { { mpls_eos_bit_t eos; mpls_label_t label; + fib_mpls_lsp_mode_t mode; u8 ttl; adj_index_t adj; } label_o_adj; @@ -44,6 +56,7 @@ typedef struct fib_test_lb_bucket_t_ { { mpls_eos_bit_t eos; mpls_label_t label_stack[8]; + fib_mpls_lsp_mode_t mode; u8 label_stack_size; u8 ttl; adj_index_t adj; @@ -52,6 +65,7 @@ typedef struct fib_test_lb_bucket_t_ { { mpls_eos_bit_t eos; mpls_label_t label; + fib_mpls_lsp_mode_t mode; u8 ttl; index_t lb; } label_o_lb; @@ -67,11 +81,19 @@ typedef struct fib_test_lb_bucket_t_ { { index_t adj; } special; + struct + { + union { + index_t table; + index_t fmask; + }; + } bier; }; } fib_test_lb_bucket_t; typedef enum fib_test_rep_bucket_type_t_ { FT_REP_LABEL_O_ADJ, + FT_REP_DISP_MFIB_LOOKUP, FT_REP_INTF, } fib_test_rep_bucket_type_t; @@ -97,15 +119,20 @@ typedef struct fib_test_rep_bucket_t_ { extern int fib_test_validate_rep_v(const replicate_t *rep, u16 n_buckets, - va_list ap); + va_list *ap); extern int fib_test_validate_lb_v(const load_balance_t *lb, - u16 n_buckets, - va_list ap); + int n_buckets, + va_list *ap); + +extern int fib_test_validate_lb(const dpo_id_t *dpo, + int n_buckets, + ...); extern int fib_test_validate_entry(fib_node_index_t fei, fib_forward_chain_type_t fct, - u16 n_buckets, + int n_buckets, ...); + #endif