Commit 38667418 authored by Tien-Thinh Nguyen's avatar Tien-Thinh Nguyen

polish the code

parent 8b9e891a
......@@ -34,269 +34,280 @@ using namespace smf;
//-----------------------------------------------------------------------------
void qos_flow_context_created::set_cause(const uint8_t cause)
{
cause_value = cause;
cause_value = cause;
}
//-----------------------------------------------------------------------------
void qos_flow_context_created::set_qfi(const pfcp::qfi_t& q)
{
qfi = q;
qfi = q;
}
//-----------------------------------------------------------------------------
void qos_flow_context_created::set_ul_fteid(const fteid_t& teid)
{
ul_fteid = teid;
ul_fteid = teid;
}
//-----------------------------------------------------------------------------
pdu_session_msg_type_t pdu_session_msg::get_msg_type() const
{
return m_msg_type;
return m_msg_type;
}
//-----------------------------------------------------------------------------
void pdu_session_msg::set_msg_type(pdu_session_msg_type_t const& msg_type)
{
m_msg_type = msg_type;
m_msg_type = msg_type;
}
//-----------------------------------------------------------------------------
supi_t pdu_session_msg::get_supi() const
{
return m_supi;
return m_supi;
}
//-----------------------------------------------------------------------------
void pdu_session_msg::set_supi(supi_t const& supi)
{
m_supi = supi;
m_supi = supi;
}
//-----------------------------------------------------------------------------
std::string pdu_session_msg::get_supi_prefix() const
{
return m_supi_prefix;
return m_supi_prefix;
}
//-----------------------------------------------------------------------------
void pdu_session_msg::set_supi_prefix(std::string const& prefix)
{
m_supi_prefix = prefix;
m_supi_prefix = prefix;
}
//-----------------------------------------------------------------------------
pdu_session_id_t pdu_session_msg::get_pdu_session_id() const
{
return m_pdu_session_id;
return m_pdu_session_id;
}
//-----------------------------------------------------------------------------
void pdu_session_msg::set_pdu_session_id(pdu_session_id_t const pdu_session_id)
{
m_pdu_session_id = pdu_session_id;
m_pdu_session_id = pdu_session_id;
}
//-----------------------------------------------------------------------------
std::string pdu_session_msg::get_dnn() const
{
return m_dnn;
return m_dnn;
}
//-----------------------------------------------------------------------------
void pdu_session_msg::set_dnn(std::string const& dnn)
{
m_dnn = dnn;
m_dnn = dnn;
}
//-----------------------------------------------------------------------------
snssai_t pdu_session_msg::get_snssai() const
{
return m_snssai;
return m_snssai;
}
//-----------------------------------------------------------------------------
void pdu_session_msg::set_snssai(snssai_t const& snssai)
{
m_snssai = snssai;
m_snssai = snssai;
}
//-----------------------------------------------------------------------------
void pdu_session_msg::set_api_root(std::string const& value)
{
m_api_root = value;
m_api_root = value;
}
std::string pdu_session_msg::get_api_root() const
{
return m_api_root;
return m_api_root;
}
//-----------------------------------------------------------------------------
uint8_t pdu_session_create_sm_context::get_pdu_session_type() const
{
return m_pdu_session_type;
return m_pdu_session_type;
}
//-----------------------------------------------------------------------------
void pdu_session_create_sm_context::set_pdu_session_type (uint8_t const& pdu_session_type)
{
m_pdu_session_type = pdu_session_type;
m_pdu_session_type = pdu_session_type;
}
//-----------------------------------------------------------------------------
extended_protocol_discriminator_t pdu_session_create_sm_context::get_epd() const
{
return m_epd;
return m_epd;
}
//-----------------------------------------------------------------------------
void pdu_session_create_sm_context::set_epd(extended_protocol_discriminator_t const& epd)
{
m_epd = epd;
m_epd = epd;
}
//-----------------------------------------------------------------------------
procedure_transaction_id_t pdu_session_create_sm_context::get_pti() const
{
return m_pti;
return m_pti;
}
//-----------------------------------------------------------------------------
void pdu_session_create_sm_context::set_pti(procedure_transaction_id_t const& pti)
{
m_pti = pti;
m_pti = pti;
}
//-----------------------------------------------------------------------------
uint8_t pdu_session_create_sm_context::get_message_type() const
{
return m_message_type;
return m_message_type;
}
//-----------------------------------------------------------------------------
void pdu_session_create_sm_context::set_message_type(uint8_t const& message_type){
m_message_type = message_type;
m_message_type = message_type;
}
std::string pdu_session_create_sm_context_request::get_n1_sm_message() const{
return m_n1_sm_message;
return m_n1_sm_message;
}
void pdu_session_create_sm_context_request::set_n1_sm_message(std::string const& value){
m_n1_sm_message = value;
m_n1_sm_message = value;
}
//-----------------------------------------------------------------------------
std::string pdu_session_create_sm_context_request::get_serving_nf_id() const
{
return m_serving_nf_id;
return m_serving_nf_id;
}
//-----------------------------------------------------------------------------
void pdu_session_create_sm_context_request::set_serving_nf_id(std::string const& serving_nf_id)
{
m_serving_nf_id = serving_nf_id;
m_serving_nf_id = serving_nf_id;
}
//-----------------------------------------------------------------------------
std::string pdu_session_create_sm_context_request::get_request_type() const
{
return m_request_type;
return m_request_type;
}
//-----------------------------------------------------------------------------
void pdu_session_create_sm_context_request::set_request_type(std::string const& request_type)
{
m_request_type = request_type;
m_request_type = request_type;
}
//-----------------------------------------------------------------------------
void pdu_session_create_sm_context_request::set_dnn_selection_mode(std::string const& dnn_selection_mode)
{
m_dnn_selection_mode = dnn_selection_mode;
m_dnn_selection_mode = dnn_selection_mode;
}
//-----------------------------------------------------------------------------
std::string pdu_session_create_sm_context_request::get_dnn_selection_mode() const
{
return m_dnn_selection_mode;
return m_dnn_selection_mode;
}
//-----------------------------------------------------------------------------
ipmdr_t pdu_session_create_sm_context_request::get_ipmdr() const
{
return m_ipmdr;
return m_ipmdr;
}
//-----------------------------------------------------------------------------
void pdu_session_create_sm_context_request::set_ipmdr(ipmdr_t const& ipmdr)
{
m_ipmdr = ipmdr;
m_ipmdr = ipmdr;
}
//-----------------------------------------------------------------------------
void pdu_session_create_sm_context_response::set_cause(uint8_t cause)
{
m_cause = cause;
m_cause = cause;
}
//-----------------------------------------------------------------------------
uint8_t pdu_session_create_sm_context_response::get_cause(){
return m_cause;
return m_cause;
}
//-----------------------------------------------------------------------------
void pdu_session_create_sm_context_response::set_paa(paa_t paa)
{
m_paa = paa;
m_paa = paa;
}
//-----------------------------------------------------------------------------
paa_t pdu_session_create_sm_context_response::get_paa()
{
return m_paa;
return m_paa;
}
//-----------------------------------------------------------------------------
void pdu_session_create_sm_context_response::set_http_code(Pistache::Http::Code code)
{
m_code = code;
m_code = code;
}
//-----------------------------------------------------------------------------
Pistache::Http::Code pdu_session_create_sm_context_response::get_http_code()
{
return m_code;
return m_code;
}
//-----------------------------------------------------------------------------
void pdu_session_create_sm_context_response::set_qos_flow_context(const qos_flow_context_created qos_flow)
{
qos_flow_context = qos_flow;
qos_flow_context = qos_flow;
}
//-----------------------------------------------------------------------------
/* pdu_session_update_sm_context_request */
std::string pdu_session_update_sm_context_request::get_n2_sm_information() const{
return n2_sm_information;
return n2_sm_information;
}
//-----------------------------------------------------------------------------
void pdu_session_update_sm_context_request::set_n2_sm_information(std::string const& value){
n2_sm_information = value;
n2_sm_information = value;
}
//-----------------------------------------------------------------------------
std::string pdu_session_update_sm_context_request::get_n2_sm_info_type() const{
return n2_sm_info_type;
return n2_sm_info_type;
}
//-----------------------------------------------------------------------------
void pdu_session_update_sm_context_request::set_n2_sm_info_type(std::string const& value){
n2_sm_info_type = value;
n2_sm_info_type = value;
}
//-----------------------------------------------------------------------------
void pdu_session_update_sm_context_response::set_cause(uint8_t cause)
{
m_cause = cause;
}
//-----------------------------------------------------------------------------
uint8_t pdu_session_update_sm_context_response::get_cause(){
return m_cause;
}
This diff is collapsed.
This diff is collapsed.
......@@ -24,7 +24,7 @@
\company Eurecom
\date 2019
\email: tien-thinh.nguyen@eurecom.fr
*/
*/
#ifndef FILE_SMF_N10_HPP_SEEN
#define FILE_SMF_N10_HPP_SEEN
......
This diff is collapsed.
......@@ -39,16 +39,18 @@ namespace smf {
class smf_n11 {
private:
std::thread::id thread_id;
std::thread thread;
std::thread::id thread_id;
std::thread thread;
void handle_receive_sm_data_notification();
void handle_receive_sm_data_notification();
public:
smf_n11();
smf_n11(smf_n11 const&) = delete;
void operator=(smf_n11 const&) = delete;
void send_msg_to_amf(std::shared_ptr<itti_n11_create_sm_context_response> sm_context_res);
smf_n11();
smf_n11(smf_n11 const&) = delete;
void operator=(smf_n11 const&) = delete;
void send_msg_to_amf(std::shared_ptr<itti_n11_create_sm_context_response> sm_context_res);
void send_msg_to_amf(std::shared_ptr<itti_n11_update_sm_context_response> sm_context_res);
};
......
This diff is collapsed.
......@@ -64,47 +64,47 @@ class smf_n1_n2 {
private:
public:
smf_n1_n2(){};
smf_n1_n2(smf_n1_n2 const&) = delete;
void operator=(smf_n1_n2 const&) = delete;
/*
* Create N1 SM Container to send to AMF (using NAS lib)
* @param [pdu_session_msg&] msg
* @param [uint8_t] msg_type Type of N1 message
* @param [std::string&] nas_msg_str store NAS message in form of string
* @param [uint8_t] sm_cause store NAS Cause
*
*/
void create_n1_sm_container(pdu_session_msg& msg, uint8_t msg_type, std::string& nas_msg_str, uint8_t sm_cause);
//for testing purpose!!
void create_n1_sm_container(uint8_t msg_type, std::string& nas_msg_str, uint8_t sm_cause = 0);
/*
* Create N2 SM Information to send to AMF (using NAS lib)
* @param [std::shared_ptr<itti_n11_create_sm_context_response>] sm_context_res
* @param [uint8_t] msg_type Type of N2 message
* @param [std::string&] ngap_msg_str store NGAP message in form of string
*
*/
void create_n2_sm_information(pdu_session_msg& msg, uint8_t ngap_msg_type, uint8_t ngap_ie_type, std::string& ngap_msg_str);
/*
* Decode N1 SM Container into the NAS mesasge (using NAS lib)
* @param [nas_message_t&] nas_msg Store NAS message after decoded
* @param [std::string&] n1_sm_msg N1 SM Container from AMF
* @return status of the decode process
*/
int decode_n1_sm_container(nas_message_t& nas_msg, std::string& n1_sm_msg);
/*
* Decode N2 SM Information (using NGAP lib)
* @param [Ngap_NGAP_PDU_t&] ngap_msg Store decoded NGAP message
* @param [std::string&] n2_sm_info N2 SM Information from AMF
* @return status of the decode process
*/
int decode_n2_sm_information(std::unique_ptr<Ngap_PDUSessionResourceSetupResponseTransfer_t>& ngap_IE, std::string& n2_sm_info, std::string& n2_sm_info_type);
smf_n1_n2(){};
smf_n1_n2(smf_n1_n2 const&) = delete;
void operator=(smf_n1_n2 const&) = delete;
/*
* Create N1 SM Container to send to AMF (using NAS lib)
* @param [pdu_session_msg&] msg
* @param [uint8_t] msg_type Type of N1 message
* @param [std::string&] nas_msg_str store NAS message in form of string
* @param [uint8_t] sm_cause store NAS Cause
*
*/
void create_n1_sm_container(pdu_session_msg& msg, uint8_t msg_type, std::string& nas_msg_str, uint8_t sm_cause);
//for testing purpose!!
void create_n1_sm_container(uint8_t msg_type, std::string& nas_msg_str, uint8_t sm_cause = 0);
/*
* Create N2 SM Information to send to AMF (using NAS lib)
* @param [std::shared_ptr<itti_n11_create_sm_context_response>] sm_context_res
* @param [uint8_t] msg_type Type of N2 message
* @param [std::string&] ngap_msg_str store NGAP message in form of string
*
*/
void create_n2_sm_information(pdu_session_msg& msg, uint8_t ngap_msg_type, uint8_t ngap_ie_type, std::string& ngap_msg_str);
/*
* Decode N1 SM Container into the NAS mesasge (using NAS lib)
* @param [nas_message_t&] nas_msg Store NAS message after decoded
* @param [std::string&] n1_sm_msg N1 SM Container from AMF
* @return status of the decode process
*/
int decode_n1_sm_container(nas_message_t& nas_msg, std::string& n1_sm_msg);
/*
* Decode N2 SM Information (using NGAP lib)
* @param [Ngap_NGAP_PDU_t&] ngap_msg Store decoded NGAP message
* @param [std::string&] n2_sm_info N2 SM Information from AMF
* @return status of the decode process
*/
int decode_n2_sm_information(std::unique_ptr<Ngap_PDUSessionResourceSetupResponseTransfer_t>& ngap_IE, std::string& n2_sm_info, std::string& n2_sm_info_type);
};
......
......@@ -25,7 +25,7 @@
\company Eurecom
\date 2019
\email: lionel.gauthier@eurecom.fr, tien-thinh.nguyen@eurecom.fr
*/
*/
#include "common_defs.h"
#include "itti.hpp"
......
......@@ -24,7 +24,7 @@
\company Eurecom
\date 2019
\email: lionel.gauthier@eurecom.fr, tien-thinh.nguyen@eurecom.fr
*/
*/
#ifndef FILE_SMF_N4_HPP_SEEN
#define FILE_SMF_N4_HPP_SEEN
......
......@@ -20,11 +20,11 @@
*/
/*! \file smf_paa_dynamic.hpp
* \brief
* \author Lionel Gauthier
* \company Eurecom
* \email: lionel.gauthier@eurecom.fr
*/
* \brief
* \author Lionel Gauthier
* \company Eurecom
* \email: lionel.gauthier@eurecom.fr
*/
#ifndef FILE_SMF_PAA_DYNAMIC_HPP_SEEN
#define FILE_SMF_PAA_DYNAMIC_HPP_SEEN
......
This diff is collapsed.
......@@ -24,7 +24,7 @@
\author Lionel Gauthier
\company Eurecom
\email: lionel.gauthier@eurecom.fr
*/
*/
#ifndef FILE_SMF_PCO_HPP_SEEN
#define FILE_SMF_PCO_HPP_SEEN
......
......@@ -24,7 +24,7 @@
\author Lionel GAUTHIER
\date 2019
\email: lionel.gauthier@eurecom.fr
*/
*/
#include "common_defs.h"
#include "logger.hpp"
#include "smf_pfcp_association.hpp"
......
This diff is collapsed.
This diff is collapsed.
......@@ -24,7 +24,7 @@
\company Eurecom
\date 2019
\email: lionel.gauthier@eurecom.fr, tien-thinh.nguyen@eurecom.fr
*/
*/
#ifndef FILE_SMF_PROCEDURE_HPP_SEEN
#define FILE_SMF_PROCEDURE_HPP_SEEN
......@@ -96,14 +96,14 @@ public:
class session_create_sm_context_procedure : public smf_procedure {
public:
explicit session_create_sm_context_procedure(std::shared_ptr<smf_pdu_session>& sppc) : smf_procedure(), ppc(sppc),
sx_triggered(), n11_triggered_pending(), n11_trigger() {}
sx_triggered(), n11_triggered_pending(), n11_trigger() {}
/*
*
*/
int run(std::shared_ptr<itti_n11_create_sm_context_request> req,
std::shared_ptr<itti_n11_create_sm_context_response>resp,
std::shared_ptr<smf::smf_context> pc);
std::shared_ptr<itti_n11_create_sm_context_response>resp,
std::shared_ptr<smf::smf_context> pc);
void handle_itti_msg (itti_n4_session_establishment_response& resp, std::shared_ptr<smf::smf_context> pc);
......@@ -119,14 +119,14 @@ public:
class session_update_sm_context_procedure : public smf_procedure {
public:
explicit session_update_sm_context_procedure(std::shared_ptr<smf_pdu_session>& sppc) : smf_procedure(), ppc(sppc),
sx_triggered(), n11_triggered_pending(), n11_trigger() {}
sx_triggered(), n11_triggered_pending(), n11_trigger() {}
/*
*
*/
int run(std::shared_ptr<itti_n11_update_sm_context_request> req,
std::shared_ptr<itti_n11_update_sm_context_response>resp,
std::shared_ptr<smf::smf_context> sc);
std::shared_ptr<itti_n11_update_sm_context_response>resp,
std::shared_ptr<smf::smf_context> sc);
/*
* Handle N4 modification response from UPF
* @param [itti_n4_session_modification_response] resp
......@@ -135,7 +135,7 @@ public:
*/
void handle_itti_msg (itti_n4_session_modification_response& resp, std::shared_ptr<smf::smf_context> sc);
std::shared_ptr<itti_n4_session_establishment_request> sx_triggered;
std::shared_ptr<itti_n4_session_modification_request> sx_triggered;
std::shared_ptr<smf_pdu_session> ppc;
std::shared_ptr<smf::smf_context> pc;
......
/*
* https://github.com/iafonov/multipart-parser-c
*/
#include "../../utils/multipartparser.h"
#include <string.h>
......
/*
* https://github.com/iafonov/multipart-parser-c
*/
#ifndef MULTIPARTPARSER_H
#define MULTIPARTPARSER_H
#ifdef __cplusplus
......
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