Loading ttcn3/EtsiLibrary/LibIpv6/LibCommonRfcs/LibIpv6_ExternalFunctions.ttcn +31 −1 Original line number Diff line number Diff line Loading @@ -84,7 +84,14 @@ * @return Message HMAC */ external function fx_integrity( IntegrityAlgo p_integrityAlgo, in octetstring p_key, in octetstring p_message) return octetstring; return octetstring;//to be named fx_authenticator //p_message := SPI & SEQNr & IV & encrypted data //* @param p_spi Security parameter Index whihc poinst to the SAD to be used external function fx_newIntegrity(in UInt31 p_spi, in octetstring p_key, in octetstring p_message) return octetstring;//To be named fx_integrity /* @desc This external function runs the MipHeader through Codec and returns * the octetstring representing the MipHeader Loading @@ -95,4 +102,27 @@ external function fx_mipHdrToOct(MipHeader p_mipHeader) return octetstring; /* @desc This external function byte aligns the EspPayload (Iv, EspIpDatagram, TfcPadding) + next Header + pad Length * with padding according to the byteBoundary set by the encryption algo. * The nextHeader is of constant size 1 octet, * and is therefore no input parameter to this external function. * The padLnength is of constant size 1 octet, * and is therefore no input parameter to this external function. * * @param p_spi Security parameter Index whihc poinst to the SAD to be used * @param p_espPayload EspPayload to be byteAligned * @return octetstring */ external function fx_generatePadding(in UInt31 p_spi, EspPayload p_espPayload) return octetstring; /* @desc This external function encrypts the EspPayload(except iv) + padding + padLen + nextHeader * * @param p_spi Security parameter Index whihc poinst to the SAD to be used * @param p_espHeader Esp Header to be encoded to octetstring * @return octetstring Is used for calculating the ICV */ external function fx_encrypt(in UInt31 p_spi, in EspHeader p_espHeader) return octetstring; }// end module LibIpv6_ExternalFunctions ttcn3/EtsiLibrary/LibIpv6/LibCommonRfcs/LibIpv6_Interface_TypesAndValues.ttcn +0 −21 Original line number Diff line number Diff line Loading @@ -380,27 +380,6 @@ module LibIpv6_Interface_TypesAndValues { } // end ipv6Header //smu group generalIpv6MessageType { /* * @desc PDU type derived from RFC2460 */ //smu type record GeneralIpv6 { //smu Ipv6Header ipv6Hdr, //smu ExtensionHeaderList extHdrList optional, //smu octetstring data optional //smu } //smu with { //smu variant "isPDU=LibIpv6_Rfc2460Root_TypesAndValues;"; //smu variant (data) "length=getIntTag('IPv6Header_payloadLength');"; //smu } //smu } //end group generalIpv6MessageType }//end group rfc2460Root_TypesAndValues group extensionHeaders { Loading Loading
ttcn3/EtsiLibrary/LibIpv6/LibCommonRfcs/LibIpv6_ExternalFunctions.ttcn +31 −1 Original line number Diff line number Diff line Loading @@ -84,7 +84,14 @@ * @return Message HMAC */ external function fx_integrity( IntegrityAlgo p_integrityAlgo, in octetstring p_key, in octetstring p_message) return octetstring; return octetstring;//to be named fx_authenticator //p_message := SPI & SEQNr & IV & encrypted data //* @param p_spi Security parameter Index whihc poinst to the SAD to be used external function fx_newIntegrity(in UInt31 p_spi, in octetstring p_key, in octetstring p_message) return octetstring;//To be named fx_integrity /* @desc This external function runs the MipHeader through Codec and returns * the octetstring representing the MipHeader Loading @@ -95,4 +102,27 @@ external function fx_mipHdrToOct(MipHeader p_mipHeader) return octetstring; /* @desc This external function byte aligns the EspPayload (Iv, EspIpDatagram, TfcPadding) + next Header + pad Length * with padding according to the byteBoundary set by the encryption algo. * The nextHeader is of constant size 1 octet, * and is therefore no input parameter to this external function. * The padLnength is of constant size 1 octet, * and is therefore no input parameter to this external function. * * @param p_spi Security parameter Index whihc poinst to the SAD to be used * @param p_espPayload EspPayload to be byteAligned * @return octetstring */ external function fx_generatePadding(in UInt31 p_spi, EspPayload p_espPayload) return octetstring; /* @desc This external function encrypts the EspPayload(except iv) + padding + padLen + nextHeader * * @param p_spi Security parameter Index whihc poinst to the SAD to be used * @param p_espHeader Esp Header to be encoded to octetstring * @return octetstring Is used for calculating the ICV */ external function fx_encrypt(in UInt31 p_spi, in EspHeader p_espHeader) return octetstring; }// end module LibIpv6_ExternalFunctions
ttcn3/EtsiLibrary/LibIpv6/LibCommonRfcs/LibIpv6_Interface_TypesAndValues.ttcn +0 −21 Original line number Diff line number Diff line Loading @@ -380,27 +380,6 @@ module LibIpv6_Interface_TypesAndValues { } // end ipv6Header //smu group generalIpv6MessageType { /* * @desc PDU type derived from RFC2460 */ //smu type record GeneralIpv6 { //smu Ipv6Header ipv6Hdr, //smu ExtensionHeaderList extHdrList optional, //smu octetstring data optional //smu } //smu with { //smu variant "isPDU=LibIpv6_Rfc2460Root_TypesAndValues;"; //smu variant (data) "length=getIntTag('IPv6Header_payloadLength');"; //smu } //smu } //end group generalIpv6MessageType }//end group rfc2460Root_TypesAndValues group extensionHeaders { Loading