X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=src%2Fcu_stub%2Fcu_stub_sctp.h;h=7e17fcf40bb2f13bccde148293613320e7b046f9;hb=45d134510deb6902b870b4a0fb574b6075fba601;hp=4cd30bf78b193843db77f3b5984aef24f80e18d8;hpb=d349ae65e1495488772f87e5cfa1ae71d9eab075;p=o-du%2Fl2.git diff --git a/src/cu_stub/cu_stub_sctp.h b/src/cu_stub/cu_stub_sctp.h index 4cd30bf78..7e17fcf40 100644 --- a/src/cu_stub/cu_stub_sctp.h +++ b/src/cu_stub/cu_stub_sctp.h @@ -30,11 +30,51 @@ #define MAX_RETRY 5 -EXTERN S16 sctpActvInit(Ent entity, Inst inst, Region region, Reason reason); -EXTERN S16 sctpActvTsk(Pst *pst, Buffer *mBuf); -EXTERN void sctpStartReq(); -EXTERN S16 sctpOutMsgSend(Buffer *mBuf); +/* Global variable declaration */ +U8 socket_type; /* Socket type */ +Bool nonblocking; /* Blocking/Non-blocking socket */ +Bool connUp; /* Is connection up */ +int assocId; /* Assoc Id of connected assoc */ + +CuSctpParams sctpCfg; /* SCTP configurations at DU */ +typedef struct +{ + S16 numFd; + U16 port; + U32 flag; + Buffer *mBuf; + MsgLen bufLen; + CmInetNetAddr addr; + CmInetFdSet readFd; + CmInetSctpSndRcvInfo info; + CmInetSctpNotification ntfy; +}sctpSockPollParams; + +typedef struct +{ + U16 destPort; /* DU PORTS */ + U16 srcPort; + Bool bReadFdSet; + CmInetFd sockFd; /* Socket file descriptor */ + CmInetAddr peerAddr; + CmInetFd lstnSockFd; /* Listening Socket file descriptor */ + CmInetNetAddrLst destAddrLst; /* DU Ip address */ + CmInetNetAddrLst localAddrLst; + CmInetNetAddr destIpNetAddr; /* DU Ip address */ +}CuSctpDestCb; + +EXTERN S16 sctpActvInit(); +EXTERN S16 sctpStartReq(); +EXTERN S16 sctpSend(Buffer *mBuf); +EXTERN S16 sctpCfgReq(); + +S16 fillAddrLst(CmInetNetAddrLst *addrLstPtr, SctpIpAddr *ipAddr); +S16 fillDestNetAddr(CmInetNetAddr *destAddrPtr, SctpIpAddr *dstIpPtr); +S16 sctpSetSockOpts(CmInetFd *sock_Fd); +S16 sctpSockPoll(); +S16 sctpAccept(CmInetFd *lstnSock_Fd, CmInetAddr *peerAddr, CmInetFd *sock_Fd); +S16 processPolling(sctpSockPollParams *pollParams, CmInetFd *sockFd, U32 *timeoutPtr, CmInetMemInfo *memInfo); #endif /**********************************************************************