Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
TTCN-3 Libraries
LibIts
Commits
3d752de8
Commit
3d752de8
authored
Jul 13, 2017
by
garciay
Browse files
Simplify Payload for GeoNetworking & BTP
==> Check TODO in Security ATS
parent
57568362
Changes
13
Hide whitespace changes
Inline
Side-by-side
ttcn/BTP/LibItsBtp_EncdecDeclarations.ttcn
View file @
3d752de8
...
...
@@ -4,9 +4,6 @@ module LibItsBtp_EncdecDeclarations {
import
from
LibItsBtp_TypesAndValues
all
;
import
from
LibItsBtp_TestSystem
all
;
external
function
fx_enc_BtpPayload
(
BtpPayload
p
)
return
bitstring
with
{
extension
"prototype(convert) encode(LibItsBtp_BtpPayload)"
}
/* TODO RGy function not implemented! (decvalue() not used by test suite @29-06-2016)
external function fx_dec_BtpPayload (inout bitstring b, out BtpPayload p) return integer
with {extension "prototype(sliding) decode(LibItsBtp)"}
...
...
ttcn/BTP/LibItsBtp_Functions.ttcn
View file @
3d752de8
...
...
@@ -234,7 +234,7 @@
* @desc Gets the BTP payload to use.
* @return BTP payload
*/
function
f_getBtpPayload
()
return
BtpPayload
{
function
f_getBtpPayload
()
return
Btp
Raw
Payload
{
return
PX_PAYLOAD
;
}
...
...
ttcn/BTP/LibItsBtp_Pixits.ttcn
View file @
3d752de8
...
...
@@ -43,10 +43,7 @@ module LibItsBtp_Pixits {
* @desc Payload to be sent to the IUT for testing matter
*
*/
modulepar
BtpPayload
PX_PAYLOAD
:=
{
decodedPayload
:=
omit
,
rawPayload
:=
'0102030405'O
};
modulepar
BtpRawPayload
PX_PAYLOAD
:=
'0102030405'O
;
}
// end LibItsBtp_Pixits
\ No newline at end of file
ttcn/BTP/LibItsBtp_Templates.ttcn
View file @
3d752de8
...
...
@@ -89,7 +89,7 @@ module LibItsBtp_Templates {
* @param p_payload Payload
*/
template
(
value
)
BtpPacket
m_btpA
(
template
(
value
)
BtpPayload
p_payload
template
(
value
)
Btp
Raw
Payload
p_payload
)
:=
{
header
:=
{
btpAHeader
:=
{
...
...
@@ -107,7 +107,7 @@ module LibItsBtp_Templates {
* @param p_payload Payload
*/
template
(
value
)
BtpPacket
m_btpB
(
template
(
value
)
BtpPayload
p_payload
template
(
value
)
Btp
Raw
Payload
p_payload
)
:=
{
header
:=
{
btpBHeader
:=
{
...
...
@@ -125,9 +125,9 @@ module LibItsBtp_Templates {
* @param p_payload Payload
*/
template
(
value
)
BtpPacket
m_btpAWithPorts
(
template
(
value
)
BtpPortId
p_destPort
,
template
(
value
)
BtpPortId
p_srcPort
,
template
(
value
)
BtpPayload
p_payload
template
(
value
)
BtpPortId
p_destPort
,
template
(
value
)
BtpPortId
p_srcPort
,
template
(
value
)
Btp
Raw
Payload
p_payload
)
:=
{
header
:=
{
btpAHeader
:=
{
...
...
@@ -145,9 +145,9 @@ module LibItsBtp_Templates {
* @param p_payload Payload
*/
template
(
value
)
BtpPacket
m_btpBWithPorts
(
template
(
value
)
BtpPortId
p_destPort
,
template
(
value
)
BtpPortInfo
p_destPortInfo
,
template
(
value
)
BtpPayload
p_payload
template
(
value
)
BtpPortId
p_destPort
,
template
(
value
)
BtpPortInfo
p_destPortInfo
,
template
(
value
)
Btp
Raw
Payload
p_payload
)
:=
{
header
:=
{
btpBHeader
:=
{
...
...
@@ -165,9 +165,9 @@ module LibItsBtp_Templates {
* @param p_payload Payload
*/
template
BtpPacket
mw_btpA
(
template
(
present
)
BtpPortId
p_destPort
,
template
(
present
)
BtpPortId
p_srcPort
,
template
BtpPayload
p_payload
template
(
present
)
BtpPortId
p_destPort
,
template
(
present
)
BtpPortId
p_srcPort
,
template
Btp
Raw
Payload
p_payload
)
:=
{
header
:=
{
btpAHeader
:=
{
...
...
@@ -185,9 +185,9 @@ module LibItsBtp_Templates {
* @param p_payload Payload
*/
template
BtpPacket
mw_btpB
(
template
(
present
)
BtpPortId
p_destPort
,
template
(
present
)
BtpPortInfo
p_destPortInfo
,
template
BtpPayload
p_payload
template
(
present
)
BtpPortId
p_destPort
,
template
(
present
)
BtpPortInfo
p_destPortInfo
,
template
Btp
Raw
Payload
p_payload
)
:=
{
header
:=
{
btpBHeader
:=
{
...
...
ttcn/BTP/LibItsBtp_TypesAndValues.ttcn
View file @
3d752de8
...
...
@@ -14,14 +14,7 @@ module LibItsBtp_TypesAndValues {
// LibCommon
import
from
LibCommon_BasicTypesAndValues
all
;
// LibIts
import
from
CAM_PDU_Descriptions
language
"ASN.1:1997"
all
;
import
from
DENM_PDU_Descriptions
language
"ASN.1:1997"
all
;
import
from
MAPEM_PDU_Descriptions
language
"ASN.1:1997"
all
;
import
from
SPATEM_PDU_Descriptions
language
"ASN.1:1997"
all
;
import
from
IVIM_PDU_Descriptions
language
"ASN.1:1997"
all
;
import
from
SREM_PDU_Descriptions
language
"ASN.1:1997"
all
;
import
from
SSEM_PDU_Descriptions
language
"ASN.1:1997"
all
;
type
octetstring
BtpRawPayload
;
group
btpPdus
{
...
...
@@ -33,9 +26,10 @@ module LibItsBtp_TypesAndValues {
*/
type
record
BtpPacket
{
BtpHeader
header
,
BtpPayload
payload
optional
Btp
Raw
Payload
payload
optional
}
with
{
variant
"FIELDORDER(msb)"
encode
"LibIts_Interface"
}
...
...
@@ -52,7 +46,10 @@ module LibItsBtp_TypesAndValues {
type
union
BtpHeader
{
BtpAHeader
btpAHeader
,
BtpBHeader
btpBHeader
}
}
with
{
variant
"FIELDORDER(msb)"
}
/**
* @desc BTP-A Header
...
...
@@ -63,7 +60,10 @@ module LibItsBtp_TypesAndValues {
type
record
BtpAHeader
{
BtpPortId
destinationPort
,
BtpPortId
sourcePort
}
}
with
{
variant
"FIELDORDER(msb)"
}
/**
* @desc BTP-B Header
...
...
@@ -74,7 +74,10 @@ module LibItsBtp_TypesAndValues {
type
record
BtpBHeader
{
BtpPortId
destinationPort
,
BtpPortInfo
destinationPortInfo
}
}
with
{
variant
"FIELDORDER(msb)"
}
/**
* @desc BTP Port ID
...
...
@@ -90,53 +93,6 @@ module LibItsBtp_TypesAndValues {
}
// end btpHeaders
group
btpPayload
{
type
octetstring
BtpRawPayload
;
/**
* @desc The payload of the BTP packet
* @member decodedPayload The decoded payload
* @member rawPayload Raw payload as it is received
*/
type
record
BtpPayload
{
DecodedBtpPayload
decodedPayload
optional
,
BtpRawPayload
rawPayload
}
with
{
encode
"LibItsBtp_BtpPayload"
}
/**
* @desc The decoded payload of the BTP packet
* @member camPacket The CAM packet
* @member denmPacket The DENM packet
* @member mapemPacket
* @member spatemPacket
* @member ivimPacket
* @member sremPacket
* @member seemPacket
*/
type
union
DecodedBtpPayload
{
CAM
camPacket
,
DENM
denmPacket
,
MAPEM
mapemPacket
,
SPATEM
spatemPacket
,
IVIM
ivimPacket
,
SREM
sremPacket
,
SSEM
ssemPacket
}
with
{
encode
(
camPacket
)
"PER"
;
encode
(
denmPacket
)
"PER"
;
encode
(
mapemPacket
)
"PER"
;
encode
(
spatemPacket
)
"PER"
;
encode
(
ivimPacket
)
"PER"
;
encode
(
sremPacket
)
"PER"
;
encode
(
ssemPacket
)
"PER"
}
}
//end btpPayload
group
utPrimitives
{
group
utCommonPrimitives
{
...
...
@@ -194,4 +150,8 @@ module LibItsBtp_TypesAndValues {
encode
"UpperTester"
}
}
with
{
variant
""
encode
"LibItsGeoNetworking"
}
ttcn/GeoNetworking/LibItsGeoNetworking_EncdecDeclarations.ttcn
View file @
3d752de8
...
...
@@ -21,12 +21,6 @@ module LibItsGeoNetworking_EncdecDeclarations {
external
function
fx_dec_GeoNetworkingPdu
(
inout
bitstring
b
,
out
GeoNetworkingPdu
p
)
return
integer
with
{
extension
"prototype(sliding) decode(LibItsGeoNetworking)"
}
external
function
fx_enc_Payload
(
Payload
p
)
return
bitstring
with
{
extension
"prototype(convert) encode(LibItsGeoNetworking)"
}
external
function
fx_dec_Payload
(
inout
bitstring
b
,
out
Payload
p
)
return
integer
with
{
extension
"prototype(sliding) decode(LibItsGeoNetworking)"
}
external
function
fx_enc_GnNonSecuredPacket
(
GnNonSecuredPacket
p
)
return
bitstring
with
{
extension
"prototype(convert) encode(LibItsGeoNetworking)"
}
...
...
ttcn/GeoNetworking/LibItsGeoNetworking_Functions.ttcn
View file @
3d752de8
...
...
@@ -2052,7 +2052,7 @@ module LibItsGeoNetworking_Functions {
*/
function
f_sendGeoNetMessageWithPayload
(
in
template
(
value
)
GeoNetworkingReq
p_geoNetReq
,
in
template
(
value
)
Payload
p_payload
in
template
(
value
)
GnRaw
Payload
p_payload
)
runs
on
ItsGeoNetworking
{
p_geoNetReq
.
msgOut
.
gnPacket
.
packet
.
payload
:=
p_payload
;
geoNetworkingPort
.
send
(
p_geoNetReq
);
...
...
@@ -2070,7 +2070,7 @@ module LibItsGeoNetworking_Functions {
*/
function
f_receiveGeoNetMessageWithPayload
(
in
template
(
present
)
GeoNetworkingInd
p_geoNetInd
,
in
template
(
present
)
Payload
p_payload
in
template
(
present
)
GnRaw
Payload
p_payload
)
return
template
(
present
)
GeoNetworkingInd
{
var
template
(
present
)
GeoNetworkingInd
v_geoNetInd
:=
p_geoNetInd
;
...
...
@@ -2796,7 +2796,7 @@ module LibItsGeoNetworking_Functions {
f_getPosition
(
c_compNodeC
)
// FIXME To be verified YANN
));
// Add CAM payload
v_gnNonSecuredPacket
.
payload
:=
valueof
(
f_adaptPayload_m
(
p_payload
)
)
;
v_gnNonSecuredPacket
.
payload
:=
valueof
(
p_payload
);
f_buildGnSecuredCam
(
v_securedMessage
,
...
...
@@ -2846,7 +2846,7 @@ module LibItsGeoNetworking_Functions {
f_getPosition
(
c_compNodeC
)
// FIXME To be verified YANN
));
// Add CAM payload
v_gnNonSecuredPacket
.
payload
:=
valueof
(
f_adaptPayload_m
(
p_payload
)
)
;
v_gnNonSecuredPacket
.
payload
:=
valueof
(
p_payload
);
f_buildGnSecuredCam
(
v_securedMessage
,
...
...
ttcn/GeoNetworking/LibItsGeoNetworking_Templates.ttcn
View file @
3d752de8
...
...
@@ -110,7 +110,7 @@ module LibItsGeoNetworking_Templates {
gnAddress
:=
p_destinationGnAddr
,
lifetime
:=
c_lifetime
,
trafficClass
:=
valueof
(
m_trafficClass
),
payload
:=
{
decodedPayload
:=
omit
,
rawPayload
:=
''
O
}
// do not use f_adaptPayload_m here
payload
:=
''
O
}
}
...
...
@@ -155,7 +155,7 @@ module LibItsGeoNetworking_Templates {
octetstring
p_payload
)
modifies
m_generateGeoUnicastMessage
:=
{
geoUnicast
:=
{
payload
:=
{
decodedPayload
:=
omit
,
rawPayload
:=
p_payload
}
// do not use f_adaptPayload_m here
payload
:=
p_payload
}
}
...
...
@@ -172,7 +172,7 @@ module LibItsGeoNetworking_Templates {
octetstring
p_payload
)
modifies
m_generateGeoUnicastMessageWithLifetime
:=
{
geoUnicast
:=
{
payload
:=
{
decodedPayload
:=
omit
,
rawPayload
:=
p_payload
}
// do not use f_adaptPayload_m here
payload
:=
p_payload
}
}
...
...
@@ -189,7 +189,7 @@ module LibItsGeoNetworking_Templates {
trafficClass
:=
valueof
(
m_trafficClass
),
reserved
:=
c_uInt24Zero
,
area
:=
p_geoArea
.
area
,
payload
:=
{
decodedPayload
:=
omit
,
rawPayload
:=
''
O
}
// do not use f_adaptPayload_m here
payload
:=
''
O
}
}
...
...
@@ -232,7 +232,7 @@ module LibItsGeoNetworking_Templates {
octetstring
p_payload
)
modifies
m_generateGeoBroadcastMessage
:=
{
geoBroadcast
:=
{
payload
:=
{
decodedPayload
:=
omit
,
rawPayload
:=
p_payload
}
// do not use f_adaptPayload_m here
payload
:=
p_payload
}
}
...
...
@@ -249,7 +249,7 @@ module LibItsGeoNetworking_Templates {
trafficClass
:=
valueof
(
m_trafficClass
),
reserved
:=
c_uInt24Zero
,
area
:=
p_geoArea
.
area
,
payload
:=
{
decodedPayload
:=
omit
,
rawPayload
:=
''
O
}
// do not use f_adaptPayload_m here
payload
:=
''
O
}
}
...
...
@@ -279,7 +279,7 @@ module LibItsGeoNetworking_Templates {
octetstring
p_payload
)
modifies
m_generateGeoAnycastMessage
:=
{
geoAnycast
:=
{
payload
:=
{
decodedPayload
:=
omit
,
rawPayload
:=
p_payload
}
// do not use f_adaptPayload_m here
payload
:=
p_payload
}
}
...
...
@@ -289,7 +289,7 @@ module LibItsGeoNetworking_Templates {
template
(
value
)
UtGnTrigger
m_generateShbMessage
:=
{
shb
:=
{
trafficClass
:=
valueof
(
m_trafficClass
),
payload
:=
{
decodedPayload
:=
omit
,
rawPayload
:=
''
O
}
// do not use f_adaptPayload_m here
payload
:=
''
O
}
}
...
...
@@ -315,7 +315,7 @@ module LibItsGeoNetworking_Templates {
octetstring
p_payload
)
modifies
m_generateShbMessage
:=
{
shb
:=
{
payload
:=
{
decodedPayload
:=
omit
,
rawPayload
:=
p_payload
}
// do not use f_adaptPayload_m here
payload
:=
p_payload
}
}
...
...
@@ -327,7 +327,7 @@ module LibItsGeoNetworking_Templates {
nbHops
:=
10
,
lifetime
:=
c_lifetime
,
trafficClass
:=
valueof
(
m_trafficClass
),
payload
:=
{
decodedPayload
:=
omit
,
rawPayload
:=
''
O
}
// do not use f_adaptPayload_m here
payload
:=
''
O
}
}
...
...
@@ -542,7 +542,7 @@ module LibItsGeoNetworking_Templates {
packet
:=
valueof
({
commonHeader
:=
p_commonHeader
,
extendedHeader
:=
p_extHeader
,
payload
:=
f_adaptPayload_m
(
char2oct
(
"DEFAULT_PAYLOAD"
)
)
payload
:=
char2oct
(
"DEFAULT_PAYLOAD"
)
}),
securedMsg
:=
omit
}
...
...
@@ -563,24 +563,6 @@ module LibItsGeoNetworking_Templates {
}
}
/**
* @desc Send template for GeoNetworking Packet with octetstring payload
* @param p_basicHeader Common header of GeoNetworking packet
* @param p_extHeader Extended header of GeoNetworking packet
* @param p_payload Octetstring payload
*
* @see m_geoNwPacket
*/
template
(
value
)
GeoNetworkingPacket
m_geoNwPacketWithOctetstringPayload
(
in
template
(
value
)
CommonHeader
p_commonHeader
,
in
template
(
value
)
ExtendedHeader
p_extHeader
,
in
template
(
value
)
octetstring
p_payload
)
modifies
m_geoNwPacket
:=
{
packet
:=
{
payload
:=
valueof
(
f_adaptPayload_m
(
p_payload
))
}
}
/**
* @desc Send template for GeoNetworking Packet with payload
* @param p_basicHeader Common header of GeoNetworking packet
...
...
@@ -592,7 +574,7 @@ module LibItsGeoNetworking_Templates {
template
(
value
)
GeoNetworkingPacket
m_geoNwPacketWithPayload
(
in
template
(
value
)
CommonHeader
p_commonHeader
,
in
template
(
value
)
ExtendedHeader
p_extHeader
,
in
template
(
value
)
Payload
p_payload
in
template
(
value
)
GnRaw
Payload
p_payload
)
modifies
m_geoNwPacket
:=
{
packet
:=
{
payload
:=
p_payload
...
...
@@ -650,7 +632,7 @@ module LibItsGeoNetworking_Templates {
in
template
(
present
)
octetstring
p_payload
)
modifies
mw_geoNwPacket
:=
{
packet
:=
{
payload
:=
f_adaptPayload_mw
(
p_payload
)
payload
:=
p_payload
}
}
...
...
@@ -667,7 +649,7 @@ module LibItsGeoNetworking_Templates {
template
(
present
)
GeoNetworkingPacket
mw_geoNwPduWithPayload
(
in
template
(
present
)
CommonHeader
p_commonHeader
,
in
template
(
present
)
ExtendedHeader
p_extHeader
,
in
template
(
present
)
Payload
p_payload
in
template
(
present
)
GnRaw
Payload
p_payload
)
modifies
mw_geoNwPacket
:=
{
packet
:=
{
payload
:=
p_payload
...
...
@@ -693,7 +675,7 @@ module LibItsGeoNetworking_Templates {
* @param payload Expected GN payload
*/
template
(
present
)
GnNonSecuredPacket
mw_geoNwAnyPacket_withPayload
(
template
(
present
)
Payload
p_payload
template
(
present
)
GnRaw
Payload
p_payload
)
:=
{
commonHeader
:=
mw_commonHeader
(
?
,
...
...
@@ -733,7 +715,7 @@ module LibItsGeoNetworking_Templates {
p_destinationShortPosVec
,
p_seqNumber
)),
payload
:=
valueof
(
f_adaptPayload_m
(
char2oct
(
"DEFAULT_PAYLOAD"
))
)
payload
:=
valueof
(
char2oct
(
"DEFAULT_PAYLOAD"
))
}
/**
...
...
@@ -844,7 +826,7 @@ module LibItsGeoNetworking_Templates {
p_seqNumber
,
p_anycastArea
)),
payload
:=
valueof
(
f_adaptPayload_m
(
char2oct
(
"DEFAULT_PAYLOAD"
))
)
payload
:=
valueof
(
char2oct
(
"DEFAULT_PAYLOAD"
))
}
/**
...
...
@@ -958,7 +940,7 @@ module LibItsGeoNetworking_Templates {
p_seqNumber
,
p_broadcastArea
)),
payload
:=
valueof
(
f_adaptPayload_m
(
char2oct
(
"DEFAULT_PAYLOAD"
))
)
payload
:=
valueof
(
char2oct
(
"DEFAULT_PAYLOAD"
))
}
/**
...
...
@@ -1009,7 +991,7 @@ module LibItsGeoNetworking_Templates {
in
template
(
present
)
LongPosVector
p_sourceLongPosVec
,
in
template
(
present
)
UInt16
p_seqNumber
,
in
template
(
present
)
NextHeader
p_nextHeader
,
in
template
(
present
)
Payload
p_payload
in
template
(
present
)
GnRaw
Payload
p_payload
)
modifies
mw_geoNwBroadcastPacketWithNextHeader
:=
{
payload
:=
p_payload
}
...
...
@@ -1138,10 +1120,7 @@ module LibItsGeoNetworking_Templates {
p_seqNumber
,
p_mid
),
payload
:=
{
decodedPayload
:=
omit
,
rawPayload
:=
''
O
}
payload
:=
omit
}
/**
...
...
@@ -1183,10 +1162,7 @@ module LibItsGeoNetworking_Templates {
extendedHeader
:=
mw_lsReplyHeader
(
p_sourceLongPosVec
,
p_destinationLongPosVec
),
payload
:=
{
decodedPayload
:=
omit
,
rawPayload
:=
''
O
}
payload
:=
omit
}
}
// end group geoNwPacketLsTemplates
...
...
@@ -1227,16 +1203,7 @@ module LibItsGeoNetworking_Templates {
m_beaconHeaderType
),
extendedHeader
:=
mw_beaconHeader
(
p_sourceLongPosVec
),
payload
:=
(
{
decodedPayload
:=
omit
,
rawPayload
:=
''
O
},
{
// Ethernet testing requires minimum packet size of 60 bytes
decodedPayload
:=
*
,
rawPayload
:=
'00000000000000000000'O
}
)
payload
:=
(
*
,
'00000000000000000000'O
)
}
}
// end group geoNwPacketBeaconTemplates
...
...
@@ -1259,7 +1226,7 @@ module LibItsGeoNetworking_Templates {
extendedHeader
:=
valueof
(
m_shbHeader
(
p_sourceLongPosVec
)),
payload
:=
valueof
(
f_adaptPayload_m
(
char2oct
(
"DEFAULT_PAYLOAD"
))
)
payload
:=
valueof
(
char2oct
(
"DEFAULT_PAYLOAD"
))
}
/**
...
...
@@ -1306,7 +1273,7 @@ module LibItsGeoNetworking_Templates {
p_seqNumber
,
p_sourceLongPosVec
)),
payload
:=
valueof
(
f_adaptPayload_m
(
char2oct
(
"DEFAULT_PAYLOAD"
))
)
payload
:=
valueof
(
char2oct
(
"DEFAULT_PAYLOAD"
))
}
/**
...
...
@@ -2316,77 +2283,4 @@ module LibItsGeoNetworking_Templates {
}
// end geoMiscTemplates
group
geoTemplateFunctions
{
function
f_adaptPayloadForUtInd_m
(
in
template
(
omit
)
Payload
p_gnPayload
)
return
octetstring
{
if
(
not
isvalue
(
p_gnPayload
))
{
testcase
.
stop
(
__SCOPE__
&
" can handle payload values only"
);
}
if
(
PX_BTP_IN_UT_IND
==
false
)
{
if
(
PX_GN_UPPER_LAYER
==
e_btpA
or
PX_GN_UPPER_LAYER
==
e_btpB
)
{
if
(
ispresent
(
p_gnPayload
.
decodedPayload
)
){
return
bit2oct
(
encvalue
(
p_gnPayload
.
decodedPayload
.
btpPacket
.
payload
));
}
return
valueof
(
p_gnPayload
.
rawPayload
);
}
}
return
bit2oct
(
encvalue
(
valueof
(
p_gnPayload
)));
}
function
f_adaptPayload_m
(
in
template
(
value
)
octetstring
p_finalPayload
)
return
template
(
value
)
Payload
{
var
template
(
value
)
Payload
v_payload
;
if
(
PX_GN_UPPER_LAYER
==
e_any
)
{
v_payload
:=
{
decodedPayload
:=
omit
,
rawPayload
:=
p_finalPayload
};
return
v_payload
;
}
if
(
PX_GN_UPPER_LAYER
==
e_ipv6
)
{
v_payload
:=
{
decodedPayload
:=
{
ipv6Packet
:=
m_ipv6Packet
(
c_unspecified
,
c_allNodesMca
,
c_noNextHdr
,
m_octetstringPayload
(
p_finalPayload
))},
rawPayload
:=
''
O
};
return
v_payload
;
}
if
(
PX_GN_UPPER_LAYER
==
e_btpA
)
{
v_payload
:=
{
decodedPayload
:=
{
btpPacket
:=
m_btpA
({
decodedPayload
:=
omit
,
rawPayload
:=
p_finalPayload
})},
rawPayload
:=
''
O
};
return
v_payload
;
}
if
(
PX_GN_UPPER_LAYER
==
e_btpB
)
{
v_payload
:=
{
decodedPayload
:=
{
btpPacket
:=
m_btpB
({
decodedPayload
:=
omit
,
rawPayload
:=
p_finalPayload
})},
rawPayload
:=
''
O
};
return
v_payload
;
}
return
v_payload
;
}
function
f_adaptPayload_mw
(
in
template
(
present
)
octetstring
p_finalPayload
)
return
template
(
present
)
Payload
{
var
template
(
present
)
Payload
v_payload
;
if
(
PX_GN_UPPER_LAYER
==
e_any
)
{
v_payload
:=
{
decodedPayload
:=
*
,
rawPayload
:=
p_finalPayload
};
return
v_payload
;
}
if
(
PX_GN_UPPER_LAYER
==
e_ipv6
)
{
v_payload
:=
{
decodedPayload
:=
{
ipv6Packet
:=
mw_ipv6Packet
(
?
,
?
,
?
,
mw_octetstringPayload
(
p_finalPayload
))},
rawPayload
:=
?
};
return
v_payload
;
}
if
(
PX_GN_UPPER_LAYER
==
e_btpA
)
{
v_payload
:=
{
decodedPayload
:=
{
btpPacket
:=
mw_btpA
(
?
,
?
,
{
decodedPayload
:=
*
,
rawPayload
:=
p_finalPayload
}
)},
rawPayload
:=
?
};
return
v_payload
;
}
if
(
PX_GN_UPPER_LAYER
==
e_btpB
)
{
v_payload
:=
{
decodedPayload
:=
{
btpPacket
:=
mw_btpB
(
?
,
?
,
{
decodedPayload
:=
*
,
rawPayload
:=
p_finalPayload
})},
rawPayload
:=
?
};
return
v_payload
;
}
return
v_payload
;
}
}
// end geoTemplateFunctions
}
// end ItsGeoNetworking_Templates
\ No newline at end of file
ttcn/GeoNetworking/LibItsGeoNetworking_TypesAndValues.ttcn
View file @
3d752de8
...
...
@@ -195,10 +195,12 @@ module LibItsGeoNetworking_TypesAndValues {
encode
(
securedMsg
)
"LibItsSecurity"
}
type
octetstring
GnRawPayload
;