FD.io VPP  v17.01-9-ge7dcee4
Vector Packet Processing
ip6_ioam_e2e.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 __included_ip6_ioam_e2e_h__
17 #define __included_ip6_ioam_e2e_h__
18 
19 #include "ip6_ioam_seqno.h"
20 
21 typedef struct ioam_e2e_data_t_ {
26 
27 typedef struct {
32 
34 
35 static inline ioam_seqno_data *
37 {
38  ioam_e2e_data_t *data = NULL;
39  u32 index;
40 
41  index = get_flow_data_from_flow_ctx(flow_ctx,
43  data = &ioam_e2e_main.e2e_data[index];
44  return &(data->seqno_data);
45 }
46 
47 #endif /* __included_ioam_e2e_h__ */
ioam_e2e_main_t ioam_e2e_main
Definition: ip6_ioam_e2e.c:30
#define NULL
Definition: clib.h:55
static ioam_seqno_data * ioam_e2ec_get_seqno_data_from_flow_ctx(u32 flow_ctx)
Definition: ip6_ioam_e2e.h:36
#define HBH_OPTION_TYPE_IOAM_EDGE_TO_EDGE
vnet_main_t * vnet_main
Definition: ip6_ioam_e2e.h:30
static u32 get_flow_data_from_flow_ctx(u32 flow_ctx, u8 option)
vlib_main_t * vlib_main
Definition: ip6_ioam_e2e.h:29
ioam_seqno_data seqno_data
Definition: ip6_ioam_e2e.h:24
unsigned int u32
Definition: types.h:88
struct ioam_e2e_data_t_ ioam_e2e_data_t
ioam_e2e_data_t * e2e_data
Definition: ip6_ioam_e2e.h:28