Commit d8fec017 authored by Yann Garcia's avatar Yann Garcia
Browse files

Adding MW interface TP checks

parent 705fdb65
Loading
Loading
Loading
Loading
+0 −15
Original line number Diff line number Diff line
@@ -140,21 +140,6 @@ int avp::decode_media_Component_Number(LibDiameter__Types__Base__AVPs::Media__Co
  return 0;
}

int avp::decode_media_Sub_Component(LibDiameter__Types__Rx__AVPs::Media__Sub__Component__AVP& p_avp) const {
  loggers::get_instance().log(">>> avp::decode_media_Sub_Component: '%d'", _code);
  loggers::get_instance().log_to_hexa("avp::decode_media_Sub_Component: _payload:", _payload.data(), _payload.size());

  // Sanity checks
  if (_payload.size() != 4) {
    loggers::get_instance().warning("avp::decode_media_Component_Number: Wrong payload length: '%d'", _payload.size());
    return -1;
  }
  // FIXME p_avp = LibDiameter__Types__Rx__AVPs::Media__Sub__Component__AVP(LibDiameter__Types__Base__AVPs::AVP__Header(_avp_header), converter::get_instance().bytes_to_int(_payload));
  loggers::get_instance().log_msg("avp::decode_media_Sub_Component: p_avp: ", p_avp);

  return 0;
}

int avp::decode_media_Type(LibDiameter__Types__Rx__AVPs::Media__Type__AVP& p_avp) const {
  loggers::get_instance().log(">>> avp::decode_media_Type: '%d'", _code);
  loggers::get_instance().log_to_hexa("avp::decode_media_Type: _payload:", _payload.data(), _payload.size());
+0 −1
Original line number Diff line number Diff line
@@ -38,7 +38,6 @@ public:
  int decode_framed_IP_Address(LibDiameter__Types__Base__AVPs::Framed__IP__Address__AVP& p_avp) const;
  int decode_media_Component_Description(LibDiameter__Types__Rx__AVPs::Media__Component__Description__AVP& p_avp) const;
  int decode_media_Component_Number(LibDiameter__Types__Base__AVPs::Media__Component__Number__AVP& p_avp) const;
  int decode_media_Sub_Component(LibDiameter__Types__Rx__AVPs::Media__Sub__Component__AVP& p_avp) const;
  int decode_media_Type(LibDiameter__Types__Rx__AVPs::Media__Type__AVP& p_avp) const;
  int decode_af_Application_Identifier(LibDiameter__Types__Rx__AVPs::AF__Application__Identifier__AVP& p_avp) const;
}; // End of class avp
 No newline at end of file
+13 −5
Original line number Diff line number Diff line
@@ -694,11 +694,19 @@ int diameter_codec::decode_media_Component_Description(LibDiameter__Types__Rx__A
        if (it.second->decode_media_Component_Number(OPTIONAL<LibDiameter__Types__Base__AVPs::Media__Component__Number__AVP>(p_avp.media__Component__Nr())) == -1) {
          loggers::get_instance().warning("diameter_codec::decode_media_Component_Description: Failed to decode Media_Component_Number AVP");
        }
      } else if (it.second->get_code() == AVP_Media_Sub_Component_AVP) {
        //if (it.second->decode_media_Sub_Component(OPTIONAL<LibDiameter__Types__Rx__AVPs::Media__Component__Description__AVP_media__Sub__component>(p_avp.media__Sub__component())) == -1) {
          loggers::get_instance().warning("diameter_codec::decode_media_Component_Description: Failed to decode Media_Sub_Component AVP");
          return -1;
        //}
      } else if (it.second->get_code() == AVP_Media_Sub_Component_AVP) {//Media__Sub__Component__AVP_aVP__Type
        std::map<const int, std::unique_ptr<avp> > media_sub_avps_;
        if (decode_avps_from_payload(it.second->get_payload(), media_sub_avps_) == -1) {
          loggers::get_instance().warning("diameter_codec::decode_media_Component_Description: Failed to decode grouped AVPs");
          p_avp.media__Sub__component().set_to_omit();
          continue;
        }
        LibDiameter__Types__Rx__AVPs::Media__Component__Description__AVP_media__Sub__component media_sub;
        for (const auto& media_sub_it : media_sub_avps_) {
          //if media_sub_it.second->get_code() == 
        } // End of 'for' statement
        p_avp.media__Sub__component().set_value(&media_sub);

      } else if (it.second->get_code() == AVP_Media_Type_AVP) { 
        if (it.second->decode_media_Type(OPTIONAL<LibDiameter__Types__Rx__AVPs::Media__Type__AVP>(p_avp.media__type())) == -1) {
          loggers::get_instance().warning("diameter_codec::decode_media_Component_Description: Failed to decode Media_Type AVP");
+9 −2
Original line number Diff line number Diff line
@@ -76,8 +76,15 @@ system.eaPort.params := "UT/UDP(dst_ip=10.200.60.23,dst_port=12345,src_port=1234
# In this section you can specify what parts of your test suite you want to execute.
#AtsImsIot_TestControl.control

# Emergency Network Attachment and Establishment of the Emergency Bearer with USIM.
AtsIms5gIot_xxx_REG.TC_VoNR_xxx
# To perform UE emergency 5G registration to the network with USIM and establish an emergency PDU session
AtsIms5gIot_xxx_REG.TD_VoNR_ECO_INT_5RG_01
# To attempt initial emergency IMS registration via the established emergency PDU session
#AtsIms5gIot_xxx_REG.TD_VoNR_ECO_INT_5RG_02
# To perform emergency IMS registration via the established emergency PDU session
#AtsIms5gIot_xxx_REG.TD_VoNR_ECO_INT_REG_01

#AtsIms5gIot_xxx_REG.TC_VoNR_Diameter_AAR
#AtsIms5gIot_xxx_REG.TC_VoNR_Diameter_UAR

[GROUPS]
# In this section you can specify groups of hosts. These groups can be used inside the
Original line number Diff line number Diff line
Subproject commit f8843ac9740f8efe537f4938918920c8e8f8e692
Subproject commit 42acd2490f13d824deecdd393c4da8ebba63f38d
Loading