• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1  #ifndef LLC_C_ST_H
2  #define LLC_C_ST_H
3  /*
4   * Copyright (c) 1997 by Procom Technology,Inc.
5   *		2001 by Arnaldo Carvalho de Melo <acme@conectiva.com.br>
6   *
7   * This program can be redistributed or modified under the terms of the
8   * GNU General Public License as published by the Free Software Foundation.
9   * This program is distributed without any warranty or implied warranty
10   * of merchantability or fitness for a particular purpose.
11   *
12   * See the GNU General Public License for more details.
13   */
14  
15  #include <net/llc_c_ac.h>
16  #include <net/llc_c_ev.h>
17  
18  /* Connection component state management */
19  /* connection states */
20  #define LLC_CONN_OUT_OF_SVC		 0	/* prior to allocation */
21  
22  #define LLC_CONN_STATE_ADM		 1	/* disc, initial state */
23  #define LLC_CONN_STATE_SETUP		 2	/* disconnected state */
24  #define LLC_CONN_STATE_NORMAL		 3	/* connected state */
25  #define LLC_CONN_STATE_BUSY		 4	/* connected state */
26  #define LLC_CONN_STATE_REJ		 5	/* connected state */
27  #define LLC_CONN_STATE_AWAIT		 6	/* connected state */
28  #define LLC_CONN_STATE_AWAIT_BUSY	 7	/* connected state */
29  #define LLC_CONN_STATE_AWAIT_REJ	 8	/* connected state */
30  #define LLC_CONN_STATE_D_CONN		 9	/* disconnected state */
31  #define LLC_CONN_STATE_RESET		10	/* disconnected state */
32  #define LLC_CONN_STATE_ERROR		11	/* disconnected state */
33  #define LLC_CONN_STATE_TEMP		12	/* disconnected state */
34  
35  #define NBR_CONN_STATES			12	/* size of state table */
36  #define NO_STATE_CHANGE			100
37  
38  /* Connection state table structure */
39  struct llc_conn_state_trans {
40  	llc_conn_ev_t	   ev;
41  	u8		   next_state;
42  	const llc_conn_ev_qfyr_t *ev_qualifiers;
43  	const llc_conn_action_t  *ev_actions;
44  };
45  
46  struct llc_conn_state {
47  	u8			    current_state;
48  	struct llc_conn_state_trans **transitions;
49  };
50  
51  extern struct llc_conn_state llc_conn_state_table[];
52  #endif /* LLC_C_ST_H */
53