open5gs/lib/sbi/openapi/model/registration_context_container.h
2023-03-01 19:56:49 +09:00

99 lines
3.5 KiB
C

/*
* registration_context_container.h
*
* Registration Context Container used to send the UE context information, N1 message from UE, AN address etc during Registration with AMF re-allocation procedure
*/
#ifndef _OpenAPI_registration_context_container_H_
#define _OpenAPI_registration_context_container_H_
#include <string.h>
#include "../external/cJSON.h"
#include "../include/list.h"
#include "../include/keyValuePair.h"
#include "../include/binary.h"
#include "access_type.h"
#include "allowed_nssai.h"
#include "ce_mode_b_ind.h"
#include "configured_snssai.h"
#include "global_ran_node_id.h"
#include "lte_m_ind.h"
#include "npn_access_info.h"
#include "plmn_id.h"
#include "snssai.h"
#include "ue_context.h"
#include "user_location.h"
#ifdef __cplusplus
extern "C" {
#endif
typedef struct OpenAPI_registration_context_container_s OpenAPI_registration_context_container_t;
typedef struct OpenAPI_registration_context_container_s {
struct OpenAPI_ue_context_s *ue_context;
char *local_time_zone;
OpenAPI_access_type_e an_type;
int an_n2_ap_id;
struct OpenAPI_global_ran_node_id_s *ran_node_id;
char *initial_amf_name;
struct OpenAPI_user_location_s *user_location;
char *rrc_est_cause;
bool is_ue_context_request;
int ue_context_request;
bool is_initial_amf_n2_ap_id;
int initial_amf_n2_ap_id;
char *an_n2_ipv4_addr;
char *an_n2_ipv6_addr;
struct OpenAPI_allowed_nssai_s *allowed_nssai;
OpenAPI_list_t *configured_nssai;
OpenAPI_list_t *rejected_nssai_in_plmn;
OpenAPI_list_t *rejected_nssai_in_ta;
struct OpenAPI_plmn_id_s *selected_plmn_id;
bool is_iab_node_ind;
int iab_node_ind;
struct OpenAPI_ce_mode_b_ind_s *ce_mode_b_ind;
struct OpenAPI_lte_m_ind_s *lte_m_ind;
bool is_authenticated_ind;
int authenticated_ind;
struct OpenAPI_npn_access_info_s *npn_access_info;
} OpenAPI_registration_context_container_t;
OpenAPI_registration_context_container_t *OpenAPI_registration_context_container_create(
OpenAPI_ue_context_t *ue_context,
char *local_time_zone,
OpenAPI_access_type_e an_type,
int an_n2_ap_id,
OpenAPI_global_ran_node_id_t *ran_node_id,
char *initial_amf_name,
OpenAPI_user_location_t *user_location,
char *rrc_est_cause,
bool is_ue_context_request,
int ue_context_request,
bool is_initial_amf_n2_ap_id,
int initial_amf_n2_ap_id,
char *an_n2_ipv4_addr,
char *an_n2_ipv6_addr,
OpenAPI_allowed_nssai_t *allowed_nssai,
OpenAPI_list_t *configured_nssai,
OpenAPI_list_t *rejected_nssai_in_plmn,
OpenAPI_list_t *rejected_nssai_in_ta,
OpenAPI_plmn_id_t *selected_plmn_id,
bool is_iab_node_ind,
int iab_node_ind,
OpenAPI_ce_mode_b_ind_t *ce_mode_b_ind,
OpenAPI_lte_m_ind_t *lte_m_ind,
bool is_authenticated_ind,
int authenticated_ind,
OpenAPI_npn_access_info_t *npn_access_info
);
void OpenAPI_registration_context_container_free(OpenAPI_registration_context_container_t *registration_context_container);
OpenAPI_registration_context_container_t *OpenAPI_registration_context_container_parseFromJSON(cJSON *registration_context_containerJSON);
cJSON *OpenAPI_registration_context_container_convertToJSON(OpenAPI_registration_context_container_t *registration_context_container);
OpenAPI_registration_context_container_t *OpenAPI_registration_context_container_copy(OpenAPI_registration_context_container_t *dst, OpenAPI_registration_context_container_t *src);
#ifdef __cplusplus
}
#endif
#endif /* _OpenAPI_registration_context_container_H_ */