view cdg-hybrid/cdginc/p_tcpip.val @ 303:f76436d19a7a default tip

!GPRS config: fix long-standing AT+COPS chance hanging bug There has been a long-standing bug in FreeCalypso going back years: sometimes in the AT command bring-up sequence of an ACI-only MS, the AT+COPS command would produce only a power scan followed by cessation of protocol stack activity (only L1 ADC traces), instead of the expected network search sequence. This behaviour was seen in different FC firmware versions going back to Citrine, and seemed to follow some law of chance, not reliably repeatable. This bug has been tracked down and found to be specific to !GPRS configuration, stemming from our TCS2/TCS3 hybrid and reconstruction of !GPRS support that was bitrotten in TCS3.2/LoCosto version. ACI module psa_mms.c, needed only for !GPRS, was missing in the TCS3 version and had to be pulled from TCS2 - but as it turns out, there is a new field in the MMR_REG_REQ primitive that needs to be set correctly, and that psa_mms.c module is the place where this initialization needed to be added.
author Mychaela Falconia <falcon@freecalypso.org>
date Thu, 08 Jun 2023 08:23:37 +0000
parents 35f7a1dc9f7d
children
line wrap: on
line source

/*
+--------------------------------------------------------------------------+
| PROJECT : PROTOCOL STACK                                                 |
| FILE    : p_tcpip.val                                                    |
| SOURCE  : "sap\tcpip.pdf"                                                |
| LastModified : "2003-09-05"                                              |
| IdAndVersion : "8462.000.03.005"                                         |
| SrcFileTime  : "Thu Nov 29 09:55:14 2007"                                |
| Generated by CCDGEN_2.5.5A on Fri Oct 14 21:41:52 2016                   |
|           !!DO NOT MODIFY!!DO NOT MODIFY!!DO NOT MODIFY!!                |
+--------------------------------------------------------------------------+
*/

/* PRAGMAS
 * PREFIX                 : NONE
 * COMPATIBILITY_DEFINES  : NO (require PREFIX)
 * ALWAYS_ENUM_IN_VAL_FILE: NO
 * ENABLE_GROUP: NO
 * CAPITALIZE_TYPENAME: NO
 */


#ifndef P_TCPIP_VAL
#define P_TCPIP_VAL


#define CDG_ENTER__P_TCPIP_VAL

#define CDG_ENTER__FILENAME _P_TCPIP_VAL
#define CDG_ENTER__P_TCPIP_VAL__FILE_TYPE CDGINC
#define CDG_ENTER__P_TCPIP_VAL__LAST_MODIFIED _2003_09_05
#define CDG_ENTER__P_TCPIP_VAL__ID_AND_VERSION _8462_000_03_005

#define CDG_ENTER__P_TCPIP_VAL__SRC_FILE_TIME _Thu_Nov_29_09_55_14_2007

#include "CDG_ENTER.h"

#undef CDG_ENTER__P_TCPIP_VAL

#undef CDG_ENTER__FILENAME


/*
 * Value constants for VAL_ipproto
 */
#define TCPIP_IPPROTO_TCP              (0x6)      /* Value for TCP                  */
#define TCPIP_IPPROTO_UDP              (0x11)     /* Value for UDP                  */

/*
 * Value constants for VAL_event_type
 */
#define TCPIP_EVT_CREATE_CNF           (0x1)      /* Result of TCPIP_CREATE_REQ     */
#define TCPIP_EVT_CLOSE_CNF            (0x2)      /* Result of TCPIP_CLOSE_REQ      */
#define TCPIP_EVT_BIND_CNF             (0x3)      /* Result of TCPIP_BIND_REQ       */
#define TCPIP_EVT_LISTEN_CNF           (0x4)      /* Result of TCPIP_LISTEN_REQ     */
#define TCPIP_EVT_CONNECT_CNF          (0x5)      /* Result of TCPIP_CONNECT_REQ    */
#define TCPIP_EVT_SOCKNAME_CNF         (0x6)      /* Result of TCPIP_SOCKNAME_REQ   */
#define TCPIP_EVT_PEERNAME_CNF         (0x7)      /* Result of TCPIP_PEERNAME_REQ   */
#define TCPIP_EVT_HOSTINFO_CNF         (0x8)      /* Result of TCPIP_HOSTINFO_REQ   */
#define TCPIP_EVT_MTU_SIZE_CNF         (0x9)      /* Result of TCPIP_MTU_SIZE_REQ   */
#define TCPIP_EVT_RECV_IND             (0xa)      /* Indication of incoming data    */
#define TCPIP_EVT_CONNECT_IND          (0xb)      /* Indication of incoming connection */
#define TCPIP_EVT_CONN_CLOSED_IND      (0xc)      /* Indication of remotely closed connection */
#define TCPIP_EVT_ERROR_IND            (0xd)      /* Indication of asynchronous error */
#define TCPIP_EVT_FLOW_READY_IND       (0xe)      /* Flow Control: application can send again (not used by a TCPIP primitive!) */

