Commit a8efb6a6 authored by garciay's avatar garciay
Browse files

ATS security review

parent 652c7f0e
Loading
Loading
Loading
Loading
+20 −15
Original line number Diff line number Diff line
@@ -55,20 +55,20 @@ module ItsSecurity_Functions {
        * @desc   Prepare a secured CAM
        * @param  p_configId            The configuration identifier to be used
        * @param  p_headerFields        HeaderInfo to be inserted in the message
        * @param  p_issuerIdentifier      Add digest or AT certificate or certificate chain
        * @param  p_signerIdentifier      Add digest or AT certificate or certificate chain
        * @param  p_addMissingHeaders   Whether to add mandatory headers not present in p_headerFields
        * @return Secured GeoNetworking packet containing a CAM
        */
        function f_prepareSecuredCam(
                                     in charstring p_configId,
                                     in template (omit) HeaderInfo p_headerFields := omit,
                                     in SignerIdentifier p_issuerIdentifier,// := e_certificate_digest_with_sha256,
                                     in boolean p_addMissingHeaders := true
                                     in HeaderInfo p_headerInfo,
                                     in SignerIdentifier p_signerIdentifier/*,
                                     in boolean p_addMissingHeaders := true*/
        ) runs on ItsGeoNetworking return GeoNetworkingPdu {
            // Local variables
            var GnNonSecuredPacket v_gnNonSecuredPacket;
            var octetstring v_gnPayload;
            var template (value) Ieee1609Dot2Data v_securedMessage := {};
            var template (value) EtsiTs103097Data v_securedMessage;
            
            // Build signed Ieee1609Dot2Data
            v_gnNonSecuredPacket := valueof(m_geoNwShbPacket(
@@ -93,14 +93,19 @@ module ItsSecurity_Functions {
                    v_gnNonSecuredPacket
                )
            );
            /*f_buildGnSecuredCam(
            f_buildGnSecuredCam(
                v_securedMessage,
                m_payload_signed(v_gnPayload),
                p_issuerIdentifier,
                p_headerFields,
                p_configId,
                p_addMissingHeaders
            );*/
                valueof(m_toBeSignedData(
                                         m_signedDataPayload(
                                                             m_etsiTs103097Data_unsecured(
                                                                                          v_gnPayload
                                                            )), 
                                         p_headerInfo
                                        )),
                p_signerIdentifier,
                p_configId/*,
                p_addMissingHeaders*/
            );
            
            // Return secured Gn packet
            return valueof(m_geoNwSecPdu(v_gnNonSecuredPacket, v_securedMessage));
@@ -186,12 +191,12 @@ module ItsSecurity_Functions {
        */
        function f_sendSecuredCam(
                                  in charstring p_configId,
                                  in template (omit) HeaderInfo p_headerFields := omit,
                                  in SignerIdentifier p_issuerIdentifier// := e_certificate_digest_with_sha256
                                  in HeaderInfo p_headerInfo,
                                  in SignerIdentifier p_issuerIdentifier
        ) runs on ItsGeoNetworking return GeoNetworkingPdu {
            
            // Local variables
            var GeoNetworkingPdu v_securedGnPdu := {};//f_prepareSecuredCam(p_configId, p_headerFields, p_issuerIdentifier);
            var GeoNetworkingPdu v_securedGnPdu := f_prepareSecuredCam(p_configId, p_headerInfo, p_issuerIdentifier);
                   
            f_sendGeoNetMessage(valueof(m_geoNwReq_linkLayerBroadcast(v_securedGnPdu)));
                        
+782 −700

File changed.

Preview size limit exceeded, changes collapsed.

+9 −411
Original line number Diff line number Diff line
@@ -26,422 +26,20 @@ module ItsSecurity_TestControl {
         * @see ETSI TS 103 096-2 V1.2.2 (2016-01) Clause 5.2 Sending behaviour
         */
        if (PICS_GN_SECURITY) {
            execute(TC_SEC_ITSS_SND_MSG_01_01_BV());
            execute(TC_SEC_ITSS_SND_MSG_04_01_BV());
            execute(TC_SEC_ITSS_SND_MSG_04_02_BV());
            execute(TC_SEC_ITSS_SND_MSG_05_01_BV());
            execute(TC_SEC_ITSS_SND_MSG_01_BV());
            
            /**
             * @desc Sending behaviour test cases for CAM profile
             * @see ETSI TS 103 096-2 V1.2.2 (2016-01) Clause 5.2.4 CAM profile
             */
            execute(TC_SEC_ITSS_SND_CAM_01_01_BV());
            execute(TC_SEC_ITSS_SND_CAM_02_01_BV());
            execute(TC_SEC_ITSS_SND_CAM_05_01_BV());
            execute(TC_SEC_ITSS_SND_CAM_05_02_BV());
            execute(TC_SEC_ITSS_SND_CAM_06_01_BV());
            execute(TC_SEC_ITSS_SND_CAM_07_01_TI());
            execute(TC_SEC_ITSS_SND_CAM_08_01_BV());
            execute(TC_SEC_ITSS_SND_CAM_09_01_BV());
            execute(TC_SEC_ITSS_SND_CAM_09_02_BV());
            execute(TC_SEC_ITSS_SND_CAM_10_01_BV());
            execute(TC_SEC_ITSS_SND_CAM_12_01_BV());
            execute(TC_SEC_ITSS_SND_CAM_14_01_BV());
            execute(TC_SEC_ITSS_SND_CAM_15_01_BV());
            execute(TC_SEC_ITSS_SND_CAM_16_01_BV());
            
            /**
             * @desc Sending behaviour test cases for DENM profile
             * @see ETSI TS 103 096-2 V1.2.2 (2016-01) Clause 5.2.5 DENM profile
             */
            execute(TC_SEC_ITSS_SND_DENM_01_01_BV());
            execute(TC_SEC_ITSS_SND_DENM_02_01_BV());
            execute(TC_SEC_ITSS_SND_DENM_03_01_BV());
            execute(TC_SEC_ITSS_SND_DENM_04_01_BV());
            if (PICS_CERTIFICATE_SELECTION) {
                execute(TC_SEC_ITSS_SND_DENM_05_01_BV());
                if (PICS_USE_CIRCULAR_REGION) {
                    execute(TC_SEC_ITSS_SND_DENM_05_02_BV());
                }
                if (PICS_USE_RECTANGULAR_REGION) {
                    execute(TC_SEC_ITSS_SND_DENM_05_03_BV());
                }
                if (PICS_USE_POLYGONAL_REGION) {
                    execute(TC_SEC_ITSS_SND_DENM_05_04_BV());
                }
                if (PICS_USE_IDENTIFIED_REGION) {
                    execute(TC_SEC_ITSS_SND_DENM_05_05_BV());
                }
            }
            execute(TC_SEC_ITSS_SND_DENM_08_01_BV());
            execute(TC_SEC_ITSS_SND_DENM_10_01_BV());
            
            if (PICS_ITS_AID_OTHER_PROFILE) {
                execute(TC_SEC_ITSS_SND_GENMSG_01_01_BV());
                execute(TC_SEC_ITSS_SND_GENMSG_02_01_BV());
                execute(TC_SEC_ITSS_SND_GENMSG_03_01_BV());
                execute(TC_SEC_ITSS_SND_GENMSG_04_01_BV());
                if (PICS_CERTIFICATE_SELECTION) {
                    execute(TC_SEC_ITSS_SND_GENMSG_05_01_BV());
                    if (PICS_USE_CIRCULAR_REGION) {
                        execute(TC_SEC_ITSS_SND_GENMSG_05_02_BV());
                    }
                    if (PICS_USE_RECTANGULAR_REGION) {
                        execute(TC_SEC_ITSS_SND_GENMSG_05_03_BV());
                    }
                    if (PICS_USE_POLYGONAL_REGION) {
                        execute(TC_SEC_ITSS_SND_GENMSG_05_04_BV());
                    }
                    if (PICS_USE_IDENTIFIED_REGION) {
                        execute(TC_SEC_ITSS_SND_GENMSG_05_05_BV());
                    }
                } else {
                    execute(TC_SEC_ITSS_SND_GENMSG_05_06_BV());
                }
                execute(TC_SEC_ITSS_SND_GENMSG_06_01_BV());
                execute(TC_SEC_ITSS_SND_GENMSG_07_01_BV());
            }
            
            /**
             * @desc Sending behaviour test cases for certificates profile
             * @see ETSI TS 103 096-2 V1.2.2 (2016-01) Clause 5.2.7 Profiles for certificates
             */
            execute(TC_SEC_ITSS_SND_CERT_01_01_BV());
            execute(TC_SEC_ITSS_SND_CERT_01_02_BV());
            execute(TC_SEC_ITSS_SND_CERT_02_01_BV());
            if (PICS_CERTIFICATE_SELECTION) {
                if (PICS_USE_RECTANGULAR_REGION) {
                    execute(TC_SEC_ITSS_SND_CERT_04_01_BV());
                    execute(TC_SEC_ITSS_SND_CERT_04_02_BV());
                }
                if (PICS_USE_POLYGONAL_REGION) {
                    execute(TC_SEC_ITSS_SND_CERT_05_01_BV());
                    execute(TC_SEC_ITSS_SND_CERT_05_02_BV());
                }
                if (PICS_USE_IDENTIFIED_REGION) {
                    execute(TC_SEC_ITSS_SND_CERT_06_01_BV());
                    execute(TC_SEC_ITSS_SND_CERT_06_02_BV());
                }
                execute(TC_SEC_ITSS_SND_CERT_07_01_BV());
                if (PICS_USE_IDENTIFIED_REGION) {
                    execute(TC_SEC_ITSS_SND_CERT_07_02_BV());
                }
            }
            execute(TC_SEC_ITSS_SND_CERT_08_01_BV());
            execute(TC_SEC_ITSS_SND_CERT_09_01_BV());
            execute(TC_SEC_ITSS_SND_CERT_09_02_BV());
            execute(TC_SEC_ITSS_SND_CERT_10_01_BV());
            execute(TC_SEC_ITSS_SND_CERT_10_02_BV());
            execute(TC_SEC_ITSS_SND_CERT_11_01_BV());
            execute(TC_SEC_ITSS_SND_CERT_11_02_BV());
            execute(TC_SEC_ITSS_SND_CERT_12_01_BV());
            
            /**
             * @desc Sending behaviour test cases for AA certificate profil
             * @see ETSI TS 103 096-2 V1.2.2 (2016-01) Clause 5.2.7.7 AA certificate profile
             */
            execute(TC_SEC_ITSS_SND_CERT_AA_01_01_BV());
            execute(TC_SEC_ITSS_SND_CERT_AA_02_01_BV());
            execute(TC_SEC_ITSS_SND_CERT_AA_03_01_BV());
            execute(TC_SEC_ITSS_SND_CERT_AA_04_01_BV());
            execute(TC_SEC_ITSS_SND_CERT_AA_05_01_BV());
            execute(TC_SEC_ITSS_SND_CERT_AA_08_01_BV());
            execute(TC_SEC_ITSS_SND_CERT_AA_10_01_BV());
            /**
             * @desc Sending behaviour test cases for AT certificate profil
             * @see ETSI TS 103 096-2 V1.2.2 (2016-01) Clause 5.2.7.8 AT certificate profile
             */
            execute(TC_SEC_ITSS_SND_CERT_AT_01_01_BV());
            execute(TC_SEC_ITSS_SND_CERT_AT_02_01_BV());
            execute(TC_SEC_ITSS_SND_CERT_AT_03_01_BV());
            execute(TC_SEC_ITSS_SND_CERT_AT_04_01_BV());
            execute(TC_SEC_ITSS_SND_CERT_AT_05_01_BV());
            execute(TC_SEC_ITSS_SND_CERT_AT_07_01_BV());
            execute(TC_SEC_ITSS_SND_CERT_AT_08_01_BV());
            execute(TC_SEC_ITSS_SND_CERT_AT_10_01_BV());
        }
            
        /**
         * @desc Receiver behaviour test cases
         * @see ETSI TS 103 096-2 V1.2.2 (2016-01) Clause 5.3 Receiver behaviour
         */
        if (PICS_GN_SECURITY) {
            /**
             * @desc Sending behaviour test cases for CAM profile
             * @see ETSI TS 103 096-2 V1.2.2 (2016-01) Clause 5.3.2 CAM Profile
             */
            execute(TC_SEC_ITSS_RCV_CAM_01_01_BV());
            execute(TC_SEC_ITSS_RCV_CAM_01_02_BV());
            execute(TC_SEC_ITSS_RCV_CAM_01_03_BV());
            execute(TC_SEC_ITSS_RCV_CAM_02_01_BO());
            execute(TC_SEC_ITSS_RCV_CAM_02_02_BO());
            execute(TC_SEC_ITSS_RCV_CAM_04_01_BO());
            execute(TC_SEC_ITSS_RCV_CAM_04_02_BO());
            execute(TC_SEC_ITSS_RCV_CAM_04_03_BO());
            execute(TC_SEC_ITSS_RCV_CAM_04_04_BO());
            execute(TC_SEC_ITSS_RCV_CAM_04_05_BO());
            execute(TC_SEC_ITSS_RCV_CAM_04_06_BO());
            execute(TC_SEC_ITSS_RCV_CAM_04_06a_BO());
            execute(TC_SEC_ITSS_RCV_CAM_04_07_BO());
            execute(TC_SEC_ITSS_RCV_CAM_04_08_BO());
            execute(TC_SEC_ITSS_RCV_CAM_04_09_BO());
            execute(TC_SEC_ITSS_RCV_CAM_04_10_BO());
            execute(TC_SEC_ITSS_RCV_CAM_04_11_BO());
            execute(TC_SEC_ITSS_RCV_CAM_04_12_BV());
            execute(TC_SEC_ITSS_RCV_CAM_04_13_BO());
            execute(TC_SEC_ITSS_RCV_CAM_05_01_BO());
            execute(TC_SEC_ITSS_RCV_CAM_05_02_BO());
            execute(TC_SEC_ITSS_RCV_CAM_05_03_BO());
            execute(TC_SEC_ITSS_RCV_CAM_05_04_BO());
            execute(TC_SEC_ITSS_RCV_CAM_05_05_BO());
            execute(TC_SEC_ITSS_RCV_CAM_06_01_BO());
            execute(TC_SEC_ITSS_RCV_CAM_06_02_BO());
            execute(TC_SEC_ITSS_RCV_CAM_07_01_BO());
            execute(TC_SEC_ITSS_RCV_CAM_07_02_BO());
            execute(TC_SEC_ITSS_RCV_CAM_09_02_BO());
            execute(TC_SEC_ITSS_RCV_CAM_09_03_BO());
            execute(TC_SEC_ITSS_RCV_CAM_09_04_BO());
            execute(TC_SEC_ITSS_RCV_CAM_09_05_BO());
            execute(TC_SEC_ITSS_RCV_CAM_09_06_BO());
            execute(TC_SEC_ITSS_RCV_CAM_09_07_BO());
            execute(TC_SEC_ITSS_RCV_CAM_10_01_BO());
            execute(TC_SEC_ITSS_RCV_CAM_10_02_BO());
            execute(TC_SEC_ITSS_RCV_CAM_11_01_BO());
            execute(TC_SEC_ITSS_RCV_CAM_11_02_BO());
            execute(TC_SEC_ITSS_RCV_CAM_11_03_BO());
            execute(TC_SEC_ITSS_RCV_CAM_12_01_BO());
            execute(TC_SEC_ITSS_RCV_CAM_12_02_BO());
            execute(TC_SEC_ITSS_RCV_CAM_12_03_BO());
            execute(TC_SEC_ITSS_RCV_CAM_12_04_BO());
            execute(TC_SEC_ITSS_RCV_CAM_13_01_BO());
            execute(TC_SEC_ITSS_RCV_CAM_13_02_BO());
            execute(TC_SEC_ITSS_RCV_CAM_13_03_BO());
            execute(TC_SEC_ITSS_RCV_CAM_13_04_BO());
            execute(TC_SEC_ITSS_RCV_CAM_13_05_BO());
            execute(TC_SEC_ITSS_RCV_CAM_13_06_BO());
            
            /**
             * @desc Sending behaviour test cases for DENM profile
             * @see ETSI TS 103 096-2 V1.2.2 (2016-01) Clause 5.3.3 DENM Profile
             */
            execute(TC_SEC_ITSS_RCV_DENM_01_01_BV());
            execute(TC_SEC_ITSS_RCV_DENM_01_02_BV());
            execute(TC_SEC_ITSS_RCV_DENM_01_03_BV());
            execute(TC_SEC_ITSS_RCV_DENM_01_04_BV());
            execute(TC_SEC_ITSS_RCV_DENM_01_05_BV());
            execute(TC_SEC_ITSS_RCV_DENM_02_01_BO());
            execute(TC_SEC_ITSS_RCV_DENM_02_02_BO());
            execute(TC_SEC_ITSS_RCV_DENM_04_01_BO());
            execute(TC_SEC_ITSS_RCV_DENM_04_02_BO());
            execute(TC_SEC_ITSS_RCV_DENM_04_03_BO());
            execute(TC_SEC_ITSS_RCV_DENM_04_04_BO());
            execute(TC_SEC_ITSS_RCV_DENM_04_05_BO());
            execute(TC_SEC_ITSS_RCV_DENM_04_06_BO());
            execute(TC_SEC_ITSS_RCV_DENM_04_06a_BO());
            execute(TC_SEC_ITSS_RCV_DENM_04_07_BO());
            execute(TC_SEC_ITSS_RCV_DENM_04_08_BO());
            execute(TC_SEC_ITSS_RCV_DENM_04_09_BO());
            execute(TC_SEC_ITSS_RCV_DENM_04_10_BO());
            execute(TC_SEC_ITSS_RCV_DENM_04_11_BO());
            execute(TC_SEC_ITSS_RCV_DENM_04_12_BO());
            execute(TC_SEC_ITSS_RCV_DENM_04_13_BO());
            execute(TC_SEC_ITSS_RCV_DENM_04_14_BO());
            execute(TC_SEC_ITSS_RCV_DENM_05_01_BO());
            execute(TC_SEC_ITSS_RCV_DENM_05_02_BO());
            execute(TC_SEC_ITSS_RCV_DENM_05_03_BO());
            execute(TC_SEC_ITSS_RCV_DENM_05_04_BO());
            execute(TC_SEC_ITSS_RCV_DENM_06_01_BO());
            execute(TC_SEC_ITSS_RCV_DENM_06_02_BO());
            execute(TC_SEC_ITSS_RCV_DENM_07_01_BO());
            execute(TC_SEC_ITSS_RCV_DENM_07_02_BO());
            if (PICS_USE_CIRCULAR_REGION) {
                execute(TC_SEC_ITSS_RCV_DENM_08_01_BO());
            }
            if (PICS_USE_RECTANGULAR_REGION) {
                execute(TC_SEC_ITSS_RCV_DENM_08_02_BO());
            }
            if (PICS_USE_POLYGONAL_REGION) {
                execute(TC_SEC_ITSS_RCV_DENM_08_03_BO());
            }
            if (PICS_USE_IDENTIFIED_REGION) {
                execute(TC_SEC_ITSS_RCV_DENM_08_04_BO());
            }
            execute(TC_SEC_ITSS_RCV_DENM_09_02_BO());
            execute(TC_SEC_ITSS_RCV_DENM_09_03_BO());
            execute(TC_SEC_ITSS_RCV_DENM_09_04_BO());
            execute(TC_SEC_ITSS_RCV_DENM_09_05_BO());
            execute(TC_SEC_ITSS_RCV_DENM_09_06_BO());
            execute(TC_SEC_ITSS_RCV_DENM_10_01_BO());
            execute(TC_SEC_ITSS_RCV_DENM_10_02_BO());
            execute(TC_SEC_ITSS_RCV_DENM_11_01_BO());
            execute(TC_SEC_ITSS_RCV_DENM_11_02_BO());
            execute(TC_SEC_ITSS_RCV_DENM_12_01_BO());
            execute(TC_SEC_ITSS_RCV_DENM_12_02_BO());
            execute(TC_SEC_ITSS_RCV_DENM_12_03_BO());
            execute(TC_SEC_ITSS_RCV_DENM_12_04_BO());
            execute(TC_SEC_ITSS_RCV_DENM_13_01_BO());
            execute(TC_SEC_ITSS_RCV_DENM_13_02_BO());
            execute(TC_SEC_ITSS_RCV_DENM_13_03_BO());
            execute(TC_SEC_ITSS_RCV_DENM_13_04_BO());
            execute(TC_SEC_ITSS_RCV_DENM_13_05_BO());
            execute(TC_SEC_ITSS_RCV_DENM_13_06_BO());
            /**
             * @desc Receiving behaviour test cases for Other profile
             * @see ETSI TS 103 096-2 V1.2.2 (2016-01) Clause 5.3.4 Generic Signed Message Profile
             */
            if (PICS_GN_GBC_SRC) {
                execute(TC_SEC_ITSS_RCV_GENMSG_01_01_BV());
                execute(TC_SEC_ITSS_RCV_GENMSG_01_02_BV());
                execute(TC_SEC_ITSS_RCV_GENMSG_01_03_BV());
                execute(TC_SEC_ITSS_RCV_GENMSG_01_04_BV());
                execute(TC_SEC_ITSS_RCV_GENMSG_01_05_BV());
                execute(TC_SEC_ITSS_RCV_GENMSG_02_01_BO());
                execute(TC_SEC_ITSS_RCV_GENMSG_02_02_BO());
                execute(TC_SEC_ITSS_RCV_GENMSG_04_01_BO());
                execute(TC_SEC_ITSS_RCV_GENMSG_04_02_BO());
                execute(TC_SEC_ITSS_RCV_GENMSG_04_03_BO());
                execute(TC_SEC_ITSS_RCV_GENMSG_04_04_BO());
                execute(TC_SEC_ITSS_RCV_GENMSG_04_05_BO());
                execute(TC_SEC_ITSS_RCV_GENMSG_04_06_BO());
                execute(TC_SEC_ITSS_RCV_GENMSG_04_06a_BO());
                execute(TC_SEC_ITSS_RCV_GENMSG_04_07_BO());
                execute(TC_SEC_ITSS_RCV_GENMSG_04_08_BO());
                execute(TC_SEC_ITSS_RCV_GENMSG_04_09_BO());
                execute(TC_SEC_ITSS_RCV_GENMSG_04_11_BO());
                execute(TC_SEC_ITSS_RCV_GENMSG_04_12_BO());
                execute(TC_SEC_ITSS_RCV_GENMSG_04_13_BO());
                execute(TC_SEC_ITSS_RCV_GENMSG_05_01_BO());
                execute(TC_SEC_ITSS_RCV_GENMSG_05_02_BO());
                execute(TC_SEC_ITSS_RCV_GENMSG_05_03_BO());
                execute(TC_SEC_ITSS_RCV_GENMSG_05_04_BO());
                execute(TC_SEC_ITSS_RCV_GENMSG_06_01_BO());
                execute(TC_SEC_ITSS_RCV_GENMSG_06_02_BO());
                execute(TC_SEC_ITSS_RCV_GENMSG_07_01_BO());
                if (PICS_USE_CIRCULAR_REGION) {
                    execute(TC_SEC_ITSS_RCV_GENMSG_08_01_BO());
                }
                if (PICS_USE_RECTANGULAR_REGION) {
                    execute(TC_SEC_ITSS_RCV_GENMSG_08_02_BO());
                }
                if (PICS_USE_POLYGONAL_REGION) {
                    execute(TC_SEC_ITSS_RCV_GENMSG_08_03_BO());
                }
                if (PICS_USE_IDENTIFIED_REGION) {
                    execute(TC_SEC_ITSS_RCV_GENMSG_08_04_BO());
                }
                execute(TC_SEC_ITSS_RCV_GENMSG_09_02_BO());
                execute(TC_SEC_ITSS_RCV_GENMSG_09_03_BO());
                execute(TC_SEC_ITSS_RCV_GENMSG_09_04_BO());
                execute(TC_SEC_ITSS_RCV_GENMSG_09_05_BO());
                execute(TC_SEC_ITSS_RCV_GENMSG_09_06_BO());
                execute(TC_SEC_ITSS_RCV_GENMSG_10_01_BO());
                execute(TC_SEC_ITSS_RCV_GENMSG_10_02_BO());
                execute(TC_SEC_ITSS_RCV_GENMSG_11_01_BO());
                execute(TC_SEC_ITSS_RCV_GENMSG_11_02_BO());
                execute(TC_SEC_ITSS_RCV_GENMSG_12_01_BO());
                execute(TC_SEC_ITSS_RCV_GENMSG_12_02_BO());
                execute(TC_SEC_ITSS_RCV_GENMSG_12_03_BO());
                execute(TC_SEC_ITSS_RCV_GENMSG_12_04_BO());
                execute(TC_SEC_ITSS_RCV_GENMSG_13_01_BO());
                execute(TC_SEC_ITSS_RCV_GENMSG_13_02_BO());
                execute(TC_SEC_ITSS_RCV_GENMSG_13_03_BO());
                execute(TC_SEC_ITSS_RCV_GENMSG_13_04_BO());
                execute(TC_SEC_ITSS_RCV_GENMSG_13_05_BO());
                execute(TC_SEC_ITSS_RCV_GENMSG_13_06_BO());
            }
            
            /**
             * @desc Receiving behaviour test cases for certificates profile
             * @see ETSI TS 103 096-2 V1.2.2 (2016-01) Clause 5.3.5 Profiles for certificates
             */
            execute(TC_SEC_ITSS_RCV_CERT_01_01_BO());
            execute(TC_SEC_ITSS_RCV_CERT_01_02_BO());
            execute(TC_SEC_ITSS_RCV_CERT_01_03_BO());
            execute(TC_SEC_ITSS_RCV_CERT_01_04_BO());
            execute(TC_SEC_ITSS_RCV_CERT_02_01_BO());
            execute(TC_SEC_ITSS_RCV_CERT_02_02_BO());
            execute(TC_SEC_ITSS_RCV_CERT_02_03_BO());
            execute(TC_SEC_ITSS_RCV_CERT_02_04_BO());
            execute(TC_SEC_ITSS_RCV_CERT_03_01_BO());
            execute(TC_SEC_ITSS_RCV_CERT_03_02_BO());
            execute(TC_SEC_ITSS_RCV_CERT_04_01_BO());
            execute(TC_SEC_ITSS_RCV_CERT_05_01_BO());
            execute(TC_SEC_ITSS_RCV_CERT_05_02_BO());
            if (PICS_USE_RECTANGULAR_REGION) {
                execute(TC_SEC_ITSS_RCV_CERT_06_01_BV());
                execute(TC_SEC_ITSS_RCV_CERT_06_02_BV());
                execute(TC_SEC_ITSS_RCV_CERT_06_03_BV());
                execute(TC_SEC_ITSS_RCV_CERT_06_04_BV());
                execute(TC_SEC_ITSS_RCV_CERT_06_05_BV());
                execute(TC_SEC_ITSS_RCV_CERT_06_06_BO());
                execute(TC_SEC_ITSS_RCV_CERT_06_07_BO());
                execute(TC_SEC_ITSS_RCV_CERT_06_08_BO());
            }
            if (PICS_USE_CIRCULAR_REGION) {
                execute(TC_SEC_ITSS_RCV_CERT_07_01_BV());
                execute(TC_SEC_ITSS_RCV_CERT_07_02_BV());
                execute(TC_SEC_ITSS_RCV_CERT_07_03_BV());
                execute(TC_SEC_ITSS_RCV_CERT_07_04_BV());
                execute(TC_SEC_ITSS_RCV_CERT_07_05_BV());
                execute(TC_SEC_ITSS_RCV_CERT_07_06_BO());
                execute(TC_SEC_ITSS_RCV_CERT_07_07_BO());
                execute(TC_SEC_ITSS_RCV_CERT_07_08_BO());
            }
            if (PICS_USE_POLYGONAL_REGION) {
                execute(TC_SEC_ITSS_RCV_CERT_08_01_BV());
                execute(TC_SEC_ITSS_RCV_CERT_08_02_BV());
                execute(TC_SEC_ITSS_RCV_CERT_08_03_BV());
                execute(TC_SEC_ITSS_RCV_CERT_08_04_BV());
                execute(TC_SEC_ITSS_RCV_CERT_08_05_BV());
                execute(TC_SEC_ITSS_RCV_CERT_08_06_BO());
                execute(TC_SEC_ITSS_RCV_CERT_08_07_BO());
                execute(TC_SEC_ITSS_RCV_CERT_08_08_BO());
                execute(TC_SEC_ITSS_RCV_CERT_08_09_BO());
            }
            if (PICS_USE_IDENTIFIED_REGION) {
                execute(TC_SEC_ITSS_RCV_CERT_09_01_BV());
                execute(TC_SEC_ITSS_RCV_CERT_09_02_BV());
                execute(TC_SEC_ITSS_RCV_CERT_09_03_BV());
                execute(TC_SEC_ITSS_RCV_CERT_09_04_BV());
                execute(TC_SEC_ITSS_RCV_CERT_09_05_BV());
                execute(TC_SEC_ITSS_RCV_CERT_09_06_BV());
                execute(TC_SEC_ITSS_RCV_CERT_09_07_BO());
                execute(TC_SEC_ITSS_RCV_CERT_09_08_BO());
                execute(TC_SEC_ITSS_RCV_CERT_09_09_BO());
                execute(TC_SEC_ITSS_RCV_CERT_09_10_BO());
                execute(TC_SEC_ITSS_RCV_CERT_09_11_BO());
            }
            execute(TC_SEC_ITSS_RCV_CERT_10_01_BO());
            execute(TC_SEC_ITSS_RCV_CERT_10_02_BO());
            execute(TC_SEC_ITSS_RCV_CERT_10_03_BO());
            execute(TC_SEC_ITSS_RCV_CERT_10_04_BO());
            execute(TC_SEC_ITSS_RCV_CERT_10_05_BO());
            execute(TC_SEC_ITSS_RCV_CERT_10_06_BO());
            execute(TC_SEC_ITSS_RCV_CERT_11_01_BO());
            execute(TC_SEC_ITSS_RCV_CERT_11_02_BO());
            execute(TC_SEC_ITSS_RCV_CERT_11_03_BO());
            execute(TC_SEC_ITSS_RCV_CERT_11_04_BO());
            execute(TC_SEC_ITSS_RCV_CERT_12_01_BO());
            execute(TC_SEC_ITSS_RCV_CERT_12_02_BO());
            execute(TC_SEC_ITSS_RCV_CERT_12_03_BO());
            execute(TC_SEC_ITSS_RCV_CERT_12_04_BO());
            execute(TC_SEC_ITSS_RCV_CERT_13_01_BO());
            execute(TC_SEC_ITSS_RCV_CERT_13_02_BO());
            execute(TC_SEC_ITSS_RCV_CERT_13_03_BO());
            execute(TC_SEC_ITSS_RCV_CERT_14_01_BO());
            execute(TC_SEC_ITSS_RCV_CERT_14_02_BO());
            execute(TC_SEC_ITSS_RCV_CERT_14_03_BO());
            execute(TC_SEC_ITSS_RCV_CERT_15_01_BO());
            execute(TC_SEC_ITSS_RCV_CERT_15_02_BO());
            execute(TC_SEC_ITSS_RCV_CERT_15_03_BO());
            execute(TC_SEC_ITSS_RCV_CERT_16_01_BO());
            execute(TC_SEC_ITSS_RCV_CERT_17_01_BO());
            execute(TC_SEC_ITSS_RCV_CERT_17_02_BO());
            execute(TC_SEC_ITSS_RCV_CERT_17_03_BO());
            execute(TC_SEC_ITSS_RCV_CERT_17_04_BO());
            execute(TC_SEC_ITSS_RCV_CERT_18_01_BO());
            execute(TC_SEC_ITSS_RCV_CERT_18_02_BO());
            execute(TC_SEC_ITSS_RCV_CERT_19_01_BO());
            execute(TC_SEC_ITSS_SND_CAM_01_BV());
            execute(TC_SEC_ITSS_SND_CAM_02_BV());
            execute(TC_SEC_ITSS_SND_CAM_03_BV());
            execute(TC_SEC_ITSS_SND_CAM_04_BV());
            execute(TC_SEC_ITSS_SND_CAM_05_BV());
            execute(TC_SEC_ITSS_SND_CAM_06_BV());
            execute(TC_SEC_ITSS_SND_CAM_07_BV());
            execute(TC_SEC_ITSS_SND_CAM_08_BV());
        }
        
    } // End of 'control' statement
+19 −10
Original line number Diff line number Diff line
@@ -188,7 +188,16 @@ module TestCodec_SecuredMessages {
                                              }
                                            )
                           );
  v_raw_payload_to_be_signed := bit2oct(encvalue(v_gnPacket));
  v_raw_payload_to_be_signed := bit2oct(encvalue(m_toBeSignedData(
                                                                    m_signedDataPayload(
                                                                                        m_etsiTs103097Data_unsecured(v_raw_payload_to_be_signed)
                                                                                        ),
                                                                    m_headerInfo_gn(
                                                                                    -,
                                                                                    12345,
                                                                                    123456
                                                                                    )
                                                                    )));
  v_secured_data := m_etsiTs103097Data_signed(
                                              m_signedData(
                                                           sha256,