FD.io VPP
v21.06-3-gbb25fbf28
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
api_types.h
Go to the documentation of this file.
1
/*
2
*------------------------------------------------------------------
3
* api_types.h
4
*
5
* Copyright (c) 2018 Cisco and/or its affiliates.
6
* Licensed under the Apache License, Version 2.0 (the "License");
7
* you may not use this file except in compliance with the License.
8
* You may obtain a copy of the License at:
9
*
10
* http://www.apache.org/licenses/LICENSE-2.0
11
*
12
* Unless required by applicable law or agreed to in writing, software
13
* distributed under the License is distributed on an "AS IS" BASIS,
14
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
* See the License for the specific language governing permissions and
16
* limitations under the License.
17
*------------------------------------------------------------------
18
*/
19
20
#ifndef included_api_types_h
21
#define included_api_types_h
22
23
#include <stdbool.h>
24
#include <stdarg.h>
25
#include <
vppinfra/types.h
>
26
#include <arpa/inet.h>
27
#include <
string.h
>
28
29
#ifdef __cplusplus
30
extern
"C"
31
{
32
#endif
33
34
/* VPP API string type */
35
typedef
struct
36
{
37
u32
length
;
38
u8
buf
[0];
39
} __attribute__ ((packed))
vl_api_string_t
;
40
41
/* Nul terminated string to vl_api_string_t */
42
extern
int
vl_api_c_string_to_api_string
(
const
char
*
buf
,
vl_api_string_t
* str);
43
/* NON nul terminated vector to vl_api_string_t */
44
extern
int
vl_api_vec_to_api_string
(
const
u8
*vec,
vl_api_string_t
* str);
45
46
extern
u32
vl_api_string_len
(
vl_api_string_t
* astr);
47
48
/* Returns new vector. NON nul terminated */
49
extern
u8
*
vl_api_from_api_to_new_vec
(
void
*mp,
vl_api_string_t
*astr);
50
/* Returns new vector. Nul terminated */
51
extern
char
*
vl_api_from_api_to_new_c_string
(
vl_api_string_t
*astr);
52
53
extern
u8
*
vl_api_format_string
(
u8
*s, va_list *args);
54
55
#ifdef __cplusplus
56
}
57
#endif
58
59
#endif
types.h
vl_api_from_api_to_new_c_string
char * vl_api_from_api_to_new_c_string(vl_api_string_t *astr)
Definition:
api_shared.c:1218
string.h
vl_api_vec_to_api_string
int vl_api_vec_to_api_string(const u8 *vec, vl_api_string_t *str)
Definition:
api_shared.c:1175
vl_api_from_api_to_new_vec
u8 * vl_api_from_api_to_new_vec(void *mp, vl_api_string_t *astr)
Definition:
api_shared.c:1202
vl_api_c_string_to_api_string
int vl_api_c_string_to_api_string(const char *buf, vl_api_string_t *str)
Definition:
api_shared.c:1163
buf
u64 buf
Definition:
application.c:493
u32
unsigned int u32
Definition:
types.h:88
vl_api_string_t::length
u32 length
Definition:
api_types.h:37
vl_api_string_t
Definition:
api_types.h:35
u8
unsigned char u8
Definition:
types.h:56
vl_api_string_len
u32 vl_api_string_len(vl_api_string_t *astr)
Definition:
api_shared.c:1184
vl_api_format_string
u8 * vl_api_format_string(u8 *s, va_list *args)
Definition:
api_shared.c:1190
src
vlibapi
api_types.h
Generated on Sat Jan 8 2022 10:04:36 for FD.io VPP by
1.8.17