Commit 59f78391 authored by garciay's avatar garciay
Browse files

Add CfPort for configuration IUT port

Validate clause 7.6.2 Basic procedure - valid behavior
parent d14da52c
Loading
Loading
Loading
Loading
+153 −148
Original line number Diff line number Diff line
@@ -28,10 +28,6 @@ module LibItsFntp_Functions {
        type 
            EUI64, IN_SAPaddress, LLserviceAddr, Link_ID, AccessParameters 
    }; 
    import from CALMmsap language "ASN.1:1997" { 
        type 
            SimNLTcmd  
    }; 
    import from CITSapplReq language "ASN.1:1997" { 
        type ServiceRef 
    };
@@ -42,7 +38,10 @@ module LibItsFntp_Functions {
    };
    import from LibItsFntp_TypesAndValues {
        const c_portDyn, c_portNon;
        type AcFntpPrimitive
        type 
            UtFntpEvent, 
            CfFntpEventInd, 
            AcFntpPrimitive
    };
    import from LibItsFntp_Templates all;
    import from LibItsFntp_Pixits all;
@@ -50,14 +49,20 @@ module LibItsFntp_Functions {
        modulepar PICS_ITS_S_INW, PICS_ROLE_RH;
    };
    import from LibItsMgt_Templates { 
        template mw_mnRequestRequest_setNotFNTP 
        template 
            mdw_fwtSetNotRequestReq_port, mw_mnRequestRequest_setNotFNTP 
    };
    import from LibItsMgt_Functions { 
        function 
            f_getNextCommandRef, 
            f_getNextPduCounter 
//    import from LibItsMgt_Functions { FIXME To be removed 
//        function 
//            f_getNextCommandRef 
//    }; 
    import from LibItsCalm_Interface { 
        type 
            ItsCalm, 
            UtEvent, UtEventInd, 
            CfEventInd; 
        group utFuntions, cfFunctions 
    }; 
    import from LibItsCalm_Interface all; 
    
    group fntpConfigurationFunctions {
        
@@ -77,7 +82,7 @@ module LibItsFntp_Functions {
            // Map
            map(self:acPort, system:acPort);
            map(self:utPort, system:utPort);
            //map(self:cfPort, system:cfPort);
            map(self:cfPort, system:cfPort);
            map(self:fntpPort, system:fntpPort);
            
            vc_commandRef := 0;
@@ -116,7 +121,7 @@ module LibItsFntp_Functions {
            // Map
            map(self:acPort, system:acPort);
            map(self:utPort, system:utPort);
            //map(self:cfPort, system:cfPort);
            map(self:cfPort, system:cfPort);
            map(self:fntpPort, system:fntpPort);
            
            // Connect
@@ -143,7 +148,7 @@ module LibItsFntp_Functions {
            // Unmap
            unmap(self:acPort, system:acPort);
            unmap(self:utPort, system:utPort);
            //unmap(self:cfPort, system:cfPort);
            unmap(self:cfPort, system:cfPort);
            unmap(self:fntpPort, system:fntpPort);
            
            // Disconnect
@@ -195,7 +200,8 @@ module LibItsFntp_Functions {
         */
        function f_initialState() runs on ItsCalm {
            
            f_utInitializeIut(m_fntpInitialize);
            f_utInitializeIut(m_utFntpInitialize);
            f_cfInitialize(m_cfFntpInitialize);
            f_sleepIgnoreDef(PX_WAIT_FOR_IUT_READY); // Wait until the IUT is in a stable situation (beaconing...)
        } // End of function f_initialState
        
@@ -211,28 +217,25 @@ module LibItsFntp_Functions {
         */
        function f_initializeFntpForwardingTable(in PortNumber p_port) runs on ItsCalm {
            // Request allocation of a port number associated with the ITS-SP
            // TODO Consider case of c_portDyn, and use f_utCommandRequestConfirm
            var template (value) UtCommandRequest v_commandReq;
            var template UtRequestRequest v_commandConf;
            
                v_commandReq := m_fntpNfSapRemoteCommandRequest_simNutCmd( 
                    f_getNextPduCounter(), 
                    f_getNextCommandRef(), 
                    m_generateNfFntpPortCreationRequest(
            // TODO Consider case of c_portDyn, and use f_utEventResponse
            
            f_utEventResponse( 
                UtEvent : { // TODO Simplify template call using m_utEvent/mw_utEvent templates 
                    utFntpEvent := m_generateNfFntpPortCreationRequest(
                        f_getIutServiceRef(), 
                        p_port 
                    ).utFntpCommandRequest.nfSapPrimitives 
                );
                v_commandConf := mw_fntpNfSapRemoteCommandConfirm(
                mdw_mnRequestRequest_portCreationSucceed(
                    mdw_fntpCommConfirm_success(p_port)
                    )
                );
            f_utCommandRequestConfirm( 
                v_commandReq,
                v_commandConf,
                },
                UtEventInd : {  // TODO Simplify template call using m_utEventInd/mw_utEventInd templates 
                    utFntpEventInd := mw_utFntpEventInd( 
                        mw_fntpPortConfirm( 
                            f_getIutServiceRef(), 
                            p_port 
                        )  
                    ) 
                }, 
                false, 
                vc_utCommandConf 
                vc_utEventInd 
            );
            // Store the allocated port number
            vc_portNumber := p_port;
@@ -247,31 +250,31 @@ module LibItsFntp_Functions {
        
        /**
         * @desc    Wait for MN-SAP.MN-REQUEST/FWTupdate message sent by IST management entity to update the forwarding table 
         * @param   p_portNumber Contains either the value PORT_NON in order to indicate dynamic assignment of a port number by the port number manager, or a valid value of a well-known static port PORT_REG
         * @verdict Unchanged
         */
        function f_fntpAwaitFwtUpdate( 
            in template (present) PortNumber p_port 
            in template (present) PortNumber p_portNumber 
        ) runs on ItsCalm {
            var template (present) UtRequestRequest p_requestReq;
            
                p_requestReq := mw_fntpMnSapRemoteCommand( 
                    mw_awaitFwtUpdate(p_port).utFntpRequestRequest.mnRequestRequest 
            f_cfAwaitNotificationToManagement( 
                CfEventInd : { 
                    cfFntpEventInd := mw_cfFntpEventInd(
                        mdw_fwtSetNotRequestReq_port(p_portNumber)
                    ) 
                },
                false 
            ); 
            f_utAwaitRequestRequest(p_requestReq); 
        } // End of function f_fntpAwaitFwtUpdate()

        function f_fntpCommandRequestWithoutConfirm( 
            in template (value) UtCommandRequest p_generateNfFntpCommandRequest
            in template (value) UtFntpEvent p_generateNfFntpCommandRequest // TODO To be renamed
        ) runs on ItsCalm { 
            var template (value) UtCommandRequest p_commandReq;
            
                p_commandReq := m_fntpNfSapRemoteCommandRequest_simNutCmd( 
                    f_getNextPduCounter(), 
                    f_getNextCommandRef(), 
                    p_generateNfFntpCommandRequest.utFntpCommandRequest.nfSapPrimitives 
                );
            f_utCommandRequestWithoutConfirm(
                p_commandReq // Content of the FNTP control field in the FNTP extended header
            f_utEvent(
                UtEvent : { 
                    utFntpEvent := p_generateNfFntpCommandRequest 
                } 
            );
            
        } // End of function f_fntpCommandRequestWithoutConfirm 
@@ -283,54 +286,35 @@ module LibItsFntp_Functions {
        function f_unInitializeFntpForwardingTable() runs on ItsCalm {
            // check c_portDyn
            // Send for FTN-SOCKET.request & Wait for FTN-SOCKET.confirm
            var template (value) UtCommandRequest p_commandReq;
            
                p_commandReq := m_fntpNfSapRemoteCommandRequest_simNutCmd( 
                    f_getNextPduCounter(), 
                    f_getNextCommandRef(), 
                   m_generateNfFntpPortDeletionRequest(f_getIutServiceRef(), vc_portNumber).utFntpCommandRequest.nfSapPrimitives 
                );
            f_utCommandRequestConfirm(
                p_commandReq,
                mw_fntpNfSapRemoteCommandConfirm( 
                    mdw_mnRequestRequest_portCreationSucceed( 
                        mw_fntpPortConfirm(
            f_utEventResponse( 
                UtEvent : { 
                    utFntpEvent := m_generateNfFntpPortDeletionRequest( 
                        f_getIutServiceRef(), 
                            ? 
                        vc_portNumber 
                    ) 
                }, 
                UtEventInd : { 
                    utFntpEventInd := mw_utFntpEventInd( 
                        mdw_fntpCommConfirm_success(vc_portNumber)
                    ) 
                ), 
                }, 
                false, 
                vc_utCommandConf);
                vc_utEventInd 
            );
            
        } // End of function f_unInitializeFntpForwardingTable
        
        /**
         * @desc Trigger a basic FNTPNPDU to create an entry in forwarding table for a known peer station 
         */
        function f_setupKnownPeerStation() runs on ItsCalm { 
                var template (value) SimNLTcmd v_simNltCmd := { //INsapPrimitivesUp 
                    spRef := 0, 
                    servPrimitive := {
                        IN_UNITDATA_indication := m_inUnitDataInd( 
                            m_llServiceAddr(m_linkId(f_getIutWlRemoteCiidBc(), f_getIutWlLocalCiid())), 
                            m_llServiceAddr(m_linkId(f_getIutRemoteDestCiidBc(), f_getIutDestLocalCiid())), 
                        bit2oct( 
                            encvalue( 
                                m_fntpBasicNpdu( 
                f_acGenerateBasicFntpNpdu(
                    f_getIutRemotePortNumberValue(), 
                                    vc_portNumber  
                                ) 
                            ) 
                        )
                        ) 
                    }
                }; 
                var template (value) UtCommandRequest v_commandReq := m_fntpNfSapRemoteCommandRequest_simNltCmd( 
                    f_getNextPduCounter(), 
                    f_getNextCommandRef(), 
                    v_simNltCmd
                    vc_portNumber,  
					m_llServiceAddr(m_linkId(f_getIutWlRemoteCiidBc(), f_getIutWlLocalCiid())), 
                    m_llServiceAddr(m_linkId(f_getIutRemoteDestCiidBc(), f_getIutDestLocalCiid())) 
				);
                f_utCommandRequestWithoutConfirm(v_commandReq);
                // And wait for a MN-SAP.MN-COMMAND/FWTupdate message sent by ITS management entity to update the forwarding table
                f_fntpAwaitFwtUpdate(f_getIutRemotePortNumberValue());
                
@@ -381,35 +365,35 @@ module LibItsFntp_Functions {
            in template (value) FNTPpacketCounter p_counter, 
            in template (value) FNTPhopCount p_hops 
        ) runs on ItsCalm { 
            var template (value) SimNLTcmd v_simNltCmd := { // INsapPrimitivesUp 
                spRef := 0, 
                servPrimitive := {
                    IN_UNITDATA_indication := m_inUnitDataInd( 
                        m_llServiceAddr(m_linkId(f_getIutWlRemoteCiidBc(), f_getIutWlLocalCiid())), 
                        m_llServiceAddr(m_linkId(f_getIutRemoteDestCiidBc(), f_getIutDestLocalCiid())), 
                        bit2oct( 
                            encvalue( 
                                md_fntpForwardingNpdu( 
                                    p_sourcePort, 
                                    p_destinationPort, 
                                    p_hops,
                                    p_fromPort,
                                    p_toPort,
                                    p_counter 
                                ) 
                            ) 
                        )
                    ) 
        }
            }; 
            var template (value) UtCommandRequest v_commandReq := m_fntpNfSapRemoteCommandRequest_simNltCmd( 
                f_getNextPduCounter(), 
                f_getNextCommandRef(), 
                v_simNltCmd
            ); 
            f_utCommandRequestWithoutConfirm(v_commandReq);
            // And wait for a MN-SAP.MN-COMMAND/FWTupdate message sent by ITS management entity to update the forwarding table
//FIXME                f_fntpAwaitFwtUpdate(?);
//            var template (value) SimNLTcmd v_simNltCmd := { // INsapPrimitivesUp 
//                spRef := 0, 
//                servPrimitive := {
//                    IN_UNITDATA_indication := m_inUnitDataInd( 
//                        m_llServiceAddr(m_linkId(f_getIutWlRemoteCiidBc(), f_getIutWlLocalCiid())), 
//                        m_llServiceAddr(m_linkId(f_getIutRemoteDestCiidBc(), f_getIutDestLocalCiid())), 
//                        bit2oct( 
//                            encvalue( 
//                                md_fntpForwardingNpdu( 
//                                    p_sourcePort, 
//                                    p_destinationPort, 
//                                    p_hops,
//                                    p_fromPort,
//                                    p_toPort,
//                                    p_counter 
//                                ) 
//                            ) 
//                        )
//                    ) 
//                }
//            }; 
//            var template (value) UtCommandRequest v_commandReq := m_fntpNfSapRemoteCommandRequest_simNltCmd( 
//                f_getNextPduCounter(), 
//                f_getNextCommandRef(), 
//                v_simNltCmd
//            ); 
//            f_utEvent(v_commandReq);
//            // And wait for a MN-SAP.MN-COMMAND/FWTupdate message sent by ITS management entity to update the forwarding table
////FIXME                f_fntpAwaitFwtUpdate(?);
        } // End of function f_acGenerateFntpForwardingNpdu
        
        /**
@@ -427,29 +411,29 @@ module LibItsFntp_Functions {
            in template (value) LLserviceAddr p_insapDestAddress, 
            in FNTPhopCount p_hops 
        ) runs on ItsCalm { 
            var template (value) SimNLTcmd v_simNltCmd := { // INsapPrimitivesUp 
                spRef := 0, 
                servPrimitive := {
                    IN_UNITDATA_indication := m_inUnitDataInd( 
                        m_llServiceAddr(m_linkId(f_getIutWlRemoteCiidBc(), f_getIutWlLocalCiid())), 
                        m_llServiceAddr(m_linkId(f_getIutRemoteDestCiidBc(), f_getIutDestLocalCiid())), 
                    bit2oct( 
                        encvalue( 
                            m_fntpBasicNpdu( 
                                p_sourcePort, 
                                p_destinationPort 
                            ) 
                        ) 
                    ) 
                ) 
                }
            }; 
            var template (value) UtCommandRequest v_commandReq := m_fntpNfSapRemoteCommandRequest_simNltCmd( 
                f_getNextPduCounter(), 
                f_getNextCommandRef(), 
                v_simNltCmd
            ); 
            f_utCommandRequestWithoutConfirm(v_commandReq);
//            var template (value) SimNLTcmd v_simNltCmd := { // INsapPrimitivesUp 
//                spRef := 0, 
//                servPrimitive := {
//                    IN_UNITDATA_indication := m_inUnitDataInd( 
//                        m_llServiceAddr(m_linkId(f_getIutWlRemoteCiidBc(), f_getIutWlLocalCiid())), 
//                        m_llServiceAddr(m_linkId(f_getIutRemoteDestCiidBc(), f_getIutDestLocalCiid())), 
//                    bit2oct( 
//                        encvalue( 
//                            m_fntpBasicNpdu( 
//                                p_sourcePort, 
//                                p_destinationPort 
//                            ) 
//                        ) 
//                    ) 
//                ) 
//                }
//            }; 
//            var template (value) UtCommandRequest v_commandReq := m_fntpNfSapRemoteCommandRequest_simNltCmd( 
//                f_getNextPduCounter(), 
//                f_getNextCommandRef(), 
//                v_simNltCmd
//            ); 
//            f_utEvent(v_commandReq);
            // And wait for a MN-SAP.MN-COMMAND/FWTupdate message sent by ITS management entity to update the forwarding table
//FIXME                f_fntpAwaitFwtUpdate(?);
        } // End of function f_acGenerateFntpNPDU
@@ -462,6 +446,28 @@ module LibItsFntp_Functions {
            acPort.send(p_event);
        }
        
        function f_acGenerateBasicFntpNpdu(
            in template (value) PortNumber p_sourcePort, 
            in template (value) PortNumber p_destinationPort, 
            in template (value) LLserviceAddr p_insapSourceAddress, 
            in template (value) LLserviceAddr p_insapDestAddress 
        ) runs on ItsCalm { 
            f_acTriggerEvent( 
                m_generateFntpNpdu( 
                    p_insapSourceAddress, 
                    p_insapDestAddress, 
                    bit2oct( 
                        encvalue( 
                            m_fntpBasicNpdu( 
                                p_sourcePort, 
                                p_destinationPort
                            ) 
                        ) 
                    ) 
                ) 
            ); 
        } // End of function f_acGenerateFntpNpduCip
        
        /**
         * @desc    Triggers lower tester to send FNTP station-internal NDPU with several hops and an invalid control field
         * @param   p_sourcePort            Source port 
@@ -1020,11 +1026,10 @@ module LibItsFntp_Functions {
         * @desc The base default.
         */
        altstep a_fntpUnsollictedMessages() runs on ItsCalm {
            // FIXME Check why TTWB detect an error here?
//            [] fntpPort.receive(mw_fntpInSapPrimitiveReq(mw_inUnitDataReq_any)) {
//                log("*** a_fntpDefault: INFO: IN-UNITDATA.request received in default ***");
//            }
// FIXME Add support of response to NF-FNTP-PORT.confirm & NF-FNTP-COMM.confirm
            [] fntpPort.receive(mw_fntpInd(mw_fntpInSapPrimitiveReq(mw_inUnitDataReq_any))) {
                log("*** a_fntpDefault: INFO: Unexpected FNTP NDPU received in default ***");
            }
            [] fntpPort.receive(mw_fntpInd(?)) {
                log("*** a_fntpUnsollictedMessages: INFO: Unkown FNTP NDPU received in default ***");
            }
+171 −233

File changed.

Preview size limit exceeded, changes collapsed.

+49 −54
Original line number Diff line number Diff line
@@ -27,6 +27,7 @@ module LibItsFntp_TypesAndValues {
    };
    import from CALMiitsscu language "ASN.1:1997" {
        type 
            McmdRq, 
            IIC_Request, IIC_Response 
    };
    import from CALMmsap language "ASN.1:1997" {
@@ -54,10 +55,12 @@ module LibItsFntp_TypesAndValues {
         * @desc Low limit of reserved range
         */
        const UInt16 c_portReservedLow := 32717;
        
        /**
         * @desc High limit of reserved range
         */
        const UInt16 c_portReservedHigh := 32763;
        
        /**
         * @desc Inter ITS-SCU communications specified in ISO 24102-4
         */
@@ -84,71 +87,63 @@ module LibItsFntp_TypesAndValues {
        
        /**
         * @desc Trigger to initialize the IUT.
         * @member location Location of the IUT
         * @member lowerLayers : Lower layers. Set to 1 if there are used, 0 otherwise
         * @member testMode Test mode. Set to 1 if on, 0 otherwise
         * @member McmdRq MN-COMMAND-Request message to initialize the upper tester
         * 
         * @see TS 1xx xxx V<0.0.0> (<2013-04>)
         */
        type record UtFntpInitialize { 
			Bit6 location,
			Bit1 lowerLayers,
			Bit1 testMode
            McmdRq    mcmdRq 
        }  with {
            encode (mcmdRq) "LibItsIicp_asn1"  
        }
               
        /**
         * @desc Events at the application layer of the IUT.
         * @member nfSapPrimitivesDown NF-SAP down primitive 
         */
        type union UtFntpEvent { // FIXME To be removed
            anytype noField
        }
        
        /**
         * @desc Send a XXX.request primitive to the IUT through a SAP.
         * @member nfSapPrimitives 
         * @member rcmdNfSapPrimitives 
         */
        type union UtFntpCommandRequest { 
            NFsapPrimitivesDown nfSapPrimitives, 
            IIC_Request          rcmdNfSapPrimitives 
        type union UtFntpEvent { 
            NFsapPrimitivesDown nfSapPrimitivesDown 
        }
        with {
            encode (nfSapPrimitives) "LibItsFntp_asn1"; 
            encode (rcmdNfSapPrimitives) "LibItsIicp_asn1"; 
            encode (nfSapPrimitivesDown) "LibItsFntp_asn1"  
        }
        
        /**
         * @desc Receive a XXX.confirm primitive from the IUT through a SAP.
         * @desc Send a NF-SAP primitive from Facility layer through a SAP.
         * @member nfSapPrimitivesUp NF-SAP up primitive 
         */
        type union UtFntpCommandConfirm { 
            NFsapPrimitivesUp nfSapPrimitives, 
            IIC_Response        rcmdNfSapPrimitives 
        type union UtFntpEventInd { 
            NFsapPrimitivesUp nfSapPrimitivesUp 
        }
        with {
            encode (nfSapPrimitives) "LibItsFntp_asn1";
            encode (rcmdNfSapPrimitives) "LibItsIicp_asn1"; 
            encode (nfSapPrimitivesUp) "LibItsFntp_asn1"  
        }
        
    } // End of group utPrimitives

	group cfPrimitives { 
		
        /**
         * @desc Receive a XXX.indication command from the IUT through a SAP.
         * @desc Trigger to initialize the IUT.
         * @member McmdRq MN-COMMAND-Request message to initialize the upper tester
         * 
         * @see TS 1xx xxx V<0.0.0> (<2013-04>)
         */
/*FIXME To be removed        type union UtFntpCommandIndication { 
            NFsapPrimitivesUp nfSapPrimitives
        type record CfFntpInitialize {  
        }
        with {
            encode (nfSapPrimitives) "LibItsFntp_asn1"
        }*/
        
        type union UtFntpRequestRequest { 
            MN_Request_request  mnRequestRequest, 
            IIC_Request            rcmdMnRequestRequest 
        /**
         * @desc Send a MN-SAP.request primitive to the Management layer through a SAP.
         * @member mnRequestRequest MN_REQUEST_Request primitive 
         */
		type union CfFntpEventInd { 
			MN_Request_request	mnRequestRequest 
		}
        with {
            encode (mnRequestRequest) "LibItsCALMmsap_asn1"; 
            encode (rcmdMnRequestRequest) "LibItsIicp_asn1"; 
            encode (mnRequestRequest) "LibItsCALMmsap_asn1"  
        }
	
    } // End of group utPrimitives
	} // End of group cfPrimitives 
	
    group acPrimitives {
        
@@ -158,7 +153,7 @@ module LibItsFntp_TypesAndValues {
         * @member acGenerateSamMessagePdu  To generate a SAM message
         * @member acGenerateCtxMessagePDU  To generate a CTX message
         */
        type union AcFntpPrimitive { 
        type union AcFntpPrimitive { // FIXME To be removed
            AcGenerateFntpNpdu acGenerateFntpNpdu,
            AcGenerateSamMessagePdu acGenerateSamMessagePdu,
            AcGenerateCtxMessagePdu acGenerateCtxMessagePdu
@@ -175,18 +170,18 @@ module LibItsFntp_TypesAndValues {
         * @desc    Primitive for TA to generate a station-internal FNTP NDPU
         * @member  fntpNPDU Number of hops. This parameter shall be set to zero for single hop
         */
        type record AcGenerateFntpNpdu {
        type record AcGenerateFntpNpdu {// FIXME To be removed
            INsapPrimitivesUp fntpNPDU
        }
        with {
            encode (fntpNPDU) "LibItsFntp_asn1"
            encode (fntpNPDU) "LibItsCALMllsap_asn1"
        }
        
        /**
         * @desc    Generate a SAM message
         * @member  samPDU  The SAM pdu
         */
        type record AcGenerateSamMessagePdu {
        type record AcGenerateSamMessagePdu {// FIXME To be removed
            INsapPrimitivesUp samPdu
        }
        with {
@@ -197,7 +192,7 @@ module LibItsFntp_TypesAndValues {
         * @desc    Generate a CTX message
         * @member  ctxPDU  The CTX pdu
         */
        type record AcGenerateCtxMessagePdu {
        type record AcGenerateCtxMessagePdu {// FIXME To be removed
            INsapPrimitivesUp ctxPdu
        }
        with {
+1 −1
Original line number Diff line number Diff line
@@ -110,7 +110,7 @@ module LibItsIicp_Pixits {
    modulepar SetNotFNTP PX_MN_RCMD_FWYSETNOTIFY := {
        reference := 0,
        remotePort := {
            portShort := 0 
            portLong := 12345  
        },
        linkID := {
            remoteCIID := '0000000000000000'O,
+185 −184
Original line number Diff line number Diff line
@@ -17,7 +17,9 @@ module LibItsIicp_Templates {
        type 
            IIC_Request, IICrequestTX, IICrequestRX, 
            IIC_Response, IICresponseTX, IICresponseRX, 
            PduRequest, IICPpdu, PduCounter, 
            PduRequest, PduResponse, 
            IICPpdu, PduCounter, 
            McmdRq, McmdRs, 
            ITS_SCUalive, ITS_SCUtype, AliveMessage, 
            VCI_info_req, VCI_info_res, VCI_update_req, VCI_Info, 
            PduErrStatus 
@@ -820,8 +822,7 @@ module LibItsIicp_Templates {
                template (present) IicpReq mw_iicpRequest(
                    template (present) IIC_Request p_iicpMsg
                ) := { 
                    msgInOut := p_iicpMsg, 
					receptionTime := ? 
                    msgInOut := p_iicpMsg 
                } // End of template mw_iicpRequest
                
                /**
Loading