Hybrid ICN (hICN) plugin  v21.06-rc0-4-g18fa668
mapme_eventmgr.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2017-2020 Cisco and/or its affiliates.
3  * Licensed under the Apache License, Version 2.0 (the "License");
4  * you may not use this file except in compliance with the License.
5  * You may obtain a copy of the License at:
6  *
7  * http://www.apache.org/licenses/LICENSE-2.0
8  *
9  * Unless required by applicable law or agreed to in writing, software
10  * distributed under the License is distributed on an "AS IS" BASIS,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  * See the License for the specific language governing permissions and
13  * limitations under the License.
14  */
15 
16 #include <vlib/vlib.h> // vlib_node_registration_t (vlib/node.h)
17 
18 #include <hicn/name.h>
19 
25 /*
26  * Structure carrying all necessary information for managing Special Interest
27  * (re)transmissions.
28  */
29 typedef struct
30 {
31  hicn_prefix_t prefix;
32  dpo_id_t dpo;
33  hicn_face_id_t face_id;
34  u8 rtx_count; // Number of retransmissions since last tfib addition
35 } retx_t;
36 
37 #define HASH32(x) ((u16) x ^ (x << 16))
38 
42 // not static !
43 vlib_node_registration_t hicn_mapme_eventmgr_process_node;
44 
49 void hicn_mapme_init (vlib_main_t *vm);
50 
51 /*
52  * fd.io coding-style-patch-verification: ON
53  *
54  * Local Variables:
55  * eval: (c-set-style "gnu")
56  * End:
57  */
hicn_mapme_init
void hicn_mapme_init(vlib_main_t *vm)
Initialize MAP-Me on forwarder @params vm - vlib_main_t pointer.
hicn_mapme_eventmgr_process_node
vlib_node_registration_t hicn_mapme_eventmgr_process_node
This is a process node reacting to face events.
Definition: mapme_eventmgr.h:43
hicn_prefix_t
Definition: name.h:49
retx_t
Definition: mapme_eventmgr.h:29