Commit 4fa0f372 authored by Tien Thinh NGUYEN's avatar Tien Thinh NGUYEN

Update DL NAS Transport

parent 1987179c
...@@ -96,12 +96,11 @@ Payload_Container::Payload_Container( ...@@ -96,12 +96,11 @@ Payload_Container::Payload_Container(
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
Payload_Container::~Payload_Container() {} Payload_Container::~Payload_Container() {}
/*
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
void Payload_Container::setValue(uint8_t iei, uint8_t value) { void Payload_Container::SetValue(const bstring& cnt) {
_iei = iei; content = std::optional<bstring>(cnt);
SetLengthIndicator(blength(cnt));
} }
*/
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
void Payload_Container::SetValue( void Payload_Container::SetValue(
......
...@@ -55,9 +55,11 @@ class Payload_Container : Type6NasIe { ...@@ -55,9 +55,11 @@ class Payload_Container : Type6NasIe {
int Encode(uint8_t* buf, int len, uint8_t type); int Encode(uint8_t* buf, int len, uint8_t type);
int Decode(uint8_t* buf, int len, bool is_iei, uint8_t type); int Decode(uint8_t* buf, int len, bool is_iei, uint8_t type);
void SetValue(const bstring& cnt);
bool GetValue(bstring& cnt) const;
void SetValue(const std::vector<PayloadContainerEntry>& content); void SetValue(const std::vector<PayloadContainerEntry>& content);
bool GetValue(std::vector<PayloadContainerEntry>& content) const; bool GetValue(std::vector<PayloadContainerEntry>& content) const;
bool GetValue(bstring& cnt) const;
private: private:
std::optional<bstring> content; std::optional<bstring> content;
......
This diff is collapsed.
...@@ -26,7 +26,7 @@ ...@@ -26,7 +26,7 @@
namespace nas { namespace nas {
class DLNASTransport { class DLNASTransport : public NasMmPlainHeader {
public: public:
DLNASTransport(); DLNASTransport();
~DLNASTransport(); ~DLNASTransport();
...@@ -34,7 +34,7 @@ class DLNASTransport { ...@@ -34,7 +34,7 @@ class DLNASTransport {
void SetHeader(uint8_t security_header_type); void SetHeader(uint8_t security_header_type);
int Encode(uint8_t* buf, int len); int Encode(uint8_t* buf, int len);
int Decode(NasMmPlainHeader* header, uint8_t* buf, int len); int Decode(uint8_t* buf, int len);
void SetPayloadContainerType(uint8_t value); void SetPayloadContainerType(uint8_t value);
...@@ -42,18 +42,24 @@ class DLNASTransport { ...@@ -42,18 +42,24 @@ class DLNASTransport {
void SetPayloadContainer(uint8_t* buf, int len); void SetPayloadContainer(uint8_t* buf, int len);
void SetPduSessionId(uint8_t value); void SetPduSessionId(uint8_t value);
// TODO: Get
void SetAdditionalInformation(const bstring& value); void SetAdditionalInformation(const bstring& value);
// TODO: Get
void Set5gmmCause(uint8_t value); void Set5gmmCause(uint8_t value);
// TODO: Get
void SetBackOffTimerValue(uint8_t unit, uint8_t value); void SetBackOffTimerValue(uint8_t unit, uint8_t value);
// TODO: Get
public: public:
NasMmPlainHeader* plain_header; PayloadContainerType ie_payload_container_type; // Mandatory
PayloadContainerType* ie_payload_container_type; Payload_Container ie_payload_container; // Mandatory
Payload_Container* ie_payload_container; std::optional<PduSessionIdentity2> ie_pdu_session_identity_2; // Optional
PduSessionIdentity2* ie_pdu_session_identity_2; std::optional<AdditionalInformation> ie_additional_information; // Optional
AdditionalInformation* ie_additional_information; std::optional<_5GMM_Cause> ie_5gmm_cause; // Optional
_5GMM_Cause* ie_5gmm_cause; std::optional<GprsTimer3> ie_back_off_timer_value; // Optional
GprsTimer3* ie_back_off_timer_value;
}; };
} // namespace nas } // namespace nas
......
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