OpenClovis Logo

clIocUdpTransportApi.h
1 /*
2  * Copyright (C) 2002-2012 OpenClovis Solutions Inc. All Rights Reserved.
3  *
4  * This file is available under a commercial license from the
5  * copyright holder or the GNU General Public License Version 2.0.
6  *
7  * The source code for this program is not published or otherwise
8  * divested of its trade secrets, irrespective of what has been
9  * deposited with the U.S. Copyright office.
10  *
11  * This program is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14  * General Public License for more details.
15  *
16  * For more information, see the file COPYING provided with this
17  * material.
18  */
19 /*******************************************************************************
20  * ModuleName : ioc
21  * File : clIocUdpTransportApi.h
22  *******************************************************************************/
23 
24 
25 #ifndef _CL_IOC_UDP_TRANSPORT_API_H_
26 # define _CL_IOC_UDP_TRANSPORT_API_H_
27 # ifdef __cplusplus
28 extern "C"
29 {
30 # endif
31 
32 # include <clIocTransportApi.h>
33 
34 # define CL_IOC_UDP_XPORT_NAME "UDP"
35 
36 #define CL_IOC_IP_ADDRESS_LENGTH 15
37 
38 #define CL_IOC_MCAST_ADDRESS_LENGTH CL_IOC_IP_ADDRESS_LENGTH
39 
40 # define CL_IOC_UDP_MTU_SIZE (32*1024)
41 
42 
43 
44 
45  typedef struct
46  {
47  ClIocNodeAddressT slotNum;
48  ClCharT pInterfaceAddress[CL_IOC_MAX_XPORT_ADDR_SIZE + 1];
49  } ClIocLocationInfoT;
50 
51 
52  typedef struct ClIocLinkCfg
53  {
54 
55  ClCharT pName[CL_IOC_MAX_XPORT_NAME_LENGTH + 1];
56  ClUint8T priority;
57  ClCharT pInterface[CL_IOC_MAX_XPORT_ADDR_SIZE + 1];
58  ClUint8T pMcastAddress[CL_IOC_MCAST_ADDRESS_LENGTH + 1];
59  ClUint32T mtuSize;
60  ClBoolT isCksumSupported;
61  ClBoolT isMcastSupported;
62  ClUint32T numOfNodes;
63  ClIocLocationInfoT *pNode;
64  } ClIocUserLinkCfgT;
65 
66 
67  typedef struct ClIocXportConfig
68  {
69  ClCharT pName[CL_IOC_MAX_XPORT_NAME_LENGTH + 1];
70  ClUint8T priority;
71  ClUint32T id;
72  ClUint32T numOfLinks;
73  ClIocUserLinkCfgT *pLink;
74  } ClIocUserTransportConfigT;
75 
76 
77 
78 
79  ClRcT clIocUdpXportConfigInitialize(
80  CL_IN ClIocUserTransportConfigT *pXportConfig) CL_DEPRECATED;
81 
82 
83  ClRcT clIocTcpXportConfigInitialize(
84  CL_IN ClIocUserTransportConfigT * pXportConfig
85  ) CL_DEPRECATED;
86 
87 
88  ClRcT clIocUdpXportFinalize(
89  void
90  ) CL_DEPRECATED;
91 
92  ClRcT clIocTcpXportFinalize(
93  void
94  ) CL_DEPRECATED;
95 
96 # ifdef __cplusplus
97 }
98 # endif
99 #endif /* _CL_IOC_UDP_TRANSPORT_API_H_ */

Generated on Tue Jan 10 10:29:15 PST 2012 for OpenClovis SDK using Doxygen