Loading ttcn/Security/LibItsSecurity_Pixits.ttcn3 +13 −4 Original line number Original line Diff line number Diff line Loading @@ -7,6 +7,9 @@ */ */ module LibItsSecurity_Pixits { module LibItsSecurity_Pixits { // LibCommon import from LibCommon_DataStrings all; // LibItsSecurity // LibItsSecurity import from LibItsSecurity_TypesAndValues all; import from LibItsSecurity_TypesAndValues all; import from LibItsSecurity_Templates all; import from LibItsSecurity_Templates all; Loading Loading @@ -227,12 +230,18 @@ module LibItsSecurity_Pixits { valueof(m_subject_attribute_its_aid_ssp_list( valueof(m_subject_attribute_its_aid_ssp_list( { { { { 16512, its_aid := 16512, '00'O service_specific_permissions := { version := '00'O, sspContainer := omit } }, }, { { 16513, its_aid := 16513, '00'O service_specific_permissions := { version := '00'O, sspContainer := omit } } } } } )) )) Loading ttcn/Security/LibItsSecurity_Templates.ttcn3 +239 −0 Original line number Original line Diff line number Diff line Loading @@ -1648,6 +1648,7 @@ module LibItsSecurity_Templates { * @see Draft ETSI TS 103 097 V1.1.6 Clause 6 Specification of certificate format * @see Draft ETSI TS 103 097 V1.1.6 Clause 6 Specification of certificate format */ */ group certificatesRecv { group certificatesRecv { template (present) Certificate mw_certificate( template (present) Certificate mw_certificate( in template (present) SignerInfo p_signer_info :=?, in template (present) SignerInfo p_signer_info :=?, in template (present) SubjectInfo p_subject_info :=?, in template (present) SubjectInfo p_subject_info :=?, Loading Loading @@ -1836,6 +1837,244 @@ module LibItsSecurity_Templates { } // End of group certificatesRecv } // End of group certificatesRecv group ssp { group sspTest { template (present) ServiceSpecificPermissions m_sspTest := { version := '00'O, sspContainer := omit } // End of template mw_sspTest template (present) ServiceSpecificPermissions mw_sspTest := { version := '00'O, sspContainer := * } // End of template mw_sspTest } // End of group sspTest group sspDenm { group sspDenmSend { /** * @desc */ template (value) SspDENM m_sspDENMContainer_sign_all := { trafficCondition := '1'B, accident := '1'B, roadworks := '1'B, adverseWeatherCondition_Adhesion := '1'B, hazardousLocation_SurfaceCondition := '1'B, hazardousLocation_ObstacleOnTheRoad := '1'B, hazardousLocation_AnimalOnTheRoad := '1'B, humanPresenceOnTheRoad := '1'B, wrongWayDriving := '1'B, rescueAndRecoveryWorkInProgress := '1'B, adverseWeatherCondition_ExtremeWeatherCondition := '1'B, adverseWeatherCondition_Visibility := '1'B, adverseWeatherCondition_Precipitation := '1'B, slowVehicle := '1'B, dangerousEndOfQueue := '1'B, vehicleBreakdown := '1'B, postCrash := '1'B, humanProblem := '1'B, stationaryVehicle := '1'B, emergencyVehicleApproaching := '1'B, hazardousLocation_DangerousCurve := '1'B, collisionRisk := '1'B, signalViolation := '1'B, dangerousSituation := '1'B } // End of template m_sspDENMContainer_sign_all /** * @desc */ template (value) SspDENM m_sspDENMContainer_vehicle modifies m_sspDENMContainer_sign_all:= { trafficCondition := '0'B, accident := '0'B, roadworks := '0'B, adverseWeatherCondition_Adhesion := '0'B, hazardousLocation_SurfaceCondition := '0'B, hazardousLocation_ObstacleOnTheRoad := '0'B, hazardousLocation_AnimalOnTheRoad := '0'B, slowVehicle := '0'B, dangerousEndOfQueue := '0'B, vehicleBreakdown := '0'B, stationaryVehicle := '0'B } // End of template m_sspDENMContainer_sign_all /** * @desc */ template (value) SspDENM m_sspDENMContainer_roadSideUnit modifies m_sspDENMContainer_sign_all:= { trafficCondition := '0'B, accident := '0'B, roadworks := '0'B, adverseWeatherCondition_Adhesion := '0'B, hazardousLocation_SurfaceCondition := '0'B, hazardousLocation_ObstacleOnTheRoad := '0'B, hazardousLocation_AnimalOnTheRoad := '0'B, humanPresenceOnTheRoad := '0'B, wrongWayDriving := '0'B, rescueAndRecoveryWorkInProgress := '0'B, adverseWeatherCondition_ExtremeWeatherCondition := '0'B, adverseWeatherCondition_Visibility := '0'B, adverseWeatherCondition_Precipitation := '0'B, postCrash := '0'B, humanProblem := '0'B, stationaryVehicle := '0'B, hazardousLocation_DangerousCurve := '0'B, collisionRisk := '0'B, dangerousSituation := '0'B } // End of template m_sspDENMContainer_roadSideUnit /** * @desc */ template (value) ServiceSpecificPermissions m_sspDENM_sign_all := { version := '01'O, sspContainer := { sspDENM := m_sspDENMContainer_sign_all } // End of field sspContainer } // End of template m_sspDENM_sign_all /** * @desc */ template (value) ServiceSpecificPermissions m_sspDENM_vehicle modifies m_sspDENM_sign_all := { sspContainer := { sspDENM := m_sspDENMContainer_vehicle } // End of field sspContainer } // End of template m_sspDENM_vehicle /** * @desc */ template (value) ServiceSpecificPermissions m_sspDENM_roadSideUnit modifies m_sspDENM_sign_all := { sspContainer := { sspDENM := m_sspDENMContainer_vehicle } // End of field sspContainer } // End of template m_sspDENM_roadSideUnit } // End of group sspDenmSend group sspDenmRecv { /** * @desc */ template (present) SspDENM mw_sspDENMContainer_dummy := { trafficCondition := ?, accident := ?, roadworks := ?, adverseWeatherCondition_Adhesion := ?, hazardousLocation_SurfaceCondition := ?, hazardousLocation_ObstacleOnTheRoad := ?, hazardousLocation_AnimalOnTheRoad := ?, humanPresenceOnTheRoad := ?, wrongWayDriving := ?, rescueAndRecoveryWorkInProgress := ?, adverseWeatherCondition_ExtremeWeatherCondition := ?, adverseWeatherCondition_Visibility := ?, adverseWeatherCondition_Precipitation := ?, slowVehicle := ?, dangerousEndOfQueue := ?, vehicleBreakdown := ?, postCrash := ?, humanProblem := ?, stationaryVehicle := ?, emergencyVehicleApproaching := ?, hazardousLocation_DangerousCurve := ?, collisionRisk := ?, signalViolation := ?, dangerousSituation := ? } // End of template mw_sspDENMContainer_dummy /** * @desc */ template (present) SspDENM mw_sspDENMContainer_vehicle modifies mw_sspDENMContainer_dummy := { trafficCondition := '0'B, accident := '0'B, roadworks := '0'B, adverseWeatherCondition_Adhesion := '0'B, hazardousLocation_SurfaceCondition := '0'B, hazardousLocation_ObstacleOnTheRoad := '0'B, hazardousLocation_AnimalOnTheRoad := '0'B, slowVehicle := '0'B, dangerousEndOfQueue := '0'B, vehicleBreakdown := '0'B, stationaryVehicle := '0'B } // End of template mw_sspDENMContainer_vehicle /** * @desc */ template (present) SspDENM mw_sspDENMContainer_roadSideUnit modifies mw_sspDENMContainer_dummy := { trafficCondition := '0'B, accident := '0'B, roadworks := '0'B, adverseWeatherCondition_Adhesion := '0'B, hazardousLocation_SurfaceCondition := '0'B, hazardousLocation_ObstacleOnTheRoad := '0'B, hazardousLocation_AnimalOnTheRoad := '0'B, humanPresenceOnTheRoad := '0'B, wrongWayDriving := '0'B, rescueAndRecoveryWorkInProgress := '0'B, adverseWeatherCondition_ExtremeWeatherCondition := '0'B, adverseWeatherCondition_Visibility := '0'B, adverseWeatherCondition_Precipitation := '0'B, postCrash := '0'B, humanProblem := '0'B, stationaryVehicle := '0'B, hazardousLocation_DangerousCurve := '0'B, collisionRisk := '0'B, dangerousSituation := '0'B } // End of template m_sspDENMContainer_roadSideUnit /** * @desc */ template (present) ServiceSpecificPermissions mw_sspDENM_dummy := { version := '01'O, sspContainer := { sspDENM := mw_sspDENMContainer_dummy } } // End of template mw_sspDENM_dummy /** * @desc */ template (present) ServiceSpecificPermissions mw_sspDENM_vehicle modifies mw_sspDENM_dummy := { sspContainer := { sspDENM := mw_sspDENMContainer_vehicle } } // End of template mw_sspDENM_vehicle /** * @desc */ template (present) ServiceSpecificPermissions mw_sspDENM_roadSideUnit modifies mw_sspDENM_dummy := { sspContainer := { sspDENM := mw_sspDENMContainer_roadSideUnit } } // End of template mw_sspDENM_roadSideUnit } // End of group sspDenmRecv } // End of group sspDenm } // End of group ssp } // End of group certificates } // End of group certificates /** /** Loading ttcn/Security/LibItsSecurity_TypesAndValues.ttcn3 +78 −2 Original line number Original line Diff line number Diff line Loading @@ -768,9 +768,85 @@ module LibItsSecurity_TypesAndValues { */ */ type record ItsAidSsp { type record ItsAidSsp { IntX its_aid, IntX its_aid, Oct1to31 service_specific_permissions ServiceSpecificPermissions service_specific_permissions } // End of type ItsAidSsp } // End of type ItsAidSsp /** * @desc Service specific permissions definition * @member version SSP version control * @member sspConatiner Service specific permissions definition */ type record ServiceSpecificPermissions { Oct1 version, ServiceSpecificPermissionsContainer sspContainer optional } // End of type ServiceSpecificPermissions /** * @desc Service specific permissions definition * @member sspDENM Service specific permissions definition for DENM * @member opaque Service specific permissions definition for others */ type union ServiceSpecificPermissionsContainer { SspDENM sspDENM, Oct0to30 opaque } // End of type ServiceSpecificPermissions /** * @desc Service specific permissions definition for DENM * @member trafficCondition * @member accident * @member roadworks * @member adverseWeatherCondition_Adhesion * @member hazardousLocation_SurfaceCondition * @member hazardousLocation_ObstacleOnTheRoad * @member hazardousLocation_AnimalOnTheRoad * @member humanPresenceOnTheRoad * @member wrongWayDriving * @member rescueAndRecoveryWorkInProgress * @member adverseWeatherCondition_ExtremeWeatherCondition * @member adverseWeatherCondition_Visibility * @member adverseWeatherCondition_Precipitation * @member slowVehicle * @member dangerousEndOfQueue * @member vehicleBreakdown * @member postCrash * @member humanProblem * @member stationaryVehicle * @member emergencyVehicleApproaching * @member hazardousLocation_DangerousCurve * @member collisionRisk * @member signalViolation * @member dangerousSituation * @member reserved Reserved for Future Usage * @see Draft ETSI EN 302 637-3 V1.2.10 Clause 6.2.2.2 Service Specific Permissions (SSP) */ type record SspDENM { Bit1 trafficCondition, Bit1 accident, Bit1 roadworks, Bit1 adverseWeatherCondition_Adhesion, Bit1 hazardousLocation_SurfaceCondition, Bit1 hazardousLocation_ObstacleOnTheRoad, Bit1 hazardousLocation_AnimalOnTheRoad, Bit1 humanPresenceOnTheRoad, Bit1 wrongWayDriving, Bit1 rescueAndRecoveryWorkInProgress, Bit1 adverseWeatherCondition_ExtremeWeatherCondition, Bit1 adverseWeatherCondition_Visibility, Bit1 adverseWeatherCondition_Precipitation, Bit1 slowVehicle, Bit1 dangerousEndOfQueue, Bit1 vehicleBreakdown, Bit1 postCrash, Bit1 humanProblem, Bit1 stationaryVehicle, Bit1 emergencyVehicleApproaching, Bit1 hazardousLocation_DangerousCurve, Bit1 collisionRisk, Bit1 signalViolation, Bit1 dangerousSituation } // End of type SspDENM } // End of group certificateSpecification } // End of group certificateSpecification /** /** Loading Loading
ttcn/Security/LibItsSecurity_Pixits.ttcn3 +13 −4 Original line number Original line Diff line number Diff line Loading @@ -7,6 +7,9 @@ */ */ module LibItsSecurity_Pixits { module LibItsSecurity_Pixits { // LibCommon import from LibCommon_DataStrings all; // LibItsSecurity // LibItsSecurity import from LibItsSecurity_TypesAndValues all; import from LibItsSecurity_TypesAndValues all; import from LibItsSecurity_Templates all; import from LibItsSecurity_Templates all; Loading Loading @@ -227,12 +230,18 @@ module LibItsSecurity_Pixits { valueof(m_subject_attribute_its_aid_ssp_list( valueof(m_subject_attribute_its_aid_ssp_list( { { { { 16512, its_aid := 16512, '00'O service_specific_permissions := { version := '00'O, sspContainer := omit } }, }, { { 16513, its_aid := 16513, '00'O service_specific_permissions := { version := '00'O, sspContainer := omit } } } } } )) )) Loading
ttcn/Security/LibItsSecurity_Templates.ttcn3 +239 −0 Original line number Original line Diff line number Diff line Loading @@ -1648,6 +1648,7 @@ module LibItsSecurity_Templates { * @see Draft ETSI TS 103 097 V1.1.6 Clause 6 Specification of certificate format * @see Draft ETSI TS 103 097 V1.1.6 Clause 6 Specification of certificate format */ */ group certificatesRecv { group certificatesRecv { template (present) Certificate mw_certificate( template (present) Certificate mw_certificate( in template (present) SignerInfo p_signer_info :=?, in template (present) SignerInfo p_signer_info :=?, in template (present) SubjectInfo p_subject_info :=?, in template (present) SubjectInfo p_subject_info :=?, Loading Loading @@ -1836,6 +1837,244 @@ module LibItsSecurity_Templates { } // End of group certificatesRecv } // End of group certificatesRecv group ssp { group sspTest { template (present) ServiceSpecificPermissions m_sspTest := { version := '00'O, sspContainer := omit } // End of template mw_sspTest template (present) ServiceSpecificPermissions mw_sspTest := { version := '00'O, sspContainer := * } // End of template mw_sspTest } // End of group sspTest group sspDenm { group sspDenmSend { /** * @desc */ template (value) SspDENM m_sspDENMContainer_sign_all := { trafficCondition := '1'B, accident := '1'B, roadworks := '1'B, adverseWeatherCondition_Adhesion := '1'B, hazardousLocation_SurfaceCondition := '1'B, hazardousLocation_ObstacleOnTheRoad := '1'B, hazardousLocation_AnimalOnTheRoad := '1'B, humanPresenceOnTheRoad := '1'B, wrongWayDriving := '1'B, rescueAndRecoveryWorkInProgress := '1'B, adverseWeatherCondition_ExtremeWeatherCondition := '1'B, adverseWeatherCondition_Visibility := '1'B, adverseWeatherCondition_Precipitation := '1'B, slowVehicle := '1'B, dangerousEndOfQueue := '1'B, vehicleBreakdown := '1'B, postCrash := '1'B, humanProblem := '1'B, stationaryVehicle := '1'B, emergencyVehicleApproaching := '1'B, hazardousLocation_DangerousCurve := '1'B, collisionRisk := '1'B, signalViolation := '1'B, dangerousSituation := '1'B } // End of template m_sspDENMContainer_sign_all /** * @desc */ template (value) SspDENM m_sspDENMContainer_vehicle modifies m_sspDENMContainer_sign_all:= { trafficCondition := '0'B, accident := '0'B, roadworks := '0'B, adverseWeatherCondition_Adhesion := '0'B, hazardousLocation_SurfaceCondition := '0'B, hazardousLocation_ObstacleOnTheRoad := '0'B, hazardousLocation_AnimalOnTheRoad := '0'B, slowVehicle := '0'B, dangerousEndOfQueue := '0'B, vehicleBreakdown := '0'B, stationaryVehicle := '0'B } // End of template m_sspDENMContainer_sign_all /** * @desc */ template (value) SspDENM m_sspDENMContainer_roadSideUnit modifies m_sspDENMContainer_sign_all:= { trafficCondition := '0'B, accident := '0'B, roadworks := '0'B, adverseWeatherCondition_Adhesion := '0'B, hazardousLocation_SurfaceCondition := '0'B, hazardousLocation_ObstacleOnTheRoad := '0'B, hazardousLocation_AnimalOnTheRoad := '0'B, humanPresenceOnTheRoad := '0'B, wrongWayDriving := '0'B, rescueAndRecoveryWorkInProgress := '0'B, adverseWeatherCondition_ExtremeWeatherCondition := '0'B, adverseWeatherCondition_Visibility := '0'B, adverseWeatherCondition_Precipitation := '0'B, postCrash := '0'B, humanProblem := '0'B, stationaryVehicle := '0'B, hazardousLocation_DangerousCurve := '0'B, collisionRisk := '0'B, dangerousSituation := '0'B } // End of template m_sspDENMContainer_roadSideUnit /** * @desc */ template (value) ServiceSpecificPermissions m_sspDENM_sign_all := { version := '01'O, sspContainer := { sspDENM := m_sspDENMContainer_sign_all } // End of field sspContainer } // End of template m_sspDENM_sign_all /** * @desc */ template (value) ServiceSpecificPermissions m_sspDENM_vehicle modifies m_sspDENM_sign_all := { sspContainer := { sspDENM := m_sspDENMContainer_vehicle } // End of field sspContainer } // End of template m_sspDENM_vehicle /** * @desc */ template (value) ServiceSpecificPermissions m_sspDENM_roadSideUnit modifies m_sspDENM_sign_all := { sspContainer := { sspDENM := m_sspDENMContainer_vehicle } // End of field sspContainer } // End of template m_sspDENM_roadSideUnit } // End of group sspDenmSend group sspDenmRecv { /** * @desc */ template (present) SspDENM mw_sspDENMContainer_dummy := { trafficCondition := ?, accident := ?, roadworks := ?, adverseWeatherCondition_Adhesion := ?, hazardousLocation_SurfaceCondition := ?, hazardousLocation_ObstacleOnTheRoad := ?, hazardousLocation_AnimalOnTheRoad := ?, humanPresenceOnTheRoad := ?, wrongWayDriving := ?, rescueAndRecoveryWorkInProgress := ?, adverseWeatherCondition_ExtremeWeatherCondition := ?, adverseWeatherCondition_Visibility := ?, adverseWeatherCondition_Precipitation := ?, slowVehicle := ?, dangerousEndOfQueue := ?, vehicleBreakdown := ?, postCrash := ?, humanProblem := ?, stationaryVehicle := ?, emergencyVehicleApproaching := ?, hazardousLocation_DangerousCurve := ?, collisionRisk := ?, signalViolation := ?, dangerousSituation := ? } // End of template mw_sspDENMContainer_dummy /** * @desc */ template (present) SspDENM mw_sspDENMContainer_vehicle modifies mw_sspDENMContainer_dummy := { trafficCondition := '0'B, accident := '0'B, roadworks := '0'B, adverseWeatherCondition_Adhesion := '0'B, hazardousLocation_SurfaceCondition := '0'B, hazardousLocation_ObstacleOnTheRoad := '0'B, hazardousLocation_AnimalOnTheRoad := '0'B, slowVehicle := '0'B, dangerousEndOfQueue := '0'B, vehicleBreakdown := '0'B, stationaryVehicle := '0'B } // End of template mw_sspDENMContainer_vehicle /** * @desc */ template (present) SspDENM mw_sspDENMContainer_roadSideUnit modifies mw_sspDENMContainer_dummy := { trafficCondition := '0'B, accident := '0'B, roadworks := '0'B, adverseWeatherCondition_Adhesion := '0'B, hazardousLocation_SurfaceCondition := '0'B, hazardousLocation_ObstacleOnTheRoad := '0'B, hazardousLocation_AnimalOnTheRoad := '0'B, humanPresenceOnTheRoad := '0'B, wrongWayDriving := '0'B, rescueAndRecoveryWorkInProgress := '0'B, adverseWeatherCondition_ExtremeWeatherCondition := '0'B, adverseWeatherCondition_Visibility := '0'B, adverseWeatherCondition_Precipitation := '0'B, postCrash := '0'B, humanProblem := '0'B, stationaryVehicle := '0'B, hazardousLocation_DangerousCurve := '0'B, collisionRisk := '0'B, dangerousSituation := '0'B } // End of template m_sspDENMContainer_roadSideUnit /** * @desc */ template (present) ServiceSpecificPermissions mw_sspDENM_dummy := { version := '01'O, sspContainer := { sspDENM := mw_sspDENMContainer_dummy } } // End of template mw_sspDENM_dummy /** * @desc */ template (present) ServiceSpecificPermissions mw_sspDENM_vehicle modifies mw_sspDENM_dummy := { sspContainer := { sspDENM := mw_sspDENMContainer_vehicle } } // End of template mw_sspDENM_vehicle /** * @desc */ template (present) ServiceSpecificPermissions mw_sspDENM_roadSideUnit modifies mw_sspDENM_dummy := { sspContainer := { sspDENM := mw_sspDENMContainer_roadSideUnit } } // End of template mw_sspDENM_roadSideUnit } // End of group sspDenmRecv } // End of group sspDenm } // End of group ssp } // End of group certificates } // End of group certificates /** /** Loading
ttcn/Security/LibItsSecurity_TypesAndValues.ttcn3 +78 −2 Original line number Original line Diff line number Diff line Loading @@ -768,9 +768,85 @@ module LibItsSecurity_TypesAndValues { */ */ type record ItsAidSsp { type record ItsAidSsp { IntX its_aid, IntX its_aid, Oct1to31 service_specific_permissions ServiceSpecificPermissions service_specific_permissions } // End of type ItsAidSsp } // End of type ItsAidSsp /** * @desc Service specific permissions definition * @member version SSP version control * @member sspConatiner Service specific permissions definition */ type record ServiceSpecificPermissions { Oct1 version, ServiceSpecificPermissionsContainer sspContainer optional } // End of type ServiceSpecificPermissions /** * @desc Service specific permissions definition * @member sspDENM Service specific permissions definition for DENM * @member opaque Service specific permissions definition for others */ type union ServiceSpecificPermissionsContainer { SspDENM sspDENM, Oct0to30 opaque } // End of type ServiceSpecificPermissions /** * @desc Service specific permissions definition for DENM * @member trafficCondition * @member accident * @member roadworks * @member adverseWeatherCondition_Adhesion * @member hazardousLocation_SurfaceCondition * @member hazardousLocation_ObstacleOnTheRoad * @member hazardousLocation_AnimalOnTheRoad * @member humanPresenceOnTheRoad * @member wrongWayDriving * @member rescueAndRecoveryWorkInProgress * @member adverseWeatherCondition_ExtremeWeatherCondition * @member adverseWeatherCondition_Visibility * @member adverseWeatherCondition_Precipitation * @member slowVehicle * @member dangerousEndOfQueue * @member vehicleBreakdown * @member postCrash * @member humanProblem * @member stationaryVehicle * @member emergencyVehicleApproaching * @member hazardousLocation_DangerousCurve * @member collisionRisk * @member signalViolation * @member dangerousSituation * @member reserved Reserved for Future Usage * @see Draft ETSI EN 302 637-3 V1.2.10 Clause 6.2.2.2 Service Specific Permissions (SSP) */ type record SspDENM { Bit1 trafficCondition, Bit1 accident, Bit1 roadworks, Bit1 adverseWeatherCondition_Adhesion, Bit1 hazardousLocation_SurfaceCondition, Bit1 hazardousLocation_ObstacleOnTheRoad, Bit1 hazardousLocation_AnimalOnTheRoad, Bit1 humanPresenceOnTheRoad, Bit1 wrongWayDriving, Bit1 rescueAndRecoveryWorkInProgress, Bit1 adverseWeatherCondition_ExtremeWeatherCondition, Bit1 adverseWeatherCondition_Visibility, Bit1 adverseWeatherCondition_Precipitation, Bit1 slowVehicle, Bit1 dangerousEndOfQueue, Bit1 vehicleBreakdown, Bit1 postCrash, Bit1 humanProblem, Bit1 stationaryVehicle, Bit1 emergencyVehicleApproaching, Bit1 hazardousLocation_DangerousCurve, Bit1 collisionRisk, Bit1 signalViolation, Bit1 dangerousSituation } // End of type SspDENM } // End of group certificateSpecification } // End of group certificateSpecification /** /** Loading