FD.io VPP  v16.12-rc0-308-g931be3a
Vector Packet Processing
nat64_tcp_sm.h
Go to the documentation of this file.
1 /*
2  *------------------------------------------------------------------
3  * nat64_tcp_sm.h - Stateful NAT64 translation TCP State machine
4  *
5  * Copyright (c) 2011 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 #ifndef __NAT64_TCP_SM_H__
20 #define __NAT64_TCP_SM_H__
21 
22 
23 /* TCP States */
24 typedef enum {
35 
36 /* TCP Events */
37 typedef enum {
48 
49 /* TCP Actions */
50 typedef enum {
52  TCP_COND_FORWARD, /* Conditional forward, based on presence of
53  * session and bib entries */
62 
63 typedef struct {
67 
68 typedef struct {
71 
72 extern nat64_tcp_state_trans_t nat64_tcp_sm_lookup[TCP_NONE];
73 
74 /*
75 inline void
76 nat64_update_v6_to_v4_tcp (nat64_v6_to_v4_pipeline_data_t *pctx_ptr,
77  nat64_bib_entry_t *bib_ptr);
78 
79 inline u8 nat64_v6_to_v4_tcp_perform_action (
80  spp_ctx_t *ctx,
81  nat64_v6_to_v4_pipeline_data_t *pctx_ptr,
82  nat64_bib_entry_t *bib_db,
83  nat64_session_entry_t *session_db);
84 
85 inline void
86 nat64_copy_tcp_into_pctx (nat64_v6_to_v4_pipeline_data_t *pctx_ptr);
87 */
88 
89 
90 
91 #endif
nat64_tcp_actions
Definition: nat64_tcp_sm.h:50
nat64_tcp_events
Definition: nat64_tcp_sm.h:37
nat64_tcp_states next_state
Definition: nat64_tcp_sm.h:64
nat64_tcp_states
Definition: nat64_tcp_sm.h:24
nat64_tcp_actions action
Definition: nat64_tcp_sm.h:65