Commit d3741e8b authored by gauthier's avatar gauthier

Changed with Cedric the collection initial ue id/enb s1ap id that did not work...

Changed with Cedric the collection initial ue id/enb s1ap id that did not work in rb tree -> 2 hashtables + misc types name change in openaircn (gtp types )



git-svn-id: http://svn.eurecom.fr/openair4G/trunk@7661 818b1a75-f10b-46b9-bf7c-635c3b92a50f
parent 2d6270a7
......@@ -188,7 +188,8 @@ function main()
echo "set args $exe_arguments" >> ~/.gdb_lte_softmodem
echo "run" >> ~/.gdb_lte_softmodem
cat ~/.gdb_lte_softmodem
gdb -n -x ~/.gdb_lte_softmodem 2>&1 > /tmp/gdb_lte_softmodem.stdout.txt
gdb -n -x ~/.gdb_lte_softmodem 2>&1
#> /tmp/gdb_lte_softmodem.stdout.txt
fi
if [ $run_mscgen -eq 1 ]; then
......
......@@ -78,19 +78,19 @@ gtpv1u_eNB_send_init_udp(
NwGtpv1uRcT
gtpv1u_eNB_log_request(
NwGtpv1uLogMgrHandleT hLogMgr,
NwU32T logLevel,
uint32_t logLevel,
NwCharT *file,
NwU32T line,
uint32_t line,
NwCharT *logStr);
NwGtpv1uRcT
gtpv1u_eNB_send_udp_msg(
NwGtpv1uUdpHandleT udpHandle,
NwU8T *buffer,
NwU32T buffer_len,
NwU32T buffer_offset,
NwU32T peerIpAddr,
NwU16T peerPort);
uint8_t *buffer,
uint32_t buffer_len,
uint32_t buffer_offset,
uint32_t peerIpAddr,
uint16_t peerPort);
NwGtpv1uRcT
gtpv1u_eNB_process_stack_req(
......@@ -114,9 +114,9 @@ data_recv_callback(
static NwGtpv1uRcT
gtpv1u_start_timer_wrapper(
NwGtpv1uTimerMgrHandleT tmrMgrHandle,
NwU32T timeoutSec,
NwU32T timeoutUsec,
NwU32T tmrType,
uint32_t timeoutSec,
uint32_t timeoutUsec,
uint32_t tmrType,
void *timeoutArg,
NwGtpv1uTimerHandleT *hTmr);
......@@ -241,9 +241,9 @@ static int gtpv1u_eNB_send_init_udp(uint16_t port_number)
//-----------------------------------------------------------------------------
NwGtpv1uRcT gtpv1u_eNB_log_request(NwGtpv1uLogMgrHandleT hLogMgr,
NwU32T logLevel,
uint32_t logLevel,
NwCharT *file,
NwU32T line,
uint32_t line,
NwCharT *logStr)
{
LOG_D(GTPU, "%s\n", logStr);
......@@ -253,11 +253,11 @@ NwGtpv1uRcT gtpv1u_eNB_log_request(NwGtpv1uLogMgrHandleT hLogMgr,
//-----------------------------------------------------------------------------
NwGtpv1uRcT gtpv1u_eNB_send_udp_msg(
NwGtpv1uUdpHandleT udpHandle,
NwU8T *buffer,
NwU32T buffer_len,
NwU32T buffer_offset,
NwU32T peerIpAddr,
NwU16T peerPort)
uint8_t *buffer,
uint32_t buffer_len,
uint32_t buffer_offset,
uint32_t peerIpAddr,
uint16_t peerPort)
{
// Create and alloc new message
MessageDef *message_p = NULL;
......@@ -491,9 +491,9 @@ int data_recv_callback(uint16_t portP,
//-----------------------------------------------------------------------------
static NwGtpv1uRcT gtpv1u_start_timer_wrapper(
NwGtpv1uTimerMgrHandleT tmrMgrHandle,
NwU32T timeoutSec,
NwU32T timeoutUsec,
NwU32T tmrType,
uint32_t timeoutSec,
uint32_t timeoutUsec,
uint32_t tmrType,
void *timeoutArg,
NwGtpv1uTimerHandleT *hTmr)
{
......
......@@ -48,12 +48,12 @@ typedef enum {
BEARER_MAX,
} bearer_state_t;
#define BUFFER_TO_NwU32T(buf, x) \
#define BUFFER_TO_uint32_t(buf, x) \
do { \
x = ((NwU32T)((buf)[0]) ) | \
((NwU32T)((buf)[1]) << 8) | \
((NwU32T)((buf)[2]) << 16) | \
((NwU32T)((buf)[3]) << 24); \
x = ((uint32_t)((buf)[0]) ) | \
((uint32_t)((buf)[1]) << 8) | \
((uint32_t)((buf)[2]) << 16) | \
((uint32_t)((buf)[3]) << 24); \
} while(0)
......
......@@ -63,17 +63,17 @@ static void *gtpv1u_thread(void *args);
NwGtpv1uRcT gtpv1u_send_udp_msg(
NwGtpv1uUdpHandleT udpHandle,
NwU8T *buffer,
NwU32T buffer_len,
NwU32T buffer_offset,
NwU32T peerIpAddr,
NwU32T peerPort);
uint8_t *buffer,
uint32_t buffer_len,
uint32_t buffer_offset,
uint32_t peerIpAddr,
uint32_t peerPort);
NwGtpv1uRcT gtpv1u_log_request(
NwGtpv1uLogMgrHandleT hLogMgr,
NwU32T logLevel,
uint32_t logLevel,
NwCharT *file,
NwU32T line,
uint32_t line,
NwCharT *logStr);
NwGtpv1uRcT gtpv1u_process_stack_req(
......@@ -149,15 +149,39 @@ void gtpu_print_hex_octets(unsigned char* dataP, unsigned long sizeP)
NwGtpv1uRcT gtpv1u_log_request(NwGtpv1uLogMgrHandleT hLogMgr,
NwU32T logLevel,
uint32_t logLevel,
NwCharT *file,
NwU32T line,
uint32_t line,
NwCharT *logStr)
{
GTPU_DEBUG("%s\n", logStr);
return NW_GTPV1U_OK;
}
NwGtpv1uRcT gtpv1u_send_udp_msg(
NwGtpv1uUdpHandleT udpHandle,
uint8_t *buffer,
uint32_t buffer_len,
uint32_t buffer_offset,
uint32_t peerIpAddr,
uint32_t peerPort)
{
// Create and alloc new message
MessageDef *message_p;
udp_data_req_t *udp_data_req_p;
message_p = itti_alloc_new_message(TASK_GTPV1_U, UDP_DATA_REQ);
udp_data_req_p = &message_p->ittiMsg.udp_data_req;
udp_data_req_p->peer_address = peerIpAddr;
udp_data_req_p->peer_port = peerPort;
udp_data_req_p->buffer = buffer;
udp_data_req_p->buffer_length = buffer_len;
udp_data_req_p->buffer_offset = buffer_offset;
return itti_send_msg_to_task(TASK_UDP, INSTANCE_DEFAULT, message_p);
}
/* Callback called when a gtpv1u message arrived on UDP interface */
NwGtpv1uRcT gtpv1u_process_stack_req(
......@@ -179,7 +203,7 @@ NwGtpv1uRcT gtpv1u_process_stack_req(
* task for transmission.
*/
/*if (NW_GTPV1U_OK != nwGtpv1uMsgGetTpdu(pUlpApi->apiInfo.recvMsgInfo.hMsg,
buffer, (NwU32T *)&buffer_len)) {
buffer, (uint32_t *)&buffer_len)) {
GTPU_ERROR("Error while retrieving T-PDU\n");
}*/
GTPU_DEBUG("Received TPDU from gtpv1u stack %u with size %d\n",
......@@ -347,9 +371,9 @@ static int gtpv1u_update_s1u_tunnel(Gtpv1uUpdateTunnelReq *reqP)
static NwGtpv1uRcT gtpv1u_start_timer_wrapper(
NwGtpv1uTimerMgrHandleT tmrMgrHandle,
NwU32T timeoutSec,
NwU32T timeoutUsec,
NwU32T tmrType,
uint32_t timeoutSec,
uint32_t timeoutUsec,
uint32_t tmrType,
void *timeoutArg,
NwGtpv1uTimerHandleT *hTmr)
{
......@@ -410,6 +434,19 @@ static void *gtpv1u_thread(void *args)
}
break;
// DATA COMING FROM UDP
case UDP_DATA_IND: {
udp_data_ind_t *udp_data_ind_p;
udp_data_ind_p = &received_message_p->ittiMsg.udp_data_ind;
nwGtpv1uProcessUdpReq(gtpv1u_sgw_data.gtpv1u_stack,
udp_data_ind_p->buffer,
udp_data_ind_p->buffer_length,
udp_data_ind_p->peer_port,
udp_data_ind_p->peer_address);
//itti_free(ITTI_MSG_ORIGIN_ID(received_message_p), udp_data_ind_p->buffer);
}
break;
case TIMER_HAS_EXPIRED:
nwGtpv1uProcessTimeout(&received_message_p->ittiMsg.timer_has_expired.arg);
break;
......
......@@ -79,15 +79,15 @@ extern "C" {
*/
typedef struct NwGtpv1uStack {
NwU32T stackType;/**< GTPU_STACK_ENB or GTPU_STACK_SGW */
uint32_t stackType;/**< GTPU_STACK_ENB or GTPU_STACK_SGW */
NwPtrT id;
NwU32T seq;
uint32_t seq;
NwGtpv1uUlpEntityT ulp;
NwGtpv1uUdpEntityT udp;
NwGtpv1uMemMgrEntityT memMgr;
NwGtpv1uTimerMgrEntityT tmrMgr;
NwGtpv1uLogMgrEntityT logMgr;
NwU32T logLevel;
uint32_t logLevel;
RB_HEAD( NwGtpv1uOutstandingTxSeqNumTrxnMap, NwGtpv1uTrxn) outstandingTxSeqNumMap;
RB_HEAD( NwGtpv1uOutstandingRxSeqNumTrxnMap, NwGtpv1uTrxn) outstandingRxSeqNumMap;
RB_HEAD(NwGtpv1uTunnelEndPointTMap, NwGtpv1uTunnelEndPoint) sessionMap;
......@@ -99,8 +99,8 @@ typedef struct NwGtpv1uStack {
*/
typedef struct NwGtpv1uTunnelEndPoint {
NwU32T teid; /**< Gtpu Tunnel End Point Identifier */
NwU32T peerAddr; /**< Peer IP address for the session */
uint32_t teid; /**< Gtpu Tunnel End Point Identifier */
uint32_t peerAddr; /**< Peer IP address for the session */
NwGtpv1uStackT* pStack; /**< Pointer to the parent stack */
NwGtpv1uUlpSessionHandleT hUlpSession; /**< ULP session handle for the session */
RB_ENTRY (NwGtpv1uTunnelEndPoint) sessionMapRbtNode; /**< RB Tree Data Structure Node */
......@@ -152,20 +152,20 @@ nwGtpStopTrxnPeerRspTimer(NwGtpv1uStackT* thiz, NwGtpv1uTimerHandleT* phTmr);
* NwGtpv1uMsgT holds gtpv1u messages to/from the peer.
*/
typedef struct NwGtpv1uMsg {
NwU8T version;
NwU8T protocolType;
NwU8T extHdrFlag;
NwU8T seqNumFlag;
NwU16T npduNumFlag;
NwU32T msgType;
NwU16T msgLen;
NwU32T teid;
NwU16T seqNum;
NwU8T npduNum;
NwU8T nextExtHdrType;
NwU8T* msgBuf;
NwU32T msgBufLen;
NwU32T msgBufOffset;
uint8_t version;
uint8_t protocolType;
uint8_t extHdrFlag;
uint8_t seqNumFlag;
uint16_t npduNumFlag;
uint32_t msgType;
uint16_t msgLen;
uint32_t teid;
uint16_t seqNum;
uint8_t npduNum;
uint8_t nextExtHdrType;
uint8_t* msgBuf;
uint32_t msgBufLen;
uint32_t msgBufOffset;
struct NwGtpv1uMsg* next;
} NwGtpv1uMsgT;
......@@ -179,16 +179,16 @@ typedef struct NwGtpv1uMsg {
*/
typedef struct NwGtpv1uTrxn {
NwU32T seqNum;
NwU32T peerIp;
NwU32T peerPort;
NwU8T maxRetries;
NwU8T t3Timer;
uint32_t seqNum;
uint32_t peerIp;
uint32_t peerPort;
uint8_t maxRetries;
uint8_t t3Timer;
NwGtpv1uTimerHandleT hRspTmr;
NwGtpv1uTimeoutInfoT peerRspTimeoutInfo;
NwGtpv1uStackT* pStack;
NwGtpv1uTunnelEndPointT* pSession;
NwU32T hUlpTrxn;
uint32_t hUlpTrxn;
NwGtpv1uMsgT* pMsg;
RB_ENTRY (NwGtpv1uTrxn) outstandingTxSeqNumMapRbtNode; /**< RB Tree Data Structure Node */
RB_ENTRY (NwGtpv1uTrxn) outstandingRxSeqNumMapRbtNode; /**< RB Tree Data Structure Node */
......@@ -203,15 +203,15 @@ typedef struct NwGtpv1uTrxn {
#pragma pack(1)
typedef struct NwGtpv1uMsgHeader {
NwU8T PN:1;
NwU8T S:1;
NwU8T E:1;
NwU8T spare:1;
NwU8T PT:1;
NwU8T version:3;
NwU8T msgType;
NwU16T msgLength;
NwU32T teid;
uint8_t PN:1;
uint8_t S:1;
uint8_t E:1;
uint8_t spare:1;
uint8_t PT:1;
uint8_t version:3;
uint8_t msgType;
uint16_t msgLength;
uint32_t teid;
} NwGtpv1uMsgHeaderT;
#pragma pack()
......
......@@ -56,7 +56,7 @@ nwGtpv1uTrxnNew( NW_IN NwGtpv1uStackT* thiz,
NwGtpv1uRcT
nwGtpv1uTrxnWithSeqNew( NW_IN NwGtpv1uStackT* thiz,
NW_IN NwU32T seqNum,
NW_IN uint32_t seqNum,
NW_OUT NwGtpv1uTrxnT **ppTrxn);
NwGtpv1uRcT
......@@ -72,8 +72,8 @@ nwGtpv1uTrxnDelete( NW_INOUT NwGtpv1uTrxnT **pthiz);
NwGtpv1uRcT
nwGtpv1uTrxnCreateAndSendMsg( NW_IN NwGtpv1uStackT* thiz,
NW_IN NwGtpv1uTrxnT *pTrxn,
NW_IN NwU32T peerIp,
NW_IN NwU32T peerPort,
NW_IN uint32_t peerIp,
NW_IN uint32_t peerPort,
NW_IN NwGtpv1uMsgT *pMsg);
#ifdef __cplusplus
......
......@@ -80,7 +80,7 @@ typedef NwPtrT NwGtpv1uTimerHandleT; /**< Gtpv2 Stack Timer
typedef NwPtrT NwGtpv1uMsgHandleT; /**< Gtpv2 Msg Handle */
typedef struct NwGtpv1uStackConfig {
NwU16T udpSrcPort;
uint16_t udpSrcPort;
} NwGtpv1uStackConfigT;
/*--------------------------------------------------------------------------*
......@@ -121,7 +121,7 @@ typedef enum {
*--------------------------------------------------------------------------*/
typedef NwPtrT NwGtpv1uStackSessionHandleT;/**< Gtpv2 Stack session Handle */
typedef NwU8T NwGtpv1uMsgTypeT; /**< Gtpv2 Msg Type */
typedef uint8_t NwGtpv1uMsgTypeT; /**< Gtpv2 Msg Type */
typedef NwPtrT NwGtpv1uTrxnHandleT; /**< Gtpv2 Transaction Handle */
typedef NwPtrT NwGtpv1uUlpTrxnHandleT; /**< Gtpv2 Ulp Transaction Handle */
typedef NwPtrT NwGtpv1uUlpSessionHandleT; /**< Gtpv2 Ulp session Handle */
......@@ -132,7 +132,7 @@ typedef NwPtrT NwGtpv1uUlpSessionHandleT; /**< Gtpv2 Ulp session Handle */
*/
typedef struct {
NW_IN NwU32T teid;
NW_IN uint32_t teid;
NW_IN NwGtpv1uUlpSessionHandleT hUlpSession;
NW_OUT NwGtpv1uStackSessionHandleT hStackSession;
} NwGtpv1uCreateTunnelEndPointT;
......@@ -153,10 +153,10 @@ typedef struct {
typedef struct {
NW_IN NwGtpv1uUlpTrxnHandleT hUlpTrxn;
NW_IN NwU32T peerIp;
NW_IN NwU32T peerPort;
NW_IN NwU8T flags;
NW_IN NwU32T teid;
NW_IN uint32_t peerIp;
NW_IN uint32_t peerPort;
NW_IN uint8_t flags;
NW_IN uint32_t teid;
} NwGtpv1uInitialReqInfoT;
/**
......@@ -166,11 +166,11 @@ typedef struct {
typedef struct {
NW_IN NwGtpv1uUlpTrxnHandleT hUlpTrxn;
NW_IN NwU32T peerIp;
NW_IN NwU32T peerPort;
NW_IN NwU8T flags;
NW_IN NwU32T teid;
NW_IN NwU32T seqNum;
NW_IN uint32_t peerIp;
NW_IN uint32_t peerPort;
NW_IN uint8_t flags;
NW_IN uint32_t teid;
NW_IN uint32_t seqNum;
NW_IN NwGtpv1uMsgHandleT hMsg;
} NwGtpv1uTriggeredRspInfoT;
......@@ -181,11 +181,11 @@ typedef struct {
typedef struct {
NW_IN NwGtpv1uUlpTrxnHandleT hUlpTrxn;
NW_IN NwU32T peerIp;
NW_IN NwU32T peerPort;
NW_IN NwU8T flags;
NW_IN NwU32T teid;
NW_IN NwU32T seqNum;
NW_IN uint32_t peerIp;
NW_IN uint32_t peerPort;
NW_IN uint8_t flags;
NW_IN uint32_t teid;
NW_IN uint32_t seqNum;
NW_IN NwGtpv1uMsgHandleT hMsg;
} NwGtpv1uTriggeredReqInfoT;
......@@ -196,9 +196,9 @@ typedef struct {
*/
typedef struct {
NW_IN NwU32T teid;
NW_IN NwU32T ipAddr;
NW_IN NwU8T flags;
NW_IN uint32_t teid;
NW_IN uint32_t ipAddr;
NW_IN uint8_t flags;
NW_IN NwGtpv1uMsgHandleT hMsg;
} NwGtpv1uSendtoInfoT;
......@@ -213,7 +213,7 @@ typedef struct {
NW_INOUT NwGtpv1uTrxnHandleT hTrxn;
NW_IN NwGtpv1uUlpTrxnHandleT hUlpTrxn;
NW_IN NwGtpv1uMsgTypeT msgType;
NW_IN NwU8T flags;
NW_IN uint8_t flags;
NW_IN NwGtpv1uMsgHandleT hMsg;
} NwGtpv1uSendMsgInfoT;
......@@ -225,10 +225,10 @@ typedef struct {
typedef struct {
NW_IN NwGtpv1uUlpSessionHandleT hUlpSession;
NW_IN NwGtpv1uUlpTrxnHandleT hUlpTrxn;
NW_IN NwU32T teid;
NW_IN NwU32T peerIp;
NW_IN NwU32T peerPort;
NW_IN NwU32T msgType; /**< Message type */
NW_IN uint32_t teid;
NW_IN uint32_t peerIp;
NW_IN uint32_t peerPort;
NW_IN uint32_t msgType; /**< Message type */
NW_IN NwGtpv1uMsgHandleT hMsg; /**< Gtp Message handle */
} NwGtpv1uRecvMsgInfoT;
......@@ -297,11 +297,11 @@ typedef struct {
typedef struct {
NwGtpv1uUdpHandleT hUdp;
NwGtpv1uRcT (*udpDataReqCallback) ( NW_IN NwGtpv1uUdpHandleT udpHandle,
NW_IN NwU8T* dataBuf,
NW_IN NwU32T dataSize,
NW_IN NwU32T dataOffset,
NW_IN NwU32T peerIP,
NW_IN NwU16T peerPort);
NW_IN uint8_t* dataBuf,
NW_IN uint32_t dataSize,
NW_IN uint32_t dataOffset,
NW_IN uint32_t peerIP,
NW_IN uint16_t peerPort);
} NwGtpv1uUdpEntityT;
/**
......@@ -311,14 +311,14 @@ typedef struct {
typedef struct {
NwGtpv1uMemMgrHandleT hMemMgr;
void* (*memAlloc)( NW_IN NwGtpv1uMemMgrHandleT hMemMgr,
NW_IN NwU32T memSize,
NW_IN uint32_t memSize,
NW_IN NwCharT* fileName,
NW_IN NwU32T lineNumber);
NW_IN uint32_t lineNumber);
void (*memFree) ( NW_IN NwGtpv1uMemMgrHandleT hMemMgr,
NW_IN void* hMem,
NW_IN NwCharT* fileName,
NW_IN NwU32T lineNumber);
NW_IN uint32_t lineNumber);
} NwGtpv1uMemMgrEntityT;
......@@ -336,9 +336,9 @@ typedef struct {
typedef struct {
NwGtpv1uTimerMgrHandleT tmrMgrHandle;
NwGtpv1uRcT (*tmrStartCallback)( NW_IN NwGtpv1uTimerMgrHandleT tmrMgrHandle,
NW_IN NwU32T timeoutSecs,
NW_IN NwU32T timeoutUsec,
NW_IN NwU32T tmrType,
NW_IN uint32_t timeoutSecs,
NW_IN uint32_t timeoutUsec,
NW_IN uint32_t tmrType,
NW_IN void* tmrArg,
NW_OUT NwGtpv1uTimerHandleT* tmrHandle);
......@@ -358,9 +358,9 @@ typedef struct {
typedef struct {
NwGtpv1uLogMgrHandleT logMgrHandle;
NwGtpv1uRcT (*logReqCallback) (NW_IN NwGtpv1uLogMgrHandleT logMgrHandle,
NW_IN NwU32T logLevel,
NW_IN uint32_t logLevel,
NW_IN NwCharT* file,
NW_IN NwU32T line,
NW_IN uint32_t line,
NW_IN NwCharT* logStr);
} NwGtpv1uLogMgrEntityT;
......@@ -385,7 +385,7 @@ extern "C" {
*/
NwGtpv1uRcT
nwGtpv1uInitialize( NW_INOUT NwGtpv1uStackHandleT* phGtpv1uStackHandle, NwU32T stackType);
nwGtpv1uInitialize( NW_INOUT NwGtpv1uStackHandleT* phGtpv1uStackHandle, uint32_t stackType);
/*---------------------------------------------------------------------------
* Destructor
......@@ -493,7 +493,7 @@ nwGtpv1uSetLogMgrEntity( NW_IN NwGtpv1uStackHandleT hGtpv1uStackHandle,
NwGtpv1uRcT
nwGtpv1uSetLogLevel( NW_IN NwGtpv1uStackHandleT hGtpuStackHandle,
NW_IN NwU32T logLevel);
NW_IN uint32_t logLevel);
/*---------------------------------------------------------------------------
* Process Request from Udp Layer
*--------------------------------------------------------------------------*/
......@@ -511,10 +511,10 @@ nwGtpv1uSetLogLevel( NW_IN NwGtpv1uStackHandleT hGtpuStackHandle,
NwGtpv1uRcT
nwGtpv1uProcessUdpReq( NW_IN NwGtpv1uStackHandleT hGtpv1uStackHandle,
NW_IN NwU8T* udpData,
NW_IN NwU32T udpDataLen,
NW_IN NwU16T peerPort,
NW_IN NwU32T peerIP);
NW_IN uint8_t* udpData,
NW_IN uint32_t udpDataLen,
NW_IN uint16_t peerPort,
NW_IN uint32_t peerIP);
/*---------------------------------------------------------------------------
* Process Request from Upper Layer
......
......@@ -53,23 +53,23 @@ extern "C" {
#pragma pack(1)
typedef struct NwGtpv1uIeTv1 {
NwU8T t;
NwU8T v;
uint8_t t;
uint8_t v;
} NwGtpv1uIeTv1T;
typedef struct NwGtpv1uIeTv2 {
NwU8T t;
NwU8T v;
uint8_t t;
uint8_t v;
} NwGtpv1uIeTv2T;
typedef struct NwGtpv1uIeTv4 {
NwU8T t;
NwU32T v;
uint8_t t;
uint32_t v;
} NwGtpv1uIeTv4T;
typedef struct NwGtpv1uIeTlv {
NwU8T t;
NwU16T l;
uint8_t t;
uint16_t l;
} NwGtpv1uIeTlvT;
#pragma pack()
......@@ -87,14 +87,14 @@ typedef struct NwGtpv1uIeTlv {
NwGtpv1uRcT
nwGtpv1uMsgNew( NW_IN NwGtpv1uStackHandleT hGtpuStackHandle,
NW_IN NwU8T seqNumFlag,
NW_IN NwU8T npduNumFlag,
NW_IN NwU8T extHdrFlag,
NW_IN NwU8T msgType,
NW_IN NwU8T teid,
NW_IN NwU16T seqNum,
NW_IN NwU8T npduNum,
NW_IN NwU8T nextExtHeader,
NW_IN uint8_t seqNumFlag,
NW_IN uint8_t npduNumFlag,
NW_IN uint8_t extHdrFlag,
NW_IN uint8_t msgType,
NW_IN uint8_t teid,
NW_IN uint16_t seqNum,
NW_IN uint8_t npduNum,
NW_IN uint8_t nextExtHeader,
NW_OUT NwGtpv1uMsgHandleT *phMsg);
......@@ -112,12 +112,12 @@ nwGtpv1uMsgNew( NW_IN NwGtpv1uStackHandleT hGtpuStackHandle,
NwGtpv1uRcT
nwGtpv1uGpduMsgNew( NW_IN NwGtpv1uStackHandleT hGtpuStackHandle,
NW_IN NwU32T teid,
NW_IN NwU8T seqNumFlag,
NW_IN NwU16T seqNum,
NW_IN NwU8T* tpdu,
NW_IN NwU16T tpduLength,
NW_IN NwU32T tpduOffset,
NW_IN uint32_t teid,
NW_IN uint8_t seqNumFlag,
NW_IN uint16_t seqNum,
NW_IN uint8_t* tpdu,
NW_IN uint16_t tpduLength,
NW_IN uint32_t tpduOffset,
NW_OUT NwGtpv1uMsgHandleT *phMsg);
/**
......@@ -143,8 +143,8 @@ nwGtpv1uMsgFromMsgNew( NW_IN NwGtpv1uStackHandleT hGtpuStackHandle,
NwGtpv1uRcT
nwGtpv1uMsgFromBufferNew( NW_IN NwGtpv1uStackHandleT hGtpuStackHandle,
NW_IN NwU8T* pBuf,
NW_IN NwU32T bufLen,
NW_IN uint8_t* pBuf,
NW_IN uint32_t bufLen,
NW_OUT NwGtpv1uMsgHandleT *phMsg);
/**
......@@ -166,7 +166,7 @@ nwGtpv1uMsgDelete( NW_IN NwGtpv1uStackHandleT hGtpuStackHandle,
*/
NwGtpv1uRcT
nwGtpv1uMsgSetTeid(NW_IN NwGtpv1uMsgHandleT hMsg, NwU32T teid);
nwGtpv1uMsgSetTeid(NW_IN NwGtpv1uMsgHandleT hMsg, uint32_t teid);
/**
* Set TEID present flag for gtpv1u message.
......@@ -186,7 +186,7 @@ nwGtpv1uMsgSetTeidPresent(NW_IN NwGtpv1uMsgHandleT hMsg, NwBoolT teidPresent);
*/
NwGtpv1uRcT
nwGtpv1uMsgSetSeqNumber(NW_IN NwGtpv1uMsgHandleT hMsg, NwU32T seqNum);
nwGtpv1uMsgSetSeqNumber(NW_IN NwGtpv1uMsgHandleT hMsg, uint32_t seqNum);
/**
* Get TEID present for gtpv1u message.
......@@ -194,7 +194,7 @@ nwGtpv1uMsgSetSeqNumber(NW_IN NwGtpv1uMsgHandleT hMsg, NwU32T seqNum);
* @param[in] hMsg : Message handle.
*/
NwU32T
uint32_t
nwGtpv1uMsgGetTeid(NW_IN NwGtpv1uMsgHandleT hMsg);
/**
......@@ -212,7 +212,7 @@ nwGtpv1uMsgGetTeidPresent(NW_IN NwGtpv1uMsgHandleT hMsg);
* @param[in] hMsg : Message handle.
*/
NwU32T
uint32_t
nwGtpv1uMsgGetSeqNumber(NW_IN NwGtpv1uMsgHandleT hMsg);
/**
......@@ -223,13 +223,13 @@ nwGtpv1uMsgGetSeqNumber(NW_IN NwGtpv1uMsgHandleT hMsg);
* @param[out] hMsg : T-PDU length.
*/
NwU32T
nwGtpv1uMsgGetTpdu(NW_IN NwGtpv1uMsgHandleT hMsg, NwU8T* pTpduBuf, NwU32T* pTpduLength);
uint32_t
nwGtpv1uMsgGetTpdu(NW_IN NwGtpv1uMsgHandleT hMsg, uint8_t* pTpduBuf, uint32_t* pTpduLength);
NwU8T*
uint8_t*
nwGtpv1uMsgGetTpduHandle(NW_IN NwGtpv1uMsgHandleT hMsg);
NwU32T
uint32_t
nwGtpv1uMsgGetTpduLength(NW_IN NwGtpv1uMsgHandleT hMsg);
/**
......@@ -242,8 +242,8 @@ nwGtpv1uMsgGetTpduLength(NW_IN NwGtpv1uMsgHandleT hMsg);
NwGtpv1uRcT
nwGtpv1uMsgAddIeTV1(NW_IN NwGtpv1uMsgHandleT hMsg,
NW_IN NwU8T type,
NW_IN NwU8T value);
NW_IN uint8_t type,
NW_IN uint8_t value);
/**
......@@ -256,9 +256,9 @@ nwGtpv1uMsgAddIeTV1(NW_IN NwGtpv1uMsgHandleT hMsg,
NwGtpv1uRcT
nwGtpv1uMsgAddIeTV2(NW_IN NwGtpv1uMsgHandleT hMsg,
NW_IN NwU8T type,
NW_IN NwU16T length,
NW_IN NwU16T value);
NW_IN uint8_t type,
NW_IN uint16_t length,
NW_IN uint16_t value);
/**
......@@ -271,9 +271,9 @@ nwGtpv1uMsgAddIeTV2(NW_IN NwGtpv1uMsgHandleT hMsg,
NwGtpv1uRcT
nwGtpv1uMsgAddIeTV4(NW_IN NwGtpv1uMsgHandleT hMsg,
NW_IN NwU8T type,
NW_IN NwU16T length,
NW_IN NwU32T value);
NW_IN uint8_t type,
NW_IN uint16_t length,
NW_IN uint32_t value);
/**
......@@ -287,9 +287,9 @@ nwGtpv1uMsgAddIeTV4(NW_IN NwGtpv1uMsgHandleT hMsg,
NwGtpv1uRcT
nwGtpv1uMsgAddIe(NW_IN NwGtpv1uMsgHandleT hMsg,
NW_IN NwU8T type,
NW_IN NwU16T length,
NW_IN NwU8T* pVal);
NW_IN uint8_t type,
NW_IN uint16_t length,
NW_IN uint8_t* pVal);
/**
* Dump the contents of gtpv1u mesasge.
......@@ -301,7 +301,7 @@ nwGtpv1uMsgAddIe(NW_IN NwGtpv1uMsgHandleT hMsg,
NwGtpv1uRcT
nwGtpv1uMsgHexDump(NwGtpv1uMsgHandleT hMsg, FILE* fp);
NwU32T
uint32_t
nwGtpv1uMsgGetMsgType(NW_IN NwGtpv1uMsgHandleT hMsg);
#ifdef __cplusplus
......
......@@ -68,15 +68,15 @@ extern "C" {
* IPv4 logging macros
*--------------------------------------------------------------------------*/
#define NW_IPV4_ADDR "%u.%u.%u.%u"
#define NW_IPV4_ADDR_FORMAT(__addr) (NwU8T)((__addr) & 0x000000ff), \
(NwU8T)(((__addr) & 0x0000ff00) >> 8 ), \
(NwU8T)(((__addr) & 0x00ff0000) >> 16), \
(NwU8T)(((__addr) & 0xff000000) >> 24)
#define NW_IPV4_ADDR_FORMATP(__paddr) (NwU8T)(*((NwU8T*)(__paddr)) & 0x000000ff), \
(NwU8T)(*((NwU8T*)(__paddr + 1)) & 0x000000ff), \
(NwU8T)(*((NwU8T*)(__paddr + 2)) & 0x000000ff), \
(NwU8T)(*((NwU8T*)(__paddr + 3)) & 0x000000ff)
#define NW_IPV4_ADDR_FORMAT(__addr) (uint8_t)((__addr) & 0x000000ff), \
(uint8_t)(((__addr) & 0x0000ff00) >> 8 ), \
(uint8_t)(((__addr) & 0x00ff0000) >> 16), \
(uint8_t)(((__addr) & 0xff000000) >> 24)
#define NW_IPV4_ADDR_FORMATP(__paddr) (uint8_t)(*((uint8_t*)(__paddr)) & 0x000000ff), \
(uint8_t)(*((uint8_t*)(__paddr + 1)) & 0x000000ff), \
(uint8_t)(*((uint8_t*)(__paddr + 2)) & 0x000000ff), \
(uint8_t)(*((uint8_t*)(__paddr + 3)) & 0x000000ff)
#ifdef __cplusplus
......
......@@ -54,11 +54,6 @@ extern "C" {
#define NW_TRUE (1) /**< Truth value */
#define NW_FALSE (0) /**< False value */
typedef unsigned char NwU8T; /**< Unsigned 1 byte */
typedef unsigned short NwU16T; /**< Unsigned 2 byte */
typedef unsigned int NwU32T; /**< Unsigned 4 byte */
typedef unsigned long long NwU64T; /**< Unsigned 8 byte */
typedef signed char NwS8T; /**< Signed 1 byte */
typedef signed short NwS16T; /**< Signed 2 byte */
typedef signed int NwS32T; /**< Signed 4 byte */
......
......@@ -52,10 +52,10 @@
( ( (x) & 0x0000ff00 ) << 8 ) | ( ( (x) & 0x000000ff) << 24 ) )
#define NW_HTONLL(x) ( \
( ( ((NwU64T)x) & 0xff00000000000000ULL ) >> 56 ) | ( ( ((NwU64T)x) & 0x00ff000000000000ULL ) >> 40 ) | \
( ( ((NwU64T)x) & 0x0000ff0000000000ULL ) >> 24 ) | ( ( ((NwU64T)x) & 0x000000ff00000000ULL ) >> 8 ) | \
( ( ((NwU64T)x) & 0x000000000000ff00ULL ) << 40 ) | ( ( ((NwU64T)x) & 0x00000000000000ffULL ) << 56 ) | \
( ( ((NwU64T)x) & 0x0000000000ff0000ULL ) << 24 ) | ( ( ((NwU64T)x) & 0x00000000ff000000ULL ) << 8 ) \
( ( ((uint64_t)x) & 0xff00000000000000ULL ) >> 56 ) | ( ( ((uint64_t)x) & 0x00ff000000000000ULL ) >> 40 ) | \
( ( ((uint64_t)x) & 0x0000ff0000000000ULL ) >> 24 ) | ( ( ((uint64_t)x) & 0x000000ff00000000ULL ) >> 8 ) | \
( ( ((uint64_t)x) & 0x000000000000ff00ULL ) << 40 ) | ( ( ((uint64_t)x) & 0x00000000000000ffULL ) << 56 ) | \
( ( ((uint64_t)x) & 0x0000000000ff0000ULL ) << 24 ) | ( ( ((uint64_t)x) & 0x00000000ff000000ULL ) << 8 ) \
)
#define NW_NTOHS NW_HTONS
......
......@@ -196,11 +196,11 @@ nwGtpv1uCompareSeqNum(struct NwGtpv1uTrxn *a, struct NwGtpv1uTrxn *b)
*/
static NwGtpv1uRcT
nwGtpv1uCreateAndSendMsg( NwGtpv1uStackT *thiz, NwU32T peerIp, NwU16T peerPort,
nwGtpv1uCreateAndSendMsg( NwGtpv1uStackT *thiz, uint32_t peerIp, uint16_t peerPort,
NwGtpv1uMsgT *pMsg)
{
NwGtpv1uRcT rc = NW_GTPV1U_FAILURE;
NwU8T *msgHdr;
uint8_t *msgHdr;
NW_ASSERT(thiz);
NW_ASSERT(pMsg);
......@@ -219,10 +219,10 @@ nwGtpv1uCreateAndSendMsg( NwGtpv1uStackT *thiz, NwU32T peerIp, NwU16T peerPort,
(pMsg->npduNumFlag);
*(msgHdr++) = (pMsg->msgType);
*((NwU16T *) msgHdr) = htons(pMsg->msgLen);
*((uint16_t *) msgHdr) = htons(pMsg->msgLen);
msgHdr += 2;
*((NwU32T *) msgHdr) = htonl(pMsg->teid);
*((uint32_t *) msgHdr) = htonl(pMsg->teid);
msgHdr += 4;
#if defined(LOG_GTPU) && LOG_GTPU > 0
GTPU_DEBUG("nwGtpv1uCreateAndSendMsg to teid %u length %d offset %d\n",
......@@ -232,13 +232,13 @@ nwGtpv1uCreateAndSendMsg( NwGtpv1uStackT *thiz, NwU32T peerIp, NwU16T peerPort,
#endif
if(pMsg->seqNumFlag || pMsg->extHdrFlag || pMsg->npduNumFlag) {
*((NwU16T *) msgHdr) = (pMsg->seqNumFlag ? htons(pMsg->seqNum) : 0x0000);
*((uint16_t *) msgHdr) = (pMsg->seqNumFlag ? htons(pMsg->seqNum) : 0x0000);
msgHdr += 2;
*((NwU8T *) msgHdr) = (pMsg->npduNumFlag ? htons(pMsg->npduNum) : 0x00);
*((uint8_t *) msgHdr) = (pMsg->npduNumFlag ? htons(pMsg->npduNum) : 0x00);
msgHdr++;
*((NwU8T *) msgHdr) = (pMsg->extHdrFlag ? htons(pMsg->nextExtHdrType) : 0x00);
*((uint8_t *) msgHdr) = (pMsg->extHdrFlag ? htons(pMsg->nextExtHdrType) : 0x00);
msgHdr++;
}
......@@ -264,13 +264,13 @@ nwGtpv1uCreateAndSendMsg( NwGtpv1uStackT *thiz, NwU32T peerIp, NwU16T peerPort,
static NwGtpv1uRcT
nwGtpv1uSendUlpMessageIndication( NW_IN NwGtpv1uStackT *thiz,
NW_IN NwU32T hUlpTrxn,
NW_IN NwU32T apiType,
NW_IN NwU32T msgType,
NW_IN NwU32T peerIp,
NW_IN NwU16T peerPort,
NW_IN NwU8T *pMsgBuf,
NW_IN NwU16T msgLength)
NW_IN uint32_t hUlpTrxn,
NW_IN uint32_t apiType,
NW_IN uint32_t msgType,
NW_IN uint32_t peerIp,
NW_IN uint16_t peerPort,
NW_IN uint8_t *pMsgBuf,
NW_IN uint16_t msgLength)
{
NwGtpv1uRcT rc = NW_GTPV1U_FAILURE;
NwGtpv1uUlpApiT ulpApi;
......@@ -344,7 +344,7 @@ nwGtpv1uPeerRspTimeout(void *arg)
static NwGtpv1uRcT
NwGtpv1uCreateTunnelEndPoint( NW_IN NwGtpv1uStackT *thiz,
NW_IN NwU32T teid,
NW_IN uint32_t teid,
NW_IN NwGtpv1uUlpSessionHandleT hUlpSession,
NW_OUT NwGtpv1uStackSessionHandleT *phStackSession )
{
......@@ -515,16 +515,16 @@ nwGtpv1uSendto( NwGtpv1uStackT *thiz, NW_IN NwGtpv1uUlpApiT *pUlpReq)
static NwGtpv1uRcT
nwGtpv1uProcessGpdu( NwGtpv1uStackT *thiz,
NW_IN NwU8T *gpdu,
NW_IN NwU32T gpduLen,
NW_IN NwU32T peerIp)
NW_IN uint8_t *gpdu,
NW_IN uint32_t gpduLen,
NW_IN uint32_t peerIp)
{
NwGtpv1uRcT rc = NW_GTPV1U_FAILURE;
NwGtpv1uMsgHeaderT *msgHdr = NULL;
NwGtpv1uTunnelEndPointT *pTunnelEndPoint = NULL;
NwGtpv1uTunnelEndPointT tunnelEndPointKey;
// NwU16T hdr_len = 0;
// uint16_t hdr_len = 0;
#if defined(LOG_GTPU) && LOG_GTPU > 0
NW_ENTER(thiz);
......@@ -542,14 +542,14 @@ nwGtpv1uProcessGpdu( NwGtpv1uStackT *thiz,
NwGtpv1uMsgHandleT hMsg;
rc = nwGtpv1uMsgFromBufferNew( (NwGtpv1uStackHandleT)thiz,
(NwU8T *)gpdu,
(uint8_t *)gpdu,
gpduLen,
&hMsg);
/*
NwU8T* msgBuf;
NwU32T msgBufLen;
NwU32T msgBufOffset;
uint8_t* msgBuf;
uint32_t msgBufLen;
uint32_t msgBufOffset;
*/
if(NW_GTPV1U_OK == rc) {
NwGtpv1uMsgT *pMsg = (NwGtpv1uMsgT *) hMsg;
......@@ -596,17 +596,17 @@ nwGtpv1uProcessGpdu( NwGtpv1uStackT *thiz,
static NwGtpv1uRcT
nwGtpv1uHandleEchoReq(NW_IN NwGtpv1uStackT *thiz,
NW_IN NwU8T *msgBuf,
NW_IN NwU32T msgBufLen,
NW_IN NwU16T peerPort,
NW_IN NwU32T peerIp)
NW_IN uint8_t *msgBuf,
NW_IN uint32_t msgBufLen,
NW_IN uint16_t peerPort,
NW_IN uint32_t peerIp)
{
NwGtpv1uRcT rc = NW_GTPV1U_FAILURE;
NwU16T seqNum = 0;
uint16_t seqNum = 0;
NwGtpv1uMsgHandleT hMsg = 0;
int bufLen = 0;
seqNum = ntohs(*(NwU16T *) (msgBuf + (((*msgBuf) & 0x02) ? 8 : 4)));
seqNum = ntohs(*(uint16_t *) (msgBuf + (((*msgBuf) & 0x02) ? 8 : 4)));
MSC_LOG_RX_MESSAGE(
(thiz->stackType == GTPU_STACK_ENB) ? MSC_GTPU_ENB:MSC_GTPU_SGW,
......@@ -678,7 +678,7 @@ nwGtpv1uHandleEchoReq(NW_IN NwGtpv1uStackT *thiz,
*--------------------------------------------------------------------------*/
NwGtpv1uRcT
nwGtpv1uInitialize( NW_INOUT NwGtpv1uStackHandleT *hGtpuStackHandle, NwU32T stackType)
nwGtpv1uInitialize( NW_INOUT NwGtpv1uStackHandleT *hGtpuStackHandle, uint32_t stackType)
{
NwGtpv1uRcT rc = NW_GTPV1U_FAILURE;
NwGtpv1uStackT *thiz;
......@@ -689,7 +689,7 @@ nwGtpv1uInitialize( NW_INOUT NwGtpv1uStackHandleT *hGtpuStackHandle, NwU32T stac
if(thiz) {
thiz->id = (NwPtrT)thiz;
thiz->stackType = stackType;
thiz->seq = (NwU16T) ((NwU32T)thiz) ; // FIXME interesting casts... don't know what this is good for...
thiz->seq = (uint16_t) ((uint32_t)thiz) ; // FIXME interesting casts... don't know what this is good for...
RB_INIT(&(thiz->outstandingTxSeqNumMap));
RB_INIT(&(thiz->outstandingRxSeqNumMap));
RB_INIT(&(thiz->sessionMap));
......@@ -824,7 +824,7 @@ nwGtpv1uSetLogMgrEntity( NW_IN NwGtpv1uStackHandleT hGtpuStackHandle,
NwGtpv1uRcT
nwGtpv1uSetLogLevel( NW_IN NwGtpv1uStackHandleT hGtpuStackHandle,
NW_IN NwU32T logLevel)
NW_IN uint32_t logLevel)
{
NwGtpv1uStackT *thiz = (NwGtpv1uStackT *) hGtpuStackHandle;
thiz->logLevel = logLevel;
......@@ -837,14 +837,14 @@ nwGtpv1uSetLogLevel( NW_IN NwGtpv1uStackHandleT hGtpuStackHandle,
NwGtpv1uRcT
nwGtpv1uProcessUdpReq( NW_IN NwGtpv1uStackHandleT hGtpuStackHandle,
NW_IN NwU8T *udpData,
NW_IN NwU32T udpDataLen,
NW_IN NwU16T peerPort,
NW_IN NwU32T peerIp)
NW_IN uint8_t *udpData,
NW_IN uint32_t udpDataLen,
NW_IN uint16_t peerPort,
NW_IN uint32_t peerIp)
{
NwGtpv1uRcT ret = NW_GTPV1U_FAILURE;
NwGtpv1uStackT *thiz;
NwU16T msgType;
uint16_t msgType;
#if defined(ENB_MODE)
VCD_SIGNAL_DUMPER_DUMP_FUNCTION_BY_NAME(VCD_SIGNAL_DUMPER_FUNCTIONS_GTPV1U_PROCESS_UDP_REQ, VCD_FUNCTION_IN);
......@@ -853,7 +853,7 @@ nwGtpv1uProcessUdpReq( NW_IN NwGtpv1uStackHandleT hGtpuStackHandle,
NW_ASSERT(thiz);
msgType = *((NwU8T *)(udpData + 1));
msgType = *((uint8_t *)(udpData + 1));
switch(msgType) {
case NW_GTP_ECHO_REQ:
......
......@@ -60,14 +60,14 @@ static NwGtpv1uMsgT *gpGtpv1uMsgPool = NULL;
NwGtpv1uRcT
nwGtpv1uMsgNew( NW_IN NwGtpv1uStackHandleT hGtpuStackHandle,
NW_IN NwU8T seqNumFlag,
NW_IN NwU8T npduNumFlag,
NW_IN NwU8T extHdrFlag,
NW_IN NwU8T msgType,
NW_IN NwU8T teid,
NW_IN NwU16T seqNum,
NW_IN NwU8T npduNum,
NW_IN NwU8T nextExtHeader,
NW_IN uint8_t seqNumFlag,
NW_IN uint8_t npduNumFlag,
NW_IN uint8_t extHdrFlag,
NW_IN uint8_t msgType,
NW_IN uint8_t teid,
NW_IN uint16_t seqNum,
NW_IN uint8_t npduNum,
NW_IN uint8_t nextExtHeader,
NW_OUT NwGtpv1uMsgHandleT *phMsg)
{
NwGtpv1uStackT *pStack = (NwGtpv1uStackT *) hGtpuStackHandle;
......@@ -118,18 +118,18 @@ nwGtpv1uMsgNew( NW_IN NwGtpv1uStackHandleT hGtpuStackHandle,
NwGtpv1uRcT
nwGtpv1uGpduMsgNew( NW_IN NwGtpv1uStackHandleT hGtpuStackHandle,
NW_IN NwU32T teid,
NW_IN NwU8T seqNumFlag,
NW_IN NwU16T seqNum,
NW_IN NwU8T *tpdu,
NW_IN NwU16T tpduLength,
NW_IN NwU32T tpduOffset,
NW_IN uint32_t teid,
NW_IN uint8_t seqNumFlag,
NW_IN uint16_t seqNum,
NW_IN uint8_t *tpdu,
NW_IN uint16_t tpduLength,
NW_IN uint32_t tpduOffset,
NW_OUT NwGtpv1uMsgHandleT *phMsg)
{
NwGtpv1uStackT *pStack = (NwGtpv1uStackT *) hGtpuStackHandle;
NwGtpv1uMsgT *pMsg;
//NwU32T header_len = 0;
NwU32T msgExtraLen = 0;
//uint32_t header_len = 0;
uint32_t msgExtraLen = 0;
if(gpGtpv1uMsgPool) {
pMsg = gpGtpv1uMsgPool;
......@@ -237,8 +237,8 @@ nwGtpv1uMsgFromMsgNew( NW_IN NwGtpv1uStackHandleT hGtpuStackHandle,
NwGtpv1uRcT
nwGtpv1uMsgFromBufferNew( NW_IN NwGtpv1uStackHandleT hGtpuStackHandle,
NW_IN NwU8T *pBuf,
NW_IN NwU32T bufLen,
NW_IN uint8_t *pBuf,
NW_IN uint32_t bufLen,
NW_OUT NwGtpv1uMsgHandleT *phMsg)
{
NwGtpv1uStackT *pStack = (NwGtpv1uStackT *) hGtpuStackHandle;
......@@ -267,17 +267,17 @@ nwGtpv1uMsgFromBufferNew( NW_IN NwGtpv1uStackHandleT hGtpuStackHandle,
pBuf += 2;
pMsg->teid = ntohl(*((NwU32T *)pBuf));
pMsg->teid = ntohl(*((uint32_t *)pBuf));
pBuf += 4;
if(pMsg->extHdrFlag || pMsg->seqNumFlag || pMsg->npduNumFlag) {
pMsg->seqNum = ntohs(*(((NwU16T *)pBuf)));
pMsg->seqNum = ntohs(*(((uint16_t *)pBuf)));
pBuf += 2;
pMsg->npduNum = *(pBuf++);
pMsg->nextExtHdrType = *(pBuf++);
}
pMsg->msgBufOffset = (NwU32T)(pBuf - pMsg->msgBuf);
pMsg->msgBufOffset = (uint32_t)(pBuf - pMsg->msgBuf);
pMsg->msgBufLen = bufLen - pMsg->msgBufOffset;
pMsg->msgLen = bufLen;
#if defined(LOG_GTPU) && LOG_GTPU > 0
......@@ -308,7 +308,7 @@ nwGtpv1uMsgDelete( NW_IN NwGtpv1uStackHandleT hGtpuStackHandle,
*/
NwGtpv1uRcT
nwGtpv1uMsgSetTeid(NW_IN NwGtpv1uMsgHandleT hMsg, NwU32T teid)
nwGtpv1uMsgSetTeid(NW_IN NwGtpv1uMsgHandleT hMsg, uint32_t teid)
{
NwGtpv1uMsgT *thiz = (NwGtpv1uMsgT *) hMsg;
thiz->teid = teid;
......@@ -326,7 +326,7 @@ nwGtpv1uMsgSetTeid(NW_IN NwGtpv1uMsgHandleT hMsg, NwU32T teid)
*/
NwGtpv1uRcT
nwGtpv1uMsgSetSeqNumber(NW_IN NwGtpv1uMsgHandleT hMsg, NwU32T seqNum)
nwGtpv1uMsgSetSeqNumber(NW_IN NwGtpv1uMsgHandleT hMsg, uint32_t seqNum)
{
NwGtpv1uMsgT *thiz = (NwGtpv1uMsgT *) hMsg;
thiz->seqNum = seqNum;
......@@ -339,7 +339,7 @@ nwGtpv1uMsgSetSeqNumber(NW_IN NwGtpv1uMsgHandleT hMsg, NwU32T seqNum)
* @param[in] hMsg : Message handle.
*/
NwU32T
uint32_t
nwGtpv1uMsgGetTeid(NW_IN NwGtpv1uMsgHandleT hMsg)
{
NwGtpv1uMsgT *thiz = (NwGtpv1uMsgT *) hMsg;
......@@ -353,7 +353,7 @@ nwGtpv1uMsgGetTeid(NW_IN NwGtpv1uMsgHandleT hMsg)
* @param[in] hMsg : Message handle.
*/
NwU32T
uint32_t
nwGtpv1uMsgGetSeqNumber(NW_IN NwGtpv1uMsgHandleT hMsg)
{
NwGtpv1uMsgT *thiz = (NwGtpv1uMsgT *) hMsg;
......@@ -366,7 +366,7 @@ nwGtpv1uMsgGetSeqNumber(NW_IN NwGtpv1uMsgHandleT hMsg)
* @param[in] hMsg : Message handle.
*/
NwU32T
uint32_t
nwGtpv1uMsgGetMsgType(NW_IN NwGtpv1uMsgHandleT hMsg)
{
NwGtpv1uMsgT *thiz = (NwGtpv1uMsgT *) hMsg;
......@@ -380,11 +380,11 @@ nwGtpv1uMsgGetMsgType(NW_IN NwGtpv1uMsgHandleT hMsg)
*/
NwGtpv1uRcT
nwGtpv1uMsgGetTpdu(NW_IN NwGtpv1uMsgHandleT hMsg, NwU8T *pTpduBuf,
NwU32T *pTpduLength)
nwGtpv1uMsgGetTpdu(NW_IN NwGtpv1uMsgHandleT hMsg, uint8_t *pTpduBuf,
uint32_t *pTpduLength)
{
NwGtpv1uMsgT *thiz = (NwGtpv1uMsgT *) hMsg;
NwU8T headerLength = ((thiz->seqNumFlag || thiz->extHdrFlag
uint8_t headerLength = ((thiz->seqNumFlag || thiz->extHdrFlag
|| thiz->npduNumFlag) ? 12 : 8);
*pTpduLength = thiz->msgLen - headerLength;
......@@ -392,7 +392,7 @@ nwGtpv1uMsgGetTpdu(NW_IN NwGtpv1uMsgHandleT hMsg, NwU8T *pTpduBuf,
return NW_GTPV1U_OK;
}
NwU8T *
uint8_t *
nwGtpv1uMsgGetTpduHandle(NW_IN NwGtpv1uMsgHandleT hMsg)
{
NwGtpv1uMsgT *thiz = (NwGtpv1uMsgT *) hMsg;
......@@ -400,7 +400,7 @@ nwGtpv1uMsgGetTpduHandle(NW_IN NwGtpv1uMsgHandleT hMsg)
|| thiz->npduNumFlag) ? 12 : 8));
}
NwU32T
uint32_t
nwGtpv1uMsgGetTpduLength(NW_IN NwGtpv1uMsgHandleT hMsg)
{
NwGtpv1uMsgT *thiz = (NwGtpv1uMsgT *) hMsg;
......@@ -410,8 +410,8 @@ nwGtpv1uMsgGetTpduLength(NW_IN NwGtpv1uMsgHandleT hMsg)
NwGtpv1uRcT
nwGtpv1uMsgAddIeTV1(NW_IN NwGtpv1uMsgHandleT hMsg,
NW_IN NwU8T type,
NW_IN NwU8T value)
NW_IN uint8_t type,
NW_IN uint8_t value)
{
NwGtpv1uMsgT *pMsg = (NwGtpv1uMsgT *) hMsg;
NwGtpv1uIeTv1T *pIe;
......@@ -428,9 +428,9 @@ nwGtpv1uMsgAddIeTV1(NW_IN NwGtpv1uMsgHandleT hMsg,
NwGtpv1uRcT
nwGtpv1uMsgAddIeTV2(NW_IN NwGtpv1uMsgHandleT hMsg,
NW_IN NwU8T type,
NW_IN NwU16T length,
NW_IN NwU16T value)
NW_IN uint8_t type,
NW_IN uint16_t length,
NW_IN uint16_t value)
{
NwGtpv1uMsgT *pMsg = (NwGtpv1uMsgT *) hMsg;
NwGtpv1uIeTv2T *pIe;
......@@ -447,9 +447,9 @@ nwGtpv1uMsgAddIeTV2(NW_IN NwGtpv1uMsgHandleT hMsg,
NwGtpv1uRcT
nwGtpv1uMsgAddIeTV4(NW_IN NwGtpv1uMsgHandleT hMsg,
NW_IN NwU8T type,
NW_IN NwU16T length,
NW_IN NwU32T value)
NW_IN uint8_t type,
NW_IN uint16_t length,
NW_IN uint32_t value)
{
NwGtpv1uMsgT *pMsg = (NwGtpv1uMsgT *) hMsg;
NwGtpv1uIeTv4T *pIe;
......@@ -466,9 +466,9 @@ nwGtpv1uMsgAddIeTV4(NW_IN NwGtpv1uMsgHandleT hMsg,
NwGtpv1uRcT
nwGtpv1uMsgAddIe(NW_IN NwGtpv1uMsgHandleT hMsg,
NW_IN NwU8T type,
NW_IN NwU16T length,
NW_IN NwU8T *pVal)
NW_IN uint8_t type,
NW_IN uint16_t length,
NW_IN uint8_t *pVal)
{
NwGtpv1uMsgT *pMsg = (NwGtpv1uMsgT *) hMsg;
NwGtpv1uIeTlvT *pIe;
......@@ -489,8 +489,8 @@ nwGtpv1uMsgHexDump(NwGtpv1uMsgHandleT hMsg, FILE *fp)
{
NwGtpv1uMsgT *pMsg = (NwGtpv1uMsgT *) hMsg;
NwU8T *data = pMsg->msgBuf;
NwU32T size = pMsg->msgLen;
uint8_t *data = pMsg->msgBuf;
uint32_t size = pMsg->msgLen;
unsigned char *p = (unsigned char *)data;
unsigned char c;
......
......@@ -232,7 +232,7 @@ nwGtpv1uTrxnNew( NW_IN NwGtpv1uStackT *thiz,
*/
NwGtpv1uRcT
nwGtpv1uTrxnWithSeqNew( NW_IN NwGtpv1uStackT *thiz,
NW_IN NwU32T seqNum,
NW_IN uint32_t seqNum,
NW_OUT NwGtpv1uTrxnT **ppTrxn)
{
NwGtpv1uRcT rc = NW_GTPV1U_OK;
......@@ -313,12 +313,12 @@ nwGtpv1uTrxnDelete( NW_INOUT NwGtpv1uTrxnT **pthiz)
NwGtpv1uRcT
nwGtpv1uTrxnCreateAndSendMsg( NW_IN NwGtpv1uStackT *thiz,
NW_IN NwGtpv1uTrxnT *pTrxn,
NW_IN NwU32T peerIp,
NW_IN NwU32T peerPort,
NW_IN uint32_t peerIp,
NW_IN uint32_t peerPort,
NW_IN NwGtpv1uMsgT *pMsg)
{
NwGtpv1uRcT rc;
NwU8T *msgHdr;
uint8_t *msgHdr;
NW_ASSERT(thiz);
NW_ASSERT(pMsg);
......@@ -334,33 +334,33 @@ nwGtpv1uTrxnCreateAndSendMsg( NW_IN NwGtpv1uStackT *thiz,
(pMsg->npduNumFlag);
*(msgHdr++) = (pMsg->msgType);
*((NwU16T *) msgHdr) = htons(pMsg->msgLen);
*((uint16_t *) msgHdr) = htons(pMsg->msgLen);
msgHdr += 2;
*((NwU32T *) msgHdr) = htonl(pMsg->teid);
*((uint32_t *) msgHdr) = htonl(pMsg->teid);
msgHdr += 4;
if(pMsg->seqNumFlag | pMsg->extHdrFlag | pMsg->npduNumFlag) {
if(pMsg->seqNumFlag) {
*((NwU16T *) msgHdr) = htons((pTrxn ? pTrxn->seqNum : pMsg->seqNum));
*((uint16_t *) msgHdr) = htons((pTrxn ? pTrxn->seqNum : pMsg->seqNum));
} else {
*((NwU16T *) msgHdr) = 0x0000;
*((uint16_t *) msgHdr) = 0x0000;
}
msgHdr += 2;
if(pMsg->npduNumFlag) {
*((NwU8T *) msgHdr) = pMsg->npduNumFlag;
*((uint8_t *) msgHdr) = pMsg->npduNumFlag;
} else {
*((NwU8T *) msgHdr) = 0x00;
*((uint8_t *) msgHdr) = 0x00;
}
msgHdr++;
if(pMsg->extHdrFlag) {
*((NwU8T *) msgHdr) = pMsg->extHdrFlag;
*((uint8_t *) msgHdr) = pMsg->extHdrFlag;
} else {
*((NwU8T *) msgHdr) = 0x00;
*((uint8_t *) msgHdr) = 0x00;
}
msgHdr++;
......
......@@ -23,27 +23,27 @@
extern "C" {
#endif
NwU32T g_log_level = NW_LOG_LEVEL_INFO;
uint32_t g_log_level = NW_LOG_LEVEL_INFO;
/*---------------------------------------------------------------------------
* Public functions
*--------------------------------------------------------------------------*/
NwGtpv1uRcT nwMiniLogMgrInit(NwMiniLogMgrT *thiz, NwU32T logLevel )
NwGtpv1uRcT nwMiniLogMgrInit(NwMiniLogMgrT *thiz, uint32_t logLevel )
{
thiz->logLevel = logLevel;
return NW_GTPV1U_OK;
}
NwGtpv1uRcT nwMiniLogMgrSetLogLevel(NwMiniLogMgrT *thiz, NwU32T logLevel)
NwGtpv1uRcT nwMiniLogMgrSetLogLevel(NwMiniLogMgrT *thiz, uint32_t logLevel)
{
thiz->logLevel = logLevel;
}
NwGtpv1uRcT nwMiniLogMgrLogRequest (NwGtpv1uLogMgrHandleT hLogMgr,
NwU32T logLevel,
uint32_t logLevel,
NwCharT *file,
NwU32T line,
uint32_t line,
NwCharT *logStr)
{
NwMiniLogMgrT *thiz = (NwMiniLogMgrT *) hLogMgr;
......
......@@ -23,7 +23,7 @@
#ifndef __NW_MINI_LOG_MGR_H__
#define __NW_MINI_LOG_MGR_H__
extern NwU32T g_log_level;
extern uint32_t g_log_level;
#define NW_LOG( _logLevel, ...) \
......@@ -37,7 +37,7 @@ extern NwU32T g_log_level;
} while(0)
typedef struct {
NwU8T logLevel;
uint8_t logLevel;
} NwMiniLogMgrT;
#ifdef __cplusplus
......@@ -45,9 +45,9 @@ extern "C" {
#endif
NwGtpv1uRcT nwMiniLogMgrLogRequest (NwGtpv1uLogMgrHandleT logMgrHandle,
NwU32T logLevel,
uint32_t logLevel,
NwCharT* file,
NwU32T line,
uint32_t line,
NwCharT* logStr);
#ifdef __cplusplus
......
......@@ -53,9 +53,9 @@ NW_TMR_CALLBACK(nwMiniTmrMgrHandleTimeout)
*--------------------------------------------------------------------------*/
NwGtpv1uRcT nwTimerStart( NwGtpv1uTimerMgrHandleT tmrMgrHandle,
NwU32T timeoutSec,
NwU32T timeoutUsec,
NwU32T tmrType,
uint32_t timeoutSec,
uint32_t timeoutUsec,
uint32_t tmrType,
void *timeoutArg,
NwGtpv1uTimerHandleT *hTmr)
{
......
......@@ -35,9 +35,9 @@ extern "C" {
#endif
NwGtpv1uRcT nwTimerStart( NwGtpv1uTimerMgrHandleT tmrMgrHandle,
NwU32T timeoutSec,
NwU32T timeoutUsec,
NwU32T tmrType,
uint32_t timeoutSec,
uint32_t timeoutUsec,
uint32_t tmrType,
void* timeoutArg,
NwGtpv1uTimerHandleT* hTmr);
......
......@@ -44,9 +44,9 @@ static
void NW_TMR_CALLBACK(nwUdpDataIndicationCallbackData)
{
NwGtpv1uRcT rc;
NwU8T udpBuf[MAX_UDP_PAYLOAD_LEN];
uint8_t udpBuf[MAX_UDP_PAYLOAD_LEN];
NwS32T bytesRead;
NwU32T peerLen;
uint32_t peerLen;
struct sockaddr_in peer;
NwMiniUdpEntityT *thiz = (NwMiniUdpEntityT *) arg;
......@@ -71,7 +71,7 @@ void NW_TMR_CALLBACK(nwUdpDataIndicationCallbackData)
*--------------------------------------------------------------------------*/
NwGtpv1uRcT nwMiniUdpInit(NwMiniUdpEntityT *thiz,
NwGtpv1uStackHandleT hGtpv1uStack, NwU8T *ipAddr)
NwGtpv1uStackHandleT hGtpv1uStack, uint8_t *ipAddr)
{
int sd;
struct sockaddr_in addr;
......@@ -109,10 +109,10 @@ NwGtpv1uRcT nwMiniUdpDestroy(NwMiniUdpEntityT *thiz)
}
NwGtpv1uRcT nwMiniUdpDataReq(NwGtpv1uUdpHandleT udpHandle,
NwU8T *dataBuf,
NwU32T dataSize,
NwU32T peerIpAddr,
NwU32T peerPort)
uint8_t *dataBuf,
uint32_t dataSize,
uint32_t peerIpAddr,
uint32_t peerPort)
{
struct sockaddr_in peerAddr;
NwS32T bytesSent;
......
......@@ -25,7 +25,7 @@
#define __NW_MINI_UDP_ENTITY_H__
typedef struct {
NwU32T hSocket;
uint32_t hSocket;
NwEventT ev;
NwGtpv1uStackHandleT hGtpv1uStack;
} NwMiniUdpEntityT;
......@@ -34,15 +34,15 @@ typedef struct {
extern "C" {
#endif
NwGtpv1uRcT nwMiniUdpInit(NwMiniUdpEntityT* thiz, NwGtpv1uStackHandleT hGtpv1uStack, NwU8T* ipAddr);
NwGtpv1uRcT nwMiniUdpInit(NwMiniUdpEntityT* thiz, NwGtpv1uStackHandleT hGtpv1uStack, uint8_t* ipAddr);
NwGtpv1uRcT nwMiniUdpDestroy(NwMiniUdpEntityT* thiz);
NwGtpv1uRcT nwMiniUdpDataReq(NwGtpv1uUdpHandleT udpHandle,
NwU8T* dataBuf,
NwU32T dataSize,
NwU32T peerAddr,
NwU32T peerPort);
uint8_t* dataBuf,
uint32_t dataSize,
uint32_t peerAddr,
uint32_t peerPort);
#ifdef __cplusplus
}
......
......@@ -36,7 +36,7 @@ extern "C" {
#define MAX_UDP_PAYLOAD_LEN (4096)
NwGtpv1uRcT
nwMiniUlpSendEchoRequestToPeer(NwMiniUlpEntityT *thiz, NwU32T peerIp)
nwMiniUlpSendEchoRequestToPeer(NwMiniUlpEntityT *thiz, uint32_t peerIp)
{
NwGtpv1uRcT rc;
NwGtpv1uUlpApiT ulpReq;
......@@ -82,9 +82,9 @@ void NW_EVT_CALLBACK(nwMiniUlpDataIndicationCallbackData)
{
NwMiniUlpEntityT *thiz = (NwMiniUlpEntityT *) arg;
NwGtpv1uRcT rc;
NwU8T udpBuf[MAX_UDP_PAYLOAD_LEN];
uint8_t udpBuf[MAX_UDP_PAYLOAD_LEN];
NwS32T bytesRead;
NwU32T peerLen;
uint32_t peerLen;
struct sockaddr_in peer;
peerLen = sizeof(peer);
......@@ -123,7 +123,7 @@ nwMiniUlpDestroy(NwMiniUlpEntityT *thiz)
}
NwGtpv1uRcT
nwMiniUlpCreateConn(NwMiniUlpEntityT *thiz, char *localIpStr, NwU16T localport,
nwMiniUlpCreateConn(NwMiniUlpEntityT *thiz, char *localIpStr, uint16_t localport,
char *peerIpStr)
{
NwGtpv1uRcT rc;
......@@ -214,8 +214,8 @@ nwMiniUlpDestroyConn(NwMiniUlpEntityT *thiz)
NwGtpv1uRcT
nwMiniUlpTpduSend(NwMiniUlpEntityT *thiz, NwU8T *tpduBuf, NwU32T tpduLen ,
NwU16T fromPort)
nwMiniUlpTpduSend(NwMiniUlpEntityT *thiz, uint8_t *tpduBuf, uint32_t tpduLen ,
uint16_t fromPort)
{
NwGtpv1uRcT rc;
NwGtpv1uUlpApiT ulpReq;
......@@ -260,9 +260,9 @@ nwMiniUlpProcessStackReqCallback (NwGtpv1uUlpHandleT hUlp,
case NW_GTPV1U_ULP_API_RECV_TPDU: {
struct sockaddr_in peerAddr;
NwS32T bytesSent;
NwU8T dataBuf[4096];
NwU32T dataSize;
NwU32T peerIpAddr = (inet_addr(thiz->peerIpStr));
uint8_t dataBuf[4096];
uint32_t dataSize;
uint32_t peerIpAddr = (inet_addr(thiz->peerIpStr));
NW_ASSERT( NW_GTPV1U_OK == nwGtpv1uMsgGetTpdu(pUlpApi->apiInfo.recvMsgInfo.hMsg,
dataBuf, &dataSize) );
......
......@@ -21,11 +21,11 @@
typedef struct {
int hSocket;
NwU16T seqNum;
NwU8T restartCounter;
NwU8T localIpStr[16];
NwU8T peerIpStr[16];
NwU32T localPort[1025];
uint16_t seqNum;
uint8_t restartCounter;
uint8_t localIpStr[16];
uint8_t peerIpStr[16];
uint32_t localPort[1025];
NwEventT ev[1025];
NwGtpv1uStackHandleT hGtpv1uStack;
NwGtpv1uStackSessionHandleT hGtpv1uConn;
......@@ -42,7 +42,7 @@ NwGtpv1uRcT
nwMiniUlpDestroy(NwMiniUlpEntityT* thiz);
NwGtpv1uRcT
nwMiniUlpCreateConn(NwMiniUlpEntityT* thiz, char* localIpStr, NwU16T localPort, char* peerIpStr);
nwMiniUlpCreateConn(NwMiniUlpEntityT* thiz, char* localIpStr, uint16_t localPort, char* peerIpStr);
NwGtpv1uRcT
nwMiniUlpDestroyConn(NwMiniUlpEntityT* thiz);
......@@ -51,7 +51,7 @@ NwGtpv1uRcT
nwMiniUlpSendMsg(NwMiniUlpEntityT* thiz);
NwGtpv1uRcT
nwMiniUlpTpduSend(NwMiniUlpEntityT* thiz, NwU8T* tpduBuf, NwU32T tpduLen , NwU16T fromPort);
nwMiniUlpTpduSend(NwMiniUlpEntityT* thiz, uint8_t* tpduBuf, uint32_t tpduLen , uint16_t fromPort);
NwGtpv1uRcT
nwMiniUlpProcessStackReqCallback (NwGtpv1uUlpHandleT hUlp,
......
......@@ -37,8 +37,8 @@ int main(int argc, char *argv[])
{
NwGtpv1uRcT rc;
char *logLevelStr;
NwU32T logLevel;
NwU32T num_of_connections;
uint32_t logLevel;
uint32_t num_of_connections;
NwGtpv1uStackHandleT hGtpv1uStack = 0;
NwMiniUlpEntityT ulpObj;
......
......@@ -43,25 +43,25 @@
*/
typedef struct {
NwU8T groupedIeType;
NwU16T mandatoryIeCount;
uint8_t groupedIeType;
uint16_t mandatoryIeCount;
NwGtpv2cStackHandleT hStack;
struct {
NwU8T ieMinLength;
NwU8T iePresence;
uint8_t ieMinLength;
uint8_t iePresence;
} ieParseInfo[NW_GTPV2C_IE_TYPE_MAXIMUM][NW_GTPV2C_IE_INSTANCE_MAXIMUM];
} NwGtpv2cGroupedIeParseInfoT;
typedef struct {
NwU16T msgType;
NwU16T mandatoryIeCount;
uint16_t msgType;
uint16_t mandatoryIeCount;
NwGtpv2cStackHandleT hStack;
struct {
NwU8T ieMinLength;
NwU8T iePresence;
uint8_t ieMinLength;
uint8_t iePresence;
NwGtpv2cGroupedIeParseInfoT* pGroupedIeInfo;
} ieParseInfo[NW_GTPV2C_IE_TYPE_MAXIMUM][NW_GTPV2C_IE_INSTANCE_MAXIMUM];
......@@ -72,7 +72,7 @@ extern "C" {
#endif
NwGtpv2cMsgIeParseInfoT*
nwGtpv2cMsgIeParseInfoNew(NwGtpv2cStackHandleT hStack, NwU8T msgType);
nwGtpv2cMsgIeParseInfoNew(NwGtpv2cStackHandleT hStack, uint8_t msgType);
NwRcT
nwGtpv2cMsgIeParseInfoDelete(NwGtpv2cMsgIeParseInfoT* thiz);
......
......@@ -90,16 +90,16 @@ extern "C" {
*/
typedef struct NwGtpv2cStack {
NwU32T id;
uint32_t id;
NwGtpv2cUlpEntityT ulp;
NwGtpv2cUdpEntityT udp;
NwGtpv2cMemMgrEntityT memMgr;
NwGtpv2cTimerMgrEntityT tmrMgr;
NwGtpv2cLogMgrEntityT logMgr;
NwU32T seqNum;
NwU32T logLevel;
NwU32T restartCounter;
uint32_t seqNum;
uint32_t logLevel;
uint32_t restartCounter;
NwGtpv2cMsgIeParseInfoT *pGtpv2cMsgIeParseInfo[NW_GTP_MSG_END];
struct NwGtpv2cTimeoutInfo *activeTimerInfo;
......@@ -123,12 +123,12 @@ typedef struct NwGtpv2cStack {
typedef struct NwGtpv2cTimeoutInfo {
NwGtpv2cStackHandleT hStack;
struct timeval tvTimeout;
NwU32T tmrType;
uint32_t tmrType;
void* timeoutArg;
NwRcT (*timeoutCallbackFunc)(void*);
NwGtpv2cTimerHandleT hTimer;
RB_ENTRY (NwGtpv2cTimeoutInfo) activeTimerListRbtNode; /**< RB Tree Data Structure Node */
NwU32T timerMinHeapIndex;
uint32_t timerMinHeapIndex;
struct NwGtpv2cTimeoutInfo *next;
} NwGtpv2cTimeoutInfoT;
......@@ -143,23 +143,23 @@ typedef struct NwGtpv2cTimeoutInfo {
* NwGtpv2cMsgT holds gtpv2c messages to/from the peer.
*/
typedef struct NwGtpv2cMsgS {
NwU8T version;
NwU8T teidPresent;
NwU8T msgType;
NwU16T msgLen;
NwU32T teid;
NwU32T seqNum;
NwU8T* pMsgStart;
uint8_t version;
uint8_t teidPresent;
uint8_t msgType;
uint16_t msgLen;
uint32_t teid;
uint32_t seqNum;
uint8_t* pMsgStart;
#define NW_GTPV2C_MAX_GROUPED_IE_DEPTH (2)
struct {
NwGtpv2cIeTlvT *pIe[NW_GTPV2C_MAX_GROUPED_IE_DEPTH];
NwU8T top;
uint8_t top;
} groupedIeEncodeStack;
NwBoolT isIeValid[NW_GTPV2C_IE_TYPE_MAXIMUM][NW_GTPV2C_IE_INSTANCE_MAXIMUM];
NwU8T *pIe[NW_GTPV2C_IE_TYPE_MAXIMUM][NW_GTPV2C_IE_INSTANCE_MAXIMUM];
NwU8T msgBuf[NW_GTPV2C_MAX_MSG_LEN];
uint8_t *pIe[NW_GTPV2C_IE_TYPE_MAXIMUM][NW_GTPV2C_IE_INSTANCE_MAXIMUM];
uint8_t msgBuf[NW_GTPV2C_MAX_MSG_LEN];
NwGtpv2cStackHandleT hStack;
struct NwGtpv2cMsgS* next;
} NwGtpv2cMsgT;
......@@ -169,11 +169,11 @@ typedef struct NwGtpv2cMsgS {
*/
typedef struct NwGtpv2cTrxn {
NwU32T seqNum;
NwU32T peerIp;
NwU32T peerPort;
NwU8T t3Timer;
NwU8T maxRetries;
uint32_t seqNum;
uint32_t peerIp;
uint32_t peerPort;
uint8_t t3Timer;
uint8_t maxRetries;
NwGtpv2cMsgT* pMsg;
NwGtpv2cStackT* pStack;
NwGtpv2cTimerHandleT hRspTmr; /**< Handle to reponse timer */
......@@ -189,11 +189,11 @@ typedef struct NwGtpv2cTrxn {
*/
typedef struct NwGtpv2cPathS {
NwU32T hUlpPath; /**< Handle to ULP path contect */
NwU32T ipv4Address;
NwU32T restartCounter;
NwU16T t3ResponseTimout;
NwU16T n3RequestCount;
uint32_t hUlpPath; /**< Handle to ULP path contect */
uint32_t ipv4Address;
uint32_t restartCounter;
uint16_t t3ResponseTimout;
uint16_t n3RequestCount;
NwGtpv2cTimerHandleT hKeepAliveTmr; /**< Handle to path keep alive echo timer */
RB_ENTRY (NwGtpv2cPathS) pathMapRbtNode;
} NwGtpv2cPathT;
......@@ -210,9 +210,9 @@ RB_PROTOTYPE(NwGtpv2cActiveTimerList, NwGtpv2cTimeoutInfo, activeTimerListRbtNod
NwRcT
nwGtpv2cStartTimer(NwGtpv2cStackT* thiz,
NwU32T timeoutSec,
NwU32T timeoutUsec,
NwU32T tmrType,
uint32_t timeoutSec,
uint32_t timeoutUsec,
uint32_t tmrType,
NwRcT (*timeoutCallbackFunc)(void*),
void* timeoutCallbackArg,
NwGtpv2cTimerHandleT *phTimer);
......
......@@ -60,7 +60,7 @@ nwGtpv2cTrxnNew( NW_IN NwGtpv2cStackT* pStack);
*/
NwGtpv2cTrxnT*
nwGtpv2cTrxnWithSeqNumNew( NW_IN NwGtpv2cStackT* pStack,
NW_IN NwU32T seqNum);
NW_IN uint32_t seqNum);
/**
* Another overloaded constructor. Create transaction as outstanding
......@@ -76,10 +76,10 @@ nwGtpv2cTrxnWithSeqNumNew( NW_IN NwGtpv2cStackT* pStack,
NwGtpv2cTrxnT*
nwGtpv2cTrxnOutstandingRxNew( NW_IN NwGtpv2cStackT* pStack,
NW_IN NwU32T teidLocal,
NW_IN NwU32T peerIp,
NW_IN NwU32T peerPort,
NW_IN NwU32T seqNum);
NW_IN uint32_t teidLocal,
NW_IN uint32_t peerIp,
NW_IN uint32_t peerPort,
NW_IN uint32_t seqNum);
NwRcT
nwGtpv2cTrxnDelete( NW_INOUT NwGtpv2cTrxnT **ppTrxn);
......
......@@ -51,15 +51,15 @@ extern "C" {
struct NwGtpv2cStack;
typedef struct NwGtpv2cTunnel {
NwU32T teid;
NwU32T ipv4AddrRemote;
uint32_t teid;
uint32_t ipv4AddrRemote;
NwGtpv2cUlpTunnelHandleT hUlpTunnel;
RB_ENTRY (NwGtpv2cTunnel) tunnelMapRbtNode; /**< RB Tree Data Structure Node */
struct NwGtpv2cTunnel* next;
} NwGtpv2cTunnelT;
NwGtpv2cTunnelT*
nwGtpv2cTunnelNew(struct NwGtpv2cStack *hStack, NwU32T teid, NwU32T peerIpv4Addr, NwGtpv2cUlpTunnelHandleT hUlpTunnel);
nwGtpv2cTunnelNew(struct NwGtpv2cStack *hStack, uint32_t teid, uint32_t peerIpv4Addr, NwGtpv2cUlpTunnelHandleT hUlpTunnel);
NwRcT
nwGtpv2cTunnelDelete(struct NwGtpv2cStack *pStack, NwGtpv2cTunnelT* thiz);
......
......@@ -120,10 +120,10 @@ typedef NwPtrT NwGtpv2cTunnelHandleT; /**< Gtpv2c Ulp
typedef NwPtrT NwGtpv2cUlpTrxnHandleT; /**< Gtpv2c Ulp Transaction Handle */
typedef NwPtrT NwGtpv2cUlpTunnelHandleT; /**< Gtpv2c Ulp Tunnel Handle */
typedef NwU8T NwGtpv2cMsgTypeT; /**< Gtpv2c Msg Type */
typedef uint8_t NwGtpv2cMsgTypeT; /**< Gtpv2c Msg Type */
typedef struct NwGtpv2cStackConfigS {
NwU16T __tbd;
uint16_t __tbd;
} NwGtpv2cStackConfigT;
/*--------------------------------------------------------------------------*
......@@ -172,11 +172,11 @@ typedef enum {
*/
typedef struct NwGtpv2cErrorS {
NW_IN NwU8T cause;
NW_IN NwU8T flags;
NW_IN uint8_t cause;
NW_IN uint8_t flags;
struct {
NW_IN NwU8T type;
NW_IN NwU8T instance;
NW_IN uint8_t type;
NW_IN uint8_t instance;
} offendingIe;
} NwGtpv2cErrorT;
......@@ -187,12 +187,12 @@ typedef struct NwGtpv2cErrorS {
typedef struct {
NW_INOUT NwGtpv2cTunnelHandleT hTunnel; /**< Tunnel handle over which the mesasge is to be sent.*/
NW_IN NwU16T t3Timer;
NW_IN NwU16T maxRetries;
NW_IN uint16_t t3Timer;
NW_IN uint16_t maxRetries;
NW_IN NwGtpv2cUlpTrxnHandleT hUlpTrxn; /**< Optional handle to be returned in rsp of this msg. */
NW_IN NwU32T peerIp; /**< Required only in case when hTunnel == 0 */
NW_IN NwU32T teidLocal; /**< Required only in case when hTunnel == 0 */
NW_IN uint32_t peerIp; /**< Required only in case when hTunnel == 0 */
NW_IN uint32_t teidLocal; /**< Required only in case when hTunnel == 0 */
NW_IN NwGtpv2cUlpTunnelHandleT hUlpTunnel; /**< Required only in case when hTunnel == 0 */
} NwGtpv2cInitialReqInfoT;
......@@ -204,11 +204,11 @@ typedef struct {
typedef struct {
NW_IN NwGtpv2cTunnelHandleT hTunnel; /**< Tunnel handle over which the mesasge is to be sent */
NW_IN NwGtpv2cTrxnHandleT hTrxn; /**< Request Trxn handle which to which triggered req is being sent */
NW_IN NwU16T t3Timer;
NW_IN NwU16T maxRetries;
NW_IN uint16_t t3Timer;
NW_IN uint16_t maxRetries;
NW_IN NwGtpv2cUlpTrxnHandleT hUlpTrxn; /**< Optional handle to be returned in rsp of this msg. */
NW_IN NwU32T peerIp; /**< Required only in case when hTunnel == 0 */
NW_IN NwU32T teidLocal; /**< Required only in case when hTunnel == 0 */
NW_IN uint32_t peerIp; /**< Required only in case when hTunnel == 0 */
NW_IN uint32_t teidLocal; /**< Required only in case when hTunnel == 0 */
NW_IN NwGtpv2cUlpTunnelHandleT hUlpTunnel; /**< Required only in case when hTunnel == 0 */
} NwGtpv2cTriggeredReqInfoT;
......@@ -220,7 +220,7 @@ typedef struct {
typedef struct {
NW_IN NwGtpv2cTrxnHandleT hTrxn; /**< Request Trxn handle which to which triggered rsp is being sent */
NW_IN NwU32T teidLocal; /**< Required only if NW_GTPV2C_ULP_API_FLAG_CREATE_LOCAL_TUNNEL is set to flags. */
NW_IN uint32_t teidLocal; /**< Required only if NW_GTPV2C_ULP_API_FLAG_CREATE_LOCAL_TUNNEL is set to flags. */
NW_IN NwGtpv2cUlpTunnelHandleT hUlpTunnel; /**< Required only if NW_GTPV2C_ULP_API_FLAG_CREATE_LOCAL_TUNNEL is set to flags. */
NW_OUT NwGtpv2cTunnelHandleT hTunnel; /**< Returned only in case flags is set to
......@@ -237,8 +237,8 @@ typedef struct {
NW_IN NwGtpv2cTrxnHandleT hTrxn;
NW_IN NwGtpv2cUlpTrxnHandleT hUlpTrxn;
NW_IN NwGtpv2cMsgTypeT msgType;
NW_IN NwU32T peerIp;
NW_IN NwU32T peerPort;
NW_IN uint32_t peerIp;
NW_IN uint32_t peerPort;
NW_IN NwGtpv2cUlpTunnelHandleT hUlpTunnel;
NW_INOUT NwGtpv2cTunnelHandleT hTunnel;
} NwGtpv2cInitialReqIndInfoT;
......@@ -253,9 +253,9 @@ typedef struct {
NW_IN NwGtpv2cTrxnHandleT hTrxn;
NW_IN NwGtpv2cUlpTrxnHandleT hUlpTrxn;
NW_IN NwGtpv2cMsgTypeT msgType;
NW_IN NwU32T seqNum;
NW_IN NwU32T teidLocal;
NW_IN NwU32T teidRemote;
NW_IN uint32_t seqNum;
NW_IN uint32_t teidLocal;
NW_IN uint32_t teidRemote;
NW_IN NwGtpv2cUlpTunnelHandleT hUlpTunnel;
} NwGtpv2cTriggeredReqIndInfoT;
......@@ -289,8 +289,8 @@ typedef struct {
typedef struct {
NW_OUT NwGtpv2cTunnelHandleT hTunnel;
NW_IN NwGtpv2cUlpTunnelHandleT hUlpTunnel;
NW_IN NwU32T teidLocal;
NW_IN NwU32T peerIp;
NW_IN uint32_t teidLocal;
NW_IN uint32_t peerIp;
} NwGtpv2cCreateLocalTunnelInfoT;
......@@ -347,10 +347,10 @@ typedef struct {
typedef struct {
NwGtpv2cUdpHandleT hUdp;
NwRcT (*udpDataReqCallback) ( NW_IN NwGtpv2cUdpHandleT udpHandle,
NW_IN NwU8T* dataBuf,
NW_IN NwU32T dataSize,
NW_IN NwU32T peerIp,
NW_IN NwU32T peerPort);
NW_IN uint8_t* dataBuf,
NW_IN uint32_t dataSize,
NW_IN uint32_t peerIp,
NW_IN uint32_t peerPort);
} NwGtpv2cUdpEntityT;
/**
......@@ -360,14 +360,14 @@ typedef struct {
typedef struct {
NwGtpv2cMemMgrHandleT hMemMgr;
void* (*memAlloc)( NW_IN NwGtpv2cMemMgrHandleT hMemMgr,
NW_IN NwU32T memSize,
NW_IN uint32_t memSize,
NW_IN NwCharT* fileName,
NW_IN NwU32T lineNumber);
NW_IN uint32_t lineNumber);
void (*memFree) ( NW_IN NwGtpv2cMemMgrHandleT hMemMgr,
NW_IN void* hMem,
NW_IN NwCharT* fileName,
NW_IN NwU32T lineNumber);
NW_IN uint32_t lineNumber);
} NwGtpv2cMemMgrEntityT;
......@@ -380,9 +380,9 @@ typedef struct {
typedef struct {
NwGtpv2cTimerMgrHandleT tmrMgrHandle;
NwRcT (*tmrStartCallback)( NW_IN NwGtpv2cTimerMgrHandleT tmrMgrHandle,
NW_IN NwU32T timeoutSec,
NW_IN NwU32T timeoutUsec,
NW_IN NwU32T tmrType,
NW_IN uint32_t timeoutSec,
NW_IN uint32_t timeoutUsec,
NW_IN uint32_t tmrType,
NW_IN void* tmrArg,
NW_OUT NwGtpv2cTimerHandleT* tmrHandle);
......@@ -397,9 +397,9 @@ typedef struct {
typedef struct {
NwGtpv2cLogMgrHandleT logMgrHandle;
NwRcT (*logReqCallback) (NW_IN NwGtpv2cLogMgrHandleT logMgrHandle,
NW_IN NwU32T logLevel,
NW_IN uint32_t logLevel,
NW_IN NwCharT* filename,
NW_IN NwU32T line,
NW_IN uint32_t line,
NW_IN NwCharT* logStr);
} NwGtpv2cLogMgrEntityT;
......@@ -519,7 +519,7 @@ nwGtpv2cSetLogMgrEntity( NW_IN NwGtpv2cStackHandleT hGtpcStackHandle,
NwRcT
nwGtpv2cSetLogLevel( NW_IN NwGtpv2cStackHandleT hGtpcStackHandle,
NW_IN NwU32T logLevel);
NW_IN uint32_t logLevel);
/**
......@@ -535,10 +535,10 @@ nwGtpv2cSetLogLevel( NW_IN NwGtpv2cStackHandleT hGtpcStackHandle,
NwRcT
nwGtpv2cProcessUdpReq( NW_IN NwGtpv2cStackHandleT hGtpcStackHandle,
NW_IN NwU8T* udpData,
NW_IN NwU32T udpDataLen,
NW_IN NwU16T peerPort,
NW_IN NwU32T peerIP);
NW_IN uint8_t* udpData,
NW_IN uint32_t udpDataLen,
NW_IN uint16_t peerPort,
NW_IN uint32_t peerIP);
/**
Process Request from ULP entity.
......
......@@ -45,19 +45,19 @@
*/
typedef struct {
NwU16T msgType;
NwU16T mandatoryIeCount;
uint16_t msgType;
uint16_t mandatoryIeCount;
NwGtpv2cStackHandleT hStack;
NwRcT (*ieReadCallback) (NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T* ieValue, void* ieReadCallbackArg);
NwRcT (*ieReadCallback) (uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t* ieValue, void* ieReadCallbackArg);
void* ieReadCallbackArg;
struct {
NwU8T iePresence;
NwRcT (*ieReadCallback) (NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T* ieValue, void* ieReadCallbackArg);
uint8_t iePresence;
NwRcT (*ieReadCallback) (uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t* ieValue, void* ieReadCallbackArg);
void* ieReadCallbackArg;
} ieParseInfo[NW_GTPV2C_IE_TYPE_MAXIMUM][NW_GTPV2C_IE_INSTANCE_MAXIMUM];
NwU8T *pIe[NW_GTPV2C_IE_TYPE_MAXIMUM][NW_GTPV2C_IE_INSTANCE_MAXIMUM];
uint8_t *pIe[NW_GTPV2C_IE_TYPE_MAXIMUM][NW_GTPV2C_IE_INSTANCE_MAXIMUM];
} NwGtpv2cMsgParserT;
#ifdef __cplusplus
......@@ -74,11 +74,11 @@ extern "C" {
NwRcT
nwGtpv2cMsgParserNew( NW_IN NwGtpv2cStackHandleT hGtpcStackHandle,
NW_IN NwU8T msgType,
NW_IN NwRcT (*ieReadCallback) (NwU8T ieType,
NwU8T ieLength,
NwU8T ieInstance,
NwU8T* ieValue,
NW_IN uint8_t msgType,
NW_IN NwRcT (*ieReadCallback) (uint8_t ieType,
uint8_t ieLength,
uint8_t ieInstance,
uint8_t* ieValue,
void* ieReadCallbackArg),
NW_IN void* ieReadCallbackArg,
NW_IN NwGtpv2cMsgParserT **pthiz);
......@@ -97,23 +97,23 @@ nwGtpv2cMsgParserDelete( NW_IN NwGtpv2cStackHandleT hGtpcStackHandle,
NwRcT
nwGtpv2cMsgParserUpdateIe( NW_IN NwGtpv2cMsgParserT* thiz,
NW_IN NwU8T ieType,
NW_IN NwU8T ieInstance,
NW_IN NwU8T iePresence,
NW_IN NwRcT (*ieReadCallback) (NwU8T ieType,
NwU8T ieLength,
NwU8T ieInstance,
NwU8T* ieValue,
NW_IN uint8_t ieType,
NW_IN uint8_t ieInstance,
NW_IN uint8_t iePresence,
NW_IN NwRcT (*ieReadCallback) (uint8_t ieType,
uint8_t ieLength,
uint8_t ieInstance,
uint8_t* ieValue,
void* ieReadCallbackArg),
NW_IN void* ieReadCallbackArg);
NwRcT
nwGtpv2cMsgParserUpdateIeReadCallback( NW_IN NwGtpv2cMsgParserT* thiz,
NW_IN NwRcT (*ieReadCallback) (NwU8T ieType,
NwU8T ieLength,
NwU8T ieInstance,
NwU8T* ieValue,
NW_IN NwRcT (*ieReadCallback) (uint8_t ieType,
uint8_t ieLength,
uint8_t ieInstance,
uint8_t* ieValue,
void* ieReadCallbackArg));
......@@ -123,22 +123,22 @@ nwGtpv2cMsgParserUpdateIeReadCallbackArg( NW_IN NwGtpv2cMsgParserT* thiz,
NwRcT
nwGtpv2cMsgParserAddIe( NW_IN NwGtpv2cMsgParserT* thiz,
NW_IN NwU8T ieType,
NW_IN NwU8T ieInstance,
NW_IN NwU8T iePresence,
NW_IN NwRcT (*ieReadCallback) (NwU8T ieType,
NwU8T ieLength,
NwU8T ieInstance,
NwU8T* ieValue,
NW_IN uint8_t ieType,
NW_IN uint8_t ieInstance,
NW_IN uint8_t iePresence,
NW_IN NwRcT (*ieReadCallback) (uint8_t ieType,
uint8_t ieLength,
uint8_t ieInstance,
uint8_t* ieValue,
void* ieReadCallbackArg),
NW_IN void* ieReadCallbackArg);
NwRcT
nwGtpv2cMsgParserRun( NW_IN NwGtpv2cMsgParserT *thiz,
NW_IN NwGtpv2cMsgHandleT hMsg,
NW_OUT NwU8T *pOffendingIeType,
NW_OUT NwU8T *pOffendingIeInstance,
NW_OUT NwU16T *pOffendingIeLength);
NW_OUT uint8_t *pOffendingIeType,
NW_OUT uint8_t *pOffendingIeInstance,
NW_OUT uint16_t *pOffendingIeLength);
#ifdef __cplusplus
}
......
......@@ -66,15 +66,15 @@ extern "C" {
*--------------------------------------------------------------------------*/
#define NW_IPV4_ADDR "%u.%u.%u.%u"
#define NW_IPV4_ADDR_FORMAT(__addr) (NwU8T)((__addr) & 0x000000ff), \
(NwU8T)(((__addr) & 0x0000ff00) >> 8 ), \
(NwU8T)(((__addr) & 0x00ff0000) >> 16), \
(NwU8T)(((__addr) & 0xff000000) >> 24)
#define NW_IPV4_ADDR_FORMAT(__addr) (uint8_t)((__addr) & 0x000000ff), \
(uint8_t)(((__addr) & 0x0000ff00) >> 8 ), \
(uint8_t)(((__addr) & 0x00ff0000) >> 16), \
(uint8_t)(((__addr) & 0xff000000) >> 24)
#define NW_IPV4_ADDR_FORMATP(__paddr) (NwU8T)(*((NwU8T*)(__paddr)) & 0x000000ff), \
(NwU8T)(*((NwU8T*)(__paddr + 1)) & 0x000000ff), \
(NwU8T)(*((NwU8T*)(__paddr + 2)) & 0x000000ff), \
(NwU8T)(*((NwU8T*)(__paddr + 3)) & 0x000000ff)
#define NW_IPV4_ADDR_FORMATP(__paddr) (uint8_t)(*((uint8_t*)(__paddr)) & 0x000000ff), \
(uint8_t)(*((uint8_t*)(__paddr + 1)) & 0x000000ff), \
(uint8_t)(*((uint8_t*)(__paddr + 2)) & 0x000000ff), \
(uint8_t)(*((uint8_t*)(__paddr + 3)) & 0x000000ff)
#ifdef __cplusplus
}
......
......@@ -54,10 +54,10 @@ extern "C" {
#define NW_TRUE (1) /**< Truth value */
#define NW_FALSE (0) /**< False value */
typedef unsigned char NwU8T; /**< Unsigned 1 byte */
typedef unsigned short NwU16T; /**< Unsigned 2 byte */
typedef unsigned int NwU32T; /**< Unsigned 4 byte */
typedef unsigned long long NwU64T; /**< Unsigned 8 byte */
typedef unsigned char uint8_t; /**< Unsigned 1 byte */
typedef unsigned short uint16_t; /**< Unsigned 2 byte */
typedef unsigned int uint32_t; /**< Unsigned 4 byte */
typedef unsigned long long uint64_t; /**< Unsigned 8 byte */
typedef signed char NwS8T; /**< Signed 1 byte */
typedef signed short NwS16T; /**< Signed 2 byte */
......
......@@ -52,10 +52,10 @@
( ( (x) & 0x0000ff00 ) << 8 ) | ( ( (x) & 0x000000ff) << 24 ) )
#define NW_HTONLL(x) ( \
( ( ((NwU64T)x) & 0xff00000000000000ULL ) >> 56 ) | ( ( ((NwU64T)x) & 0x00ff000000000000ULL ) >> 40 ) | \
( ( ((NwU64T)x) & 0x0000ff0000000000ULL ) >> 24 ) | ( ( ((NwU64T)x) & 0x000000ff00000000ULL ) >> 8 ) | \
( ( ((NwU64T)x) & 0x000000000000ff00ULL ) << 40 ) | ( ( ((NwU64T)x) & 0x00000000000000ffULL ) << 56 ) | \
( ( ((NwU64T)x) & 0x0000000000ff0000ULL ) << 24 ) | ( ( ((NwU64T)x) & 0x00000000ff000000ULL ) << 8 ) \
( ( ((uint64_t)x) & 0xff00000000000000ULL ) >> 56 ) | ( ( ((uint64_t)x) & 0x00ff000000000000ULL ) >> 40 ) | \
( ( ((uint64_t)x) & 0x0000ff0000000000ULL ) >> 24 ) | ( ( ((uint64_t)x) & 0x000000ff00000000ULL ) >> 8 ) | \
( ( ((uint64_t)x) & 0x000000000000ff00ULL ) << 40 ) | ( ( ((uint64_t)x) & 0x00000000000000ffULL ) << 56 ) | \
( ( ((uint64_t)x) & 0x0000000000ff0000ULL ) << 24 ) | ( ( ((uint64_t)x) & 0x00000000ff000000ULL ) << 8 ) \
)
......
......@@ -50,10 +50,10 @@ extern "C" {
typedef struct NwGtpv2cMsgIeInfo {
NwU8T ieType;
NwU8T ieMinLength;
NwU8T ieInstance;
NwU8T iePresence;
uint8_t ieType;
uint8_t ieMinLength;
uint8_t ieInstance;
uint8_t iePresence;
struct NwGtpv2cMsgIeInfo *pGroupedIeInfo;
} NwGtpv2cMsgIeInfoT;
......@@ -351,10 +351,10 @@ NwGtpv2cMsgIeInfoT forwardRelocationCompleteAckIeInfoTbl[] = {
* P R I V A T E F U N C T I O N S *
*----------------------------------------------------------------------------*/
static NwU32T
static uint32_t
nwGtpv2cMsgGroupedIeCount(NwGtpv2cMsgIeInfoT *pMsgIeInfo)
{
NwU32T count = 0;
uint32_t count = 0;
NwGtpv2cMsgIeInfoT *pGroupedIeInfo = pMsgIeInfo;
while (pGroupedIeInfo++) {
......@@ -372,7 +372,7 @@ static NwRcT
nwGtpv2cMsgIeParseInfoUpdate(NwGtpv2cMsgIeParseInfoT *thiz,
NwGtpv2cMsgIeInfoT *pMsgIeInfo)
{
NwU32T i, j;
uint32_t i, j;
for (i = 0; pMsgIeInfo[i].ieType; i++) {
if (pMsgIeInfo[i].pGroupedIeInfo) {
......@@ -411,10 +411,10 @@ nwGtpv2cMsgIeParseInfoUpdate(NwGtpv2cMsgIeParseInfoT *thiz,
static NwRcT
nwGtpv2cMsgGroupedIeParse(NW_IN NwGtpv2cGroupedIeParseInfoT* thiz,
NW_IN NwU8T ieType,
NW_IN NwU16T ieLength,
NW_IN NwU8T ieInstance,
NW_IN NwU8T *pIeValue)
NW_IN uint8_t ieType,
NW_IN uint16_t ieLength,
NW_IN uint8_t ieInstance,
NW_IN uint8_t *pIeValue)
{
NW_ASSERT(thiz);
......@@ -434,7 +434,7 @@ nwGtpv2cMsgGroupedIeParse(NW_IN NwGtpv2cGroupedIeParseInfoT* thiz,
*/
NwGtpv2cMsgIeParseInfoT*
nwGtpv2cMsgIeParseInfoNew(NwGtpv2cStackHandleT hStack, NwU8T msgType)
nwGtpv2cMsgIeParseInfoNew(NwGtpv2cStackHandleT hStack, uint8_t msgType)
{
NwRcT rc;
NwGtpv2cMsgIeParseInfoT *thiz;
......@@ -578,21 +578,21 @@ nwGtpv2cMsgIeParse(NW_IN NwGtpv2cMsgIeParseInfoT* thiz,
NW_INOUT NwGtpv2cErrorT *pError)
{
NwRcT rc = NW_OK;
NwU16T mandatoryIeCount =0;
NwU8T *pIeBufStart;
NwU8T *pIeBufEnd;
NwU16T ieType;
NwU16T ieLength;
NwU16T ieInstance;
uint16_t mandatoryIeCount =0;
uint8_t *pIeBufStart;
uint8_t *pIeBufEnd;
uint16_t ieType;
uint16_t ieLength;
uint16_t ieInstance;
NwGtpv2cIeTlvT *pIe;
NwGtpv2cMsgT *pMsg = (NwGtpv2cMsgT*) hMsg;
NwU8T flags = *((NwU8T*)(pMsg->msgBuf));
uint8_t flags = *((uint8_t*)(pMsg->msgBuf));
pIeBufStart = (NwU8T *) (pMsg->msgBuf + (flags & 0x08 ? 12: 8));
pIeBufEnd = (NwU8T *) (pMsg->msgBuf + pMsg->msgLen);
pIeBufStart = (uint8_t *) (pMsg->msgBuf + (flags & 0x08 ? 12: 8));
pIeBufEnd = (uint8_t *) (pMsg->msgBuf + pMsg->msgLen);
//memset(pMsg->pIe, 0, sizeof(NwU8T*) * (NW_GTPV2C_IE_TYPE_MAXIMUM) * (NW_GTPV2C_IE_INSTANCE_MAXIMUM));
memset(pMsg->isIeValid, (NW_FALSE), sizeof(NwU8T) * (NW_GTPV2C_IE_TYPE_MAXIMUM) * (NW_GTPV2C_IE_INSTANCE_MAXIMUM));
//memset(pMsg->pIe, 0, sizeof(uint8_t*) * (NW_GTPV2C_IE_TYPE_MAXIMUM) * (NW_GTPV2C_IE_INSTANCE_MAXIMUM));
memset(pMsg->isIeValid, (NW_FALSE), sizeof(uint8_t) * (NW_GTPV2C_IE_TYPE_MAXIMUM) * (NW_GTPV2C_IE_INSTANCE_MAXIMUM));
while (pIeBufStart < pIeBufEnd) {
pIe = (NwGtpv2cIeTlvT*) pIeBufStart;
......@@ -640,12 +640,12 @@ nwGtpv2cMsgIeParse(NW_IN NwGtpv2cMsgIeParseInfoT* thiz,
continue;
}
pMsg->pIe[ieType][ieInstance] = (NwU8T*) pIeBufStart;
pMsg->pIe[ieType][ieInstance] = (uint8_t*) pIeBufStart;
pMsg->isIeValid[ieType][ieInstance] = NW_TRUE;
if(thiz->ieParseInfo[ieType][ieInstance].pGroupedIeInfo) {
/* Parse the grouped IE */
rc = nwGtpv2cMsgGroupedIeParse(thiz->ieParseInfo[ieType][ieInstance].pGroupedIeInfo, ieType, ieLength, ieInstance, ((NwU8T*) pIe) + 4);
rc = nwGtpv2cMsgGroupedIeParse(thiz->ieParseInfo[ieType][ieInstance].pGroupedIeInfo, ieType, ieLength, ieInstance, ((uint8_t*) pIe) + 4);
if (rc != NW_OK) {
pError->cause = NW_GTPV2C_CAUSE_MANDATORY_IE_INCORRECT;
......
......@@ -54,11 +54,11 @@ extern "C" {
NwRcT
nwGtpv2cMsgParserNew( NW_IN NwGtpv2cStackHandleT hGtpcStackHandle,
NW_IN NwU8T msgType,
NW_IN NwRcT (*ieReadCallback) (NwU8T ieType,
NwU8T ieLength,
NwU8T ieInstance,
NwU8T* ieValue,
NW_IN uint8_t msgType,
NW_IN NwRcT (*ieReadCallback) (uint8_t ieType,
uint8_t ieLength,
uint8_t ieInstance,
uint8_t* ieValue,
void* ieReadCallbackArg),
NW_IN void* ieReadCallbackArg,
NW_IN NwGtpv2cMsgParserT **pthiz)
......@@ -97,10 +97,10 @@ nwGtpv2cMsgParserDelete( NW_IN NwGtpv2cStackHandleT hGtpcStackHandle,
NwRcT
nwGtpv2cMsgParserUpdateIeReadCallback( NW_IN NwGtpv2cMsgParserT* thiz,
NW_IN NwRcT (*ieReadCallback) (NwU8T ieType,
NwU8T ieLength,
NwU8T ieInstance,
NwU8T* ieValue,
NW_IN NwRcT (*ieReadCallback) (uint8_t ieType,
uint8_t ieLength,
uint8_t ieInstance,
uint8_t* ieValue,
void* ieReadCallbackArg))
{
if(thiz) {
......@@ -125,13 +125,13 @@ nwGtpv2cMsgParserUpdateIeReadCallbackArg( NW_IN NwGtpv2cMsgParserT* thiz,
NwRcT
nwGtpv2cMsgParserAddIe( NW_IN NwGtpv2cMsgParserT* thiz,
NW_IN NwU8T ieType,
NW_IN NwU8T ieInstance,
NW_IN NwU8T iePresence,
NW_IN NwRcT (*ieReadCallback) (NwU8T ieType,
NwU8T ieLength,
NwU8T ieInstance,
NwU8T* ieValue,
NW_IN uint8_t ieType,
NW_IN uint8_t ieInstance,
NW_IN uint8_t iePresence,
NW_IN NwRcT (*ieReadCallback) (uint8_t ieType,
uint8_t ieLength,
uint8_t ieInstance,
uint8_t* ieValue,
void* ieReadCallbackArg),
NW_IN void* ieReadCallbackArg)
{
......@@ -156,13 +156,13 @@ nwGtpv2cMsgParserAddIe( NW_IN NwGtpv2cMsgParserT* thiz,
NwRcT
nwGtpv2cMsgParserUpdateIe( NW_IN NwGtpv2cMsgParserT* thiz,
NW_IN NwU8T ieType,
NW_IN NwU8T ieInstance,
NW_IN NwU8T iePresence,
NW_IN NwRcT (*ieReadCallback) (NwU8T ieType,
NwU8T ieLength,
NwU8T ieInstance,
NwU8T* ieValue,
NW_IN uint8_t ieType,
NW_IN uint8_t ieInstance,
NW_IN uint8_t iePresence,
NW_IN NwRcT (*ieReadCallback) (uint8_t ieType,
uint8_t ieLength,
uint8_t ieInstance,
uint8_t* ieValue,
void* ieReadCallbackArg),
NW_IN void* ieReadCallbackArg)
{
......@@ -186,26 +186,26 @@ nwGtpv2cMsgParserUpdateIe( NW_IN NwGtpv2cMsgParserT* thiz,
NwRcT
nwGtpv2cMsgParserRun( NW_IN NwGtpv2cMsgParserT *thiz,
NW_IN NwGtpv2cMsgHandleT hMsg,
NW_OUT NwU8T *pOffendingIeType,
NW_OUT NwU8T *pOffendingIeInstance,
NW_OUT NwU16T *pOffendingIeLength)
NW_OUT uint8_t *pOffendingIeType,
NW_OUT uint8_t *pOffendingIeInstance,
NW_OUT uint16_t *pOffendingIeLength)
{
NwRcT rc = NW_OK;
NwU8T flags;
NwU16T mandatoryIeCount =0;
uint8_t flags;
uint16_t mandatoryIeCount =0;
NwGtpv2cIeTlvT *pIe;
NwU8T *pIeStart;
NwU8T *pIeEnd;
NwU16T ieLength;
uint8_t *pIeStart;
uint8_t *pIeEnd;
uint16_t ieLength;
NwGtpv2cMsgT *pMsg = (NwGtpv2cMsgT*) hMsg;
NW_ASSERT(pMsg);
flags = *((NwU8T*)(pMsg->msgBuf));
pIeStart = (NwU8T *) (pMsg->msgBuf + (flags & 0x08 ? 12: 8));
pIeEnd = (NwU8T *) (pMsg->msgBuf + pMsg->msgLen);
flags = *((uint8_t*)(pMsg->msgBuf));
pIeStart = (uint8_t *) (pMsg->msgBuf + (flags & 0x08 ? 12: 8));
pIeEnd = (uint8_t *) (pMsg->msgBuf + pMsg->msgLen);
memset(thiz->pIe, 0, sizeof(NwU8T*) * (NW_GTPV2C_IE_TYPE_MAXIMUM) * (NW_GTPV2C_IE_INSTANCE_MAXIMUM));
memset(pMsg->pIe, 0, sizeof(NwU8T*) * (NW_GTPV2C_IE_TYPE_MAXIMUM) * (NW_GTPV2C_IE_INSTANCE_MAXIMUM));
memset(thiz->pIe, 0, sizeof(uint8_t*) * (NW_GTPV2C_IE_TYPE_MAXIMUM) * (NW_GTPV2C_IE_INSTANCE_MAXIMUM));
memset(pMsg->pIe, 0, sizeof(uint8_t*) * (NW_GTPV2C_IE_TYPE_MAXIMUM) * (NW_GTPV2C_IE_INSTANCE_MAXIMUM));
while (pIeStart < pIeEnd) {
pIe = (NwGtpv2cIeTlvT*) pIeStart;
......@@ -219,8 +219,8 @@ nwGtpv2cMsgParserRun( NW_IN NwGtpv2cMsgParserT *thiz,
}
if((thiz->ieParseInfo[pIe->t][pIe->i].iePresence)) {
thiz->pIe[pIe->t][pIe->i] = (NwU8T*) pIeStart;
pMsg->pIe[pIe->t][pIe->i] = (NwU8T*) pIeStart;
thiz->pIe[pIe->t][pIe->i] = (uint8_t*) pIeStart;
pMsg->pIe[pIe->t][pIe->i] = (uint8_t*) pIeStart;
NW_LOG(thiz->hStack, NW_LOG_LEVEL_DEBG, "Received IE %u of length %u!", pIe->t, ieLength);
......@@ -258,7 +258,7 @@ nwGtpv2cMsgParserRun( NW_IN NwGtpv2cMsgParserT *thiz,
}
if((NW_OK == rc) && (mandatoryIeCount != thiz->mandatoryIeCount)) {
NwU16T t, i;
uint16_t t, i;
*pOffendingIeType = 0;
*pOffendingIeInstance = 0;
*pOffendingIeLength = 0;
......
......@@ -253,7 +253,7 @@ nwGtpv2cTrxnNew( NW_IN NwGtpv2cStackT* thiz)
*/
NwGtpv2cTrxnT*
nwGtpv2cTrxnWithSeqNumNew( NW_IN NwGtpv2cStackT* thiz,
NW_IN NwU32T seqNum)
NW_IN uint32_t seqNum)
{
NwGtpv2cTrxnT *pTrxn;
......@@ -292,10 +292,10 @@ nwGtpv2cTrxnWithSeqNumNew( NW_IN NwGtpv2cStackT* thiz,
NwGtpv2cTrxnT*
nwGtpv2cTrxnOutstandingRxNew( NW_IN NwGtpv2cStackT* thiz,
NW_IN NwU32T teidLocal,
NW_IN NwU32T peerIp,
NW_IN NwU32T peerPort,
NW_IN NwU32T seqNum)
NW_IN uint32_t teidLocal,
NW_IN uint32_t peerIp,
NW_IN uint32_t peerPort,
NW_IN uint32_t seqNum)
{
NwRcT rc;
NwGtpv2cTrxnT *pTrxn, *pCollision;
......@@ -321,7 +321,7 @@ nwGtpv2cTrxnOutstandingRxNew( NW_IN NwGtpv2cStackT* thiz,
if(pCollision) {
NW_LOG(thiz, NW_LOG_LEVEL_WARN, "Duplicate request message received for seq num 0x%x!",
(NwU32T) seqNum);
(uint32_t) seqNum);
/* Case of duplicate request message from peer. Retransmit response. */
if(pCollision->pMsg) {
......
......@@ -48,7 +48,7 @@ extern "C" {
static NwGtpv2cTunnelT* gpGtpv2cTunnelPool = NULL;
NwGtpv2cTunnelT*
nwGtpv2cTunnelNew(struct NwGtpv2cStack *pStack, NwU32T teid, NwU32T ipv4AddrRemote, NwGtpv2cUlpTunnelHandleT hUlpTunnel)
nwGtpv2cTunnelNew(struct NwGtpv2cStack *pStack, uint32_t teid, uint32_t ipv4AddrRemote, NwGtpv2cUlpTunnelHandleT hUlpTunnel)
{
NwGtpv2cTunnelT* thiz;
......
......@@ -30,10 +30,10 @@ NwCharT* gLogLevelStr[] = {"EMER", "ALER", "CRIT", "ERRO", "WARN", "NOTI", "INF
typedef struct NwEgtPingS {
NwU8T localIpStr[20];
NwU8T targetIpStr[20];
NwU32T pingInterval;
NwU32T pingCount;
uint8_t localIpStr[20];
uint8_t targetIpStr[20];
uint32_t pingInterval;
uint32_t pingCount;
NwGtpv2cNodeUlpT ulpObj;
NwGtpv2cNodeUdpT udpObj;
} NwEgtPingT;
......@@ -136,8 +136,8 @@ nwEgtPingParseCmdLineOpts(int argc, char* argv[])
int main(int argc, char* argv[])
{
NwRcT rc;
NwU32T logLevel;
NwU8T* logLevelStr;
uint32_t logLevel;
uint8_t* logLevelStr;
NwGtpv2cStackHandleT hGtpv2cStack = 0;
......
......@@ -40,21 +40,21 @@ NwMiniLogMgrT* nwMiniLogMgrGetInstance()
return &(__gLogMgr);
}
NwRcT nwMiniLogMgrInit(NwMiniLogMgrT* thiz, NwU32T logLevel )
NwRcT nwMiniLogMgrInit(NwMiniLogMgrT* thiz, uint32_t logLevel )
{
thiz->logLevel = logLevel;
return NW_OK;
}
NwRcT nwMiniLogMgrSetLogLevel(NwMiniLogMgrT* thiz, NwU32T logLevel)
NwRcT nwMiniLogMgrSetLogLevel(NwMiniLogMgrT* thiz, uint32_t logLevel)
{
thiz->logLevel = logLevel;
}
NwRcT nwMiniLogMgrLogRequest (NwGtpv2cLogMgrHandleT hLogMgr,
NwU32T logLevel,
uint32_t logLevel,
NwCharT* file,
NwU32T line,
uint32_t line,
NwCharT* logStr)
{
NwMiniLogMgrT* thiz = (NwMiniLogMgrT*) hLogMgr;
......
......@@ -37,7 +37,7 @@
* MiniLogMgr Class Definition
*/
typedef struct NwMiniLogMgr {
NwU8T logLevel; /*< Log level */
uint8_t logLevel; /*< Log level */
} NwMiniLogMgrT;
......@@ -59,14 +59,14 @@ NwMiniLogMgrT* nwMiniLogMgrGetInstance();
* @param thiz : Pointer to global singleton MiniLogMgr instance
* @param logLevel : Log Level
*/
NwRcT nwMiniLogMgrInit(NwMiniLogMgrT* thiz, NwU32T logLevel );
NwRcT nwMiniLogMgrInit(NwMiniLogMgrT* thiz, uint32_t logLevel );
/**
* Set MiniLogMgr log level
* @param thiz : Pointer to global singleton MiniLogMgr instance
* @param logLevel : Log Level
*/
NwRcT nwMiniLogMgrSetLogLevel(NwMiniLogMgrT* thiz, NwU32T logLevel);
NwRcT nwMiniLogMgrSetLogLevel(NwMiniLogMgrT* thiz, uint32_t logLevel);
/**
* Process log request from stack
......@@ -77,9 +77,9 @@ NwRcT nwMiniLogMgrSetLogLevel(NwMiniLogMgrT* thiz, NwU32T logLevel);
* @param logStr : Log string
*/
NwRcT nwMiniLogMgrLogRequest (NwGtpv2cLogMgrHandleT logMgrHandle,
NwU32T logLevel,
uint32_t logLevel,
NwCharT* file,
NwU32T line,
uint32_t line,
NwCharT* logStr);
#ifdef __cplusplus
......
......@@ -55,9 +55,9 @@ NW_TMR_CALLBACK(nwGtpv2cNodeHandleStackTimerTimeout)
*--------------------------------------------------------------------------*/
NwRcT nwTimerStart( NwGtpv2cTimerMgrHandleT tmrMgrHandle,
NwU32T timeoutSec,
NwU32T timeoutUsec,
NwU32T tmrType,
uint32_t timeoutSec,
uint32_t timeoutUsec,
uint32_t tmrType,
void* timeoutArg,
NwGtpv2cTimerHandleT* hTmr)
{
......
......@@ -25,7 +25,7 @@
#define __NW_MINI_TMR_MGR_H__
typedef struct {
NwU8T _tbd;
uint8_t _tbd;
} NwGtpv2cNodeTmrMgrT;
typedef struct {
......@@ -39,9 +39,9 @@ extern "C" {
#endif
NwRcT nwTimerStart( NwGtpv2cTimerMgrHandleT tmrMgrHandle,
NwU32T timeoutSec,
NwU32T timeoutUsec,
NwU32T tmrType,
uint32_t timeoutSec,
uint32_t timeoutUsec,
uint32_t tmrType,
void* timeoutArg,
NwGtpv2cTimerHandleT* hTmr);
......
......@@ -47,10 +47,10 @@ static
void NW_EVT_CALLBACK(nwUdpDataIndicationCallbackData)
{
NwRcT rc;
NwU8T udpBuf[MAX_UDP_PAYLOAD_LEN];
uint8_t udpBuf[MAX_UDP_PAYLOAD_LEN];
NwS32T bytesRead;
struct sockaddr_in peer;
NwU32T peerLen;
uint32_t peerLen;
NwGtpv2cNodeUdpT* thiz = (NwGtpv2cNodeUdpT*) arg;
peerLen = sizeof(peer);
......@@ -96,7 +96,7 @@ void NW_EVT_CALLBACK(nwUdpDataIndicationCallbackData)
* Public functions
*--------------------------------------------------------------------------*/
NwRcT nwGtpv2cUdpInit(NwGtpv2cNodeUdpT* thiz, NwGtpv2cStackHandleT hGtpv2cStack, NwU8T* ipAddrStr)
NwRcT nwGtpv2cUdpInit(NwGtpv2cNodeUdpT* thiz, NwGtpv2cStackHandleT hGtpv2cStack, uint8_t* ipAddrStr)
{
int sd;
struct sockaddr_in addr;
......@@ -179,10 +179,10 @@ NwRcT nwGtpv2cUdpReset(NwGtpv2cNodeUdpT* thiz)
}
NwRcT nwGtpv2cUdpDataReq(NwGtpv2cUdpHandleT udpHandle,
NwU8T* dataBuf,
NwU32T dataSize,
NwU32T peerIp,
NwU32T peerPort)
uint8_t* dataBuf,
uint32_t dataSize,
uint32_t peerIp,
uint32_t peerPort)
{
struct sockaddr_in peerAddr;
NwS32T bytesSent;
......
......@@ -25,27 +25,27 @@
#define __NW_MINI_UDP_ENTITY_H__
typedef struct {
NwU32T ipv4Addr;
NwU32T hSocket;
uint32_t ipv4Addr;
uint32_t hSocket;
NwEventT ev;
NwGtpv2cStackHandleT hGtpv2cStack;
NwU32T packetsSent;
NwU32T packetsRcvd;
uint32_t packetsSent;
uint32_t packetsRcvd;
} NwGtpv2cNodeUdpT;
#ifdef __cplusplus
extern "C" {
#endif
NwRcT nwGtpv2cUdpInit(NwGtpv2cNodeUdpT* thiz, NwGtpv2cStackHandleT hGtpv2cStack, NwU8T* ipAddrStr);
NwRcT nwGtpv2cUdpInit(NwGtpv2cNodeUdpT* thiz, NwGtpv2cStackHandleT hGtpv2cStack, uint8_t* ipAddrStr);
NwRcT nwGtpv2cUdpDestroy(NwGtpv2cNodeUdpT* thiz);
NwRcT nwGtpv2cUdpDataReq(NwGtpv2cUdpHandleT udpHandle,
NwU8T* dataBuf,
NwU32T dataSize,
NwU32T peerIp,
NwU32T peerPort);
uint8_t* dataBuf,
uint32_t dataSize,
uint32_t peerIp,
uint32_t peerPort);
NwRcT nwGtpv2cUdpReset(NwGtpv2cNodeUdpT* thiz);
......
......@@ -56,18 +56,18 @@ nwGtpv2cUlpDestroy(NwGtpv2cNodeUlpT* thiz)
}
typedef struct NwGtpv2cPeerS {
NwU32T ipv4Addr;
NwU32T pingCount;
NwU32T pingInterval;
NwU32T t3Time;
NwU32T n3Count;
uint32_t ipv4Addr;
uint32_t pingCount;
uint32_t pingInterval;
uint32_t t3Time;
uint32_t n3Count;
NwU32T sendTimeStamp;
uint32_t sendTimeStamp;
NwGtpv2cTunnelHandleT hTunnel;
} NwGtpv2cPeerT;
NwGtpv2cPeerT*
nwGtpv2cUlpCreatePeerContext(NwGtpv2cNodeUlpT* thiz, NwU32T peerIp)
nwGtpv2cUlpCreatePeerContext(NwGtpv2cNodeUlpT* thiz, uint32_t peerIp)
{
NwRcT rc;
NwGtpv2cUlpApiT ulpReq;
......@@ -135,11 +135,11 @@ nwGtpv2cUlpSendEchoRequestToPeer(NwGtpv2cNodeUlpT* thiz, NwGtpv2cPeerT *pPeer)
NwRcT
nwGtpv2cUlpPing(NwGtpv2cNodeUlpT* thiz,
NwU32T peerIp,
NwU32T pingCount,
NwU32T pingInterval,
NwU32T t3Time,
NwU32T n3Count)
uint32_t peerIp,
uint32_t pingCount,
uint32_t pingInterval,
uint32_t t3Time,
uint32_t n3Count)
{
NwRcT rc;
NwGtpv2cPeerT *pPeer;
......@@ -165,9 +165,9 @@ nwGtpv2cUlpProcessStackReqCallback (NwGtpv2cUlpHandleT hUlp,
NwGtpv2cUlpApiT *pUlpApi)
{
NwRcT rc;
NwU32T seqNum;
NwU32T len;
NwU32T recvTimeStamp;
uint32_t seqNum;
uint32_t len;
uint32_t recvTimeStamp;
struct timeval tv;
NwGtpv2cPeerT *pPeer;
NwGtpv2cNodeUlpT* thiz;
......
......@@ -20,8 +20,8 @@
#define __NW_MINI_ULP_H__
typedef struct {
NwU8T peerIpStr[16];
NwU32T restartCounter;
uint8_t peerIpStr[16];
uint32_t restartCounter;
NwGtpv2cStackHandleT hGtpv2cStack;
} NwGtpv2cNodeUlpT;
......@@ -41,11 +41,11 @@ nwGtpv2cUlpProcessStackReqCallback (NwGtpv2cUlpHandleT hUlp,
NwRcT
nwGtpv2cUlpPing(NwGtpv2cNodeUlpT* thiz,
NwU32T peerIp,
NwU32T pingCount,
NwU32T pingInterval,
NwU32T t3Time,
NwU32T n3Count);
uint32_t peerIp,
uint32_t pingCount,
uint32_t pingInterval,
uint32_t t3Time,
uint32_t n3Count);
#ifdef __cplusplus
}
......
......@@ -40,21 +40,21 @@ NwMiniLogMgrT* nwMiniLogMgrGetInstance()
return &(__gLogMgr);
}
NwRcT nwMiniLogMgrInit(NwMiniLogMgrT* thiz, NwU32T logLevel )
NwRcT nwMiniLogMgrInit(NwMiniLogMgrT* thiz, uint32_t logLevel )
{
thiz->logLevel = logLevel;
return NW_OK;
}
NwRcT nwMiniLogMgrSetLogLevel(NwMiniLogMgrT* thiz, NwU32T logLevel)
NwRcT nwMiniLogMgrSetLogLevel(NwMiniLogMgrT* thiz, uint32_t logLevel)
{
thiz->logLevel = logLevel;
}
NwRcT nwMiniLogMgrLogRequest (NwGtpv2cLogMgrHandleT hLogMgr,
NwU32T logLevel,
uint32_t logLevel,
NwCharT* file,
NwU32T line,
uint32_t line,
NwCharT* logStr)
{
NwMiniLogMgrT* thiz = (NwMiniLogMgrT*) hLogMgr;
......
......@@ -37,7 +37,7 @@
* MiniLogMgr Class Definition
*/
typedef struct NwMiniLogMgr {
NwU8T logLevel; /*< Log level */
uint8_t logLevel; /*< Log level */
} NwMiniLogMgrT;
......@@ -59,14 +59,14 @@ NwMiniLogMgrT* nwMiniLogMgrGetInstance();
* @param thiz : Pointer to global singleton MiniLogMgr instance
* @param logLevel : Log Level
*/
NwRcT nwMiniLogMgrInit(NwMiniLogMgrT* thiz, NwU32T logLevel );
NwRcT nwMiniLogMgrInit(NwMiniLogMgrT* thiz, uint32_t logLevel );
/**
* Set MiniLogMgr log level
* @param thiz : Pointer to global singleton MiniLogMgr instance
* @param logLevel : Log Level
*/
NwRcT nwMiniLogMgrSetLogLevel(NwMiniLogMgrT* thiz, NwU32T logLevel);
NwRcT nwMiniLogMgrSetLogLevel(NwMiniLogMgrT* thiz, uint32_t logLevel);
/**
* Process log request from stack
......@@ -77,9 +77,9 @@ NwRcT nwMiniLogMgrSetLogLevel(NwMiniLogMgrT* thiz, NwU32T logLevel);
* @param logStr : Log string
*/
NwRcT nwMiniLogMgrLogRequest (NwGtpv2cLogMgrHandleT logMgrHandle,
NwU32T logLevel,
uint32_t logLevel,
NwCharT* file,
NwU32T line,
uint32_t line,
NwCharT* logStr);
#ifdef __cplusplus
......
......@@ -55,9 +55,9 @@ NW_TMR_CALLBACK(nwGtpv2cNodeHandleStackTimerTimeout)
*--------------------------------------------------------------------------*/
NwRcT nwTimerStart( NwGtpv2cTimerMgrHandleT tmrMgrHandle,
NwU32T timeoutSec,
NwU32T timeoutUsec,
NwU32T tmrType,
uint32_t timeoutSec,
uint32_t timeoutUsec,
uint32_t tmrType,
void* timeoutArg,
NwGtpv2cTimerHandleT* hTmr)
{
......
......@@ -25,7 +25,7 @@
#define __NW_MINI_TMR_MGR_H__
typedef struct {
NwU8T _tbd;
uint8_t _tbd;
} NwGtpv2cNodeTmrMgrT;
typedef struct {
......@@ -39,9 +39,9 @@ extern "C" {
#endif
NwRcT nwTimerStart( NwGtpv2cTimerMgrHandleT tmrMgrHandle,
NwU32T timeoutSec,
NwU32T timeoutUsec,
NwU32T tmrType,
uint32_t timeoutSec,
uint32_t timeoutUsec,
uint32_t tmrType,
void* timeoutArg,
NwGtpv2cTimerHandleT* hTmr);
......
......@@ -46,9 +46,9 @@ static
void NW_EVT_CALLBACK(nwUdpDataIndicationCallbackData)
{
NwRcT rc;
NwU8T udpBuf[MAX_UDP_PAYLOAD_LEN];
uint8_t udpBuf[MAX_UDP_PAYLOAD_LEN];
NwS32T bytesRead;
NwU32T peerLen;
uint32_t peerLen;
struct sockaddr_in peer;
NwGtpv2cNodeUdpT* thiz = (NwGtpv2cNodeUdpT*) arg;
......@@ -57,7 +57,7 @@ void NW_EVT_CALLBACK(nwUdpDataIndicationCallbackData)
bytesRead = recvfrom(fd, udpBuf, MAX_UDP_PAYLOAD_LEN , 0, (struct sockaddr *) &peer,(socklen_t*) &peerLen);
if(bytesRead) {
NwU32T peerIp = (peer.sin_addr.s_addr);
uint32_t peerIp = (peer.sin_addr.s_addr);
NW_LOG(NW_LOG_LEVEL_DEBG, "Received UDP message of size %u from peer %u.%u.%u.%u:%u", bytesRead,
(peerIp & 0x000000ff),
(peerIp & 0x0000ff00) >> 8,
......@@ -75,7 +75,7 @@ void NW_EVT_CALLBACK(nwUdpDataIndicationCallbackData)
* Public functions
*--------------------------------------------------------------------------*/
NwRcT nwGtpv2cUdpInit(NwGtpv2cNodeUdpT* thiz, NwGtpv2cStackHandleT hGtpv2cStack, NwU8T* ipv4Addr)
NwRcT nwGtpv2cUdpInit(NwGtpv2cNodeUdpT* thiz, NwGtpv2cStackHandleT hGtpv2cStack, uint8_t* ipv4Addr)
{
int sd;
struct sockaddr_in addr;
......@@ -111,10 +111,10 @@ NwRcT nwGtpv2cUdpDestroy(NwGtpv2cNodeUdpT* thiz)
}
NwRcT nwGtpv2cUdpDataReq(NwGtpv2cUdpHandleT udpHandle,
NwU8T* dataBuf,
NwU32T dataSize,
NwU32T peerIp,
NwU32T peerPort)
uint8_t* dataBuf,
uint32_t dataSize,
uint32_t peerIp,
uint32_t peerPort)
{
struct sockaddr_in peerAddr;
NwS32T bytesSent;
......
......@@ -25,7 +25,7 @@
#define __NW_MINI_UDP_ENTITY_H__
typedef struct {
NwU32T hSocket;
uint32_t hSocket;
NwEventT ev;
NwGtpv2cStackHandleT hGtpv2cStack;
} NwGtpv2cNodeUdpT;
......@@ -34,15 +34,15 @@ typedef struct {
extern "C" {
#endif
NwRcT nwGtpv2cUdpInit(NwGtpv2cNodeUdpT* thiz, NwGtpv2cStackHandleT hGtpv2cStack, NwU8T* ipv4Addr);
NwRcT nwGtpv2cUdpInit(NwGtpv2cNodeUdpT* thiz, NwGtpv2cStackHandleT hGtpv2cStack, uint8_t* ipv4Addr);
NwRcT nwGtpv2cUdpDestroy(NwGtpv2cNodeUdpT* thiz);
NwRcT nwGtpv2cUdpDataReq(NwGtpv2cUdpHandleT udpHandle,
NwU8T* dataBuf,
NwU32T dataSize,
NwU32T peerIp,
NwU32T peerPort);
uint8_t* dataBuf,
uint32_t dataSize,
uint32_t peerIp,
uint32_t peerPort);
#ifdef __cplusplus
}
......
......@@ -34,7 +34,7 @@ static
NwCharT* gLogLevelStr[] = {"EMER", "ALER", "CRIT", "ERRO", "WARN", "NOTI", "INFO", "DEBG"};
static NwRcT
nwGtpv2cCreateSessionRequestIeIndication(NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T* ieValue, void* arg)
nwGtpv2cCreateSessionRequestIeIndication(uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t* ieValue, void* arg)
{
NW_LOG(NW_LOG_LEVEL_DEBG, "Received IE Parse Indication for of type %u, length %u, instance %u!", ieType, ieLength, ieInstance);
return NW_OK;
......@@ -62,7 +62,7 @@ nwGtpv2cUlpDestroy(NwGtpv2cNodeUlpT* thiz)
}
NwRcT
nwGtpv2cUlpSenEchoRequestToPeer(NwGtpv2cNodeUlpT* thiz, NwU32T peerIp)
nwGtpv2cUlpSenEchoRequestToPeer(NwGtpv2cNodeUlpT* thiz, uint32_t peerIp)
{
NwRcT rc;
NwGtpv2cUlpApiT ulpReq;
......@@ -153,18 +153,18 @@ nwGtpv2cUlpProcessStackReqCallback (NwGtpv2cUlpHandleT hUlp,
if(pUlpApi->apiInfo.initialReqIndInfo.msgType == NW_GTP_CREATE_SESSION_REQ) {
struct {
NwU8T causeValue;
NwU8T spare:5;
NwU8T pce:1;
NwU8T bce:1;
NwU8T cs:1;
uint8_t causeValue;
uint8_t spare:5;
uint8_t pce:1;
uint8_t bce:1;
uint8_t cs:1;
} cause;
rc = nwGtpv2cMsgParserAddIe(pMsgParser, NW_GTPV2C_IE_RECOVERY, NW_GTPV2C_IE_INSTANCE_ZERO, NW_GTPV2C_IE_PRESENCE_MANDATORY, nwGtpv2cCreateSessionRequestIeIndication, NULL);
NW_ASSERT(NW_OK == rc);
NwU8T offendingIeType, OffendingIeLength;
uint8_t offendingIeType, OffendingIeLength;
rc = nwGtpv2cMsgParserRun(pMsgParser, (pUlpApi->hMsg), &offendingIeType, &OffendingIeLength);
if( rc != NW_OK ) {
......@@ -198,7 +198,7 @@ nwGtpv2cUlpProcessStackReqCallback (NwGtpv2cUlpHandleT hUlp,
nwGtpv2cMsgGetSeqNumber(pUlpApi->hMsg),
&(ulpReq.hMsg));
rc = nwGtpv2cMsgAddIe((ulpReq.hMsg), NW_GTPV2C_IE_CAUSE, 2, 0, (NwU8T*)&cause);
rc = nwGtpv2cMsgAddIe((ulpReq.hMsg), NW_GTPV2C_IE_CAUSE, 2, 0, (uint8_t*)&cause);
NW_ASSERT(NW_OK == rc);
NW_LOG(NW_LOG_LEVEL_NOTI, "Received NW_GTP_CREATE_SESSION_REQ, Sending NW_GTP_CREATE_SESSION_RSP!");
......@@ -227,7 +227,7 @@ nwGtpv2cUlpProcessStackReqCallback (NwGtpv2cUlpHandleT hUlp,
rc = nwGtpv2cMsgParserAddIe(pMsgParser, NW_GTPV2C_IE_CAUSE, NW_GTPV2C_IE_INSTANCE_ZERO, NW_GTPV2C_IE_PRESENCE_MANDATORY, nwGtpv2cCreateSessionRequestIeIndication, NULL);
NW_ASSERT(NW_OK == rc);
NwU8T offendingIeType, OffendingIeLength;
uint8_t offendingIeType, OffendingIeLength;
rc = nwGtpv2cMsgParserRun(pMsgParser, (pUlpApi->hMsg), &offendingIeType, &OffendingIeLength);
if( rc != NW_OK ) {
......
......@@ -20,8 +20,8 @@
#define __NW_MINI_ULP_H__
typedef struct {
NwU8T peerIpStr[16];
NwU32T restartCounter;
uint8_t peerIpStr[16];
uint32_t restartCounter;
NwGtpv2cStackHandleT hGtpv2cStack;
} NwGtpv2cNodeUlpT;
......
......@@ -40,8 +40,8 @@ NwCharT* gLogLevelStr[] = {"EMER", "ALER", "CRIT", "ERRO", "WARN", "NOTI", "INF
int main(int argc, char* argv[])
{
NwRcT rc;
NwU32T logLevel;
NwU8T* logLevelStr;
uint32_t logLevel;
uint8_t* logLevelStr;
NwGtpv2cStackHandleT hGtpv2cStack = 0;
......
......@@ -34,10 +34,10 @@
#include "s11_common.h"
NwRcT s11_ie_indication_generic(NwU8T ieType,
NwU8T ieLength,
NwU8T ieInstance,
NwU8T *ieValue,
NwRcT s11_ie_indication_generic(uint8_t ieType,
uint8_t ieLength,
uint8_t ieInstance,
uint8_t *ieValue,
void *arg)
{
S11_DEBUG("Received IE Parse Indication for of type %u, length %u, "
......
......@@ -34,10 +34,10 @@
#define S11_WARN(x, args...) fprintf(stdout, "[S11] [W]"x, ##args)
#define S11_ERROR(x, args...) fprintf(stderr, "[S11] [E]"x, ##args)
NwRcT s11_ie_indication_generic(NwU8T ieType,
NwU8T ieLength,
NwU8T ieInstance,
NwU8T *ieValue,
NwRcT s11_ie_indication_generic(uint8_t ieType,
uint8_t ieLength,
uint8_t ieInstance,
uint8_t *ieValue,
void *arg);
#endif /* S11_COMMON_H_ */
......@@ -45,7 +45,7 @@
#include "s11_ie_formatter.h"
NwRcT s11_imsi_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg)
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg)
{
Imsi_t *imsi;
uint8_t i;
......@@ -108,7 +108,7 @@ int s11_imsi_ie_set(NwGtpv2cMsgHandleT *msg, const Imsi_t *imsi)
}
NwRcT s11_msisdn_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg)
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg)
{
Msisdn_t *msisdn;
uint8_t i;
......@@ -143,7 +143,7 @@ NwRcT s11_msisdn_ie_get(
}
NwRcT s11_mei_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg)
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg)
{
Mei_t *mei = (Mei_t *)arg;
......@@ -155,7 +155,7 @@ NwRcT s11_mei_ie_get(
}
NwRcT s11_pdn_type_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg)
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg)
{
pdn_type_t *pdn_type = (pdn_type_t *)arg;
......@@ -207,14 +207,14 @@ int s11_pdn_type_ie_set(NwGtpv2cMsgHandleT *msg, const pdn_type_t *pdn_type)
return -1;
}
rc = nwGtpv2cMsgAddIe(*msg, NW_GTPV2C_IE_PDN_TYPE, 1, 0, (NwU8T*)&value);
rc = nwGtpv2cMsgAddIe(*msg, NW_GTPV2C_IE_PDN_TYPE, 1, 0, (uint8_t*)&value);
DevAssert(NW_OK == rc);
return 0;
}
NwRcT s11_rat_type_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg)
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg)
{
rat_type_t *rat_type = (rat_type_t *)arg;
......@@ -295,7 +295,7 @@ int s11_rat_type_ie_set(NwGtpv2cMsgHandleT *msg, const rat_type_t *rat_type)
return -1;
}
rc = nwGtpv2cMsgAddIe(*msg, NW_GTPV2C_IE_RAT_TYPE, 1, 0, (NwU8T*)&value);
rc = nwGtpv2cMsgAddIe(*msg, NW_GTPV2C_IE_RAT_TYPE, 1, 0, (uint8_t*)&value);
DevAssert(NW_OK == rc);
return 0;
......@@ -316,7 +316,7 @@ int s11_ebi_ie_set(NwGtpv2cMsgHandleT *msg, const unsigned ebi)
}
NwRcT s11_ebi_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg)
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg)
{
uint8_t *ebi = (uint8_t *)arg;
......@@ -330,7 +330,7 @@ NwRcT s11_ebi_ie_get(
}
NwRcT s11_cause_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg)
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg)
{
SGWCause_t *cause = (SGWCause_t *)arg;
......@@ -371,7 +371,7 @@ int s11_cause_ie_set(NwGtpv2cMsgHandleT *msg,
}
NwRcT s11_bearer_context_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg)
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg)
{
bearer_to_create_t *bearer_to_create = (bearer_to_create_t *)arg;
uint8_t read = 0;
......@@ -428,7 +428,7 @@ int s11_bearer_context_to_create_ie_set(
}
NwRcT s11_bearer_context_to_modifiy_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg)
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg)
{
bearer_context_to_modify_t *bearer_to_modify = (bearer_context_to_modify_t *)arg;
uint8_t read = 0;
......@@ -467,7 +467,7 @@ NwRcT s11_bearer_context_to_modifiy_ie_get(
}
NwRcT s11_bearer_context_created_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg)
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg)
{
bearer_context_created_t *bearer_created = (bearer_context_created_t *)arg;
uint8_t read = 0;
......@@ -534,7 +534,7 @@ int s11_bearer_context_created_ie_set(
bearer->s1u_sgw_fteid.interface_type,
bearer->s1u_sgw_fteid.teid,
bearer->s1u_sgw_fteid.ipv4 ? htonl(bearer->s1u_sgw_fteid.ipv4_address) : 0,
bearer->s1u_sgw_fteid.ipv6 ? (NwU8T*)bearer->s1u_sgw_fteid.ipv6_address : NULL);
bearer->s1u_sgw_fteid.ipv6 ? (uint8_t*)bearer->s1u_sgw_fteid.ipv6_address : NULL);
DevAssert(NW_OK == rc);
/* End section for grouped IE: bearer context created */
......@@ -558,14 +558,14 @@ int s11_apn_restriction_ie_set(
DevAssert(msg != NULL);
rc = nwGtpv2cMsgAddIe(*msg, NW_GTPV2C_IE_APN_RESTRICTION, 1, 0,
(NwU8T *)&apn_restriction);
(uint8_t *)&apn_restriction);
DevAssert(NW_OK == rc);
return 0;
}
NwRcT s11_serving_network_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg)
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg)
{
ServingNetwork_t *serving_net = (ServingNetwork_t *)arg;
......@@ -628,7 +628,7 @@ int s11_serving_network_ie_set(
}
NwRcT s11_fteid_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg)
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg)
{
uint8_t offset = 0;
FTeid_t *fteid = (FTeid_t *)arg;
......@@ -670,7 +670,7 @@ NwRcT s11_fteid_ie_get(
}
NwRcT s11_paa_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg)
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg)
{
uint8_t offset = 0;
PAA_t *paa = (PAA_t *)arg;
......@@ -756,7 +756,7 @@ int s11_paa_ie_set(NwGtpv2cMsgHandleT *msg, const PAA_t *paa)
* and the hyphen (-).
*/
NwRcT s11_apn_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg)
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg)
{
uint8_t read = 1;
uint8_t word_length;
......@@ -831,7 +831,7 @@ int s11_apn_ie_set(NwGtpv2cMsgHandleT *msg, const char *apn)
}
NwRcT s11_ambr_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg)
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg)
{
ambr_t *ambr = (ambr_t *)arg;
......@@ -847,7 +847,7 @@ NwRcT s11_ambr_ie_get(
}
NwRcT s11_uli_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg)
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg)
{
Uli_t *uli = (Uli_t *)arg;
......@@ -886,7 +886,7 @@ int s11_bearer_qos_ie_set(NwGtpv2cMsgHandleT *msg, const BearerQOS_t *bearer_qos
}
NwRcT s11_ip_address_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg)
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg)
{
gtp_ip_address_t *ip_address = (gtp_ip_address_t *)arg;
......@@ -915,7 +915,7 @@ int s11_ip_address_ie_set(NwGtpv2cMsgHandleT *msg,
}
NwRcT s11_delay_value_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg)
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg)
{
DelayValue_t *delay_value = (DelayValue_t *)arg;
......@@ -943,14 +943,14 @@ int s11_delay_value_ie_set(NwGtpv2cMsgHandleT *msg,
value = *delay_value;
rc = nwGtpv2cMsgAddIe(*msg, NW_GTPV2C_IE_DELAY_VALUE, 1, 0, (NwU8T*)&value);
rc = nwGtpv2cMsgAddIe(*msg, NW_GTPV2C_IE_DELAY_VALUE, 1, 0, (uint8_t*)&value);
DevAssert(NW_OK == rc);
return 0;
}
NwRcT s11_ue_time_zone_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg)
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg)
{
UETimeZone_t *ue_time_zone = (UETimeZone_t *)arg;
......@@ -988,7 +988,7 @@ int s11_ue_time_zone_ie_set(NwGtpv2cMsgHandleT *msg,
}
NwRcT s11_target_identification_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg)
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg)
{
target_identification_t *target_identification = (target_identification_t *)arg;
......@@ -1055,7 +1055,7 @@ NwRcT s11_target_identification_ie_get(
}
NwRcT s11_bearer_flags_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg)
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg)
{
bearer_flags_t *bearer_flags = (bearer_flags_t *)arg;
......@@ -1082,14 +1082,14 @@ int s11_bearer_flags_ie_set(NwGtpv2cMsgHandleT *msg,
value = (bearer_flags->vb << 1) | bearer_flags->ppc;
rc = nwGtpv2cMsgAddIe(*msg, NW_GTPV2C_IE_BEARER_FLAGS, 1, 0, (NwU8T*)&value);
rc = nwGtpv2cMsgAddIe(*msg, NW_GTPV2C_IE_BEARER_FLAGS, 1, 0, (uint8_t*)&value);
DevAssert(NW_OK == rc);
return 0;
}
NwRcT s11_indication_flags_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg)
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg)
{
indication_flags_t *indication_flags = (indication_flags_t*)arg;
......@@ -1107,7 +1107,7 @@ NwRcT s11_indication_flags_ie_get(
}
NwRcT s11_fqcsid_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg)
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg)
{
FQ_CSID_t *fq_csid = (FQ_CSID_t *)arg;
......
......@@ -37,12 +37,12 @@
* octet n+4 | Number digit m | Number digit m-1 |
*/
NwRcT s11_imsi_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg);
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg);
int s11_imsi_ie_set(NwGtpv2cMsgHandleT *msg, const Imsi_t *imsi);
NwRcT s11_msisdn_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg);
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg);
/* PDN Type Information Element
* 3GPP TS 29.274 #8.34
......@@ -52,7 +52,7 @@ NwRcT s11_msisdn_ie_get(
* * 3 = IPv4v6
*/
NwRcT s11_pdn_type_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg);
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg);
int s11_pdn_type_ie_set(NwGtpv2cMsgHandleT *msg, const pdn_type_t *pdn_type);
......@@ -61,7 +61,7 @@ int s11_pdn_type_ie_set(NwGtpv2cMsgHandleT *msg, const pdn_type_t *pdn_type);
* for S11 interface defined in 3GPP TS 29.274 #8.17.
*/
NwRcT s11_rat_type_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg);
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg);
int s11_rat_type_ie_set(NwGtpv2cMsgHandleT *msg, const rat_type_t *rat_type);
......@@ -69,7 +69,7 @@ int s11_rat_type_ie_set(NwGtpv2cMsgHandleT *msg, const rat_type_t *rat_type);
* 3GPP TS 29.274 #8.8
*/
NwRcT s11_ebi_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg);
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg);
int s11_ebi_ie_set(NwGtpv2cMsgHandleT *msg, const unsigned ebi);
......@@ -77,13 +77,13 @@ int s11_ebi_ie_set(NwGtpv2cMsgHandleT *msg, const unsigned ebi);
* 3GPP TS 29.274 Table 7.2.1-2.
*/
NwRcT s11_bearer_context_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg);
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg);
int s11_bearer_context_to_create_ie_set(
NwGtpv2cMsgHandleT *msg, const bearer_to_create_t *bearer_to_create);
NwRcT s11_bearer_context_to_modifiy_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg);
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg);
/* EPS Bearer Id Information Element
* 3GPP TS 29.274 #8.8
......@@ -93,14 +93,14 @@ int s11_ebi_ie_set(NwGtpv2cMsgHandleT *msg, const unsigned ebi);
/* Cause Information Element */
NwRcT s11_cause_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg);
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg);
int s11_cause_ie_set(NwGtpv2cMsgHandleT *msg,
const gtp_cause_t *cause);
/* Bearer Context Created grouped Information Element */
NwRcT s11_bearer_context_created_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg);
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg);
int s11_bearer_context_created_ie_set(
NwGtpv2cMsgHandleT *msg, const bearer_context_created_t *bearer);
......@@ -109,18 +109,18 @@ int s11_bearer_context_created_ie_set(
* 3GPP TS 29.274 #8.18
*/
NwRcT s11_serving_network_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg);
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg);
int s11_serving_network_ie_set(
NwGtpv2cMsgHandleT *msg,
const ServingNetwork_t *serving_network);
NwRcT s11_fteid_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg);
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg);
/* PDN Address Allocation Information Element */
NwRcT s11_paa_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg);
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg);
int s11_paa_ie_set(NwGtpv2cMsgHandleT *msg, const PAA_t *paa);
......@@ -131,18 +131,18 @@ int s11_paa_ie_set(NwGtpv2cMsgHandleT *msg, const PAA_t *paa);
* The encoding of the APN field follows 3GPP TS 23.003 subclause 9.1
*/
NwRcT s11_apn_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg);
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg);
int s11_apn_ie_set(NwGtpv2cMsgHandleT *msg, const char *apn);
NwRcT s11_ambr_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg);
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg);
NwRcT s11_mei_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg);
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg);
NwRcT s11_uli_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg);
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg);
/* APN restrtiction Information Element */
int s11_apn_restriction_ie_set(
......@@ -157,7 +157,7 @@ int s11_bearer_qos_ie_set(NwGtpv2cMsgHandleT *msg, const BearerQOS_t *bearer_qos
* 3GPP TS 29.274 #8.9
*/
NwRcT s11_ip_address_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg);
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg);
int s11_ip_address_ie_set(NwGtpv2cMsgHandleT *msg,
const gtp_ip_address_t *ip_address);
......@@ -166,7 +166,7 @@ int s11_ip_address_ie_set(NwGtpv2cMsgHandleT *msg,
* 3GPP TS 29.274 #8.27
*/
NwRcT s11_delay_value_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg);
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg);
int s11_delay_value_ie_set(NwGtpv2cMsgHandleT *msg,
const DelayValue_t *delay_value);
......@@ -175,7 +175,7 @@ int s11_delay_value_ie_set(NwGtpv2cMsgHandleT *msg,
* 3GPP TS 29.274 #8.44
*/
NwRcT s11_ue_time_zone_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg);
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg);
int s11_ue_time_zone_ie_set(NwGtpv2cMsgHandleT *msg,
const UETimeZone_t *ue_time_zone);
......@@ -184,25 +184,25 @@ int s11_ue_time_zone_ie_set(NwGtpv2cMsgHandleT *msg,
* 3GPP TS 29.274 #8.51
*/
NwRcT s11_target_identification_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg);
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg);
/* Bearer Flags Information Element
* 3GPP TS 29.274 #8.32
*/
NwRcT s11_bearer_flags_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg);
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg);
int s11_bearer_flags_ie_set(NwGtpv2cMsgHandleT *msg,
const bearer_flags_t *bearer_flags);
NwRcT s11_indication_flags_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg);
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg);
/* FQ-CSID Information Element
* 3GPP TS 29.274 #8.62
*/
NwRcT s11_fqcsid_ie_get(
NwU8T ieType, NwU8T ieLength, NwU8T ieInstance, NwU8T *ieValue, void *arg);
uint8_t ieType, uint8_t ieLength, uint8_t ieInstance, uint8_t *ieValue, void *arg);
#endif /* S11_IE_FORMATTER_H_ */
......@@ -70,7 +70,7 @@ int s11_mme_create_session_request(NwGtpv2cStackHandleT *stack_p,
/* Add recovery if contacting the peer for the first time */
rc = nwGtpv2cMsgAddIe((ulp_req.hMsg), NW_GTPV2C_IE_RECOVERY, 1, 0,
(NwU8T*)&restart_counter);
(uint8_t*)&restart_counter);
DevAssert(NW_OK == rc);
/* Putting the information Elements */
......@@ -114,8 +114,8 @@ int s11_mme_handle_create_session_response(NwGtpv2cStackHandleT *stack_p,
NwGtpv2cUlpApiT *pUlpApi)
{
NwRcT rc = NW_OK;
NwU8T offendingIeType, offendingIeInstance;
NwU16T offendingIeLength;
uint8_t offendingIeType, offendingIeInstance;
uint16_t offendingIeLength;
SgwCreateSessionResponse *create_session_resp_p;
MessageDef *message_p;
......
......@@ -55,9 +55,9 @@ static NwGtpv2cStackHandleT s11_mme_stack_handle;
static
NwRcT s11_mme_log_wrapper(NwGtpv2cLogMgrHandleT hLogMgr,
NwU32T logLevel,
uint32_t logLevel,
NwCharT* file,
NwU32T line,
uint32_t line,
NwCharT* logStr)
{
S11_DEBUG("%s\n", logStr);
......@@ -101,10 +101,10 @@ NwRcT s11_mme_ulp_process_stack_req_cb(
static
NwRcT s11_mme_send_udp_msg(
NwGtpv2cUdpHandleT udpHandle,
NwU8T *buffer,
NwU32T buffer_len,
NwU32T peerIpAddr,
NwU32T peerPort)
uint8_t *buffer,
uint32_t buffer_len,
uint32_t peerIpAddr,
uint32_t peerPort)
{
// Create and alloc new message
MessageDef *message_p;
......@@ -128,9 +128,9 @@ NwRcT s11_mme_send_udp_msg(
static
NwRcT s11_mme_start_timer_wrapper(
NwGtpv2cTimerMgrHandleT tmrMgrHandle,
NwU32T timeoutSec,
NwU32T timeoutUsec,
NwU32T tmrType,
uint32_t timeoutSec,
uint32_t timeoutUsec,
uint32_t tmrType,
void *timeoutArg,
NwGtpv2cTimerHandleT *hTmr)
{
......
......@@ -104,10 +104,10 @@ NwRcT s11_sgw_ulp_process_stack_req_cb(
static
NwRcT s11_sgw_send_udp_msg(
NwGtpv2cUdpHandleT udpHandle,
NwU8T *buffer,
NwU32T buffer_len,
NwU32T peerIpAddr,
NwU32T peerPort)
uint8_t *buffer,
uint32_t buffer_len,
uint32_t peerIpAddr,
uint32_t peerPort)
{
// Create and alloc new message
MessageDef *message_p;
......@@ -130,9 +130,9 @@ NwRcT s11_sgw_send_udp_msg(
static
NwRcT s11_sgw_log_wrapper(NwGtpv2cLogMgrHandleT hLogMgr,
NwU32T logLevel,
uint32_t logLevel,
NwCharT* file,
NwU32T line,
uint32_t line,
NwCharT* logStr)
{
S11_DEBUG("%s\n", logStr);
......@@ -142,9 +142,9 @@ NwRcT s11_sgw_log_wrapper(NwGtpv2cLogMgrHandleT hLogMgr,
static
NwRcT s11_sgw_start_timer_wrapper(
NwGtpv2cTimerMgrHandleT tmrMgrHandle,
NwU32T timeoutSec,
NwU32T timeoutUsec,
NwU32T tmrType,
uint32_t timeoutSec,
uint32_t timeoutUsec,
uint32_t tmrType,
void *timeoutArg,
NwGtpv2cTimerHandleT *hTmr)
{
......
......@@ -50,8 +50,8 @@ int s11_sgw_handle_modify_bearer_request(NwGtpv2cStackHandleT *stack_p,
NwGtpv2cUlpApiT *pUlpApi)
{
NwRcT rc = NW_OK;
NwU8T offendingIeType, offendingIeInstance;
NwU16T offendingIeLength;
uint8_t offendingIeType, offendingIeInstance;
uint16_t offendingIeLength;
SgwModifyBearerRequest *modify_bearer_request_p;
MessageDef *message_p;
......
......@@ -50,8 +50,8 @@ int s11_sgw_handle_create_session_request(NwGtpv2cStackHandleT *stack_p,
NwGtpv2cUlpApiT *pUlpApi)
{
NwRcT rc = NW_OK;
NwU8T offendingIeType, offendingIeInstance;
NwU16T offendingIeLength;
uint8_t offendingIeType, offendingIeInstance;
uint16_t offendingIeLength;
SgwCreateSessionRequest *create_session_request_p;
MessageDef *message_p;
......@@ -352,8 +352,8 @@ int s11_sgw_handle_delete_session_request(NwGtpv2cStackHandleT *stack_p,
NwGtpv2cUlpApiT *pUlpApi)
{
NwRcT rc = NW_OK;
NwU8T offendingIeType, offendingIeInstance;
NwU16T offendingIeLength;
uint8_t offendingIeType, offendingIeInstance;
uint16_t offendingIeLength;
SgwDeleteSessionRequest *delete_session_request_p;
MessageDef *message_p;
......
......@@ -168,18 +168,18 @@ typedef enum core_network_s {
/* SAE Temporary Mobile Subscriber Identity */
typedef struct as_stmsi_s {
UInt8_t MMEcode; /* MME code that allocated the GUTI */
UInt32_t m_tmsi; /* M-Temporary Mobile Subscriber Identity */
uint8_t MMEcode; /* MME code that allocated the GUTI */
uint32_t m_tmsi; /* M-Temporary Mobile Subscriber Identity */
} as_stmsi_t;
/* Dedicated NAS information */
typedef struct as_nas_info_s {
UInt32_t length; /* Length of the NAS information data */
uint32_t length; /* Length of the NAS information data */
Byte_t* data; /* Dedicated NAS information data container */
} as_nas_info_t;
/* Radio Access Bearer identity */
typedef UInt8_t as_rab_id_t;
typedef uint8_t as_rab_id_t;
/****************************************************************************/
/************************ G L O B A L T Y P E S ************************/
......@@ -235,12 +235,12 @@ typedef struct cell_info_req_s {
* is selected to camp on.
*/
typedef struct cell_info_cnf_s {
UInt8_t errCode; /* Error code */
uint8_t errCode; /* Error code */
ci_t cellID; /* Identity of the cell serving the selected PLMN */
tac_t tac; /* Code of the tracking area the cell belongs to */
AcT_t rat; /* Radio access technology supported by the cell */
UInt8_t rsrq; /* Reference signal received quality */
UInt8_t rsrp; /* Reference signal received power */
uint8_t rsrq; /* Reference signal received quality */
uint8_t rsrp; /* Reference signal received power */
} cell_info_cnf_t;
/*
......@@ -273,7 +273,7 @@ typedef enum paging_cause_s {
*/
typedef struct paging_req_s {
as_stmsi_t s_tmsi; /* UE identity */
UInt8_t CN_domain; /* Core network domain */
uint8_t CN_domain; /* Core network domain */
} paging_req_t;
/*
......@@ -328,7 +328,7 @@ typedef struct nas_establish_req_s {
* AS transfers the initial NAS message to the NAS.
*/
typedef struct nas_establish_ind_s {
UInt32_t UEid; /* UE lower layer identifier */
uint32_t UEid; /* UE lower layer identifier */
tac_t tac; /* Code of the tracking area the initiating
* UE belongs to */
as_cause_t asCause; /* Establishment cause */
......@@ -341,11 +341,11 @@ typedef struct nas_establish_ind_s {
* the UE.
*/
typedef struct nas_establish_rsp_s {
UInt32_t UEid; /* UE lower layer identifier */
uint32_t UEid; /* UE lower layer identifier */
as_stmsi_t s_tmsi; /* UE identity */
nas_error_code_t errCode; /* Transaction status */
as_nas_info_t nasMsg; /* NAS message to transfer */
UInt32_t nas_ul_count; /* UL NAS COUNT */
uint32_t nas_ul_count; /* UL NAS COUNT */
uint16_t selected_encryption_algorithm;
uint16_t selected_integrity_algorithm;
} nas_establish_rsp_t;
......@@ -355,10 +355,10 @@ typedef struct nas_establish_rsp_s {
* AS transfers the initial answer message to the NAS.
*/
typedef struct nas_establish_cnf_s {
UInt32_t UEid; /* UE lower layer identifier */
uint32_t UEid; /* UE lower layer identifier */
nas_error_code_t errCode; /* Transaction status */
as_nas_info_t nasMsg; /* NAS message to transfer */
UInt32_t ul_nas_count;
uint32_t ul_nas_count;
uint16_t selected_encryption_algorithm;
uint16_t selected_integrity_algorithm;
} nas_establish_cnf_t;
......@@ -380,7 +380,7 @@ typedef enum release_cause_s {
* NAS requests the termination of the connection with the UE.
*/
typedef struct nas_release_req_s {
UInt32_t UEid; /* UE lower layer identifier */
uint32_t UEid; /* UE lower layer identifier */
as_stmsi_t s_tmsi; /* UE identity */
release_cause_t cause; /* Release cause */
} nas_release_req_t;
......@@ -405,7 +405,7 @@ typedef struct nas_release_ind_s {
* operates at the network side.
*/
typedef struct ul_info_transfer_req_s {
UInt32_t UEid; /* UE lower layer identifier */
uint32_t UEid; /* UE lower layer identifier */
as_stmsi_t s_tmsi; /* UE identity */
as_nas_info_t nasMsg; /* Uplink NAS message */
} ul_info_transfer_req_t;
......@@ -416,7 +416,7 @@ typedef struct ul_info_transfer_req_s {
* successfully sent to the network or not.
*/
typedef struct ul_info_transfer_cnf_s {
UInt32_t UEid; /* UE lower layer identifier */
uint32_t UEid; /* UE lower layer identifier */
nas_error_code_t errCode; /* Transaction status */
} ul_info_transfer_cnf_t;
......@@ -426,7 +426,7 @@ typedef struct ul_info_transfer_cnf_s {
* at the network side.
*/
typedef struct ul_info_transfer_ind_s {
UInt32_t UEid; /* UE lower layer identifier */
uint32_t UEid; /* UE lower layer identifier */
as_nas_info_t nasMsg; /* Uplink NAS message */
} ul_info_transfer_ind_t;
......@@ -530,7 +530,7 @@ typedef struct rab_release_ind_s {
* --------------------------------------------------------------------------
*/
typedef struct as_message_s {
UInt16_t msgID;
uint16_t msgID;
union {
broadcast_info_ind_t broadcast_info_ind;
cell_info_req_t cell_info_req;
......
......@@ -412,12 +412,14 @@ typedef struct eNB_RRC_INST_s {
rcc_eNB_carrier_data_t carrier[MAX_NUM_CCs];
uid_allocator_t uid_allocator; // for rrc_ue_head
RB_HEAD(rrc_ue_tree_s, rrc_eNB_ue_context_s) rrc_ue_head; // ue_context tree key search by rnti
RB_HEAD(rrc_rnti_tree_s, rrc_ue_s1ap_ids_s) rrc_rnti_head; // ue-rnti tree key search by S1AP ids
uint8_t HO_flag;
uint8_t Nb_ue;
#if defined(ENABLE_RAL)
obj_hash_table_t *ral_meas_thresholds;
#endif
hash_table_t *initial_id2_s1ap_ids; // key is content is rrc_ue_s1ap_ids_t
hash_table_t *s1ap_id2_s1ap_ids ; // key is content is rrc_ue_s1ap_ids_t
#ifdef LOCALIZATION
/// localization type, 0: power based, 1: time based
uint8_t loc_type;
......
......@@ -3303,11 +3303,15 @@ openair_rrc_lite_eNB_init(
uid_linear_allocator_init(&eNB_rrc_inst[ctxt.module_id].uid_allocator);
RB_INIT(&eNB_rrc_inst[ctxt.module_id].rrc_ue_head);
RB_INIT(&eNB_rrc_inst[ctxt.module_id].rrc_rnti_head);
// for (j = 0; j < (NUMBER_OF_UE_MAX + 1); j++) {
// eNB_rrc_inst[enb_mod_idP].Srb2[j].Active = 0;
// }
eNB_rrc_inst[ctxt.module_id].initial_id2_s1ap_ids = hashtable_create (NUMBER_OF_UE_MAX * 2, NULL, NULL);
eNB_rrc_inst[ctxt.module_id].s1ap_id2_s1ap_ids = hashtable_create (NUMBER_OF_UE_MAX * 2, NULL, NULL);
/// System Information INIT
LOG_I(RRC, PROTOCOL_RRC_CTXT_FMT" Checking release \n",
......
......@@ -80,49 +80,10 @@ static const uint16_t S1AP_INTEGRITY_EIA2_MASK = 0x4000;
#endif
#endif
# if defined(ENABLE_ITTI)
//------------------------------------------------------------------------------
int
rrc_eNB_S1AP_compare_ue_ids(
struct rrc_ue_s1ap_ids_s* c1_pP,
struct rrc_ue_s1ap_ids_s* c2_pP
)
//------------------------------------------------------------------------------
{
LOG_T(RRC, "rrc_eNB_S1AP_compare_ue_ids() c1.ue_initial_id %x c2.ue_initial_id %x c1.eNB_ue_s1ap_id %x c2.eNB_ue_s1ap_id %x\n",
c1_pP->ue_initial_id,
c2_pP->ue_initial_id,
c1_pP->eNB_ue_s1ap_id,
c2_pP->eNB_ue_s1ap_id);
if ((c1_pP->eNB_ue_s1ap_id == 0) || (c2_pP->eNB_ue_s1ap_id == 0)) {
if (c1_pP->ue_initial_id > c2_pP->ue_initial_id) {
return 1;
}
if (c1_pP->ue_initial_id < c2_pP->ue_initial_id) {
return -1;
}
return 0;
}
if (c1_pP->eNB_ue_s1ap_id > c2_pP->eNB_ue_s1ap_id) {
return 1;
}
if (c1_pP->eNB_ue_s1ap_id < c2_pP->eNB_ue_s1ap_id) {
return -1;
}
return 0;
}
//------------------------------------------------------------------------------
/* Generate the tree management functions */
RB_GENERATE(rrc_rnti_tree_s, rrc_ue_s1ap_ids_s, entries, rrc_eNB_S1AP_compare_ue_ids);
//------------------------------------------------------------------------------
# if defined(ENABLE_ITTI)
//------------------------------------------------------------------------------
struct rrc_ue_s1ap_ids_s*
rrc_eNB_S1AP_get_ue_ids(
......@@ -132,12 +93,41 @@ rrc_eNB_S1AP_get_ue_ids(
)
//------------------------------------------------------------------------------
{
rrc_ue_s1ap_ids_t temp;
memset(&temp, 0, sizeof(struct rrc_ue_s1ap_ids_s));
/* eNB ue rrc id = 24 bits wide */
temp.ue_initial_id = ue_initial_id;
temp.eNB_ue_s1ap_id = eNB_ue_s1ap_id;
return RB_FIND(rrc_rnti_tree_s, &rrc_instance_pP->rrc_rnti_head, &temp);
rrc_ue_s1ap_ids_t *result = NULL;
rrc_ue_s1ap_ids_t *result2 = NULL;
hashtable_rc_t h_rc;
// we assume that a rrc_ue_s1ap_ids_s is initially inserted in initial_id2_s1ap_ids
if (eNB_ue_s1ap_id > 0) {
h_rc = hashtable_get(rrc_instance_pP->s1ap_id2_s1ap_ids, (hash_key_t)eNB_ue_s1ap_id, (void**)&result);
if (h_rc == HASH_TABLE_OK) {
return result;
}
}
if (ue_initial_id != UE_INITIAL_ID_INVALID) {
h_rc = hashtable_get(rrc_instance_pP->initial_id2_s1ap_ids, (hash_key_t)ue_initial_id, (void**)&result);
if (h_rc == HASH_TABLE_OK) {
if (eNB_ue_s1ap_id != 0) {
h_rc = hashtable_get(rrc_instance_pP->s1ap_id2_s1ap_ids, (hash_key_t)eNB_ue_s1ap_id, (void**)&result2);
if (h_rc != HASH_TABLE_OK) {
result2 = malloc(sizeof(*result2));
if (NULL != result2) {
*result2 = *result;
result2->eNB_ue_s1ap_id = eNB_ue_s1ap_id;
result->eNB_ue_s1ap_id = eNB_ue_s1ap_id;
h_rc = hashtable_insert(rrc_instance_pP->s1ap_id2_s1ap_ids,
(hash_key_t)eNB_ue_s1ap_id,
result2);
LOG_E(S1AP, "[eNB %u] Error while hashtable_insert in s1ap_id2_s1ap_ids eNB_ue_s1ap_id %u\n",
rrc_instance_pP - eNB_rrc_inst, eNB_ue_s1ap_id);
}
}
}
return result;
}
}
return NULL;
}
//------------------------------------------------------------------------------
void
......@@ -147,6 +137,9 @@ rrc_eNB_S1AP_remove_ue_ids(
)
//------------------------------------------------------------------------------
{
const uint16_t ue_initial_id = ue_ids_pP->ue_initial_id;
const uint32_t eNB_ue_s1ap_id = ue_ids_pP->eNB_ue_s1ap_id;
hashtable_rc_t h_rc;
if (rrc_instance_pP == NULL) {
LOG_E(RRC, "Bad RRC instance\n");
return;
......@@ -157,8 +150,19 @@ rrc_eNB_S1AP_remove_ue_ids(
return;
}
RB_REMOVE(rrc_rnti_tree_s, &rrc_instance_pP->rrc_rnti_head, ue_ids_pP);
free(ue_ids_pP);
if (eNB_ue_s1ap_id > 0) {
h_rc = hashtable_remove(rrc_instance_pP->s1ap_id2_s1ap_ids, (hash_key_t)eNB_ue_s1ap_id);
if (h_rc != HASH_TABLE_OK) {
LOG_W(RRC, "S1AP Did not find entry in hashtable s1ap_id2_s1ap_ids for eNB_ue_s1ap_id %u\n", eNB_ue_s1ap_id);
}
}
if (ue_initial_id != UE_INITIAL_ID_INVALID) {
h_rc = hashtable_remove(rrc_instance_pP->initial_id2_s1ap_ids, (hash_key_t)ue_initial_id);
if (h_rc != HASH_TABLE_OK) {
LOG_W(RRC, "S1AP Did not find entry in hashtable initial_id2_s1ap_ids for ue_initial_id %u\n", ue_initial_id);
}
}
}
/*! \fn uint16_t get_next_ue_initial_id(uint8_t mod_id)
......@@ -210,10 +214,6 @@ rrc_eNB_get_ue_context_from_s1ap_ids(
eNB_ue_s1ap_idP);
if (temp) {
// found by ue_initial_id, fill now eNB_ue_s1ap_idP
if (temp->eNB_ue_s1ap_id != eNB_ue_s1ap_idP) {
temp->eNB_ue_s1ap_id = eNB_ue_s1ap_idP;
}
return rrc_eNB_get_ue_context(
&eNB_rrc_inst[ENB_INSTANCE_TO_MODULE_ID(instanceP)],
......@@ -616,6 +616,7 @@ rrc_eNB_send_S1AP_NAS_FIRST_REQ(
{
MessageDef* message_p = NULL;
rrc_ue_s1ap_ids_t* rrc_ue_s1ap_ids_p = NULL;
hashtable_rc_t h_rc;
message_p = itti_alloc_new_message (TASK_RRC_ENB, S1AP_NAS_FIRST_REQ);
memset(&message_p->ittiMsg.s1ap_nas_first_req, 0, sizeof(s1ap_nas_first_req_t));
......@@ -628,7 +629,12 @@ rrc_eNB_send_S1AP_NAS_FIRST_REQ(
rrc_ue_s1ap_ids_p->eNB_ue_s1ap_id = UE_INITIAL_ID_INVALID;
rrc_ue_s1ap_ids_p->ue_rnti = ctxt_pP->rnti;
RB_INSERT(rrc_rnti_tree_s, &eNB_rrc_inst[ctxt_pP->module_id].rrc_rnti_head, rrc_ue_s1ap_ids_p);
h_rc = hashtable_insert(eNB_rrc_inst[ctxt_pP->module_id].initial_id2_s1ap_ids,
(hash_key_t)ue_context_pP->ue_context.ue_initial_id,
rrc_ue_s1ap_ids_p);
LOG_E(S1AP, "[eNB %d] Error while hashtable_insert in initial_id2_s1ap_ids ue_initial_id %u\n",
ctxt_pP->module_id, ue_context_pP->ue_context.ue_initial_id);
/* Assume that cause is coded in the same way in RRC and S1ap, just check that the value is in S1ap range */
AssertFatal(ue_context_pP->ue_context.establishment_cause < RRC_CAUSE_LAST,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment