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

Bug fixed in security_services_its::retrieve_ssps

parent d699a649
Loading
Loading
Loading
Loading
+6 −6
Original line number Diff line number Diff line
@@ -1096,8 +1096,8 @@
    <FileResource projectRelativePath="bin/SSEM_PDU_Descriptions.o" relativeURI="bin/SSEM_PDU_Descriptions.o"/>
    <FileResource projectRelativePath="bin/SremCodec.d" relativeURI="bin/SremCodec.d"/>
    <FileResource projectRelativePath="bin/SremCodec.o" relativeURI="bin/SremCodec.o"/>
    <FileResource projectRelativePath="bin/SremSsemLayer.d" relativeURI="bin/SremSsemLayer.d"/>
    <FileResource projectRelativePath="bin/SremSsemLayer.o" relativeURI="bin/SremSsemLayer.o"/>
    <FileResource projectRelativePath="bin/srem_ssem_layer.d" relativeURI="bin/srem_ssem_layer.d"/>
    <FileResource projectRelativePath="bin/srem_ssem_layer.o" relativeURI="bin/srem_ssem_layer.o"/>
    <FileResource projectRelativePath="bin/SremSsemPort.d" relativeURI="bin/SremSsemPort.d"/>
    <FileResource projectRelativePath="bin/SremSsemPort.o" relativeURI="bin/SremSsemPort.o"/>
    <FileResource projectRelativePath="bin/SsemCodec.d" relativeURI="bin/SsemCodec.d"/>
@@ -1583,10 +1583,10 @@
    <FileResource projectRelativePath="ccsrc/Protocols/Security/sha384.hh" relativeURI="ccsrc/Protocols/Security/sha384.hh"/>
    <FileResource projectRelativePath="ccsrc/Protocols/SremSsem/SremCodec.cc" relativeURI="ccsrc/Protocols/SremSsem/SremCodec.cc"/>
    <FileResource projectRelativePath="ccsrc/Protocols/SremSsem/SremCodec.hh" relativeURI="ccsrc/Protocols/SremSsem/SremCodec.hh"/>
    <FileResource projectRelativePath="ccsrc/Protocols/SremSsem/SremSsemLayer.cc" relativeURI="ccsrc/Protocols/SremSsem/SremSsemLayer.cc"/>
    <FileResource projectRelativePath="ccsrc/Protocols/SremSsem/SremSsemLayer.hh" relativeURI="ccsrc/Protocols/SremSsem/SremSsemLayer.hh"/>
    <FileResource projectRelativePath="ccsrc/Protocols/SremSsem/SremSsemLayerFactory.hh" relativeURI="ccsrc/Protocols/SremSsem/SremSsemLayerFactory.hh"/>
    <FileResource projectRelativePath="ccsrc/Protocols/SremSsem/SremSsemTypes.hh" relativeURI="ccsrc/Protocols/SremSsem/SremSsemTypes.hh"/>
    <FileResource projectRelativePath="ccsrc/Protocols/SremSsem/srem_ssem_layer.cc" relativeURI="ccsrc/Protocols/SremSsem/srem_ssem_layer.cc"/>
    <FileResource projectRelativePath="ccsrc/Protocols/SremSsem/srem_ssem_layer.hh" relativeURI="ccsrc/Protocols/SremSsem/srem_ssem_layer.hh"/>
    <FileResource projectRelativePath="ccsrc/Protocols/SremSsem/srem_ssem_layer_factory.hh" relativeURI="ccsrc/Protocols/SremSsem/srem_ssem_layer_factory.hh"/>
    <FileResource projectRelativePath="ccsrc/Protocols/SremSsem/srem_ssem_types.hh" relativeURI="ccsrc/Protocols/SremSsem/srem_ssem_types.hh"/>
    <FileResource projectRelativePath="ccsrc/Protocols/SremSsem/SsemCodec.cc" relativeURI="ccsrc/Protocols/SremSsem/SsemCodec.cc"/>
    <FileResource projectRelativePath="ccsrc/Protocols/SremSsem/SsemCodec.hh" relativeURI="ccsrc/Protocols/SremSsem/SsemCodec.hh"/>
    <FileResource projectRelativePath="ccsrc/Protocols/SremSsem/module.mk" relativeURI="ccsrc/Protocols/SremSsem/module.mk"/>
