FD.io VPP
v17.04.2-2-ga8f93f8
Vector Packet Processing
Main Page
Related Pages
Data Structures
Source
Files
Symbols
pot.api
Go to the documentation of this file.
1
/* Hey Emacs use -*- mode: C -*- */
2
/*
3
* Copyright (c) 2016 Cisco and/or its affiliates.
4
* Licensed under the Apache License, Version 2.0 (the "License");
5
* you may not use this file except in compliance with the License.
6
* You may obtain a copy of the License at:
7
*
8
* http://www.apache.org/licenses/LICENSE-2.0
9
*
10
* Unless required by applicable law or agreed to in writing, software
11
* distributed under the License is distributed on an "AS IS" BASIS,
12
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
* See the License for the specific language governing permissions and
14
* limitations under the License.
15
*/
16
17
18
/** \brief Proof of Transit(POT): Set POT profile
19
@param id - id of the profile
20
@param validator - True/False to indicate if this is verifier
21
@param secret_key - Verification key
22
@param secret_share - Share of the 1st polynomial
23
@param prime - Prime number used for modulo operation
24
@param max_bits - Max bits to be used for Random number generation
25
@param lpc - Lagrange basis polynomial
26
@param polynomial_public - pre-evaluated public polynomial
27
@param list_name_len - length of the name of this profile list
28
@param list_name - name of this profile list
29
*/
30
define pot_profile_add {
31
u32
client_index
;
32
u32
context
;
33
u8
id
;
34
u8
validator
;
35
u64
secret_key
;
36
u64
secret_share
;
37
u64
prime
;
38
u8
max_bits
;
39
u64
lpc
;
40
u64
polynomial_public
;
41
u8
list_name_len
;
42
u8
list_name[0];
43
};
44
45
/** \brief Proof of Transit profile add / del response
46
@param context - sender context, to match reply w/ request
47
@param retval - return value for request
48
*/
49
define pot_profile_add_reply {
50
u32
context
;
51
i32
retval
;
52
};
53
54
55
/** \brief Proof of Transit(POT): Activate POT profile in the list
56
@param id - id of the profile
57
@param list_name_len - length of the name of this profile list
58
@param list_name - name of this profile list
59
*/
60
define pot_profile_activate {
61
u32
client_index
;
62
u32
context
;
63
u8
id
;
64
u8
list_name_len
;
65
u8
list_name[0];
66
};
67
68
/** \brief Proof of Transit profile activate response
69
@param context - sender context, to match reply w/ request
70
@param retval - return value for request
71
*/
72
define pot_profile_activate_reply {
73
u32
context
;
74
i32
retval
;
75
};
76
77
/** \brief Delete POT Profile
78
@param client_index - opaque cookie to identify the sender
79
@param context - sender context, to match reply w/ request
80
@param list_name_len - length of the name of the profile list
81
@param list_name - name of profile list to delete
82
*/
83
define pot_profile_del {
84
u32
client_index
;
85
u32
context
;
86
u8
list_name_len
;
87
u8
list_name[0];
88
};
89
90
/** \brief Proof of Transit profile add / del response
91
@param context - sender context, to match reply w/ request
92
@param retval - return value for request
93
*/
94
define pot_profile_del_reply {
95
u32
context
;
96
i32
retval
;
97
};
98
99
/** \brief Show POT Profiles
100
@param client_index - opaque cookie to identify the sender
101
@param context - sender context, to match reply w/ request
102
@param id - id of the profile
103
*/
104
define pot_profile_show_config_dump {
105
u32
client_index
;
106
u32
context
;
107
u8
id
;
108
};
109
110
/** \brief Show POT profile reply
111
@param id - id of the profile
112
@param validator - True/False to indicate if this is verifier
113
@param secret_key - Verification key
114
@param secret_share - Share of the 1st polynomial
115
@param prime - Prime number used for modulo operation
116
@param max_bits - Max bits to be used for Random number generation
117
@param lpc - Lagrange basis polynomial
118
@param polynomial_public - pre-evaluated public polynomial
119
@param list_name_len - length of the name of this profile list
120
@param list_name - name of this profile list
121
*/
122
define pot_profile_show_config_details {
123
u32
context
;
124
i32
retval
;
125
u8
id
;
126
u8
validator
;
127
u64
secret_key
;
128
u64
secret_share
;
129
u64
prime
;
130
u64
bit_mask
;
131
u64
lpc
;
132
u64
polynomial_public
;
133
};
vl_api_pot_profile_del_reply_t::retval
i32 retval
Definition:
pot.api:96
vl_api_pot_profile_add_t::list_name_len
u8 list_name_len
Definition:
pot.api:41
vl_api_pot_profile_show_config_dump_t::context
u32 context
Definition:
pot.api:106
vl_api_pot_profile_add_t::polynomial_public
u64 polynomial_public
Definition:
pot.api:40
vl_api_pot_profile_add_t::prime
u64 prime
Definition:
pot.api:37
vl_api_pot_profile_del_t::client_index
u32 client_index
Definition:
pot.api:84
vl_api_pot_profile_show_config_details_t::id
u8 id
Definition:
pot.api:125
vl_api_pot_profile_show_config_dump_t::client_index
u32 client_index
Definition:
pot.api:105
vl_api_pot_profile_activate_t::list_name_len
u8 list_name_len
Definition:
pot.api:64
i32
int i32
Definition:
types.h:81
u64
unsigned long u64
Definition:
types.h:89
vl_api_pot_profile_add_t::max_bits
u8 max_bits
Definition:
pot.api:38
vl_api_pot_profile_add_reply_t::context
u32 context
Definition:
pot.api:50
vl_api_pot_profile_add_reply_t::retval
i32 retval
Definition:
pot.api:51
vl_api_pot_profile_add_t::lpc
u64 lpc
Definition:
pot.api:39
vl_api_pot_profile_add_t::secret_key
u64 secret_key
Definition:
pot.api:35
vl_api_pot_profile_add_t::secret_share
u64 secret_share
Definition:
pot.api:36
vl_api_pot_profile_show_config_details_t::lpc
u64 lpc
Definition:
pot.api:131
vl_api_pot_profile_show_config_details_t::validator
u8 validator
Definition:
pot.api:126
vl_api_pot_profile_show_config_details_t::prime
u64 prime
Definition:
pot.api:129
vl_api_pot_profile_show_config_details_t::context
u32 context
Definition:
pot.api:123
vl_api_pot_profile_del_t::context
u32 context
Definition:
pot.api:85
vl_api_pot_profile_activate_t::id
u8 id
Definition:
pot.api:63
vl_api_pot_profile_show_config_details_t::secret_key
u64 secret_key
Definition:
pot.api:127
vl_api_pot_profile_del_t::list_name_len
u8 list_name_len
Definition:
pot.api:86
vl_api_pot_profile_add_t::id
u8 id
Definition:
pot.api:33
vl_api_pot_profile_activate_reply_t::context
u32 context
Definition:
pot.api:73
vl_api_pot_profile_activate_reply_t::retval
i32 retval
Definition:
pot.api:74
u32
unsigned int u32
Definition:
types.h:88
vl_api_pot_profile_show_config_dump_t::id
u8 id
Definition:
pot.api:107
vl_api_pot_profile_add_t::context
u32 context
Definition:
pot.api:32
vl_api_pot_profile_show_config_details_t::bit_mask
u64 bit_mask
Definition:
pot.api:130
vl_api_pot_profile_activate_t::client_index
u32 client_index
Definition:
pot.api:61
vl_api_pot_profile_show_config_details_t::secret_share
u64 secret_share
Definition:
pot.api:128
vl_api_pot_profile_show_config_details_t::polynomial_public
u64 polynomial_public
Definition:
pot.api:132
u8
unsigned char u8
Definition:
types.h:56
vl_api_pot_profile_add_t::validator
u8 validator
Definition:
pot.api:34
vl_api_pot_profile_add_t::client_index
u32 client_index
Definition:
pot.api:31
vl_api_pot_profile_show_config_details_t::retval
i32 retval
Definition:
pot.api:124
vl_api_pot_profile_del_reply_t::context
u32 context
Definition:
pot.api:95
vl_api_pot_profile_activate_t::context
u32 context
Definition:
pot.api:62
src
plugins
ioam
lib-pot
pot.api
Generated on Sat Jul 1 2017 12:01:36 for FD.io VPP by
1.8.11