24 #ifndef _CL_IOC_TRANSPORT_API_H_
25 # define _CL_IOC_TRANSPORT_API_H_
39 # define CL_TRANS_STAT_INC(value, incr) ((value) = (value) + (incr))
40 # define CL_IOC_DEF_MAX_ALLOWED_XPORTS (1+4)
43 # define CL_IOC_MAX_XPORT_STRING_LENGTH 127
44 # define CL_IOC_MAX_XPORT_ADDR_SIZE CL_IOC_MAX_XPORT_STRING_LENGTH
45 # define CL_IOC_MAX_XPORT_NAME_LENGTH CL_IOC_MAX_XPORT_STRING_LENGTH
46 # define CL_IOC_MIN_MTU_SIZE 256
49 typedef struct ClIocTransportStats
57 } ClIocTransportStatsT;
59 typedef struct ClIocTransportLinkConfig ClIocTransportLinkConfigT;
63 typedef ClRcT( *ClIocTransportFuncT) ( ClIocTransportLinkConfigT *);
65 typedef ClRcT( *ClIocTransportSendFuncT) (
ClBufferHandleT, ClIocTransportLinkConfigT *, ClUint8T *);
67 typedef ClRcT( *ClIocTransportAddrConvertFuncT) ( ClUint8T * pTransportAddress, ClUint8T * pIocArpAddrBytes);
71 typedef ClRcT( *ClIocGroupJoinFuncT) ( ClUint8T *);
73 typedef ClRcT( *ClIocGroupLeaveFuncT) ( ClUint8T *);
75 typedef ClRcT( *ClIocGroupDeleteFuncT) ( ClUint8T *);
79 struct ClIocTransportLinkConfig
81 ClCharT pXportName[CL_IOC_MAX_XPORT_NAME_LENGTH + 1];
82 ClCharT pXportLinkName[CL_IOC_MAX_XPORT_NAME_LENGTH + 1];
84 ClUint8T isChecksumReqd;
86 ClUint8T isBcastSupported;
87 ClUint8T xportBcastAddress[CL_IOC_MAX_XPORT_ADDR_SIZE + 1];
88 ClUint8T xportAddress[CL_IOC_MAX_XPORT_ADDR_SIZE + 1];
90 ClIocTransportStatsT *pIocXportStats;
91 ClIocCoreFuncT iocCoreRecvRoutine;
93 ClUint8T isRegistered;
94 void *pXportLinkPrivData;
99 typedef struct ClIocTransportConfig
102 ClCharT pXportName[CL_IOC_MAX_XPORT_NAME_LENGTH + 1];
105 ClIocTransportFuncT initRoutine;
106 ClIocTransportSendFuncT sendRoutine;
107 ClIocTransportFuncT closeRoutine;
108 ClIocTransportAddrConvertFuncT addrConvertRoutine;
109 ClIocTransportAddrConvertFuncT addrExtractRoutine;
110 } ClIocTransportConfigT;
113 ClRcT clIocTransportRegister(
CL_IN ClIocTransportConfigT *pXportObjConfig) CL_DEPRECATED;
114 ClRcT clIocTransportDeregister(
CL_IN ClCharT *pXportName) CL_DEPRECATED;
115 ClRcT clIocLinkRegister(
CL_IN ClIocTransportLinkConfigT* pXportLinkConfig) CL_DEPRECATED;
116 ClRcT clIocLinkDeregister(
CL_IN ClCharT *pXportLinkName,
CL_IN ClCharT *pXportName) CL_DEPRECATED;
Typical defines found in any software project.
Header file of Buffer Management related APIs.
Header file of Clovis Container Related APIs.
Header file of Ioc Data Structures and APIs.
ClPtrT ClBufferHandleT
The type of the handle for the buffer messages.
Definition: clBufferApi.h:82
ClUint32T ClRcT
Clovis return code type.
Definition: clCommon.h:168
#define CL_IN
CL_IN macro assists in clearly defining arguments of an API, but has no actual meaning.
Definition: clCommon.h:106
IOC address.
Definition: clIocApi.h:401