+1 −1
Original line number Diff line number Diff line
@@ -1655,7 +1655,7 @@ int ConfigRsuSimulatorLayer::process_ut_cpm_trigger(const OCTETSTRING &data, par
    LibItsCps__TypesAndValues::UtCpmTrigger trigger;
    // Decode msgs
    if ((flag & 0x80) == 0x80) {
      trigger.setVehicleRole() = *p;
      trigger.setVehicleType() = *p;
    }
    // if ((flag & 0x40) == 0x40) {
    //   trigger.leaveClusterWithCause() = *p;
+3 −1
Original line number Diff line number Diff line
@@ -368,11 +368,12 @@ int security_services_its::process_ieee_1609_dot2_signed_data(const Ieee1609Dot2
int security_services_its::retrieve_ssps(const Ieee1609Dot2BaseTypes::SequenceOfPsidSsp& p_psid_ssps, params_its &p_params) {
  loggers::get_instance().log_msg(">>> security_services_its::retrieve_ssps: ", p_psid_ssps);
  loggers::get_instance().log(">>> security_services_its::retrieve_ssps: psid_ssps size: %d", p_psid_ssps.lengthof());
  loggers::get_instance().log(">>> security_services_its::retrieve_ssps: its_aid: %s", p_params[params_its::its_aid].c_str());
  for (int i = 0; i < p_psid_ssps.lengthof(); i++) {
    const Ieee1609Dot2BaseTypes::PsidSsp &psid_ssp = p_psid_ssps[i];
    loggers::get_instance().log_msg("security_services_its::retrieve_ssps: Processing psid_ssp ", psid_ssp);
    const OPTIONAL<Ieee1609Dot2BaseTypes::ServiceSpecificPermissions> &s = psid_ssp.ssp();
    if (s.is_present()) {
    if ((p_params[params_its::its_aid].compare(std::to_string(static_cast<int>(psid_ssp.psid()))) == 0) && (s.is_present())) {
      const Ieee1609Dot2BaseTypes::ServiceSpecificPermissions &ssp = static_cast<const Ieee1609Dot2BaseTypes::ServiceSpecificPermissions>(s);
      loggers::get_instance().log_msg("security_services_its::retrieve_ssps: Processing ssp ", ssp);
      params_its::const_iterator it = p_params.find(std::to_string(psid_ssp.psid()));
@@ -384,6 +385,7 @@ int security_services_its::retrieve_ssps(const Ieee1609Dot2BaseTypes::SequenceOf
          os = ssp.bitmapSsp();
        }
        p_params[params_its::ssp] = std::string(static_cast<const char *>(oct2str(os)));
        break; // End of 'for' statement
      }
    }
  } // End of 'for' statement
+1 −1
Original line number Diff line number Diff line
@@ -37,7 +37,7 @@ int uppertester_cps_codec::encode(const LibItsCps__TypesAndValues::UtCpmTrigger
  encoding_buffer.put_c(static_cast<const uint8_t>(uppertester_cps_codec::c_utCpmTrigger));
  uint8_t                                                  flags = 0x00;
  OCTETSTRING                                              val;
  if (r.ischosen(LibItsCps__TypesAndValues::UtCpmTrigger::ALT_setVehicleRole)) {
  if (r.ischosen(LibItsCps__TypesAndValues::UtCpmTrigger::ALT_setVehicleType)) {
    flags |= 0x80;
    val = int2oct(r.setVehicleType(), 1);
  } else {
+1 −0
Original line number Diff line number Diff line
@@ -17,6 +17,7 @@

class Base_Type;
class Record_Type;
class Record_Of_Type;
class TTCN_Typedescriptor_t;
class TTCN_Buffer;

Loading