Loading ItsSecurity_Functions.ttcn +37 −3 Original line number Diff line number Diff line Loading @@ -36,6 +36,7 @@ module ItsSecurity_Functions { import from LibItsCam_Templates all; import from LibItsCam_Functions all; import from LibItsCam_TestSystem all; import from LibItsCam_TypesAndValues all; // LibItsBtp import from LibItsBtp_Templates all; Loading Loading @@ -766,6 +767,23 @@ module ItsSecurity_Functions { return v_camComponent; } // End of function f_setCamFrequencyGreatherThan1Hz /** * @desc Triggers a CAM change pseudonum to load a specific certificate * @return Reference to the component used to send the trigger * @remark This function spawns an ItsCam component in alive mode * @see fb_utCamChangePseudonym() */ function f_camChangePseudonym( in template (value) UtCamChangePseudonym p_utCamChangePseudonym ) runs on ItsBaseComponent return ItsCam { var ItsCam v_camComponent; v_camComponent := ItsCam.create("CAM Trigger") alive; v_camComponent.start(fb_utCamChangePseudonym(p_utCamChangePseudonym)); return v_camComponent; } /** * @desc Terminate CAM component execution * @param Reference to the component used to send the trigger Loading Loading @@ -801,6 +819,22 @@ module ItsSecurity_Functions { unmap(self:utPort, system:camUtPort); } // End of function fb_setCamFrequencyGreatherThan1Hz /** * @desc Behaviour function for triggering a CAM change pseudonym event on IUT */ function fb_utCamChangePseudonym( in template (value) UtCamChangePseudonym p_utCamChangePseudonym ) runs on ItsCam { log(">>> fb_utCamChangePseudonym"); map(self:utPort, system:camUtPort); vc_default := activate(LibItsCam_Functions.a_utDefault()); LibItsCam_Functions.f_utCamChangePseudonym(p_utCamChangePseudonym); unmap(self:utPort, system:camUtPort); } } // End of group camTrigger group denmTrigger { Loading ItsSecurity_TestCases.ttcn +46 −9 Original line number Diff line number Diff line Loading @@ -3768,6 +3768,9 @@ module ItsSecurity_TestCases { testcase TC_SEC_ITSS_SND_CAM_23_BV() runs on ItsGeoNetworking system ItsSecSystem { // Local variables var ItsCam v_component; var EtsiTs103097Certificate v_certificate; var HashedId8 v_certificate_digest; // Test control if (not(PICS_GN_SECURITY)) { Loading @@ -3776,17 +3779,21 @@ module ItsSecurity_TestCases { } // Test component configuration vc_hashedId8ToBeUsed := cc_iutCert_C1; //vc_hashedId8ToBeUsed := cc_iutCert_C1; f_cf01Up(); // Initialise IUT with CERT_IUT_C1_AT // Test adapter configuration // Preamble f_readCertificate(cc_iutCert_C1, v_certificate); f_getCertificateDigest(cc_iutCert_C1, v_certificate_digest); f_prNeighbour(); v_component := f_camChangePseudonym(m_utCamChangePseudonym(v_certificate_digest)); f_selfOrClientSyncAndVerdictPreamble(c_prDone, e_success); // Test Body tc_noac.start; geoNetworkingPort.clear; alt { [] geoNetworkingPort.receive( mw_geoNwInd( Loading @@ -3812,6 +3819,7 @@ module ItsSecurity_TestCases { } // End of 'alt' statement // Postamble f_terminateCam(v_component); f_poNeighbour(); f_cf01Down(); } // End of testcase TC_SEC_ITSS_SND_CAM_23_BV Loading Loading @@ -3846,6 +3854,9 @@ module ItsSecurity_TestCases { testcase TC_SEC_ITSS_SND_CAM_24_BV() runs on ItsGeoNetworking system ItsSecSystem { // Local variables var ItsCam v_component; var EtsiTs103097Certificate v_certificate; var HashedId8 v_certificate_digest; // Test control if (not(PICS_GN_SECURITY)) { Loading @@ -3855,17 +3866,21 @@ module ItsSecurity_TestCases { // Test component configuration vc_hashedId8ToBeUsed := cc_iutCert_CA3; //vc_hashedId8ToBeUsed := cc_iutCert_CA3; f_cf01Up(); // Test adapter configuration // Preamble f_readCertificate(cc_iutCert_CA3, v_certificate); f_getCertificateDigest(cc_iutCert_CA3, v_certificate_digest); f_prNeighbour(); v_component := f_camChangePseudonym(m_utCamChangePseudonym(v_certificate_digest)); f_selfOrClientSyncAndVerdictPreamble(c_prDone, e_success); // Test Body tc_noac.start; geoNetworkingPort.clear; alt { [] geoNetworkingPort.receive( mw_geoNwInd( Loading @@ -3891,6 +3906,7 @@ module ItsSecurity_TestCases { } // End of 'alt' statement // Postamble f_terminateCam(v_component); f_poNeighbour(); f_cf01Down(); } // End of testcase TC_SEC_ITSS_SND_CAM_24_BV Loading Loading @@ -3922,6 +3938,9 @@ module ItsSecurity_TestCases { testcase TC_SEC_ITSS_SND_CAM_25_BV() runs on ItsGeoNetworking system ItsSecSystem { // Local variables var ItsCam v_component; var EtsiTs103097Certificate v_certificate; var HashedId8 v_certificate_digest; // Test control if (not(PICS_GN_SECURITY)) { Loading @@ -3929,19 +3948,22 @@ module ItsSecurity_TestCases { stop; } // Test component configuration vc_hashedId8ToBeUsed := cc_iutCert_A1; //vc_hashedId8ToBeUsed := cc_iutCert_A1; f_cf01Up(); // Test adapter configuration // Preamble f_readCertificate(cc_iutCert_A1, v_certificate); f_getCertificateDigest(cc_iutCert_A1, v_certificate_digest); f_prNeighbour(); v_component := f_camChangePseudonym(m_utCamChangePseudonym(v_certificate_digest)); f_selfOrClientSyncAndVerdictPreamble(c_prDone, e_success); // Test Body tc_noac.start; geoNetworkingPort.clear; alt { [] geoNetworkingPort.receive( mw_geoNwInd( Loading @@ -3967,6 +3989,7 @@ module ItsSecurity_TestCases { } // End of 'alt' statement // Postamble f_terminateCam(v_component); f_poNeighbour(); f_cf01Down(); } // End of testcase TC_SEC_ITSS_SND_CAM_25_BV Loading Loading @@ -3998,6 +4021,9 @@ module ItsSecurity_TestCases { testcase TC_SEC_ITSS_SND_CAM_26_BV() runs on ItsGeoNetworking system ItsSecSystem { // Local variables var ItsCam v_component; var EtsiTs103097Certificate v_certificate; var HashedId8 v_certificate_digest; // Test control if (not(PICS_GN_SECURITY)) { Loading @@ -4005,19 +4031,22 @@ module ItsSecurity_TestCases { stop; } // Test component configuration vc_hashedId8ToBeUsed := cc_iutCert_A2; //vc_hashedId8ToBeUsed := cc_iutCert_A2; f_cf01Up(); // Test adapter configuration // Preamble f_readCertificate(cc_iutCert_A2, v_certificate); f_getCertificateDigest(cc_iutCert_A2, v_certificate_digest); f_prNeighbour(); v_component := f_camChangePseudonym(m_utCamChangePseudonym(v_certificate_digest)); f_selfOrClientSyncAndVerdictPreamble(c_prDone, e_success); // Test Body tc_noac.start; geoNetworkingPort.clear; alt { [] geoNetworkingPort.receive( mw_geoNwInd( Loading @@ -4043,6 +4072,7 @@ module ItsSecurity_TestCases { } // End of 'alt' statement // Postamble f_terminateCam(v_component); f_poNeighbour(); f_cf01Down(); } // End of testcase TC_SEC_ITSS_SND_CAM_26_BV Loading Loading @@ -4077,6 +4107,9 @@ module ItsSecurity_TestCases { testcase TC_SEC_ITSS_SND_CAM_27_BV() runs on ItsGeoNetworking system ItsSecSystem { // Local variables var ItsCam v_component; var EtsiTs103097Certificate v_certificate; var HashedId8 v_certificate_digest; // Test control if (not(PICS_GN_SECURITY)) { Loading @@ -4084,19 +4117,22 @@ module ItsSecurity_TestCases { stop; } // Test component configuration vc_hashedId8ToBeUsed := cc_iutCert_A3; //vc_hashedId8ToBeUsed := cc_iutCert_A3; f_cf01Up(); // Test adapter configuration // Preamble f_readCertificate(cc_iutCert_A3, v_certificate); f_getCertificateDigest(cc_iutCert_A3, v_certificate_digest); f_prNeighbour(); v_component := f_camChangePseudonym(m_utCamChangePseudonym(v_certificate_digest)); f_selfOrClientSyncAndVerdictPreamble(c_prDone, e_success); // Test Body tc_noac.start; geoNetworkingPort.clear; alt { [] geoNetworkingPort.receive( mw_geoNwInd( Loading @@ -4122,6 +4158,7 @@ module ItsSecurity_TestCases { } // End of 'alt' statement // Postamble f_terminateCam(v_component); f_poNeighbour(); f_cf01Down(); } // End of testcase TC_SEC_ITSS_SND_CAM_27_BV Loading Loading
ItsSecurity_Functions.ttcn +37 −3 Original line number Diff line number Diff line Loading @@ -36,6 +36,7 @@ module ItsSecurity_Functions { import from LibItsCam_Templates all; import from LibItsCam_Functions all; import from LibItsCam_TestSystem all; import from LibItsCam_TypesAndValues all; // LibItsBtp import from LibItsBtp_Templates all; Loading Loading @@ -766,6 +767,23 @@ module ItsSecurity_Functions { return v_camComponent; } // End of function f_setCamFrequencyGreatherThan1Hz /** * @desc Triggers a CAM change pseudonum to load a specific certificate * @return Reference to the component used to send the trigger * @remark This function spawns an ItsCam component in alive mode * @see fb_utCamChangePseudonym() */ function f_camChangePseudonym( in template (value) UtCamChangePseudonym p_utCamChangePseudonym ) runs on ItsBaseComponent return ItsCam { var ItsCam v_camComponent; v_camComponent := ItsCam.create("CAM Trigger") alive; v_camComponent.start(fb_utCamChangePseudonym(p_utCamChangePseudonym)); return v_camComponent; } /** * @desc Terminate CAM component execution * @param Reference to the component used to send the trigger Loading Loading @@ -801,6 +819,22 @@ module ItsSecurity_Functions { unmap(self:utPort, system:camUtPort); } // End of function fb_setCamFrequencyGreatherThan1Hz /** * @desc Behaviour function for triggering a CAM change pseudonym event on IUT */ function fb_utCamChangePseudonym( in template (value) UtCamChangePseudonym p_utCamChangePseudonym ) runs on ItsCam { log(">>> fb_utCamChangePseudonym"); map(self:utPort, system:camUtPort); vc_default := activate(LibItsCam_Functions.a_utDefault()); LibItsCam_Functions.f_utCamChangePseudonym(p_utCamChangePseudonym); unmap(self:utPort, system:camUtPort); } } // End of group camTrigger group denmTrigger { Loading
ItsSecurity_TestCases.ttcn +46 −9 Original line number Diff line number Diff line Loading @@ -3768,6 +3768,9 @@ module ItsSecurity_TestCases { testcase TC_SEC_ITSS_SND_CAM_23_BV() runs on ItsGeoNetworking system ItsSecSystem { // Local variables var ItsCam v_component; var EtsiTs103097Certificate v_certificate; var HashedId8 v_certificate_digest; // Test control if (not(PICS_GN_SECURITY)) { Loading @@ -3776,17 +3779,21 @@ module ItsSecurity_TestCases { } // Test component configuration vc_hashedId8ToBeUsed := cc_iutCert_C1; //vc_hashedId8ToBeUsed := cc_iutCert_C1; f_cf01Up(); // Initialise IUT with CERT_IUT_C1_AT // Test adapter configuration // Preamble f_readCertificate(cc_iutCert_C1, v_certificate); f_getCertificateDigest(cc_iutCert_C1, v_certificate_digest); f_prNeighbour(); v_component := f_camChangePseudonym(m_utCamChangePseudonym(v_certificate_digest)); f_selfOrClientSyncAndVerdictPreamble(c_prDone, e_success); // Test Body tc_noac.start; geoNetworkingPort.clear; alt { [] geoNetworkingPort.receive( mw_geoNwInd( Loading @@ -3812,6 +3819,7 @@ module ItsSecurity_TestCases { } // End of 'alt' statement // Postamble f_terminateCam(v_component); f_poNeighbour(); f_cf01Down(); } // End of testcase TC_SEC_ITSS_SND_CAM_23_BV Loading Loading @@ -3846,6 +3854,9 @@ module ItsSecurity_TestCases { testcase TC_SEC_ITSS_SND_CAM_24_BV() runs on ItsGeoNetworking system ItsSecSystem { // Local variables var ItsCam v_component; var EtsiTs103097Certificate v_certificate; var HashedId8 v_certificate_digest; // Test control if (not(PICS_GN_SECURITY)) { Loading @@ -3855,17 +3866,21 @@ module ItsSecurity_TestCases { // Test component configuration vc_hashedId8ToBeUsed := cc_iutCert_CA3; //vc_hashedId8ToBeUsed := cc_iutCert_CA3; f_cf01Up(); // Test adapter configuration // Preamble f_readCertificate(cc_iutCert_CA3, v_certificate); f_getCertificateDigest(cc_iutCert_CA3, v_certificate_digest); f_prNeighbour(); v_component := f_camChangePseudonym(m_utCamChangePseudonym(v_certificate_digest)); f_selfOrClientSyncAndVerdictPreamble(c_prDone, e_success); // Test Body tc_noac.start; geoNetworkingPort.clear; alt { [] geoNetworkingPort.receive( mw_geoNwInd( Loading @@ -3891,6 +3906,7 @@ module ItsSecurity_TestCases { } // End of 'alt' statement // Postamble f_terminateCam(v_component); f_poNeighbour(); f_cf01Down(); } // End of testcase TC_SEC_ITSS_SND_CAM_24_BV Loading Loading @@ -3922,6 +3938,9 @@ module ItsSecurity_TestCases { testcase TC_SEC_ITSS_SND_CAM_25_BV() runs on ItsGeoNetworking system ItsSecSystem { // Local variables var ItsCam v_component; var EtsiTs103097Certificate v_certificate; var HashedId8 v_certificate_digest; // Test control if (not(PICS_GN_SECURITY)) { Loading @@ -3929,19 +3948,22 @@ module ItsSecurity_TestCases { stop; } // Test component configuration vc_hashedId8ToBeUsed := cc_iutCert_A1; //vc_hashedId8ToBeUsed := cc_iutCert_A1; f_cf01Up(); // Test adapter configuration // Preamble f_readCertificate(cc_iutCert_A1, v_certificate); f_getCertificateDigest(cc_iutCert_A1, v_certificate_digest); f_prNeighbour(); v_component := f_camChangePseudonym(m_utCamChangePseudonym(v_certificate_digest)); f_selfOrClientSyncAndVerdictPreamble(c_prDone, e_success); // Test Body tc_noac.start; geoNetworkingPort.clear; alt { [] geoNetworkingPort.receive( mw_geoNwInd( Loading @@ -3967,6 +3989,7 @@ module ItsSecurity_TestCases { } // End of 'alt' statement // Postamble f_terminateCam(v_component); f_poNeighbour(); f_cf01Down(); } // End of testcase TC_SEC_ITSS_SND_CAM_25_BV Loading Loading @@ -3998,6 +4021,9 @@ module ItsSecurity_TestCases { testcase TC_SEC_ITSS_SND_CAM_26_BV() runs on ItsGeoNetworking system ItsSecSystem { // Local variables var ItsCam v_component; var EtsiTs103097Certificate v_certificate; var HashedId8 v_certificate_digest; // Test control if (not(PICS_GN_SECURITY)) { Loading @@ -4005,19 +4031,22 @@ module ItsSecurity_TestCases { stop; } // Test component configuration vc_hashedId8ToBeUsed := cc_iutCert_A2; //vc_hashedId8ToBeUsed := cc_iutCert_A2; f_cf01Up(); // Test adapter configuration // Preamble f_readCertificate(cc_iutCert_A2, v_certificate); f_getCertificateDigest(cc_iutCert_A2, v_certificate_digest); f_prNeighbour(); v_component := f_camChangePseudonym(m_utCamChangePseudonym(v_certificate_digest)); f_selfOrClientSyncAndVerdictPreamble(c_prDone, e_success); // Test Body tc_noac.start; geoNetworkingPort.clear; alt { [] geoNetworkingPort.receive( mw_geoNwInd( Loading @@ -4043,6 +4072,7 @@ module ItsSecurity_TestCases { } // End of 'alt' statement // Postamble f_terminateCam(v_component); f_poNeighbour(); f_cf01Down(); } // End of testcase TC_SEC_ITSS_SND_CAM_26_BV Loading Loading @@ -4077,6 +4107,9 @@ module ItsSecurity_TestCases { testcase TC_SEC_ITSS_SND_CAM_27_BV() runs on ItsGeoNetworking system ItsSecSystem { // Local variables var ItsCam v_component; var EtsiTs103097Certificate v_certificate; var HashedId8 v_certificate_digest; // Test control if (not(PICS_GN_SECURITY)) { Loading @@ -4084,19 +4117,22 @@ module ItsSecurity_TestCases { stop; } // Test component configuration vc_hashedId8ToBeUsed := cc_iutCert_A3; //vc_hashedId8ToBeUsed := cc_iutCert_A3; f_cf01Up(); // Test adapter configuration // Preamble f_readCertificate(cc_iutCert_A3, v_certificate); f_getCertificateDigest(cc_iutCert_A3, v_certificate_digest); f_prNeighbour(); v_component := f_camChangePseudonym(m_utCamChangePseudonym(v_certificate_digest)); f_selfOrClientSyncAndVerdictPreamble(c_prDone, e_success); // Test Body tc_noac.start; geoNetworkingPort.clear; alt { [] geoNetworkingPort.receive( mw_geoNwInd( Loading @@ -4122,6 +4158,7 @@ module ItsSecurity_TestCases { } // End of 'alt' statement // Postamble f_terminateCam(v_component); f_poNeighbour(); f_cf01Down(); } // End of testcase TC_SEC_ITSS_SND_CAM_27_BV Loading