diff options
Diffstat (limited to 'hicn-plugin/src/hicn.api')
-rw-r--r-- | hicn-plugin/src/hicn.api | 97 |
1 files changed, 93 insertions, 4 deletions
diff --git a/hicn-plugin/src/hicn.api b/hicn-plugin/src/hicn.api index 9643f2098..d999e0de5 100644 --- a/hicn-plugin/src/hicn.api +++ b/hicn-plugin/src/hicn.api @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017-2020 Cisco and/or its affiliates. + * Copyright (c) 2021 Cisco and/or its affiliates. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at: @@ -22,6 +22,14 @@ enum hicn_action_type HICN_ENABLE, }; +enum hicn_strategy +{ + HICN_STRATEGY_MW = 0, + HICN_STRATEGY_RR, + HICN_STRATEGY_RP, + HICN_STRATEGY_LR, +}; + typedef hicn_face { /* IP local address */ @@ -360,6 +368,33 @@ define hicn_api_routes_dump u32 context; }; +define hicn_api_strategy_set +{ + /* Client identifier, set from api_main.my_client_index */ + u32 client_index; + + /* Arbitrary context, so client can match reply to request */ + u32 context; + + /* Fib prefix for the strategy */ + vl_api_prefix_t prefix; + + /* ID of the strategy to set for this prefix */ + vl_api_hicn_strategy_t strategy_id; +}; + +define hicn_api_strategy_set_reply +{ + /* Client identifier, set from api_main.my_client_index */ + u32 client_index; + + /* Arbitrary context, so client can match reply to request */ + u32 context; + + /* Return value, zero means all OK */ + i32 retval; +}; + define hicn_api_strategies_get { /* Client identifier, set from api_main.my_client_index */ @@ -381,7 +416,7 @@ define hicn_api_strategies_get_reply u8 n_strategies; /* Strategies */ - u32 strategy_id[256]; + vl_api_hicn_strategy_t strategy_id[256]; /* Return value, zero means all OK */ i32 retval; @@ -396,7 +431,7 @@ define hicn_api_strategy_get u32 context; /* Route prefix */ - u32 strategy_id; + vl_api_hicn_strategy_t strategy_id; }; define hicn_api_strategy_get_reply @@ -437,8 +472,14 @@ define hicn_api_enable_disable_reply /* Arbitrary context, so client can match reply to request */ u32 context; -/* Return value, zero means all OK */ + /* Return value, zero means all OK */ i32 retval; + + /* Number of faces created */ + u8 nfaces; + + /* IDs of new faces */ + u32 faceids[16]; }; define hicn_api_register_prod_app @@ -457,6 +498,9 @@ define hicn_api_register_prod_app /* CS memory reserved -- in number of packets */ u32 cs_reserved; + + /* Port identifying producer application */ + u16 port; }; define hicn_api_register_prod_app_reply @@ -499,6 +543,9 @@ define hicn_api_register_cons_app /* swif */ u32 swif; + + /* src port of consumer packet from this face */ + u16 port; }; define hicn_api_register_cons_app_reply @@ -570,6 +617,48 @@ define hicn_api_udp_tunnel_add_del_reply u32 uei; }; +define hicn_api_mapme_default_route_set +{ + /* Client identifier, set from api_main.my_client_index */ + u32 client_index; + + /* Arbitrary context, so client can match reply to request */ + u32 context; + + /* Fib prefix to be used as default if mapme EPM fails */ + vl_api_prefix_t prefix; +}; + +define hicn_api_mapme_default_route_set_reply +{ + /* From the request */ + u32 context; + + /* Return value, zero means all OK */ + i32 retval; +}; + +define hicn_api_mapme_default_route_get +{ + /* Client identifier, set from api_main.my_client_index */ + u32 client_index; + + /* Arbitrary context, so client can match reply to request */ + u32 context; +}; + +define hicn_api_mapme_default_route_get_reply +{ + /* From the request */ + u32 context; + + /* Return value, zero means all OK */ + i32 retval; + + /* Fib prefix to be used as default if mapme EPM fails */ + vl_api_prefix_t prefix; +}; + /* * fd.io coding-style-patch-verification: ON * |