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
ip6_hop_by_hop_packet.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
#ifndef __included_ip6_hop_by_hop_packet_h__
16
#define __included_ip6_hop_by_hop_packet_h__
17
18
typedef
struct
{
19
/* Protocol for next header */
20
u8
protocol
;
21
/*
22
* Length of hop_by_hop header in 8 octet units,
23
* not including the first 8 octets
24
*/
25
u8
length
;
26
}
ip6_hop_by_hop_header_t
;
27
28
typedef
struct
{
29
/* Option Type */
30
#define HBH_OPTION_TYPE_SKIP_UNKNOWN (0x00)
31
#define HBH_OPTION_TYPE_DISCARD_UNKNOWN (0x40)
32
#define HBH_OPTION_TYPE_DISCARD_UNKNOWN_ICMP (0x80)
33
#define HBH_OPTION_TYPE_DISCARD_UNKNOWN_ICMP_NOT_MCAST (0xc0)
34
#define HBH_OPTION_TYPE_HIGH_ORDER_BITS (0xc0)
35
#define HBH_OPTION_TYPE_DATA_CHANGE_ENROUTE (1<<5)
36
u8
type
;
37
/* Length in octets of the option data field */
38
u8
length
;
39
}
ip6_hop_by_hop_option_t
;
40
41
/* $$$$ IANA banana constants */
42
#define HBH_OPTION_TYPE_IOAM_TRACE_DATA_LIST 59
/* Third highest bit set (change en-route) */
43
#define HBH_OPTION_TYPE_IOAM_PROOF_OF_TRANSIT 60
/* Third highest bit set (change en-route) */
44
#define HBH_OPTION_TYPE_IOAM_EDGE_TO_EDGE 29
45
46
47
typedef
CLIB_PACKED
(
struct
{
48
ip6_hop_by_hop_option_t
hdr;
49
u8
e2e_type;
50
u8
reserved;
51
u32
e2e_data;
52
}) ioam_e2e_option_t;
53
54
#endif
/* __included_ip6_hop_by_hop_packet_h__ */
ip6_hop_by_hop_option_t::type
u8 type
Definition:
ip6_hop_by_hop_packet.h:36
ip6_hop_by_hop_option_t::length
u8 length
Definition:
ip6_hop_by_hop_packet.h:38
CLIB_PACKED
typedef CLIB_PACKED(struct{ip6_hop_by_hop_option_t hdr;u8 e2e_type;u8 reserved;u32 e2e_data;}) ioam_e2e_option_t
ip6_hop_by_hop_header_t
Definition:
ip6_hop_by_hop_packet.h:18
ip6_hop_by_hop_option_t
Definition:
ip6_hop_by_hop_packet.h:28
u32
unsigned int u32
Definition:
types.h:88
u8
unsigned char u8
Definition:
types.h:56
ip6_hop_by_hop_header_t::length
u8 length
Definition:
ip6_hop_by_hop_packet.h:25
ip6_hop_by_hop_header_t::protocol
u8 protocol
Definition:
ip6_hop_by_hop_packet.h:20
vnet
vnet
ip
ip6_hop_by_hop_packet.h
Generated on Thu Nov 3 2016 18:24:41 for FD.io VPP by
1.8.11