open5gs/src/mme/mme-event.h

78 lines
1.6 KiB
C
Raw Normal View History

2017-03-24 06:31:35 +00:00
#ifndef __MME_EVENT_H__
#define __MME_EVENT_H__
2017-02-13 00:58:55 +00:00
2019-04-27 14:54:30 +00:00
#include "ogs-core.h"
2017-03-26 06:34:34 +00:00
2017-02-13 00:58:55 +00:00
#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */
2017-04-04 01:49:19 +00:00
/* forward declaration */
2017-02-13 00:58:55 +00:00
typedef enum {
2019-04-27 14:54:30 +00:00
MME_EVT_BASE = OGS_FSM_USER_SIG,
2017-02-13 00:58:55 +00:00
2017-08-25 15:25:55 +00:00
MME_EVT_S1AP_MESSAGE,
MME_EVT_S1AP_DELAYED_SEND,
2017-08-25 15:25:55 +00:00
MME_EVT_S1AP_LO_ACCEPT,
MME_EVT_S1AP_LO_SCTP_COMM_UP,
2017-08-25 15:25:55 +00:00
MME_EVT_S1AP_LO_CONNREFUSED,
2017-04-12 23:48:11 +00:00
2017-08-25 15:25:55 +00:00
MME_EVT_EMM_MESSAGE,
MME_EVT_ESM_MESSAGE,
MME_EVT_S11_MESSAGE,
MME_EVT_S6A_MESSAGE,
2017-03-24 09:47:05 +00:00
MME_EVT_TOP,
2017-02-13 00:58:55 +00:00
2019-04-27 14:54:30 +00:00
} mme_event_e;
typedef long S1AP_ProcedureCode_t;
typedef struct S1AP_S1AP_PDU s1ap_message_t;
2019-05-28 08:46:19 +00:00
typedef struct nas_message_s nas_message_t;
typedef struct mme_enb_s mme_enb_t;
typedef struct enb_ue_s enb_ue_t;
typedef struct mme_ue_s mme_ue_t;
typedef struct mme_sess_s mme_sess_t;
typedef struct mme_bearer_s mme_bearer_t;
2019-04-27 14:54:30 +00:00
typedef struct mme_event_s {
int id;
void *pkbuf;
ogs_sock_t *enb_sock;
ogs_sockaddr_t *enb_addr;
uint16_t inbound_streams;
uint16_t outbound_streams;
S1AP_ProcedureCode_t s1ap_code;
s1ap_message_t *s1ap_message;
uint8_t nas_type;
nas_message_t *nas_message;
mme_enb_t *enb;
enb_ue_t *enb_ue;
mme_ue_t *mme_ue;
mme_sess_t *sess;
mme_bearer_t *bearer;
ogs_timer_t *timer;
} mme_event_t;
void mme_event_init(void);
void mme_event_term(void);
void mme_event_final(void);
mme_event_t *mme_event_new(mme_event_e id);
void mme_event_free(mme_event_t *e);
void mme_event_timeout(void *data);
2017-02-13 00:58:55 +00:00
2019-04-27 14:54:30 +00:00
const char *mme_event_get_name(mme_event_t *e);
2017-03-24 09:47:05 +00:00
2017-02-13 00:58:55 +00:00
#ifdef __cplusplus
}
#endif /* __cplusplus */
2017-03-24 06:31:35 +00:00
#endif /* __MME_EVENT_H__ */