comparison src/g23m-fad/tcpip/socket_int.h @ 1:d393cd9bb723

src/g23m-*: initial import from Magnetite
author Mychaela Falconia <falcon@freecalypso.org>
date Sun, 15 Jul 2018 04:40:46 +0000
parents
children
comparison
equal deleted inserted replaced
0:b6a5e36de839 1:d393cd9bb723
1 /*
2 +------------------------------------------------------------------------------
3 | File: socket_int.h
4 +------------------------------------------------------------------------------
5 | Copyright 2002 Texas Instruments Berlin, AG
6 | All rights reserved.
7 |
8 | This file is confidential and a trade secret of Texas
9 | Instruments Berlin, AG
10 | The receipt of or possession of this file does not convey
11 | any rights to reproduce or disclose its contents or to
12 | manufacture, use, or sell anything it may describe, in
13 | whole, or in part, without the specific written consent of
14 | Texas Instruments Berlin, AG.
15 +-----------------------------------------------------------------------------
16 | Purpose : Socket specific definitions
17 +-----------------------------------------------------------------------------
18 */
19
20 #ifndef __SOCKET_INT_H__
21 #define __SOCKET_INT_H__
22
23
24 /*
25 * Flow control enum type
26 */
27 typedef enum {
28 SOCK_FLOW_XON = 0,
29 SOCK_FLOW_XOFF
30 } T_XONOFF_VAL;
31
32 /*
33 * struct prototypes for internal data
34 */
35 struct T_SOCK_API_INSTANCE_DATA_TAG;
36 struct T_SOCK_SOCKET_DATA_TAG;
37
38 /*
39 * Socket API instance data structure
40 */
41 typedef struct T_SOCK_API_INSTANCE_DATA_TAG
42 {
43 T_HANDLE app_handle; /* Application Handle */
44 T_HANDLE hCommAPP; /* Communivation Handle of the Application */
45 T_HANDLE hCommTCPIP; /* Communication Handle of the TCPIP entity */
46 T_HANDLE hCommDCM; /* Communication Handle of the DCM entity */
47 void* context; /* application context pointer */
48 T_SOCK_CALLBACK callback; /* applicatin callback function */
49 struct T_SOCK_SOCKET_DATA_TAG* socket_data; /* pointer to linked list of Socket Data */
50 } T_SOCK_API_INSTANCE_DATA;
51
52
53 /*
54 * Socket data structure
55 */
56 typedef struct T_SOCK_SOCKET_DATA_TAG
57 {
58 struct T_SOCK_SOCKET_DATA_TAG* next_socket_data; /* pointer to next Socket Data structure */
59 struct T_SOCK_API_INSTANCE_DATA_TAG* api_data; /* pointer to Instance Data structure */
60 U32 tcpip_socket; /* Socket value from TCPIP entity */
61 T_SOCK_CALLBACK callback; /* application callback function */
62 void* context; /* application context pointer */
63 T_XONOFF_VAL rx_flow_control; /* status of RX flow control */
64 T_XONOFF_VAL tx_flow_control; /* status of TX flow control */
65 U32 rx_window; /* window size for data reception */
66 U32 tx_window; /* window size for data transmission */
67 T_SOCK_RECV_IND recv_ind; /* buffer for received data */
68 } T_SOCK_SOCKET_DATA;
69
70 #endif /* __SOCKET_INT_H__ */
71