X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=src%2Fric_stub%2Fric_stub_sctp.h;h=9f9a8fea8c19ec06db2a6a856de0cfe66ea87851;hb=6a921a2e24077727de299706bf23ceec317f1c5c;hp=37da87890a46f17385c50ff759f237d8f76e85b8;hpb=7d093a98f25318ae1de92b6bc2a13e73eda60d85;p=o-du%2Fl2.git diff --git a/src/ric_stub/ric_stub_sctp.h b/src/ric_stub/ric_stub_sctp.h index 37da87890..9f9a8fea8 100644 --- a/src/ric_stub/ric_stub_sctp.h +++ b/src/ric_stub/ric_stub_sctp.h @@ -23,7 +23,8 @@ #define MAX_RETRY 5 #define MAX_IPV6_LEN 16 -#define MAX_DU_SUPPORTED 1 +#define MAX_DU_SUPPORTED 2 +#define MAX_ASSOC_SUPPORTED MAX_DU_SUPPORTED /* Global variable declaration */ uint8_t socket_type; /* Socket type */ @@ -43,17 +44,15 @@ typedef struct typedef struct { + uint32_t duId; uint16_t destPort; /* DU PORTS */ - uint16_t 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 */ Bool connUp; -}RicSctpDestCb; +}RicSctpAssocCb; typedef struct ipAddr { @@ -63,37 +62,39 @@ typedef struct ipAddr uint8_t ipV6Addr[MAX_IPV6_LEN]; }SctpIpAddr; -typedef struct sctpAssocInfo +typedef struct sctpDestInfo { - SctpIpAddr duIpAddr; - uint16_t duPort; - SctpIpAddr ricIpAddr; - uint16_t ricPort; -}SctpAssocInfo; + SctpIpAddr destIpAddr; + uint16_t destPort; +}SctpDestInfo; typedef struct ricSctpParams { - uint8_t numDu; - SctpAssocInfo sctpAssoc[MAX_DU_SUPPORTED]; + SctpIpAddr localIpAddr; + uint16_t e2SctpPort; + uint8_t numDestNode; + SctpDestInfo destCb[MAX_DU_SUPPORTED]; }RicSctpParams; typedef struct sctpGlobalCb { - RicSctpParams sctpCfg; - uint8_t numDu; - RicSctpDestCb destCb[MAX_DU_SUPPORTED]; + RicSctpParams sctpCfg; + CmInetNetAddrLst localAddrLst; + CmInetFd e2LstnSockFd; /* Listening Socket file descriptor for E2 association */ + uint8_t numAssoc; + RicSctpAssocCb assocCb[MAX_ASSOC_SUPPORTED]; }SctpGlobalCb; SctpGlobalCb sctpCb; uint8_t sctpActvInit(); -uint8_t sctpSend(Buffer *mBuf); +uint8_t sctpSend(uint32_t duId, Buffer *mBuf); uint8_t sctpCfgReq(); uint8_t sctpStartReq(); uint8_t sctpSetSockOpts(CmInetFd *sock_Fd); -uint8_t sctpAccept(RicSctpDestCb *destCb); +uint8_t sctpAccept(RicSctpAssocCb *assocCb); uint8_t sctpSockPoll(); -uint8_t processPolling(sctpSockPollParams *pollParams, RicSctpDestCb *destCb, uint32_t *timeoutPtr, CmInetMemInfo *memInfo); +uint8_t processPolling(sctpSockPollParams *pollParams, RicSctpAssocCb *destCb, uint32_t *timeoutPtr, CmInetMemInfo *memInfo); uint8_t fillAddrLst(CmInetNetAddrLst *addrLstPtr, SctpIpAddr *ipAddr); uint8_t fillDestNetAddr(CmInetNetAddr *destAddrPtr, SctpIpAddr *dstIpPtr);