diff --git a/openair-cn/COMMON/as_message.h b/openair-cn/COMMON/as_message.h deleted file mode 100644 index de29af754f1e3c990f145b894b2f4e003975220f..0000000000000000000000000000000000000000 --- a/openair-cn/COMMON/as_message.h +++ /dev/null @@ -1,526 +0,0 @@ -/***************************************************************************** - Eurecom OpenAirInterface 3 - Copyright(c) 2012 Eurecom - -Source as_message.h - -Version 0.1 - -Date 2012/10/18 - -Product NAS stack - -Subsystem Application Programming Interface - -Author Frederic Maurel - -Description Defines the messages supported by the Access Stratum sublayer - protocol (usually RRC and S1AP for E-UTRAN) and functions used - to encode and decode - -*****************************************************************************/ -#ifndef __AS_MESSAGE_H__ -#define __AS_MESSAGE_H__ - -#include "commonDef.h" -// #include "networkDef.h" - -/****************************************************************************/ -/********************* G L O B A L C O N S T A N T S *******************/ -/****************************************************************************/ - -/* - * -------------------------------------------------------------------------- - * Access Stratum message types - * -------------------------------------------------------------------------- - */ -#define AS_REQUEST 0x0100 -#define AS_RESPONSE 0x0200 -#define AS_INDICATION 0x0400 -#define AS_CONFIRM 0x0800 - -/* - * -------------------------------------------------------------------------- - * Access Stratum message identifiers - * -------------------------------------------------------------------------- - */ - -/* Broadcast information */ -#define AS_BROADCAST_INFO 0x01 -#define AS_BROADCAST_INFO_IND (AS_BROADCAST_INFO | AS_INDICATION) - -/* Cell information relevant for cell selection processing */ -#define AS_CELL_INFO 0x02 -#define AS_CELL_INFO_REQ (AS_CELL_INFO | AS_REQUEST) -#define AS_CELL_INFO_CNF (AS_CELL_INFO | AS_CONFIRM) -#define AS_CELL_INFO_IND (AS_CELL_INFO | AS_INDICATION) - -/* Paging information */ -#define AS_PAGING 0x03 -#define AS_PAGING_REQ (AS_PAGING | AS_REQUEST) -#define AS_PAGING_IND (AS_PAGING | AS_INDICATION) - -/* NAS signalling connection establishment */ -#define AS_NAS_ESTABLISH 0x04 -#define AS_NAS_ESTABLISH_REQ (AS_NAS_ESTABLISH | AS_REQUEST) -#define AS_NAS_ESTABLISH_IND (AS_NAS_ESTABLISH | AS_INDICATION) -#define AS_NAS_ESTABLISH_RSP (AS_NAS_ESTABLISH | AS_RESPONSE) -#define AS_NAS_ESTABLISH_CNF (AS_NAS_ESTABLISH | AS_CONFIRM) - -/* NAS signalling connection release */ -#define AS_NAS_RELEASE 0x05 -#define AS_NAS_RELEASE_REQ (AS_NAS_RELEASE | AS_REQUEST) -#define AS_NAS_RELEASE_IND (AS_NAS_RELEASE | AS_INDICATION) - -/* Uplink information transfer */ -#define AS_UL_INFO_TRANSFER 0x06 -#define AS_UL_INFO_TRANSFER_REQ (AS_UL_INFO_TRANSFER | AS_REQUEST) -#define AS_UL_INFO_TRANSFER_CNF (AS_UL_INFO_TRANSFER | AS_CONFIRM) -#define AS_UL_INFO_TRANSFER_IND (AS_UL_INFO_TRANSFER | AS_INDICATION) - -/* Downlink information transfer */ -#define AS_DL_INFO_TRANSFER 0x07 -#define AS_DL_INFO_TRANSFER_REQ (AS_DL_INFO_TRANSFER | AS_REQUEST) -#define AS_DL_INFO_TRANSFER_CNF (AS_DL_INFO_TRANSFER | AS_CONFIRM) -#define AS_DL_INFO_TRANSFER_IND (AS_DL_INFO_TRANSFER | AS_INDICATION) - -/* Radio Access Bearer establishment */ -#define AS_RAB_ESTABLISH 0x08 -#define AS_RAB_ESTABLISH_REQ (AS_RAB_ESTABLISH | AS_REQUEST) -#define AS_RAB_ESTABLISH_IND (AS_RAB_ESTABLISH | AS_INDICATION) -#define AS_RAB_ESTABLISH_RSP (AS_RAB_ESTABLISH | AS_RESPONSE) -#define AS_RAB_ESTABLISH_CNF (AS_RAB_ESTABLISH | AS_CONFIRM) - -/* Radio Access Bearer release */ -#define AS_RAB_RELEASE 0x09 -#define AS_RAB_RELEASE_REQ (AS_RAB_RELEASE | AS_REQUEST) -#define AS_RAB_RELEASE_IND (AS_RAB_RELEASE | AS_INDICATION) - -/* NAS Cause */ -#define EPS_SERVICES_AND_NON_EPS_SERVICES_NOT_ALLOWED (8) -#define EPS_SERVICES_NOT_ALLOWED (7) -#define PLMN_NOT_ALLOWED (11) -#define TRACKING_AREA_NOT_ALLOWED (12) -#define ROAMING_NOT_ALLOWED_IN_THIS_TRACKING_AREA (13) -#define EPS_SERVICES_NOT_ALLOWED_IN_THIS_PLMN (14) -#define NO_SUITABLE_CELLS_IN_TRACKING_AREA (15) -#define NETWORK_FAILURE (17) -#define ESM_FAILURE (19) - -/* - * -------------------------------------------------------------------------- - * Access Stratum message global parameters - * -------------------------------------------------------------------------- - */ - -/* Error code */ -enum { - AS_SUCCESS = 1, /* Success code, transaction is going on */ - AS_TERMINATED_NAS, /* Transaction terminated by NAS */ - AS_TERMINATED_AS, /* Transaction terminated by AS */ - AS_FAILURE /* Failure code */ -}; - -/* Core network domain */ -enum { - AS_PS = 1, /* Packet-Switched */ - AS_CS /* Circuit-Switched */ -}; - -/* SAE Temporary Mobile Subscriber Identity */ -typedef struct { - 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 { - 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; - -/****************************************************************************/ -/************************ G L O B A L T Y P E S ************************/ -/****************************************************************************/ - -/* - * -------------------------------------------------------------------------- - * Broadcast information - * -------------------------------------------------------------------------- - */ - -/* - * AS->NAS - Broadcast information indication - * AS may asynchronously report to NAS available PLMNs within specific - * location area - */ -typedef struct { -#define PLMN_LIST_MAX_SIZE 6 - PLMN_LIST_T(PLMN_LIST_MAX_SIZE) plmnIDs; /* List of PLMN identifiers */ - ci_t cellID; /* Identity of the cell serving the listed PLMNs */ - tac_t tac; /* Code of the tracking area the cell belongs to */ -} broadcast_info_ind_t; - -/* - * -------------------------------------------------------------------------- - * Cell information relevant for cell selection processing - * -------------------------------------------------------------------------- - */ - -/* Radio access technologies supported by the network */ -#define AS_GSM (1 << NET_ACCESS_GSM) -#define AS_COMPACT (1 << NET_ACCESS_COMPACT) -#define AS_UTRAN (1 << NET_ACCESS_UTRAN) -#define AS_EGPRS (1 << NET_ACCESS_EGPRS) -#define AS_HSDPA (1 << NET_ACCESS_HSDPA) -#define AS_HSUPA (1 << NET_ACCESS_HSUPA) -#define AS_HSDUPA (1 << NET_ACCESS_HSDUPA) -#define AS_EUTRAN (1 << NET_ACCESS_EUTRAN) - -/* - * NAS->AS - Cell Information request - * NAS request AS to search for a suitable cell belonging to the selected - * PLMN to camp on. - */ -typedef struct { - plmn_t plmnID; /* Selected PLMN identity */ - Byte_t rat; /* Bitmap - set of radio access technologies */ -} cell_info_req_t; - -/* - * AS->NAS - Cell Information confirm - * AS search for a suitable cell and respond to NAS. If found, the cell - * is selected to camp on. - */ -typedef struct { - 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 */ -} cell_info_cnf_t; - -/* - * AS->NAS - Cell Information indication - * AS may change cell selection if a more suitable cell is found. - */ -typedef struct { - ci_t cellID; /* Identity of the new serving cell */ - tac_t tac; /* Code of the tracking area the cell belongs to */ -} cell_info_ind_t; - -/* - * -------------------------------------------------------------------------- - * Paging information - * -------------------------------------------------------------------------- - */ - -/* Paging cause */ -enum { - AS_CONNECTION_ESTABLISH, /* Establish NAS signalling connection */ - AS_EPS_ATTACH, /* Perform local detach and initiate EPS - * attach procedure */ - AS_CS_FALLBACK /* Inititate CS fallback procedure */ -}; - -/* - * NAS->AS - Paging Information request - * NAS requests the AS that NAS signalling messages or user data is pending - * to be sent. - */ -typedef struct { - as_stmsi_t s_tmsi; /* UE identity */ - UInt8_t CN_domain; /* Core network domain */ -} paging_req_t; - -/* - * AS->NAS - Paging Information indication - * AS reports to the NAS that appropriate procedure has to be initiated. - */ -typedef struct { - UInt8_t cause; /* Paging cause */ -} paging_ind_t; - -/* - * -------------------------------------------------------------------------- - * NAS signalling connection establishment - * -------------------------------------------------------------------------- - */ - -/* Cause of RRC connection establishment */ -#define AS_CAUSE_EMERGENCY (NET_ESTABLISH_CAUSE_EMERGENCY) -#define AS_CAUSE_HIGH_PRIO (NET_ESTABLISH_CAUSE_HIGH_PRIO) -#define AS_CAUSE_MT_ACCESS (NET_ESTABLISH_CAUSE_MT_ACCESS) -#define AS_CAUSE_MO_SIGNAL (NET_ESTABLISH_CAUSE_MO_SIGNAL) -#define AS_CAUSE_MO_DATA (NET_ESTABLISH_CAUSE_MO_DATA) -#define AS_CAUSE_V1020 (NET_ESTABLISH_CAUSE_V1020) - -/* Type of the call associated to the RRC connection establishment */ -#define AS_TYPE_ORIGINATING_SIGNAL (NET_ESTABLISH_TYPE_ORIGINATING_SIGNAL) -#define AS_TYPE_EMERGENCY_CALLS (NET_ESTABLISH_TYPE_EMERGENCY_CALLS) -#define AS_TYPE_ORIGINATING_CALLS (NET_ESTABLISH_TYPE_ORIGINATING_CALLS) -#define AS_TYPE_TERMINATING_CALLS (NET_ESTABLISH_TYPE_TERMINATING_CALLS) -#define AS_TYPE_MO_CS_FALLBACK (NET_ESTABLISH_TYPE_MO_CS_FALLBACK) - - -/* - * NAS->AS - NAS signalling connection establishment request - * NAS requests the AS to perform the RRC connection establishment procedure - * to transfer initial NAS message to the network while UE is in IDLE mode. - */ -typedef struct { - UInt8_t cause; /* RRC connection establishment cause */ - UInt8_t type; /* RRC associated call type */ - as_stmsi_t s_tmsi; /* UE identity */ - plmn_t plmnID; /* Selected PLMN identity */ - as_nas_info_t initialNasMsg; /* Initial NAS message to transfer */ -} nas_establish_req_t; - -/* - * AS->NAS - NAS signalling connection establishment indication - * AS transfers the initial NAS message to the NAS. - */ -typedef struct { - UInt32_t UEid; /* UE lower layer identifier */ - tac_t tac; /* Code of the tracking area the initiating - * UE belongs to */ - as_nas_info_t initialNasMsg; /* Initial NAS message to transfer */ -} nas_establish_ind_t; - -/* - * NAS->AS - NAS signalling connection establishment response - * NAS responds to the AS that initial answer message has to be provided to - * the UE. - */ -typedef struct { - UInt32_t UEid; /* UE lower layer identifier */ - as_stmsi_t s_tmsi; /* UE identity */ - UInt8_t errCode; /* Transaction status */ - as_nas_info_t nasMsg; /* NAS message to transfer */ -} nas_establish_rsp_t; - -/* - * AS->NAS - NAS signalling connection establishment confirm - * AS transfers the initial answer message to the NAS. - */ -typedef struct { - UInt8_t errCode; /* Transaction status */ - as_nas_info_t nasMsg; /* NAS message to transfer */ -} nas_establish_cnf_t; - -/* - * -------------------------------------------------------------------------- - * NAS signalling connection release - * -------------------------------------------------------------------------- - */ - -/* Release cause */ -enum { - AS_AUTHENTICATION_FAILURE = 1, /* Authentication procedure failed */ - AS_DETACH /* Detach requested */ -}; - -/* - * NAS->AS - NAS signalling connection release request - * NAS requests the termination of the connection with the UE. - */ -typedef struct { - UInt32_t UEid; /* UE lower layer identifier */ - as_stmsi_t s_tmsi; /* UE identity */ - UInt8_t cause; /* Release cause */ -} nas_release_req_t; - -/* - * AS->NAS - NAS signalling connection release indication - * AS reports that connection has been terminated by the network. - */ -typedef struct { - UInt8_t cause; /* Release cause */ -} nas_release_ind_t; - -/* - * -------------------------------------------------------------------------- - * NAS information transfer - * -------------------------------------------------------------------------- - */ - -/* - * NAS->AS - Uplink data transfer request - * NAS requests the AS to transfer uplink information to the NAS that - * operates at the network side. - */ -typedef struct { - 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; - -/* - * AS->NAS - Uplink data transfer confirm - * AS immediately notifies the NAS whether uplink information has been - * successfully sent to the network or not. - */ -typedef struct { - UInt32_t UEid; /* UE lower layer identifier */ - UInt8_t errCode; /* Transaction status */ -} ul_info_transfer_cnf_t; - -/* - * AS->NAS - Uplink data transfer indication - * AS delivers the uplink information message to the NAS that operates - * at the network side. - */ -typedef struct { - UInt32_t UEid; /* UE lower layer identifier */ - as_nas_info_t nasMsg; /* Uplink NAS message */ -} ul_info_transfer_ind_t; - -/* - * NAS->AS - Downlink data transfer request - * NAS requests the AS to transfer downlink information to the NAS that - * operates at the UE side. - */ -typedef ul_info_transfer_req_t dl_info_transfer_req_t; - -/* - * AS->NAS - Downlink data transfer confirm - * AS immediately notifies the NAS whether downlink information has been - * successfully sent to the network or not. - */ -typedef ul_info_transfer_cnf_t dl_info_transfer_cnf_t; - -/* - * AS->NAS - Downlink data transfer indication - * AS delivers the downlink information message to the NAS that operates - * at the UE side. - */ -typedef ul_info_transfer_ind_t dl_info_transfer_ind_t; - -/* - * -------------------------------------------------------------------------- - * Radio Access Bearer establishment - * -------------------------------------------------------------------------- - */ - -/* TODO: Quality of Service parameters */ -typedef struct {} as_qos_t; - -/* - * NAS->AS - Radio access bearer establishment request - * NAS requests the AS to allocate transmission resources to radio access - * bearer initialized at the network side. - */ -typedef struct { - as_stmsi_t s_tmsi; /* UE identity */ - as_rab_id_t rabID; /* Radio access bearer identity */ - as_qos_t QoS; /* Requested Quality of Service */ -} rab_establish_req_t; - -/* - * AS->NAS - Radio access bearer establishment indication - * AS notifies the NAS that specific radio access bearer has to be setup. - */ -typedef struct { - as_rab_id_t rabID; /* Radio access bearer identity */ -} rab_establish_ind_t; - -/* - * NAS->AS - Radio access bearer establishment response - * NAS responds to AS whether the specified radio access bearer has been - * successfully setup or not. - */ -typedef struct { - as_stmsi_t s_tmsi; /* UE identity */ - as_rab_id_t rabID; /* Radio access bearer identity */ - UInt8_t errCode; /* Transaction status */ -} rab_establish_rsp_t; - -/* - * AS->NAS - Radio access bearer establishment confirm - * AS notifies NAS whether the specified radio access bearer has been - * successfully setup at the UE side or not. - */ -typedef struct { - as_rab_id_t rabID; /* Radio access bearer identity */ - UInt8_t errCode; /* Transaction status */ -} rab_establish_cnf_t; - -/* - * -------------------------------------------------------------------------- - * Radio Access Bearer release - * -------------------------------------------------------------------------- - */ - -/* - * NAS->AS - Radio access bearer release request - * NAS requests the AS to release transmission resources previously allocated - * to specific radio access bearer at the network side. - */ -typedef struct { - as_stmsi_t s_tmsi; /* UE identity */ - as_rab_id_t rabID; /* Radio access bearer identity */ -} rab_release_req_t; - -/* - * AS->NAS - Radio access bearer release indication - * AS notifies NAS that specific radio access bearer has been released. - */ -typedef struct { - as_rab_id_t rabID; /* Radio access bearer identity */ -} rab_release_ind_t; - -/* - * -------------------------------------------------------------------------- - * Structure of the AS messages handled by the network sublayer - * -------------------------------------------------------------------------- - */ -typedef struct { - UInt16_t msgID; - union { - broadcast_info_ind_t broadcast_info_ind; - cell_info_req_t cell_info_req; - cell_info_cnf_t cell_info_cnf; - cell_info_ind_t cell_info_ind; - paging_req_t paging_req; - paging_ind_t paging_ind; - nas_establish_req_t nas_establish_req; - nas_establish_ind_t nas_establish_ind; - nas_establish_rsp_t nas_establish_rsp; - nas_establish_cnf_t nas_establish_cnf; - nas_release_req_t nas_release_req; - nas_release_ind_t nas_release_ind; - ul_info_transfer_req_t ul_info_transfer_req; - ul_info_transfer_cnf_t ul_info_transfer_cnf; - ul_info_transfer_ind_t ul_info_transfer_ind; - dl_info_transfer_req_t dl_info_transfer_req; - dl_info_transfer_cnf_t dl_info_transfer_cnf; - dl_info_transfer_ind_t dl_info_transfer_ind; - rab_establish_req_t rab_establish_req; - rab_establish_ind_t rab_establish_ind; - rab_establish_rsp_t rab_establish_rsp; - rab_establish_cnf_t rab_establish_cnf; - rab_release_req_t rab_release_req; - rab_release_ind_t rab_release_ind; - } __attribute__((__packed__)) msg; -} as_message_t; - -/****************************************************************************/ -/******************** G L O B A L V A R I A B L E S ********************/ -/****************************************************************************/ - -/****************************************************************************/ -/****************** E X P O R T E D F U N C T I O N S ******************/ -/****************************************************************************/ - -int as_message_decode(const char* buffer, as_message_t* msg, int length); - -int as_message_encode(char* buffer, as_message_t* msg, int length); - -/* Implemented in the network_api.c body file */ -int as_message_send(as_message_t* as_msg); - -#endif /* __AS_MESSAGE_H__*/ diff --git a/openair-cn/GTPV1-U/Makefile.am b/openair-cn/GTPV1-U/Makefile.am index f586bf88e553c95502cebfe47254b21ab0c14264..6519cb40c9458e30d53b016ffadb9b3689d080bb 100644 --- a/openair-cn/GTPV1-U/Makefile.am +++ b/openair-cn/GTPV1-U/Makefile.am @@ -1,5 +1,7 @@ AM_CFLAGS = @ADD_CFLAGS@ \ -I$(top_srcdir)/COMMON \ + -I$(top_srcdir)/NAS/EURECOM-NAS/src/api/network \ + -I$(top_srcdir)/NAS/EURECOM-NAS/src/include \ -I$(top_srcdir)/INTERTASK_INTERFACE \ -I$(top_srcdir)/GTPV1-U/nw-gtpv1u/include \ -I$(top_srcdir)/GTPV1-U/nw-gtpv1u/shared \ diff --git a/openair-cn/MME_APP/Makefile.am b/openair-cn/MME_APP/Makefile.am index 396860d4c0171f77f1f673a8bdde46d07a07c635..6ee2feae263ae9cd9af856e078dc73e27a4a5af9 100644 --- a/openair-cn/MME_APP/Makefile.am +++ b/openair-cn/MME_APP/Makefile.am @@ -1,6 +1,8 @@ AM_CFLAGS = \ @ADD_CFLAGS@ \ -I$(top_srcdir)/COMMON \ + -I$(top_srcdir)/NAS/EURECOM-NAS/src/api/network \ + -I$(top_srcdir)/NAS/EURECOM-NAS/src/include \ -I$(top_srcdir)/INTERTASK_INTERFACE \ -I$(top_srcdir)/S1AP \ -I$(top_srcdir)/S6A \ diff --git a/openair-cn/Makefile.am b/openair-cn/Makefile.am index 56f389af8a56edb09a459add6844fb93f262c9c7..ecf203275528c0060ecea64ac34ab8bebfcac086 100644 --- a/openair-cn/Makefile.am +++ b/openair-cn/Makefile.am @@ -1,8 +1,10 @@ ACLOCAL_AMFLAGS = -I m4 -AM_CFLAGS = @ADD_CFLAGS@ \ - -I$(top_srcdir)/COMMON \ - -I$(top_srcdir)/UTILS \ +AM_CFLAGS = @ADD_CFLAGS@ \ + -I$(top_srcdir)/COMMON \ + -I$(top_srcdir)/UTILS \ + -I$(top_srcdir)/NAS/EURECOM-NAS/src/api/network \ + -I$(top_srcdir)/NAS/EURECOM-NAS/src/include \ -I$(top_srcdir)/INTERTASK_INTERFACE if HAVE_GCCXML @@ -10,15 +12,15 @@ BUILT_SOURCES = \ messages.xml \ messages_xml.h -messages_hdr = \ - $(top_srcdir)/INTERTASK_INTERFACE/intertask_messages_def.h \ - $(top_srcdir)/INTERTASK_INTERFACE/timer_messages_def.h \ - $(top_srcdir)/INTERTASK_INTERFACE/timer_messages_types.h \ - $(top_srcdir)/COMMON/tasks_def.h \ - $(top_srcdir)/COMMON/messages_def.h \ +messages_hdr = \ + $(top_srcdir)/INTERTASK_INTERFACE/intertask_messages_def.h \ + $(top_srcdir)/INTERTASK_INTERFACE/timer_messages_def.h \ + $(top_srcdir)/INTERTASK_INTERFACE/timer_messages_types.h \ + $(top_srcdir)/COMMON/tasks_def.h \ + $(top_srcdir)/COMMON/messages_def.h \ $(top_srcdir)/COMMON/messages_types.h \ $(top_srcdir)/COMMON/gtpv1_u_messages_def.h \ - $(top_srcdir)/COMMON/gtpv1_u_messages_types.h \ + $(top_srcdir)/COMMON/gtpv1_u_messages_types.h \ $(top_srcdir)/COMMON/nas_messages_def.h \ $(top_srcdir)/COMMON/nas_messages_types.h \ $(top_srcdir)/COMMON/s11_messages_def.h \ @@ -27,8 +29,8 @@ messages_hdr = \ $(top_srcdir)/COMMON/s1ap_messages_types.h \ $(top_srcdir)/COMMON/s6a_messages_def.h \ $(top_srcdir)/COMMON/s6a_messages_types.h \ - $(top_srcdir)/COMMON/sgw_lite_def.h \ - $(top_srcdir)/COMMON/sgw_lite_messages_types.h \ + $(top_srcdir)/COMMON/sgw_lite_def.h \ + $(top_srcdir)/COMMON/sgw_lite_messages_types.h \ $(top_srcdir)/COMMON/sctp_messages_def.h \ $(top_srcdir)/COMMON/sctp_messages_types.h \ $(top_srcdir)/COMMON/udp_messages_def.h \ @@ -41,23 +43,23 @@ messages_xml.h: messages.xml sed -e 's/[ ]*//' -e 's/"/\\"/g' -e 's/^/"/' -e 's/$$/"/' messages.xml > messages_xml.h endif -SUBDIRS = \ - . \ - GTPV1-U \ - GTPV2-C \ - INTERTASK_INTERFACE \ - SGI \ - NAS \ - SCTP \ - S11 \ - S1AP \ - S6A \ - SECU \ - SGW-LITE \ - UTILS \ - UDP \ - MME_APP \ - TEST \ - OAISIM_MME \ - OAI_EPC \ +SUBDIRS = \ + . \ + GTPV1-U \ + GTPV2-C \ + INTERTASK_INTERFACE \ + SGI \ + NAS \ + SCTP \ + S11 \ + S1AP \ + S6A \ + SECU \ + SGW-LITE \ + UTILS \ + UDP \ + MME_APP \ + TEST \ + OAISIM_MME \ + OAI_EPC \ OAI_SGW \ No newline at end of file diff --git a/openair-cn/NAS/EURECOM-NAS/src/api/network/as_message.h b/openair-cn/NAS/EURECOM-NAS/src/api/network/as_message.h index ff5bd8f7477385217ae4d00d4ccee76aa3bbe2e4..f242424823a6c07e105f3e811fc0c1f345c515e6 100644 --- a/openair-cn/NAS/EURECOM-NAS/src/api/network/as_message.h +++ b/openair-cn/NAS/EURECOM-NAS/src/api/network/as_message.h @@ -96,6 +96,17 @@ Description Defines the messages supported by the Access Stratum sublayer #define AS_RAB_RELEASE_REQ (AS_RAB_RELEASE | AS_REQUEST) #define AS_RAB_RELEASE_IND (AS_RAB_RELEASE | AS_INDICATION) +/* NAS Cause */ +#define EPS_SERVICES_AND_NON_EPS_SERVICES_NOT_ALLOWED (8) +#define EPS_SERVICES_NOT_ALLOWED (7) +#define PLMN_NOT_ALLOWED (11) +#define TRACKING_AREA_NOT_ALLOWED (12) +#define ROAMING_NOT_ALLOWED_IN_THIS_TRACKING_AREA (13) +#define EPS_SERVICES_NOT_ALLOWED_IN_THIS_PLMN (14) +#define NO_SUITABLE_CELLS_IN_TRACKING_AREA (15) +#define NETWORK_FAILURE (17) +#define ESM_FAILURE (19) + /* * -------------------------------------------------------------------------- * Access Stratum message global parameters diff --git a/openair-cn/OAI_EPC/Makefile.am b/openair-cn/OAI_EPC/Makefile.am index cf3d363bd9e919401a407e8ff4dcd2f20d70c3f2..5ae7d94c481bda58cafe845676c6ae1e569858fd 100644 --- a/openair-cn/OAI_EPC/Makefile.am +++ b/openair-cn/OAI_EPC/Makefile.am @@ -5,6 +5,8 @@ AM_CFLAGS = @ADD_CFLAGS@ \ -I$(top_srcdir)/GTPV1-U/nw-gtpv1u/include \ -I$(top_srcdir)/GTPV1-U/nw-gtpv1u/shared \ -I$(top_srcdir)/SCTP \ + -I$(top_srcdir)/NAS/EURECOM-NAS/src/api/network \ + -I$(top_srcdir)/NAS/EURECOM-NAS/src/include \ -I$(top_srcdir)/INTERTASK_INTERFACE \ -I$(top_srcdir)/SGI \ -I$(top_srcdir)/MME_APP \ diff --git a/openair-cn/S11/Makefile.am b/openair-cn/S11/Makefile.am index 18fa1441269b374ce6c17dd7f4f279e86cde7397..b6c3adc823872a8b69266a4a31212f88b02a380e 100644 --- a/openair-cn/S11/Makefile.am +++ b/openair-cn/S11/Makefile.am @@ -6,6 +6,8 @@ AM_CFLAGS = \ @ADD_CFLAGS@ \ -I$(top_srcdir)/COMMON \ -I$(top_srcdir)/GTPV2-C/nwgtpv2c-0.11/shared \ + -I$(top_srcdir)/NAS/EURECOM-NAS/src/api/network \ + -I$(top_srcdir)/NAS/EURECOM-NAS/src/include \ -I$(top_srcdir)/INTERTASK_INTERFACE \ -I$(top_srcdir)/SGW-LITE \ -I$(top_srcdir)/UTILS diff --git a/openair-cn/S1AP/Makefile.am b/openair-cn/S1AP/Makefile.am index d6e9fac9ed6d003113bff21d4472fdb47f05fdc8..5a8b0697788a9126445ea694ca32328df3fbfb6b 100644 --- a/openair-cn/S1AP/Makefile.am +++ b/openair-cn/S1AP/Makefile.am @@ -5,6 +5,8 @@ AM_CFLAGS = \ -I$(top_srcdir)/COMMON \ -I$(top_builddir)/S1AP \ -I$(top_builddir)/S1AP/MESSAGES \ + -I$(top_srcdir)/NAS/EURECOM-NAS/src/api/network \ + -I$(top_srcdir)/NAS/EURECOM-NAS/src/include \ -I$(top_srcdir)/INTERTASK_INTERFACE \ -I$(top_srcdir)/SCTP \ -I$(top_srcdir)/UTILS \ diff --git a/openair-cn/S6A/Makefile.am b/openair-cn/S6A/Makefile.am index bf4d2923c1221edb6209ed4972d180e7ea8e6f95..2c8b0c8b68faae19d84a751e1e56fa9b851bfaff 100644 --- a/openair-cn/S6A/Makefile.am +++ b/openair-cn/S6A/Makefile.am @@ -1,6 +1,8 @@ AM_CFLAGS = \ @ADD_CFLAGS@ \ -I$(top_srcdir)/COMMON \ + -I$(top_srcdir)/NAS/EURECOM-NAS/src/api/network \ + -I$(top_srcdir)/NAS/EURECOM-NAS/src/include \ -I$(top_srcdir)/INTERTASK_INTERFACE \ -I$(top_srcdir)/UTILS diff --git a/openair-cn/SCTP/Makefile.am b/openair-cn/SCTP/Makefile.am index 393cd0ed69276ec5ca81f8bb69b2b7bd48581f08..278db78246b9e88212fef63eaa53a6e86ca17638 100644 --- a/openair-cn/SCTP/Makefile.am +++ b/openair-cn/SCTP/Makefile.am @@ -5,6 +5,8 @@ libsctpserver_la_LDFLAGS = -all-static AM_CFLAGS = \ @ADD_CFLAGS@ \ -I$(top_srcdir)/COMMON \ + -I$(top_srcdir)/NAS/EURECOM-NAS/src/api/network \ + -I$(top_srcdir)/NAS/EURECOM-NAS/src/include \ -I$(top_srcdir)/INTERTASK_INTERFACE \ -I$(top_srcdir)/UTILS diff --git a/openair-cn/SGI/Makefile.am b/openair-cn/SGI/Makefile.am index cdbdc68a39a97c7804944f1d8e669d48c9435eb7..6b83e19ed8d2f89925838e6a722206afe78810cf 100644 --- a/openair-cn/SGI/Makefile.am +++ b/openair-cn/SGI/Makefile.am @@ -3,6 +3,8 @@ AM_CFLAGS = @ADD_CFLAGS@ \ -I$(top_srcdir)/SGW-LITE \ -I$(top_srcdir)/UTILS \ -I$(top_srcdir)/UTILS/HASHTABLE \ + -I$(top_srcdir)/NAS/EURECOM-NAS/src/api/network \ + -I$(top_srcdir)/NAS/EURECOM-NAS/src/include \ -I$(top_srcdir)/INTERTASK_INTERFACE noinst_LTLIBRARIES = libsgi.la diff --git a/openair-cn/SGW-LITE/Makefile.am b/openair-cn/SGW-LITE/Makefile.am index 7a5505a5b4327a56b254a07977970c6bc49e56a4..b92d5305745968a85d1c6e54340fd09176545306 100644 --- a/openair-cn/SGW-LITE/Makefile.am +++ b/openair-cn/SGW-LITE/Makefile.am @@ -1,5 +1,7 @@ AM_CFLAGS = @ADD_CFLAGS@ \ -I$(top_srcdir)/COMMON \ + -I$(top_srcdir)/NAS/EURECOM-NAS/src/api/network \ + -I$(top_srcdir)/NAS/EURECOM-NAS/src/include \ -I$(top_srcdir)/INTERTASK_INTERFACE \ -I$(top_srcdir)/MME_APP \ -I$(top_srcdir)/UTILS \ diff --git a/openair-cn/UDP/Makefile.am b/openair-cn/UDP/Makefile.am index 00fe86cbd77c818f97986f58e28b856617a32956..b0a87216c62d9834cdd588353531a4a88e1dbd39 100644 --- a/openair-cn/UDP/Makefile.am +++ b/openair-cn/UDP/Makefile.am @@ -4,6 +4,8 @@ libudpserver_la_LDFLAGS = -all-static AM_CFLAGS = \ @ADD_CFLAGS@ \ -I$(top_srcdir)/COMMON \ + -I$(top_srcdir)/NAS/EURECOM-NAS/src/api/network \ + -I$(top_srcdir)/NAS/EURECOM-NAS/src/include \ -I$(top_srcdir)/INTERTASK_INTERFACE \ -I$(top_srcdir)/UTILS