/*
 * Value constants for VAL_result
 */
#define TCPIP_RESULT_OK                (0x0)      /* Operation was successful.      */
#define TCPIP_RESULT_INVALID_PARAMETER (0x1)      /* A parameter was invalid.       */
#define TCPIP_RESULT_INTERNAL_ERROR    (0x2)      /* An internal error has happened. */
#define TCPIP_RESULT_ADDR_IN_USE       (0x3)      /* The address or port is already in use. */
#define TCPIP_RESULT_OUT_OF_MEMORY     (0x4)      /* There is not enough memory to fulfill the request. */
#define TCPIP_RESULT_NOT_SUPPORTED     (0x5)      /* The socket is not of a type that can support this operation. */
#define TCPIP_RESULT_UNREACHABLE       (0x6)      /* The specified host cannot be reached. */
#define TCPIP_RESULT_CONN_REFUSED      (0x7)      /* The connection to the specified address was refused by the remote host. */
#define TCPIP_RESULT_TIMEOUT           (0x8)      /* The connection attempt timed out without establishing a connection. */
#define TCPIP_RESULT_IS_CONNECTED      (0x9)      /* The request could not be fulfilled because the socket is already connected. */
#define TCPIP_RESULT_HOST_NOT_FOUND    (0xa)      /* The specified host could not be found in the DNS. */
#define TCPIP_RESULT_DNS_TEMP_ERROR    (0xb)      /* A temporary DNS error has occurred. Retrying the query may be successful. */
#define TCPIP_RESULT_DNS_PERM_ERROR    (0xc)      /* A permanent DNS error has occurred. */
#define TCPIP_RESULT_NO_IPADDR         (0xd)      /* The specified name has been found in the DNS, but no IP address is available. */
#define TCPIP_RESULT_NOT_CONNECTED     (0xe)      /* The socket has not been connected yet. */
#define TCPIP_RESULT_MSG_TOO_BIG       (0xf)      /* The size of the data buffer is too large for a UDP socket. */
#define TCPIP_RESULT_CONN_RESET        (0x10)     /* The connection has been reset by the remote peer. */
#define TCPIP_RESULT_CONN_ABORTED      (0x11)     /* The connection was aborted due to timeout or some other error condition. */
#define TCPIP_RESULT_NO_BUFSPACE       (0x12)     /* Sending failed temporarily because the space to buffer the message was exhausted. The application should wait for a TCPIP_FLOW_READY_IND event to retry the operation. */
#define TCPIP_RESULT_NETWORK_LOST      (0x13)     /* The operation failed because TCP/IP's network connection has been disconnected. */
#define TCPIP_RESULT_NOT_READY         (0x14)     /* The operation failed because the TCP/IP entity was not yet initialised. */

/*
 * Value constants for VAL_if_up
 */
#define TCPIP_IFCONFIG_DOWN            (0x0)      /* Interface going down           */
#define TCPIP_IFCONFIG_UP              (0x1)      /* Interface coming up            */

/*
 * Value constants for VAL_dti_direction
 */
#define TCPIP_DTI_TO_HIGHER_LAYER      (0x0)      /* Connect to higher layer, i. e. an application */
#define TCPIP_DTI_TO_LOWER_LAYER       (0x1)      /* Connect to lower layer, i. e. to protocol stack */

/*
 * Value constants for VAL_dti_conn
 */
#define TCPIP_CONNECT_DTI              (0x0)      /* Connect the DTI link           */
#define TCPIP_DISCONNECT_DTI           (0x1)      /* Disconnect the DTI link        */

/*
 * user defined constants
 */
#define TCPIP_HNAMELEN                 (0x100)    
#define TCPIP_DEFAULT_MTU_SIZE         (0x5dc)    
#define TCPIP_UNSPECIFIED_IPADDR       (0x0)      
#define TCPIP_UNSPECIFIED_PORT         (0x0)      

#include "CDG_LEAVE.h"


#endif