FD.io VPP
v21.10.1-2-g0a485f517
Vector Packet Processing
machine.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2017 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 __LACP_MACHINE_H__
17
#define __LACP_MACHINE_H__
18
19
#include <stdint.h>
20
21
#define LACP_NOACTION ((int (*)(void *, void *))0)
22
#define LACP_ACTION_ROUTINE(rtn) ((int(*)(void *, void *))rtn)
23
24
typedef
int (*
action_func
) (
void
*,
void
*);
25
26
typedef
struct
27
{
28
action_func
action
;
29
int
next_state
;
30
}
lacp_fsm_state_t
;
31
32
typedef
void (*
debug_func
) (
member_if_t
* mif,
int
event,
int
state
,
33
lacp_fsm_state_t
* transition);
34
35
typedef
struct
36
{
37
lacp_fsm_state_t
*
state_table
;
38
}
lacp_fsm_machine_t
;
39
40
typedef
struct
41
{
42
lacp_fsm_machine_t
*
tables
;
43
debug_func
debug
;
44
}
lacp_machine_t
;
45
46
extern
int
lacp_machine_dispatch
(
lacp_machine_t
* machine,
vlib_main_t
*
vm
,
47
member_if_t
* mif,
int
event,
int
*
state
);
48
49
#endif
/* __LACP_MACHINE_H__ */
50
51
/*
52
* fd.io coding-style-patch-verification: ON
53
*
54
* Local Variables:
55
* eval: (c-set-style "gnu")
56
* End:
57
*/
lacp_machine_t::tables
lacp_fsm_machine_t * tables
Definition:
machine.h:42
vm
vlib_main_t * vm
X-connect all packets from the HOST to the PHY.
Definition:
nat44_ei.c:3047
state
vl_api_dhcp_client_state_t state
Definition:
dhcp.api:201
lacp_fsm_state_t
Definition:
machine.h:26
action_func
int(* action_func)(void *, void *)
Definition:
machine.h:24
lacp_fsm_machine_t
Definition:
machine.h:35
debug_func
void(* debug_func)(member_if_t *mif, int event, int state, lacp_fsm_state_t *transition)
Definition:
machine.h:32
member_if_t
Definition:
node.h:213
lacp_fsm_machine_t::state_table
lacp_fsm_state_t * state_table
Definition:
machine.h:37
lacp_machine_dispatch
int lacp_machine_dispatch(lacp_machine_t *machine, vlib_main_t *vm, member_if_t *mif, int event, int *state)
Definition:
lacp.c:317
lacp_machine_t::debug
debug_func debug
Definition:
machine.h:43
vlib_main_t
Definition:
main.h:102
lacp_fsm_state_t::next_state
int next_state
Definition:
machine.h:29
lacp_machine_t
Definition:
machine.h:40
lacp_fsm_state_t::action
action_func action
Definition:
machine.h:28
src
plugins
lacp
machine.h
Generated on Sat Jan 8 2022 10:35:29 for FD.io VPP by
1.8.17