FD.io VPP
v21.10.1-2-g0a485f517
Vector Packet Processing
Main Page
Related Pages
Modules
Namespaces
Namespace List
Namespace Members
All
b
d
e
f
g
i
l
m
n
o
p
r
s
t
v
w
Functions
d
f
g
l
m
n
o
p
t
v
Variables
Typedefs
Enumerations
Enumerator
Data Structures
Data Structures
Data Structure Index
Class Hierarchy
Data Fields
All
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
u
v
w
z
~
Variables
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
c
e
g
h
k
m
n
o
r
s
Related Functions
c
d
e
h
i
m
o
p
r
s
v
Source
Files
Symbols
All
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Functions
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Variables
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Typedefs
a
b
c
d
e
f
g
h
i
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Enumerations
a
b
c
d
e
f
g
h
i
l
m
n
o
p
q
r
s
t
u
v
w
x
Enumerator
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
Macros
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
•
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Modules
Pages
fib_walk.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2016 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
#ifndef __FIB_WALK_H__
17
#define __FIB_WALK_H__
18
19
#include <
vnet/fib/fib_node.h
>
20
21
/**
22
* @brief Walk priorities.
23
* Strict priorities. All walks a priority n are completed before n+1 is started.
24
* Increasing numerical value implies decreasing priority.
25
*/
26
typedef
enum
fib_walk_priority_t_
27
{
28
FIB_WALK_PRIORITY_HIGH
= 0,
29
FIB_WALK_PRIORITY_LOW
= 1,
30
}
fib_walk_priority_t
;
31
32
#define FIB_WALK_PRIORITY_NUM ((fib_walk_priority_t)(FIB_WALK_PRIORITY_LOW+1))
33
34
#define FIB_WALK_PRIORITIES { \
35
[FIB_WALK_PRIORITY_HIGH] = "high", \
36
[FIB_WALK_PRIORITY_LOW] = "low", \
37
}
38
39
#define FOR_EACH_FIB_WALK_PRIORITY(_prio) \
40
for ((_prio) = FIB_WALK_PRIORITY_HIGH; \
41
(_prio) < FIB_WALK_PRIORITY_NUM; \
42
(_prio)++)
43
44
extern
void
fib_walk_module_init
(
void
);
45
46
extern
void
fib_walk_async
(
fib_node_type_t
parent_type,
47
fib_node_index_t
parent_index,
48
fib_walk_priority_t
prio,
49
fib_node_back_walk_ctx_t
*
ctx
);
50
51
extern
void
fib_walk_sync
(
fib_node_type_t
parent_type,
52
fib_node_index_t
parent_index,
53
fib_node_back_walk_ctx_t
*
ctx
);
54
55
extern
u8
*
format_fib_walk_priority
(
u8
*s, va_list *ap);
56
57
extern
void
fib_walk_process_enable
(
void
);
58
extern
void
fib_walk_process_disable
(
void
);
59
60
#endif
61
fib_walk_async
void fib_walk_async(fib_node_type_t parent_type, fib_node_index_t parent_index, fib_walk_priority_t prio, fib_node_back_walk_ctx_t *ctx)
Definition:
fib_walk.c:688
fib_walk_process_disable
void fib_walk_process_disable(void)
Definition:
fib_walk.c:1211
fib_node.h
fib_node_type_t
enum fib_node_type_t_ fib_node_type_t
The types of nodes in a FIB graph.
fib_walk_sync
void fib_walk_sync(fib_node_type_t parent_type, fib_node_index_t parent_index, fib_node_back_walk_ctx_t *ctx)
Back walk all the children of a FIB node.
Definition:
fib_walk.c:745
fib_walk_process_enable
void fib_walk_process_enable(void)
Definition:
fib_walk.c:1202
fib_walk_module_init
void fib_walk_module_init(void)
Definition:
fib_walk.c:944
fib_walk_priority_t
enum fib_walk_priority_t_ fib_walk_priority_t
Walk priorities.
fib_node_index_t
u32 fib_node_index_t
A typedef of a node index.
Definition:
fib_types.h:29
format_fib_walk_priority
u8 * format_fib_walk_priority(u8 *s, va_list *ap)
Definition:
fib_walk.c:201
FIB_WALK_PRIORITY_HIGH
@ FIB_WALK_PRIORITY_HIGH
Definition:
fib_walk.h:28
FIB_WALK_PRIORITY_LOW
@ FIB_WALK_PRIORITY_LOW
Definition:
fib_walk.h:29
ctx
long ctx[MAX_CONNS]
Definition:
main.c:144
fib_walk_priority_t_
fib_walk_priority_t_
Walk priorities.
Definition:
fib_walk.h:26
u8
unsigned char u8
Definition:
types.h:56
fib_node_back_walk_ctx_t_
Context passed between object during a back walk.
Definition:
fib_node.h:214
src
vnet
fib
fib_walk.h
Generated on Sat Jan 8 2022 10:36:26 for FD.io VPP by
1.8.17