FreeCalypso > hg > fc-magnetite
annotate src/g23m-fad/ppp/ppp_onas.c @ 469:2ce0f8b191be
romvecs-patch/mkromvecs.sh: generation of patched images
| author | Mychaela Falconia <falcon@freecalypso.org> | 
|---|---|
| date | Sun, 25 Mar 2018 05:44:38 +0000 | 
| parents | 90eb61ecd093 | 
| children | 
| rev | line source | 
|---|---|
| 174 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2 +----------------------------------------------------------------------------- | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 3 | Project : | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 4 | Modul : | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 5 +----------------------------------------------------------------------------- | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 6 | Copyright 2002 Texas Instruments Berlin, AG | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 7 | All rights reserved. | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 8 | | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 9 | This file is confidential and a trade secret of Texas | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 10 | Instruments Berlin, AG | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 11 | The receipt of or possession of this file does not convey | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 12 | any rights to reproduce or disclose its contents or to | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 13 | manufacture, use, or sell anything it may describe, in | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 14 | whole, or in part, without the specific written consent of | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 15 | Texas Instruments Berlin, AG. | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 16 +----------------------------------------------------------------------------- | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 17 | Purpose : This modul is part of the entity PPP and implements all | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 18 | functions to handles the incoming process internal signals as | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 19 | described in the SDL-documentation (ONA-statemachine) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 20 +----------------------------------------------------------------------------- | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 21 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 22 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 23 #ifndef PPP_ONAS_C | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 24 #define PPP_ONAS_C | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 25 #endif /* !PPP_ONAS_C */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 26 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 27 #define ENTITY_PPP | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 28 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 29 /*==== INCLUDES =============================================================*/ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 30 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 31 #include "typedefs.h" /* to get Condat data types */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 32 #include "vsi.h" /* to get a lot of macros */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 33 #include "macdef.h" /* to get a lot of macros */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 34 #include "custom.h" /* to get a lot of macros */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 35 #include "gsm.h" /* to get a lot of macros */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 36 #include "cnf_ppp.h" /* to get cnf-definitions */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 37 #include "mon_ppp.h" /* to get mon-definitions */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 38 #include "prim.h" /* to get the definitions of used SAP and directions */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 39 #include "dti.h" /* to get the DTILIB definitions */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 40 #include "ppp.h" /* to get the global entity definitions */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 41 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 42 #include "ppp_arbf.h" /* to get the arb function definitions */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 43 #include "ppp_ftxs.h" /* to get the ftx signal interface */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 44 #include "ppp_lcps.h" /* to get the lcp signal interface */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 45 #include "ppp_ncps.h" /* to get the ncp signal interface */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 46 #include "ppp_onaf.h" /* to get the ona function definitions */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 47 #include "ppp_rts.h" /* to get the rt signal interface */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 48 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 49 /*==== CONST ================================================================*/ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 50 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 51 /*==== LOCAL VARS ===========================================================*/ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 52 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 53 /*==== PRIVATE FUNCTIONS ====================================================*/ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 54 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 55 /*==== PUBLIC FUNCTIONS =====================================================*/ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 56 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 57 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 58 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 59 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 60 +------------------------------------------------------------------------------ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 61 | Function : sig_any_ona_ruc_ind | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 62 +------------------------------------------------------------------------------ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 63 | Description : Handles the internal signal SIG_ANY_ONA_RUC_IND | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 64 | | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 65 | Parameters : ptype - type of packet | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 66 | packet - pointer to a generic data descriptor | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 67 | | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 68 +------------------------------------------------------------------------------ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 69 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 70 GLOBAL void sig_any_ona_ruc_ind (USHORT ptype, T_desc2* packet) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 71 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 72 UBYTE index; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 73 TRACE_ISIG( "sig_any_ona_ruc_ind" ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 74 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 75 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 76 * determine ONA-instance | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 77 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 78 ona_get_inst_index(ptype, &index); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 79 ppp_data->ona = & ppp_data->ona_base[index]; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 80 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 81 switch( GET_STATE( PPP_SERVICE_ONA ) ) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 82 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 83 case ONA_CLOSING: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 84 case ONA_REQ_SENT: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 85 case ONA_ACK_RCVD: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 86 case ONA_ACK_SENT: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 87 case ONA_OPENED: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 88 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 89 * send code reject | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 90 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 91 sig_any_ftx_packet_req(ptype, packet); /* scj */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 92 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 93 default: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 94 TRACE_ERROR( "SIG_ANY_ONA_RUC_IND unexpected" ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 95 arb_discard_packet(packet); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 96 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 97 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 98 } /* sig_any_ona_ruc_ind() */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 99 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 100 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 101 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 102 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 103 +------------------------------------------------------------------------------ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 104 | Function : sig_any_ona_open_ind | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 105 +------------------------------------------------------------------------------ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 106 | Description : Handles the internal signal SIG_ANY_ONA_OPEN_IND | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 107 | | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 108 | Parameters : ptype - type of packet | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 109 | packet - pointer to a generic data descriptor | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 110 | | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 111 +------------------------------------------------------------------------------ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 112 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 113 GLOBAL void sig_any_ona_open_ind (USHORT ptype, T_desc2* packet) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 114 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 115 UBYTE index; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 116 TRACE_ISIG( "sig_any_ona_open_ind" ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 117 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 118 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 119 * determine ONA-instance | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 120 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 121 ona_get_inst_index(ptype, &index); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 122 ppp_data->ona = & ppp_data->ona_base[index]; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 123 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 124 switch( GET_STATE( PPP_SERVICE_ONA ) ) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 125 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 126 case ONA_OPENED: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 127 case ONA_CLOSED: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 128 case ONA_CLOSING: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 129 case ONA_REQ_SENT: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 130 case ONA_ACK_RCVD: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 131 case ONA_ACK_SENT: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 132 SET_STATE( PPP_SERVICE_ONA, ONA_REQ_SENT ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 133 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 134 * reset counters | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 135 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 136 ppp_data->ona->restarts = ppp_data->mc; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 137 ppp_data->ona->failures = ppp_data->mf; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 138 ppp_data->ona->loops = ppp_data->mc + 1; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 139 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 140 * send configure request | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 141 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 142 sig_any_ftx_packet_req(ptype, packet); /* scr */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 143 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 144 * start timer | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 145 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 146 if(ppp_data->ona->restarts > 0) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 147 ppp_data->ona->restarts--; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 148 sig_any_rt_rrt_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 149 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 150 default: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 151 TRACE_ERROR( "SIG_ANY_ONA_OPEN_IND unexpected" ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 152 arb_discard_packet(packet); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 153 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 154 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 155 } /* sig_any_ona_open_ind() */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 156 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 157 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 158 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 159 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 160 +------------------------------------------------------------------------------ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 161 | Function : sig_any_ona_down_ind | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 162 +------------------------------------------------------------------------------ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 163 | Description : Handles the internal signal SIG_ANY_ONA_DOWN_IND | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 164 | | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 165 | Parameters : ptype - type of packet | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 166 | | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 167 +------------------------------------------------------------------------------ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 168 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 169 GLOBAL void sig_any_ona_down_ind (USHORT ptype) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 170 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 171 UBYTE index; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 172 TRACE_ISIG( "sig_any_ona_down_ind" ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 173 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 174 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 175 * determine ONA-instance | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 176 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 177 ona_get_inst_index(ptype, &index); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 178 ppp_data->ona = & ppp_data->ona_base[index]; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 179 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 180 switch( GET_STATE( PPP_SERVICE_ONA ) ) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 181 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 182 case ONA_CLOSED: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 183 case ONA_OPENED: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 184 SET_STATE( PPP_SERVICE_ONA, ONA_CLOSED ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 185 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 186 case ONA_CLOSING: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 187 case ONA_REQ_SENT: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 188 case ONA_ACK_RCVD: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 189 case ONA_ACK_SENT: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 190 SET_STATE( PPP_SERVICE_ONA, ONA_CLOSED ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 191 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 192 * stop timer | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 193 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 194 sig_any_rt_srt_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 195 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 196 default: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 197 TRACE_ERROR( "SIG_ANY_ONA_DOWN_IND unexpected" ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 198 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 199 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 200 } /* sig_any_ona_down_ind() */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 201 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 202 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 203 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 204 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 205 +------------------------------------------------------------------------------ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 206 | Function : sig_any_ona_close_ind | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 207 +------------------------------------------------------------------------------ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 208 | Description : Handles the internal signal SIG_ANY_ONA_CLOSE_IND | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 209 | | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 210 | Parameters : ptype - type of packet | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 211 | packet - pointer to a generic data descriptor | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 212 | | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 213 +------------------------------------------------------------------------------ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 214 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 215 GLOBAL void sig_any_ona_close_ind (USHORT ptype, T_desc2* packet) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 216 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 217 UBYTE index; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 218 TRACE_ISIG( "sig_any_ona_close_ind" ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 219 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 220 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 221 * determine ONA-instance | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 222 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 223 ona_get_inst_index(ptype, &index); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 224 ppp_data->ona = & ppp_data->ona_base[index]; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 225 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 226 switch( GET_STATE( PPP_SERVICE_ONA ) ) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 227 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 228 case ONA_CLOSED: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 229 arb_discard_packet(packet); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 230 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 231 * send This-Layer-Finished signal | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 232 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 233 if (ptype EQ DTI_PID_LCP) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 234 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 235 sig_ona_lcp_tlf_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 236 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 237 else if (ptype EQ DTI_PID_IPCP) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 238 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 239 sig_ona_ncp_tlf_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 240 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 241 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 242 case ONA_CLOSING: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 243 arb_discard_packet(packet); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 244 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 245 case ONA_OPENED: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 246 case ONA_REQ_SENT: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 247 case ONA_ACK_RCVD: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 248 case ONA_ACK_SENT: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 249 SET_STATE( PPP_SERVICE_ONA, ONA_CLOSING ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 250 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 251 * reset counter | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 252 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 253 ppp_data->ona->restarts = ppp_data->mt; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 254 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 255 * send terminate request | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 256 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 257 sig_any_ftx_packet_req(ptype, packet); /* str */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 258 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 259 * start timer | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 260 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 261 if(ppp_data->ona->restarts > 0) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 262 ppp_data->ona->restarts--; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 263 sig_any_rt_rrt_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 264 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 265 default: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 266 TRACE_ERROR( "SIG_ANY_ONA_CLOSE_IND unexpected" ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 267 arb_discard_packet(packet); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 268 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 269 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 270 } /* sig_any_ona_close_ind() */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 271 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 272 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 273 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 274 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 275 +------------------------------------------------------------------------------ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 276 | Function : sig_any_ona_rtr_ind | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 277 +------------------------------------------------------------------------------ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 278 | Description : Handles the internal signal SIG_ANY_ONA_RTR_IND | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 279 | | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 280 | Parameters : ptype - type of packet | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 281 | packet - pointer to a generic data descriptor | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 282 | | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 283 +------------------------------------------------------------------------------ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 284 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 285 GLOBAL void sig_any_ona_rtr_ind (USHORT ptype, T_desc2* packet) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 286 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 287 UBYTE index; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 288 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 289 TRACE_ISIG( "sig_any_ona_rtr_ind" ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 290 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 291 TRACE_EVENT( "Peer requested Termination by PPP frame" ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 292 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 293 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 294 * determine ONA-instance | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 295 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 296 ona_get_inst_index(ptype, &index); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 297 ppp_data->ona = & ppp_data->ona_base[index]; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 298 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 299 switch( GET_STATE( PPP_SERVICE_ONA ) ) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 300 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 301 case ONA_CLOSING: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 302 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 303 * send terminate acknowledge | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 304 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 305 sig_any_ftx_packet_req(ptype, packet); /* sta */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 306 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 307 case ONA_OPENED: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 308 SET_STATE( PPP_SERVICE_ONA, ONA_CLOSING ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 309 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 310 * send This-Layer-Down signal | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 311 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 312 if (ptype EQ DTI_PID_LCP) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 313 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 314 sig_ona_lcp_tld_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 315 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 316 else if (ptype EQ DTI_PID_IPCP) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 317 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 318 sig_ona_ncp_tld_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 319 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 320 ppp_data->ona = & ppp_data->ona_base[index]; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 321 case ONA_REQ_SENT: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 322 case ONA_ACK_RCVD: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 323 case ONA_ACK_SENT: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 324 SET_STATE( PPP_SERVICE_ONA, ONA_CLOSING ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 325 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 326 * set counter to zero | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 327 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 328 ppp_data->ona->restarts = 0; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 329 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 330 * send terminate acknowledge | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 331 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 332 sig_any_ftx_packet_req(ptype, packet); /* sta */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 333 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 334 * start timer | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 335 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 336 sig_any_rt_rrt_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 337 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 338 default: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 339 TRACE_ERROR( "SIG_ANY_ONA_RTR_IND unexpected" ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 340 arb_discard_packet(packet); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 341 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 342 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 343 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 344 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 345 * set error code | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 346 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 347 if(ppp_data->ppp_cause EQ 0) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 348 ppp_data->ppp_cause = PPP_TERM_OK_PEER; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 349 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 350 } /* sig_any_ona_rtr_ind() */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 351 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 352 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 353 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 354 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 355 +------------------------------------------------------------------------------ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 356 | Function : sig_any_ona_to_ind | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 357 +------------------------------------------------------------------------------ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 358 | Description : Handles the internal signal SIG_ANY_ONA_TO_IND | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 359 | | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 360 | Parameters : ptype - type of packet | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 361 | | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 362 +------------------------------------------------------------------------------ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 363 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 364 GLOBAL void sig_any_ona_to_ind (USHORT ptype) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 365 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 366 UBYTE index; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 367 T_desc2* packet = NULL; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 368 TRACE_ISIG( "sig_any_ona_to_ind" ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 369 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 370 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 371 * determine ONA-instance | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 372 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 373 ona_get_inst_index(ptype, &index); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 374 ppp_data->ona = & ppp_data->ona_base[index]; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 375 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 376 switch( GET_STATE( PPP_SERVICE_ONA ) ) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 377 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 378 case ONA_CLOSING: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 379 if (ppp_data->ona->restarts EQ 0) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 380 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 381 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 382 * negative timeout | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 383 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 384 SET_STATE( PPP_SERVICE_ONA, ONA_CLOSED ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 385 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 386 * set error code | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 387 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 388 if(ppp_data->ppp_cause EQ 0) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 389 ppp_data->ppp_cause = PPP_TERM_NO_RESPONSE; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 390 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 391 * send This-Layer-Finished signal | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 392 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 393 if (ptype EQ DTI_PID_LCP) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 394 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 395 sig_ona_lcp_tlf_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 396 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 397 else if (ptype EQ DTI_PID_IPCP) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 398 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 399 sig_ona_ncp_tlf_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 400 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 401 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 402 else | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 403 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 404 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 405 * positive timeout | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 406 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 407 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 408 * request a new terminate request packet | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 409 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 410 if (ptype EQ DTI_PID_LCP) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 411 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 412 sig_ona_lcp_str_req(&packet); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 413 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 414 else if (ptype EQ DTI_PID_IPCP) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 415 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 416 sig_ona_ncp_str_req(&packet); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 417 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 418 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 419 * set counter and send terminate request packet | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 420 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 421 ppp_data->ona->restarts--; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 422 sig_any_ftx_packet_req(ptype, packet); /* str */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 423 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 424 * restart timer | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 425 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 426 sig_any_rt_rrt_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 427 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 428 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 429 case ONA_REQ_SENT: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 430 case ONA_ACK_SENT: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 431 if (ppp_data->ona->restarts EQ 0) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 432 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 433 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 434 * negative timeout | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 435 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 436 SET_STATE( PPP_SERVICE_ONA, ONA_CLOSED ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 437 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 438 * set error code | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 439 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 440 if(ppp_data->ppp_cause EQ 0) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 441 ppp_data->ppp_cause = PPP_TERM_NO_RESPONSE; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 442 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 443 * send This-Layer-Finished signal | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 444 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 445 if (ptype EQ DTI_PID_LCP) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 446 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 447 sig_ona_lcp_tlf_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 448 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 449 else if (ptype EQ DTI_PID_IPCP) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 450 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 451 sig_ona_ncp_tlf_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 452 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 453 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 454 else | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 455 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 456 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 457 * positive timeout | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 458 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 459 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 460 * request a new configure request packet | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 461 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 462 if (ptype EQ DTI_PID_LCP) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 463 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 464 sig_ona_lcp_scr_req(&packet); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 465 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 466 else if (ptype EQ DTI_PID_IPCP) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 467 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 468 sig_ona_ncp_scr_req(&packet); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 469 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 470 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 471 * set counter and send configure request packet | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 472 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 473 ppp_data->ona->restarts--; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 474 sig_any_ftx_packet_req(ptype, packet); /* scr */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 475 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 476 * restart timer | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 477 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 478 sig_any_rt_rrt_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 479 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 480 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 481 case ONA_ACK_RCVD: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 482 if (ppp_data->ona->restarts EQ 0) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 483 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 484 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 485 * negative timeout | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 486 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 487 SET_STATE( PPP_SERVICE_ONA, ONA_CLOSED ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 488 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 489 * set error code | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 490 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 491 if(ppp_data->ppp_cause EQ 0) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 492 ppp_data->ppp_cause = PPP_TERM_NO_RESPONSE; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 493 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 494 * send This-Layer-Finished signal | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 495 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 496 if (ptype EQ DTI_PID_LCP) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 497 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 498 sig_ona_lcp_tlf_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 499 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 500 else if (ptype EQ DTI_PID_IPCP) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 501 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 502 sig_ona_ncp_tlf_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 503 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 504 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 505 else | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 506 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 507 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 508 * positive timeout | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 509 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 510 SET_STATE( PPP_SERVICE_ONA, ONA_REQ_SENT ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 511 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 512 * request a new configure request packet | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 513 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 514 if (ptype EQ DTI_PID_LCP) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 515 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 516 sig_ona_lcp_scr_req(&packet); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 517 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 518 else if (ptype EQ DTI_PID_IPCP) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 519 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 520 sig_ona_ncp_scr_req(&packet); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 521 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 522 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 523 * set counter and send configure request packet | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 524 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 525 ppp_data->ona->restarts--; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 526 sig_any_ftx_packet_req(ptype, packet); /* scr */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 527 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 528 * restart timer | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 529 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 530 sig_any_rt_rrt_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 531 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 532 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 533 default: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 534 TRACE_ERROR( "SIG_ANY_ONA_TO_IND unexpected" ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 535 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 536 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 537 } /* sig_any_ona_to_ind() */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 538 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 539 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 540 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 541 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 542 +------------------------------------------------------------------------------ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 543 | Function : sig_any_ona_rta_ind | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 544 +------------------------------------------------------------------------------ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 545 | Description : Handles the internal signal SIG_ANY_ONA_RTA_IND | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 546 | | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 547 | Parameters : ptype - type of packet | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 548 | | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 549 +------------------------------------------------------------------------------ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 550 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 551 GLOBAL void sig_any_ona_rta_ind (USHORT ptype) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 552 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 553 UBYTE index; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 554 T_desc2* packet = NULL; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 555 TRACE_ISIG( "sig_any_ona_rta_ind" ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 556 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 557 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 558 * determine ONA-instance | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 559 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 560 ona_get_inst_index(ptype, &index); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 561 ppp_data->ona = & ppp_data->ona_base[index]; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 562 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 563 switch( GET_STATE( PPP_SERVICE_ONA ) ) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 564 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 565 case ONA_CLOSING: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 566 SET_STATE( PPP_SERVICE_ONA, ONA_CLOSED ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 567 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 568 * stop timer | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 569 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 570 sig_any_rt_srt_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 571 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 572 * send This-Layer-Finished signal | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 573 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 574 if (ptype EQ DTI_PID_LCP) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 575 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 576 sig_ona_lcp_tlf_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 577 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 578 else if (ptype EQ DTI_PID_IPCP) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 579 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 580 sig_ona_ncp_tlf_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 581 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 582 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 583 case ONA_REQ_SENT: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 584 case ONA_ACK_RCVD: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 585 case ONA_ACK_SENT: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 586 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 587 case ONA_OPENED: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 588 SET_STATE( PPP_SERVICE_ONA, ONA_REQ_SENT ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 589 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 590 * send This-Layer-Down signal and | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 591 * request a new configure request packet | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 592 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 593 if (ptype EQ DTI_PID_LCP) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 594 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 595 sig_ona_lcp_tld_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 596 sig_ona_lcp_scr_req(&packet); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 597 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 598 else if (ptype EQ DTI_PID_IPCP) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 599 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 600 sig_ona_ncp_tld_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 601 sig_ona_ncp_scr_req(&packet); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 602 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 603 ppp_data->ona = & ppp_data->ona_base[index]; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 604 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 605 * send configure request packet | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 606 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 607 sig_any_ftx_packet_req(ptype, packet); /* scr */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 608 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 609 * start timer | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 610 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 611 if(ppp_data->ona->restarts > 0) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 612 ppp_data->ona->restarts--; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 613 sig_any_rt_rrt_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 614 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 615 default: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 616 TRACE_ERROR( "SIG_ANY_ONA_RTA_IND unexpected" ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 617 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 618 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 619 } /* sig_any_ona_rta_ind() */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 620 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 621 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 622 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 623 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 624 +------------------------------------------------------------------------------ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 625 | Function : sig_any_ona_rxjn_ind | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 626 +------------------------------------------------------------------------------ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 627 | Description : Handles the internal signal SIG_ANY_ONA_RXJN_IND | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 628 | | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 629 | Parameters : ptype - type of packet | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 630 | packet - pointer to a generic data descriptor | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 631 | | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 632 +------------------------------------------------------------------------------ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 633 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 634 GLOBAL void sig_any_ona_rxjn_ind (USHORT ptype, T_desc2* packet) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 635 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 636 UBYTE index; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 637 TRACE_ISIG( "sig_any_ona_rxjn_ind" ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 638 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 639 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 640 * determine ONA-instance | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 641 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 642 ona_get_inst_index(ptype, &index); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 643 ppp_data->ona = & ppp_data->ona_base[index]; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 644 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 645 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 646 * set error code | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 647 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 648 if(ppp_data->ppp_cause EQ 0) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 649 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 650 switch(ptype) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 651 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 652 case DTI_PID_LCP: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 653 ppp_data->ppp_cause = PPP_TERM_LCP_NOT_CONVERGE; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 654 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 655 case DTI_PID_IPCP: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 656 ppp_data->ppp_cause = PPP_TERM_IPCP_NOT_CONVERGE; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 657 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 658 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 659 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 660 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 661 switch( GET_STATE( PPP_SERVICE_ONA ) ) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 662 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 663 case ONA_CLOSING: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 664 SET_STATE( PPP_SERVICE_ONA, ONA_CLOSED ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 665 arb_discard_packet(packet); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 666 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 667 * stop timer | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 668 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 669 sig_any_rt_srt_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 670 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 671 * send This-Layer-Finished signal | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 672 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 673 if (ptype EQ DTI_PID_LCP) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 674 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 675 sig_ona_lcp_tlf_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 676 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 677 else if (ptype EQ DTI_PID_IPCP) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 678 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 679 sig_ona_ncp_tlf_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 680 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 681 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 682 case ONA_OPENED: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 683 SET_STATE( PPP_SERVICE_ONA, ONA_CLOSING ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 684 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 685 * send This-Layer-Down signal | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 686 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 687 if (ptype EQ DTI_PID_LCP) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 688 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 689 sig_ona_lcp_tld_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 690 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 691 else if (ptype EQ DTI_PID_IPCP) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 692 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 693 sig_ona_ncp_tld_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 694 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 695 ppp_data->ona = & ppp_data->ona_base[index]; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 696 case ONA_REQ_SENT: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 697 case ONA_ACK_RCVD: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 698 case ONA_ACK_SENT: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 699 SET_STATE( PPP_SERVICE_ONA, ONA_CLOSING ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 700 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 701 * set counter | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 702 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 703 ppp_data->ona->restarts = ppp_data->mt; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 704 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 705 * send terminate request packet | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 706 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 707 sig_any_ftx_packet_req(ptype, packet); /* str */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 708 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 709 * start timer | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 710 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 711 if(ppp_data->ona->restarts > 0) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 712 ppp_data->ona->restarts--; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 713 sig_any_rt_rrt_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 714 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 715 default: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 716 TRACE_ERROR( "SIG_ANY_ONA_RXJN_IND unexpected" ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 717 arb_discard_packet(packet); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 718 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 719 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 720 } /* sig_any_ona_rxjn_ind() */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 721 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 722 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 723 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 724 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 725 +------------------------------------------------------------------------------ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 726 | Function : sig_any_ona_rcrn_ind | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 727 +------------------------------------------------------------------------------ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 728 | Description : Handles the internal signal SIG_ANY_ONA_RCRN_IND | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 729 | | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 730 | Parameters : ptype - type of packet | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 731 | packet - pointer to a generic data descriptor | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 732 | newFlag - flag | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 733 | | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 734 +------------------------------------------------------------------------------ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 735 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 736 GLOBAL void sig_any_ona_rcrn_ind (USHORT ptype, T_desc2* packet, UBYTE newFlag) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 737 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 738 UBYTE index; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 739 T_desc2* req_packet = NULL; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 740 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 741 TRACE_ISIG( "sig_any_ona_rcrn_ind" ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 742 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 743 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 744 * determine ONA-instance | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 745 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 746 ona_get_inst_index(ptype, &index); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 747 ppp_data->ona = & ppp_data->ona_base[index]; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 748 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 749 switch( GET_STATE( PPP_SERVICE_ONA ) ) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 750 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 751 case ONA_CLOSING: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 752 arb_discard_packet(packet); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 753 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 754 case ONA_REQ_SENT: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 755 case ONA_ACK_SENT: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 756 if (ppp_data->ona->failures EQ 0) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 757 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 758 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 759 * protocol not converge | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 760 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 761 SET_STATE( PPP_SERVICE_ONA, ONA_CLOSING ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 762 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 763 * set error code | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 764 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 765 if(ppp_data->ppp_cause EQ 0) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 766 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 767 switch(ptype) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 768 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 769 case DTI_PID_LCP: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 770 ppp_data->ppp_cause = PPP_TERM_LCP_NOT_CONVERGE; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 771 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 772 case DTI_PID_IPCP: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 773 ppp_data->ppp_cause = PPP_TERM_IPCP_NOT_CONVERGE; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 774 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 775 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 776 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 777 arb_discard_packet(packet); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 778 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 779 * set counter | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 780 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 781 ppp_data->ona->restarts = ppp_data->mt; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 782 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 783 * request terminate request packet | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 784 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 785 if (ptype EQ DTI_PID_LCP) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 786 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 787 sig_ona_lcp_str_req(&packet); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 788 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 789 else if (ptype EQ DTI_PID_IPCP) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 790 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 791 sig_ona_ncp_str_req(&packet); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 792 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 793 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 794 * send terminate request | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 795 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 796 sig_any_ftx_packet_req(ptype, packet); /* str */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 797 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 798 * start timer | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 799 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 800 if(ppp_data->ona->restarts > 0) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 801 ppp_data->ona->restarts--; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 802 sig_any_rt_rrt_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 803 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 804 else | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 805 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 806 SET_STATE( PPP_SERVICE_ONA, ONA_REQ_SENT ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 807 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 808 * send configure nak packet | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 809 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 810 sig_any_ftx_packet_req(ptype, packet); /* scn */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 811 if (newFlag EQ TRUE) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 812 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 813 ppp_data->ona->failures--; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 814 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 815 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 816 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 817 case ONA_ACK_RCVD: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 818 if (ppp_data->ona->failures EQ 0) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 819 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 820 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 821 * protocol not converge | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 822 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 823 SET_STATE( PPP_SERVICE_ONA, ONA_CLOSING ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 824 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 825 * set error code | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 826 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 827 if(ppp_data->ppp_cause EQ 0) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 828 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 829 switch(ptype) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 830 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 831 case DTI_PID_LCP: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 832 ppp_data->ppp_cause = PPP_TERM_LCP_NOT_CONVERGE; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 833 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 834 case DTI_PID_IPCP: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 835 ppp_data->ppp_cause = PPP_TERM_IPCP_NOT_CONVERGE; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 836 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 837 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 838 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 839 arb_discard_packet(packet); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 840 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 841 * set counter | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 842 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 843 ppp_data->ona->restarts = ppp_data->mt; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 844 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 845 * request terminate request packet | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 846 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 847 if (ptype EQ DTI_PID_LCP) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 848 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 849 sig_ona_lcp_str_req(&packet); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 850 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 851 else if (ptype EQ DTI_PID_IPCP) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 852 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 853 sig_ona_ncp_str_req(&packet); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 854 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 855 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 856 * send terminate request packet | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 857 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 858 sig_any_ftx_packet_req(ptype, packet); /* str */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 859 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 860 * start timer | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 861 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 862 if(ppp_data->ona->restarts > 0) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 863 ppp_data->ona->restarts--; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 864 sig_any_rt_rrt_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 865 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 866 else | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 867 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 868 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 869 * send configure nak packet | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 870 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 871 sig_any_ftx_packet_req(ptype, packet); /* scn */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 872 if (newFlag EQ TRUE) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 873 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 874 ppp_data->ona->failures--; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 875 sig_any_rt_rrt_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 876 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 877 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 878 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 879 case ONA_OPENED: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 880 SET_STATE( PPP_SERVICE_ONA, ONA_REQ_SENT ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 881 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 882 * send This_Layer_Down signal and | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 883 * request configure request packet | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 884 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 885 if (ptype EQ DTI_PID_LCP) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 886 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 887 sig_ona_lcp_tld_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 888 sig_ona_lcp_scr_req(&req_packet); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 889 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 890 else if (ptype EQ DTI_PID_IPCP) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 891 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 892 sig_ona_ncp_tld_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 893 sig_ona_ncp_scr_req(&req_packet); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 894 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 895 ppp_data->ona = & ppp_data->ona_base[index]; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 896 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 897 * send configure request packet | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 898 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 899 sig_any_ftx_packet_req(ptype, req_packet); /* scr */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 900 if(ppp_data->ona->restarts > 0) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 901 ppp_data->ona->restarts--; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 902 if ((newFlag EQ TRUE) && (ppp_data->ona->failures > 0)) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 903 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 904 ppp_data->ona->failures--; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 905 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 906 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 907 * send configure nak packet | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 908 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 909 sig_any_ftx_packet_req(ptype, packet); /* scn */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 910 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 911 * start timer | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 912 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 913 sig_any_rt_rrt_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 914 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 915 default: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 916 TRACE_ERROR( "SIG_ANY_ONA_RCRN_IND unexpected" ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 917 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 918 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 919 } /* sig_any_ona_rcrn_ind() */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 920 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 921 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 922 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 923 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 924 +------------------------------------------------------------------------------ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 925 | Function : sig_any_ona_rcrp_ind | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 926 +------------------------------------------------------------------------------ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 927 | Description : Handles the internal signal SIG_ANY_ONA_RCRP_IND | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 928 | | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 929 | Parameters : ptype - type of packet | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 930 | packet - pointer to a generic data descriptor | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 931 | | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 932 +------------------------------------------------------------------------------ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 933 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 934 GLOBAL void sig_any_ona_rcrp_ind (USHORT ptype, T_desc2* packet) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 935 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 936 UBYTE index; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 937 T_desc2* req_packet = NULL; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 938 TRACE_ISIG( "sig_any_ona_rcrp_ind" ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 939 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 940 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 941 * determine ONA-instance | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 942 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 943 ona_get_inst_index(ptype, &index); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 944 ppp_data->ona = & ppp_data->ona_base[index]; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 945 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 946 switch( GET_STATE( PPP_SERVICE_ONA ) ) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 947 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 948 case ONA_CLOSING: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 949 arb_discard_packet(packet); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 950 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 951 case ONA_REQ_SENT: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 952 case ONA_ACK_SENT: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 953 SET_STATE( PPP_SERVICE_ONA, ONA_ACK_SENT ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 954 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 955 * set counter | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 956 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 957 ppp_data->ona->failures = ppp_data->mf; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 958 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 959 * send configure acknowledge packet | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 960 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 961 sig_any_ftx_packet_req(ptype, packet); /* sca */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 962 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 963 case ONA_ACK_RCVD: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 964 SET_STATE( PPP_SERVICE_ONA, ONA_OPENED ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 965 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 966 * stop timer | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 967 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 968 sig_any_rt_srt_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 969 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 970 * reset counter | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 971 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 972 ppp_data->ona->failures = ppp_data->mf; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 973 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 974 * send configure acknowledge packet | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 975 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 976 sig_any_ftx_packet_req(ptype, packet); /* sca */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 977 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 978 * send This-Layer_Up signal | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 979 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 980 if (ptype EQ DTI_PID_LCP) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 981 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 982 sig_ona_lcp_tlu_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 983 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 984 else if (ptype EQ DTI_PID_IPCP) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 985 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 986 sig_ona_ncp_tlu_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 987 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 988 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 989 case ONA_OPENED: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 990 SET_STATE( PPP_SERVICE_ONA, ONA_ACK_SENT ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 991 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 992 * send This-Layer-Down signal and | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 993 * request configure request packet | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 994 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 995 if (ptype EQ DTI_PID_LCP) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 996 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 997 sig_ona_lcp_tld_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 998 sig_ona_lcp_scr_req(&req_packet); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 999 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1000 else if (ptype EQ DTI_PID_IPCP) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1001 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1002 sig_ona_ncp_tld_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1003 sig_ona_ncp_scr_req(&req_packet); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1004 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1005 ppp_data->ona = & ppp_data->ona_base[index]; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1006 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1007 * send configure request packet | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1008 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1009 sig_any_ftx_packet_req(ptype, req_packet); /* scr */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1010 if(ppp_data->ona->restarts > 0) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1011 ppp_data->ona->restarts--; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1012 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1013 * send configure acknowledge packet | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1014 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1015 sig_any_ftx_packet_req(ptype, packet); /* sca */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1016 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1017 * restart timer | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1018 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1019 sig_any_rt_rrt_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1020 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1021 default: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1022 TRACE_ERROR( "SIG_ANY_ONA_RCRP_IND unexpected" ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1023 arb_discard_packet(packet); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1024 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1025 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1026 } /* sig_any_ona_rcrp_ind() */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1027 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1028 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1029 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1030 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1031 +------------------------------------------------------------------------------ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1032 | Function : sig_any_ona_rcn_ind | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1033 +------------------------------------------------------------------------------ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1034 | Description : Handles the internal signal SIG_ANY_ONA_RCN_IND | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1035 | | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1036 | Parameters : ptype - type of packet | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1037 | packet - pointer to a generic data descriptor | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1038 | | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1039 +------------------------------------------------------------------------------ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1040 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1041 GLOBAL void sig_any_ona_rcn_ind (USHORT ptype, T_desc2* packet) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1042 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1043 UBYTE index; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1044 TRACE_ISIG( "sig_any_ona_rcn_ind" ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1045 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1046 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1047 * determine ONA-instance | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1048 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1049 ona_get_inst_index(ptype, &index); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1050 ppp_data->ona = & ppp_data->ona_base[index]; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1051 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1052 switch( GET_STATE( PPP_SERVICE_ONA ) ) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1053 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1054 case ONA_CLOSING: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1055 arb_discard_packet(packet); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1056 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1057 case ONA_REQ_SENT: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1058 case ONA_ACK_SENT: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1059 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1060 * reset counter | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1061 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1062 ppp_data->ona->restarts = ppp_data->mc; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1063 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1064 * send configure request packet | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1065 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1066 sig_any_ftx_packet_req(ptype, packet); /* scr */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1067 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1068 * start timer | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1069 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1070 if(ppp_data->ona->restarts > 0) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1071 ppp_data->ona->restarts--; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1072 sig_any_rt_rrt_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1073 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1074 case ONA_ACK_RCVD: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1075 SET_STATE( PPP_SERVICE_ONA, ONA_REQ_SENT ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1076 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1077 * send configure request packet | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1078 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1079 sig_any_ftx_packet_req(ptype, packet); /* scr */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1080 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1081 * start timer | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1082 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1083 sig_any_rt_rrt_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1084 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1085 case ONA_OPENED: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1086 SET_STATE( PPP_SERVICE_ONA, ONA_REQ_SENT ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1087 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1088 * send This-Layer-Down signal | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1089 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1090 if (ptype EQ DTI_PID_LCP) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1091 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1092 sig_ona_lcp_tld_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1093 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1094 else if (ptype EQ DTI_PID_IPCP) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1095 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1096 sig_ona_ncp_tld_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1097 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1098 ppp_data->ona = & ppp_data->ona_base[index]; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1099 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1100 * send configure request packet | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1101 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1102 sig_any_ftx_packet_req(ptype, packet); /* scr */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1103 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1104 * start timer | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1105 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1106 if(ppp_data->ona->restarts > 0) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1107 ppp_data->ona->restarts--; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1108 sig_any_rt_rrt_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1109 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1110 default: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1111 TRACE_ERROR( "SIG_ANY_ONA_RCN_IND unexpected" ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1112 arb_discard_packet(packet); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1113 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1114 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1115 } /* sig_any_ona_rcn_ind() */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1116 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1117 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1118 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1119 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1120 +------------------------------------------------------------------------------ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1121 | Function : sig_any_ona_rca_ind | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1122 +------------------------------------------------------------------------------ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1123 | Description : Handles the internal signal SIG_ANY_ONA_RCA_IND | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1124 | | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1125 | Parameters : ptype - type of packet | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1126 | | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1127 +------------------------------------------------------------------------------ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1128 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1129 GLOBAL void sig_any_ona_rca_ind (USHORT ptype) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1130 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1131 UBYTE index; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1132 T_desc2* temp_desc = NULL; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1133 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1134 TRACE_ISIG( "sig_any_ona_rca_ind" ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1135 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1136 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1137 * determine ONA-instance | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1138 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1139 ona_get_inst_index(ptype, &index); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1140 ppp_data->ona = & ppp_data->ona_base[index]; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1141 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1142 switch( GET_STATE( PPP_SERVICE_ONA ) ) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1143 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1144 case ONA_CLOSING: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1145 case ONA_ACK_RCVD: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1146 case ONA_OPENED: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1147 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1148 case ONA_REQ_SENT: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1149 if(ppp_data->ona->loops EQ 0) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1150 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1151 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1152 * protocol not converge | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1153 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1154 SET_STATE( PPP_SERVICE_ONA, ONA_CLOSING ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1155 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1156 * set error code | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1157 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1158 if(ppp_data->ppp_cause EQ 0) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1159 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1160 switch(ptype) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1161 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1162 case DTI_PID_LCP: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1163 ppp_data->ppp_cause = PPP_TERM_LCP_NOT_CONVERGE; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1164 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1165 case DTI_PID_IPCP: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1166 ppp_data->ppp_cause = PPP_TERM_IPCP_NOT_CONVERGE; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1167 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1168 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1169 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1170 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1171 * set counter | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1172 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1173 ppp_data->ona->restarts = ppp_data->mt; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1174 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1175 * request terminate request packet | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1176 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1177 if (ptype EQ DTI_PID_LCP) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1178 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1179 sig_ona_lcp_str_req(&temp_desc); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1180 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1181 else if (ptype EQ DTI_PID_IPCP) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1182 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1183 sig_ona_ncp_str_req(&temp_desc); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1184 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1185 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1186 * send terminate request | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1187 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1188 sig_any_ftx_packet_req(ptype, temp_desc); /* str */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1189 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1190 * start timer | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1191 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1192 if(ppp_data->ona->restarts > 0) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1193 ppp_data->ona->restarts--; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1194 sig_any_rt_rrt_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1195 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1196 else | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1197 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1198 SET_STATE( PPP_SERVICE_ONA, ONA_ACK_RCVD ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1199 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1200 * reset counters | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1201 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1202 ppp_data->ona->restarts = ppp_data->mc; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1203 ppp_data->ona->loops--; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1204 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1205 * start timer | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1206 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1207 sig_any_rt_rrt_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1208 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1209 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1210 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1211 case ONA_ACK_SENT: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1212 if(ppp_data->ona->loops EQ 0) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1213 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1214 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1215 * protocol not converge | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1216 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1217 SET_STATE( PPP_SERVICE_ONA, ONA_CLOSING ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1218 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1219 * set error code | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1220 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1221 if(ppp_data->ppp_cause EQ 0) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1222 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1223 switch(ptype) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1224 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1225 case DTI_PID_LCP: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1226 ppp_data->ppp_cause = PPP_TERM_LCP_NOT_CONVERGE; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1227 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1228 case DTI_PID_IPCP: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1229 ppp_data->ppp_cause = PPP_TERM_IPCP_NOT_CONVERGE; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1230 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1231 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1232 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1233 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1234 * set counter | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1235 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1236 ppp_data->ona->restarts = ppp_data->mt; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1237 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1238 * request terminate request packet | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1239 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1240 if (ptype EQ DTI_PID_LCP) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1241 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1242 sig_ona_lcp_str_req(&temp_desc); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1243 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1244 else if (ptype EQ DTI_PID_IPCP) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1245 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1246 sig_ona_ncp_str_req(&temp_desc); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1247 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1248 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1249 * send terminate request | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1250 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1251 sig_any_ftx_packet_req(ptype, temp_desc); /* str */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1252 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1253 * start timer | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1254 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1255 if(ppp_data->ona->restarts > 0) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1256 ppp_data->ona->restarts--; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1257 sig_any_rt_rrt_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1258 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1259 else | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1260 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1261 SET_STATE( PPP_SERVICE_ONA, ONA_OPENED ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1262 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1263 * stop timer | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1264 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1265 sig_any_rt_srt_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1266 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1267 * reset counter | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1268 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1269 ppp_data->ona->restarts = ppp_data->mc; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1270 ppp_data->ona->loops--; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1271 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1272 * send This_Layer_Up signal | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1273 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1274 if (ptype EQ DTI_PID_LCP) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1275 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1276 sig_ona_lcp_tlu_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1277 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1278 else if (ptype EQ DTI_PID_IPCP) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1279 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1280 sig_ona_ncp_tlu_req(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1281 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1282 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1283 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1284 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1285 default: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1286 TRACE_ERROR( "SIG_ANY_ONA_RCA_IND unexpected" ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1287 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1288 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1289 } /* sig_any_ona_rca_ind() */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1290 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1291 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1292 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1293 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1294 +------------------------------------------------------------------------------ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1295 | Function : sig_any_ona_rxr_ind | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1296 +------------------------------------------------------------------------------ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1297 | Description : Handles the internal signal SIG_ANY_ONA_RXR_IND | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1298 | | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1299 | Parameters : ptype - type of packet | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1300 | packet - pointer to a generic data descriptor | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1301 | | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1302 +------------------------------------------------------------------------------ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1303 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1304 GLOBAL void sig_any_ona_rxr_ind (USHORT ptype, T_desc2* packet) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1305 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1306 UBYTE index; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1307 TRACE_ISIG( "sig_any_ona_rxr_ind" ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1308 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1309 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1310 * determine ONA-instance | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1311 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1312 ona_get_inst_index(ptype, &index); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1313 ppp_data->ona = & ppp_data->ona_base[index]; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1314 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1315 switch( GET_STATE( PPP_SERVICE_ONA ) ) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1316 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1317 case ONA_CLOSING: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1318 case ONA_REQ_SENT: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1319 case ONA_ACK_RCVD: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1320 case ONA_ACK_SENT: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1321 arb_discard_packet(packet); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1322 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1323 case ONA_OPENED: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1324 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1325 * send echo reply packet | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1326 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1327 sig_any_ftx_packet_req(ptype, packet); /* ser */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1328 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1329 default: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1330 TRACE_ERROR( "SIG_ANY_ONA_RXR_IND unexpected" ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1331 arb_discard_packet(packet); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1332 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1333 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1334 } /* sig_any_ona_rxr_ind() */ | 
