linux/net/llc/llc_s_st.c
<<
>>
Prefs
   1/*
   2 * llc_s_st.c - Defines SAP component state machine transitions.
   3 *
   4 * The followed transitions are SAP component state machine transitions
   5 * which are described in 802.2 LLC protocol standard document.
   6 *
   7 * Copyright (c) 1997 by Procom Technology, Inc.
   8 *               2001-2003 by Arnaldo Carvalho de Melo <acme@conectiva.com.br>
   9 *
  10 * This program can be redistributed or modified under the terms of the
  11 * GNU General Public License as published by the Free Software Foundation.
  12 * This program is distributed without any warranty or implied warranty
  13 * of merchantability or fitness for a particular purpose.
  14 *
  15 * See the GNU General Public License for more details.
  16 */
  17#include <linux/types.h>
  18#include <net/llc_if.h>
  19#include <net/llc_s_ev.h>
  20#include <net/llc_s_ac.h>
  21#include <net/llc_s_st.h>
  22
  23/* dummy last-transition indicator; common to all state transition groups
  24 * last entry for this state
  25 * all members are zeros, .bss zeroes it
  26 */
  27static struct llc_sap_state_trans llc_sap_state_trans_end;
  28
  29/* state LLC_SAP_STATE_INACTIVE transition for
  30 * LLC_SAP_EV_ACTIVATION_REQ event
  31 */
  32static llc_sap_action_t llc_sap_inactive_state_actions_1[] = {
  33        [0] = llc_sap_action_report_status,
  34        [1] = NULL,
  35};
  36
  37static struct llc_sap_state_trans llc_sap_inactive_state_trans_1 = {
  38        .ev =           llc_sap_ev_activation_req,
  39        .next_state =   LLC_SAP_STATE_ACTIVE,
  40        .ev_actions =   llc_sap_inactive_state_actions_1,
  41};
  42
  43/* array of pointers; one to each transition */
  44static struct llc_sap_state_trans *llc_sap_inactive_state_transitions[] = {
  45        [0] = &llc_sap_inactive_state_trans_1,
  46        [1] = &llc_sap_state_trans_end,
  47};
  48
  49/* state LLC_SAP_STATE_ACTIVE transition for LLC_SAP_EV_RX_UI event */
  50static llc_sap_action_t llc_sap_active_state_actions_1[] = {
  51        [0] = llc_sap_action_unitdata_ind,
  52        [1] = NULL,
  53};
  54
  55static struct llc_sap_state_trans llc_sap_active_state_trans_1 = {
  56        .ev =           llc_sap_ev_rx_ui,
  57        .next_state =   LLC_SAP_STATE_ACTIVE,
  58        .ev_actions =   llc_sap_active_state_actions_1,
  59};
  60
  61/* state LLC_SAP_STATE_ACTIVE transition for LLC_SAP_EV_UNITDATA_REQ event */
  62static llc_sap_action_t llc_sap_active_state_actions_2[] = {
  63        [0] = llc_sap_action_send_ui,
  64        [1] = NULL,
  65};
  66
  67static struct llc_sap_state_trans llc_sap_active_state_trans_2 = {
  68        .ev =           llc_sap_ev_unitdata_req,
  69        .next_state =   LLC_SAP_STATE_ACTIVE,
  70        .ev_actions =   llc_sap_active_state_actions_2,
  71};
  72
  73/* state LLC_SAP_STATE_ACTIVE transition for LLC_SAP_EV_XID_REQ event */
  74static llc_sap_action_t llc_sap_active_state_actions_3[] = {
  75        [0] = llc_sap_action_send_xid_c,
  76        [1] = NULL,
  77};
  78
  79static struct llc_sap_state_trans llc_sap_active_state_trans_3 = {
  80        .ev =           llc_sap_ev_xid_req,
  81        .next_state =   LLC_SAP_STATE_ACTIVE,
  82        .ev_actions =   llc_sap_active_state_actions_3,
  83};
  84
  85/* state LLC_SAP_STATE_ACTIVE transition for LLC_SAP_EV_RX_XID_C event */
  86static llc_sap_action_t llc_sap_active_state_actions_4[] = {
  87        [0] = llc_sap_action_send_xid_r,
  88        [1] = NULL,
llc_sa9_ev_xid_req,
  79static struct llc_sap_stction_t llc_sap_ac9LLC_SAP_9TATE_ACTIVE,
  56        .        [0] =         [1] =   81        .next_state =     83};
  82        .ev_actiction_t   84
,
  84
  84
  84
