X-Git-Url: https://gerrit.fd.io/r/gitweb?p=vpp.git;a=blobdiff_plain;f=src%2Fvnet%2Ffib%2Ffib_types.h;h=b5a58e7b67420c5b765792590c64b28f51c57c9c;hp=832092c56795215386c2a50330fa75f6d05d87ff;hb=e2fe09742;hpb=9b8cb5082471dd670066b8ba2872ffbcc35a87f8 diff --git a/src/vnet/fib/fib_types.h b/src/vnet/fib/fib_types.h index 832092c5679..b5a58e7b674 100644 --- a/src/vnet/fib/fib_types.h +++ b/src/vnet/fib/fib_types.h @@ -266,6 +266,13 @@ extern int fib_prefix_is_cover(const fib_prefix_t *p1, extern int fib_prefix_is_host(const fib_prefix_t *p); extern u8 fib_prefix_get_host_length (fib_protocol_t proto); +/** + * normalise a prefix (i.e. mask the host bits according to the + * prefix length) + */ +extern void fib_prefix_normalize(const fib_prefix_t *p, + fib_prefix_t *out); + /** * \brief Host prefix from ip */ @@ -393,6 +400,10 @@ typedef enum fib_route_path_flags_t_ * Pop a Psuedo Wire Control Word */ FIB_ROUTE_PATH_POP_PW_CW = (1 << 18), + /** + * A path that resolves via a glean adjacency + */ + FIB_ROUTE_PATH_GLEAN = (1 << 19), } fib_route_path_flags_t; /** @@ -520,6 +531,11 @@ typedef struct fib_route_path_t_ { * Present in an mfib path list */ index_t frp_bier_imp; + + /** + * Glean prefix on a glean path + */ + fib_prefix_t frp_connected; }; /**