FD.io VPP
v16.12-rc0-308-g931be3a
Vector Packet Processing
Main Page
Related Pages
Data Structures
Source
Files
Symbols
FD.io VPP
Vector Packet Processing
Release Notes
Debug CLI
Startup Configuration
Todo List
Node Identifiers
Data Structures
Source
Files
Symbols
•
All
Data Structures
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Pages
format.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2015 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
* ip/format.h: ip 4 and/or 6 formatting
17
*
18
* Copyright (c) 2008 Eliot Dresselhaus
19
*
20
* Permission is hereby granted, free of charge, to any person obtaining
21
* a copy of this software and associated documentation files (the
22
* "Software"), to deal in the Software without restriction, including
23
* without limitation the rights to use, copy, modify, merge, publish,
24
* distribute, sublicense, and/or sell copies of the Software, and to
25
* permit persons to whom the Software is furnished to do so, subject to
26
* the following conditions:
27
*
28
* The above copyright notice and this permission notice shall be
29
* included in all copies or substantial portions of the Software.
30
*
31
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
32
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
33
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
34
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
35
* LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
36
* OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
37
* WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
38
*/
39
40
#ifndef included_ip_format_h
41
#define included_ip_format_h
42
43
/* IP4 or IP6. */
44
45
format_function_t
format_ip_protocol
;
46
unformat_function_t
unformat_ip_protocol
;
47
48
format_function_t
format_tcp_udp_port
;
49
unformat_function_t
unformat_tcp_udp_port
;
50
51
typedef
enum
format_ip_adjacency_flags_t_
52
{
53
FORMAT_IP_ADJACENCY_NONE
,
54
FORMAT_IP_ADJACENCY_BRIEF
=
FORMAT_IP_ADJACENCY_NONE
,
55
FORMAT_IP_ADJACENCY_DETAIL
= (1 << 0),
56
}
format_ip_adjacency_flags_t
;
57
58
format_function_t
format_ip_adjacency
;
59
format_function_t
format_ip_adjacency_packet_data
;
60
61
format_function_t
format_ip46_address
;
62
63
typedef
enum
{
64
IP46_TYPE_ANY
,
65
IP46_TYPE_IP4
,
66
IP46_TYPE_IP6
67
}
ip46_type_t
;
68
/* unformat_ip46_address expects arguments (ip46_address_t *, ip46_type_t)
69
* The type argument is used to enforce a particular IP version. */
70
unformat_function_t
unformat_ip46_address
;
71
72
/* IP4 */
73
74
/* Parse an IP4 address %d.%d.%d.%d. */
75
unformat_function_t
unformat_ip4_address
;
76
77
/* Format an IP4 address. */
78
format_function_t
format_ip4_address
;
79
format_function_t
format_ip4_address_and_length
;
80
81
/* Parse an IP4 header. */
82
unformat_function_t
unformat_ip4_header
;
83
84
/* Format an IP4 header. */
85
format_function_t
format_ip4_header
;
86
87
/* Parse an IP packet matching pattern. */
88
unformat_function_t
unformat_ip4_match
;
89
90
unformat_function_t
unformat_pg_ip4_header
;
91
92
/* IP6 */
93
unformat_function_t
unformat_ip6_address
;
94
format_function_t
format_ip6_address
;
95
format_function_t
format_ip6_address_and_length
;
96
unformat_function_t
unformat_ip6_header
;
97
format_function_t
format_ip6_header
;
98
unformat_function_t
unformat_pg_ip6_header
;
99
100
/* Format a TCP/UDP headers. */
101
format_function_t
format_tcp_header
,
format_udp_header
;
102
103
unformat_function_t
unformat_pg_tcp_header
,
unformat_pg_udp_header
;
104
105
#endif
/* included_ip_format_h */
format_ip46_address
format_function_t format_ip46_address
Definition:
format.h:61
unformat_function_t
uword( unformat_function_t)(unformat_input_t *input, va_list *args)
Definition:
format.h:231
FORMAT_IP_ADJACENCY_BRIEF
Definition:
format.h:54
format_ip_adjacency_flags_t_
format_ip_adjacency_flags_t_
Definition:
format.h:51
format_ip6_address
format_function_t format_ip6_address
Definition:
format.h:94
unformat_pg_ip4_header
unformat_function_t unformat_pg_ip4_header
Definition:
format.h:90
unformat_ip6_header
unformat_function_t unformat_ip6_header
Definition:
format.h:96
format_ip4_address
format_function_t format_ip4_address
Definition:
format.h:78
unformat_pg_ip6_header
unformat_function_t unformat_pg_ip6_header
Definition:
format.h:98
format_ip_adjacency_packet_data
format_function_t format_ip_adjacency_packet_data
Definition:
format.h:59
format_ip_protocol
format_function_t format_ip_protocol
Definition:
format.h:45
unformat_ip4_address
unformat_function_t unformat_ip4_address
Definition:
format.h:75
FORMAT_IP_ADJACENCY_DETAIL
Definition:
format.h:55
format_tcp_udp_port
format_function_t format_tcp_udp_port
Definition:
format.h:48
format_ip_adjacency_flags_t
enum format_ip_adjacency_flags_t_ format_ip_adjacency_flags_t
unformat_ip4_match
unformat_function_t unformat_ip4_match
Definition:
format.h:88
ip46_type_t
ip46_type_t
Definition:
format.h:63
unformat_ip6_address
unformat_function_t unformat_ip6_address
Definition:
format.h:93
unformat_ip46_address
unformat_function_t unformat_ip46_address
Definition:
format.h:70
unformat_ip_protocol
unformat_function_t unformat_ip_protocol
Definition:
format.h:46
unformat_ip4_header
unformat_function_t unformat_ip4_header
Definition:
format.h:82
FORMAT_IP_ADJACENCY_NONE
Definition:
format.h:53
format_ip4_header
format_function_t format_ip4_header
Definition:
format.h:85
format_function_t
u8 *( format_function_t)(u8 *s, va_list *args)
Definition:
format.h:48
format_ip6_address_and_length
format_function_t format_ip6_address_and_length
Definition:
format.h:95
unformat_pg_tcp_header
unformat_function_t unformat_pg_tcp_header
Definition:
format.h:103
IP46_TYPE_IP6
Definition:
format.h:66
format_tcp_header
format_function_t format_tcp_header
Definition:
format.h:101
IP46_TYPE_ANY
Definition:
format.h:64
format_udp_header
format_function_t format_udp_header
Definition:
format.h:101
format_ip6_header
format_function_t format_ip6_header
Definition:
format.h:97
unformat_tcp_udp_port
unformat_function_t unformat_tcp_udp_port
Definition:
format.h:49
format_ip4_address_and_length
format_function_t format_ip4_address_and_length
Definition:
format.h:79
unformat_pg_udp_header
unformat_function_t unformat_pg_udp_header
Definition:
format.h:103
IP46_TYPE_IP4
Definition:
format.h:65
format_ip_adjacency
format_function_t format_ip_adjacency
Definition:
format.h:58
vnet
vnet
ip
format.h
Generated on Thu Nov 3 2016 18:25:06 for FD.io VPP by
1.8.11