/llc_s_st.c#L73" >/a>,
  86static llc_sap_action_t llc_sap_active_state_actions_4[9span>
  87        [=   810pan>
  88        [1] = NULL10pan>
  71<10pan>
  710pan>
  79static struct llc_sap_stction_t llc_sap_ac9LLC_SAP_9TATE_ACTIVE10pan>
  56        .        [0] = NULL10pan>
  81        .next_state =     83<10pan>
  82        .ev_actiction_t   83<10pan>
  77<10>
  710>
  49/* state LLC_SAP_STATTESTCTIVE transition for LLC_SAP_EV_XID_REQ event */
  50static llc_sap_action_t llc_sap_active_state_actions_4[1span>
  51        [xid_rtesthref="+code=llc_sap_action_send_xid_ctesthrref"ass="sref"9ne" name9"L83">  83<1span>
  52        [1] = NULL1span>
  83<1span>
  81span>
  55static struct llc_sap_state_trans llc_sap_ac9LLC_SAP_9TATE_ACTIVE1span>
  56        .ev =  testh     NULL1span>
  57        .next_state =   LLC_SAP_STATE_ACTIVE1>>
  58        .ev_actions =   LLC_SAP_STATE_ACTIVE1>>
llc_sa9_ev_xid_req1>>
  61/* state LLC_SAP_STAT

  62static llc_sap_action_t llc_sap_active_state_actions_4[12
  63        [0] = testh ef="+code=llc_sap_action_send_xid_ctesthrhref="+code=NULL" class="sref">NULL1span>
  64        [1] = NULL1span>
  841span>
  27static struct llc_sap_statte_ac_SAP_STAa href7code=llc_sap_active_state_ac_SAP_STAa href7"sref">llc_sap_ac9LLC_SAP_9TATE_ACTIVE1;
  68        .ev =   = testhref="+code=llc_sap_actio=   = testhrhref="+code=NULL" class="sref">NULL1s>
  69        .next_state =   LLC_SAP_STATE_ACTIVE1span>
  70        .ev_actions =   LLC_SAP_STATE_ACTIVE1s>
  71<1span>
  71] = {
  73/* state LLC_SAP_STAT
/llc_s_st.c#L73" 1,
  74static llc_sap_action_t llc_sap_active_state_actions_4[1,
  75        [testhref="+code=llc_sap_action_unitdattesthref" class="sref">LLC_SAP_STATE_ACTIVE1span>
  76        [1] = NULL16
  77<1> = {
  71,
  79static struct llc_sap_state_trans llc_sap_ac9LLC_SAP_9TATE_ACTIVE1,
  68        .ev =   = testhref="+code=llc_sap_actio[0] = testhrhref="+code=NULL" class="sref">NULL1,
  81        .next_state =   LLC_SAP_STATE_ACTIVE1/a>};
  82        .ev_actions =   LLC_SAP_STATE_ACTIVE1/ = {
  83<1span>
  81] = {
  85/* state r fitness for a particular purpose.
 * LLC_SAP_EV_ACTIVATION_REQ event,
/llc_s_st.c#L73" 1/a>};
  86static llc_sap_action_t llc_sap_active_state_actions_4[18
  87        [0] = llc_sap_action_report_status1span>
  88        [1] = NULL1] = {
  71<1,
  71,
  79static struct llc_sap_stction_t llc_sap_ac9LLC_SAP_9TATE_ACTIVE1/a>};
  56        .        [0]dete_ac    NULL1] = {
  81        .next_stateNULL1]pan>
  82        .ev_actions =   NULL1]/a>,
  77<1,
  71,
  43/* array of pointers; one to each transition */};
  79static struct llc_sap_stction_t =           llc_s54"15d="L82" classansitis_4[18
llc_sap_active_state_trans_2<]pan>
llc_sap_active_state_trans_1<]pan>
llc_sap_active_state_trans_3<]pan>
llc_sap_ac9LLC_SAP_9TATE_ACTI]pan>
llc_sap_ac9LLC_SAP_9TATE_ACTI]pan>
      5 [1] = &llc_sap_ac9LLC_SAP_9TATE_ACTI]pan>
llc_sap_ac9LLC_SAP_9TATE_ACTI]pan>
llc_sap_ac9LLC_SAP_9TATE_ACTI]pan>
llc_sap_ac9LLC_SAP_9TATE_ACTI]pan>
llc_sap_state_trans_end,
re S/* stach transititablet"> */
llc_sap_stt llc_sap_statables_4[18
NULL1 - 1a>[18
NULL1]pan>
llc_sap_inactive_state_transitions" class="sref">llc_sap_inactive_state_transitions<]pan>
LLC_SAP_STATE_ACTIVE1 - 1a>[18
LLC_SAP_STATE_ACTIVE1/a>};
llc_s54"15d="L82" classansitions" class="sref">llc_s54"15d="L82" classansitis_4};



 * Torigap_l LXR se Softwaed by t};
LXR s="cev_uys_4li.norefxr@l">li.nos_4<.
   


fxr.l">li.no kindly hostished };
pro.noreRedpill L">pro ASs_4ux s=n_resing and oper="sres services since(c) 5.
   
/bodydi>/htmldi