- Fix incorrect SCTP stream for UE
- Added some message for S1AP - Fixed PLMN for EPC git-svn-id: http://svn.eurecom.fr/openair4G/trunk@4354 818b1a75-f10b-46b9-bf7c-635c3b92a50f
This commit is contained in:
@@ -1 +1,4 @@
|
||||
MESSAGE_DEF(S1AP_REGISTER_ENB, MESSAGE_PRIORITY_MED, s1ap_register_eNB_t, s1ap_register_eNB)
|
||||
MESSAGE_DEF(S1AP_REGISTER_ENB , MESSAGE_PRIORITY_MED, s1ap_register_eNB_t , s1ap_register_eNB )
|
||||
MESSAGE_DEF(S1AP_NAS_FIRST_REQ, MESSAGE_PRIORITY_MED, s1ap_nas_first_req_t, s1ap_nas_first_req)
|
||||
MESSAGE_DEF(S1AP_UPLINK_NAS , MESSAGE_PRIORITY_MED, s1ap_uplink_nas_t , s1ap_uplink_nas )
|
||||
MESSAGE_DEF(S1AP_DOWNLINK_NAS , MESSAGE_PRIORITY_MED, s1ap_downlink_nas_t , s1ap_downlink_nas )
|
||||
@@ -22,8 +22,51 @@ typedef struct {
|
||||
|
||||
#define S1AP_MAX_NB_MME_IP_ADDRESS 10
|
||||
|
||||
/* Provides the establishment cause for the RRC connection request as provided
|
||||
* by the upper layers. W.r.t. the cause value names: highPriorityAccess
|
||||
* concerns AC11..AC15, ‘mt’ stands for ‘Mobile Terminating’ and ‘mo’ for
|
||||
* 'Mobile Originating'. Defined in TS 36.331.
|
||||
*/
|
||||
typedef enum {
|
||||
RRC_CAUSE_EMERGENCY = 0x0,
|
||||
RRC_CAUSE_HIGH_PRIO_ACCESS = 0x1,
|
||||
RRC_CAUSE_MT_ACCESS = 0x2,
|
||||
RRC_CAUSE_MO_SIGNALLING = 0x3,
|
||||
RRC_CAUSE_MO_DATA = 0x4,
|
||||
RRC_CAUSE_LAST
|
||||
} rrc_establishment_cause_t;
|
||||
|
||||
typedef struct {
|
||||
/* For virtual mode, mod_id as defined in the rest of the L1/L2 stack */
|
||||
uint16_t mcc;
|
||||
uint16_t mnc;
|
||||
uint8_t mme_code;
|
||||
uint16_t mme_group_id;
|
||||
} gummei_t;
|
||||
|
||||
typedef struct {
|
||||
uint8_t mme_code;
|
||||
uint32_t m_tmsi;
|
||||
} s_tmsi_t;
|
||||
|
||||
typedef struct {
|
||||
#define S_TMSI_PROVIDED 0x0
|
||||
#define GUMMEI_PROVIDED 0x1
|
||||
unsigned present:1;
|
||||
union {
|
||||
gummei_t gummei;
|
||||
s_tmsi_t s_tmsi;
|
||||
} identity;
|
||||
} ue_identity_t;
|
||||
|
||||
typedef struct {
|
||||
/* Octet string data */
|
||||
uint8_t *buffer;
|
||||
/* Length of the octet string */
|
||||
uint32_t length;
|
||||
} nas_pdu_t, ue_radio_cap_t;
|
||||
|
||||
typedef struct {
|
||||
/* For virtual mode, mod_id of the eNB as defined in the rest of the L1/L2 stack */
|
||||
uint8_t mod_id;
|
||||
|
||||
/* Unique eNB_id to identify the eNB within EPC.
|
||||
@@ -61,4 +104,41 @@ typedef struct {
|
||||
net_ip_address_t mme_ip_address[S1AP_MAX_NB_MME_IP_ADDRESS];
|
||||
} s1ap_register_eNB_t;
|
||||
|
||||
/* The NAS First Req is the first message exchanged between RRC and S1AP
|
||||
* for an UE.
|
||||
* The rnti uniquely identifies an UE within a cell. Later the enb_ue_s1ap_id
|
||||
* will be the unique identifier used between RRC and S1AP.
|
||||
*/
|
||||
typedef struct {
|
||||
/* For virtual mode, mod_id of the eNB as defined in the rest of the L1/L2 stack */
|
||||
uint8_t mod_id;
|
||||
|
||||
/* RNTI of the mobile */
|
||||
uint16_t rnti;
|
||||
|
||||
/* Establishment cause as sent by UE */
|
||||
rrc_establishment_cause_t establishment_cause;
|
||||
|
||||
/* NAS PDU */
|
||||
nas_pdu_t nas_pdu;
|
||||
|
||||
/* If this flag is set S1AP layer is expecting the GUMMEI. If = 0,
|
||||
* the temporary s-tmsi is used.
|
||||
*/
|
||||
ue_identity_t ue_identity;
|
||||
} s1ap_nas_first_req_t;
|
||||
|
||||
typedef struct {
|
||||
/* For virtual mode, mod_id of the eNB as defined in the rest of the L1/L2 stack */
|
||||
uint8_t mod_id;
|
||||
|
||||
/* Unique UE identifier within an eNB */
|
||||
unsigned eNB_ue_s1ap_id:24;
|
||||
|
||||
/* NAS pdu */
|
||||
nas_pdu_t nas_pdu;
|
||||
} s1ap_uplink_nas_t;
|
||||
|
||||
typedef s1ap_uplink_nas_t s1ap_downlink_nas_t;
|
||||
|
||||
#endif /* S1AP_MESSAGES_TYPES_H_ */
|
||||
|
||||
Reference in New Issue
Block a user