Commit 9d4c8e41 authored by tepelmann's avatar tepelmann
Browse files

Reverted of type change for DHCPv6 options.

Check variant in getter functions.
parent 4aa09109
Loading
Loading
Loading
Loading
+8 −8
Original line number Diff line number Diff line
@@ -315,12 +315,12 @@ module AtsDSLite_Functions {
            var integer v_optionsLength2;
            
            for (i:=0; i<v_optionsLength; i:=i + 1) {
                if (p_dhcpv6Msg.options[i].optionCode == e_OPTION_IA_NA) {
                    var DHCPv6Options v_ia_na_options :=  p_dhcpv6Msg.options[i].optionData.ia_na.iA_NA_options;
                if (ischosen(p_dhcpv6Msg.options[i].ia_na)) {
                    var DHCPv6Options v_ia_na_options :=  p_dhcpv6Msg.options[i].ia_na.iA_NA_options;
                    v_optionsLength2 := lengthof(v_ia_na_options);
                    for (j:=0; j<v_optionsLength2; j:=j + 1) {
                        if (v_ia_na_options[j].optionCode == e_OPTION_IAADDR) {
                            p_ipv6Address := v_ia_na_options[j].optionData.ia_address.ipv6Address;
                        if (ischosen(v_ia_na_options[j].ia_address)) {
                            p_ipv6Address := v_ia_na_options[j].ia_address.ipv6Address;
                            return e_success;
                        }
                    }
@@ -336,8 +336,8 @@ module AtsDSLite_Functions {
            var integer v_optionsLength := lengthof(p_dhcpv6Msg.options);
            
            for (i:=0; i<v_optionsLength; i:=i + 1) {
                if (p_dhcpv6Msg.options[i].optionCode == e_OPTION_AFTR_NAME) {
                    p_aftrName := p_dhcpv6Msg.options[i].optionData.aftrName.tunnelEndpointName;
                if (ischosen(p_dhcpv6Msg.options[i].aftrName)) {
                    p_aftrName := p_dhcpv6Msg.options[i].aftrName.tunnelEndpointName;
                    return e_success;
                }
            }
@@ -352,8 +352,8 @@ module AtsDSLite_Functions {
            var integer v_optionsLength := lengthof(p_dhcpv6Msg.options);
            
            for (i:=0; i<v_optionsLength; i:=i + 1) {
                if (p_dhcpv6Msg.options[i].optionCode == e_OPTION_DOMAIN_LIST) {
                    p_dsl := p_dhcpv6Msg.options[i].optionData.domainSearchList.searchList;
                if (ischosen(p_dhcpv6Msg.options[i].domainSearchList)) {
                    p_dsl := p_dhcpv6Msg.options[i].domainSearchList.searchList;
                    return e_success;
                }
            }
+24 −34
Original line number Diff line number Diff line
@@ -12,7 +12,7 @@ module AtsDSLite_Templates {
    };
    import from LibIpv6_Rfc3315Dhcp_TypesAndValues {
        type
            OptionRequestOption 
            OptionRequestOption, IA_NAOption
    };
    import from LibIpv6_Rfc3646Dhcp_TypesAndValues {
        type
@@ -81,9 +81,15 @@ module AtsDSLite_Templates {
             * @reference http://tools.ietf.org/html/rfc3315#section-22
             */  
            template (present) DHCPv6Options mw_dhcpv6_options_dummy := {
                mw_dhcpv6_ia_na_dummy,
                mw_dhcpv6_optionRequest_dummy,
                mw_dhcpv6_aftrName_dummy,
                {
                    ia_na := mw_dhcpv6_ia_na_dummy
                },
                {
                    optionRequest := mw_dhcpv6_optionRequest_dummy
                },
                {
                    aftrName := mw_dhcpv6_aftrName_dummy
                },
                *
            } // End of template mw_dhcpv6_options_dummy
            
@@ -91,40 +97,33 @@ module AtsDSLite_Templates {
             * @desc Genercic receive DHCPv6 IA_NA option
             * @reference http://tools.ietf.org/html/rfc3315#section-22.4
             */  
            template (present) DHCPv6Option mw_dhcpv6_ia_na_dummy := {
            template (present) IA_NAOption mw_dhcpv6_ia_na_dummy := {
                optionCode              := e_OPTION_IA_NA,
                optionLen               := ?,
                optionData          := {
                    ia_na := ?
                }
                iaid                    := ?,
                t1                      := ?,
                t2                      := ?,
                iA_NA_options           := ?
            } // End of template mw_dhcpv6_optionRequestOption_dummy
            
            /**
             * @desc Genercic receive DHCPv6 ORO option
             * @reference http://tools.ietf.org/html/rfc3315#section-22.7
             */  
            template (present) DHCPv6Option mw_dhcpv6_optionRequest_dummy := {
            template (present) OptionRequestOption mw_dhcpv6_optionRequest_dummy := {
                optionCode              := e_OPTION_ORO,
                optionLen               := ?,
                optionData          := {
                    optionRequest := {
                requestedOptionCodes    := ?
                    }
                }
            } // End of template mw_dhcpv6_optionRequestOption_dummy
            
            /**
             * @desc Genercic receive DHCP AFTR-name option
             * @reference https://tools.ietf.org/html/rfc6334#section-3
             */  
            template (present) DHCPv6Option mw_dhcpv6_aftrName_dummy := {
            template (present) AFTRNameOption mw_dhcpv6_aftrName_dummy := {
                optionCode          := e_OPTION_AFTR_NAME,
                optionLen           := ?,
                optionData          := {
                    aftrName := {
                tunnelEndpointName  := ?
                    }
                }
            } // End of template mw_dhcpv6_aftrName_dummy
            
        } // End of group dhcpv6OptionsDummyRecvTemplates 
@@ -165,11 +164,7 @@ module AtsDSLite_Templates {
                                                                             in template (present) OptionRequestOption p_optionRequest
            ) := {
                {
                    optionCode  := e_OPTION_ORO,
                    optionLen   := ?,
                    optionData := {
                    optionRequest := p_optionRequest
                    }
                },
                *
            } // End of template mw_dhcpv6_options_optionRequest
@@ -177,7 +172,8 @@ module AtsDSLite_Templates {
            /**
             * @desc Genercic receive DHCPv6 AFTR-name option
             */  
            template (present) OptionRequestOption mw_dhcpv6_optionRequest_aftrName := {
            template (present) OptionRequestOption mdw_dhcpv6_optionRequest_aftrName 
            modifies mw_dhcpv6_optionRequest_dummy := {
                requestedOptionCodes    := superset(e_OPTION_AFTR_NAME)
            } // End of template mw_dhcpv6_optionRequest_aftrName
            
@@ -190,16 +186,10 @@ module AtsDSLite_Templates {
                                                                        in template (present) DomainSearchListOption p_domainSearchListOption
            ) := {
                {
                    optionCode  := e_OPTION_AFTR_NAME,
                    optionLen   := ?,
                    optionData  := ?
                    aftrName        := ?
                },
                {
                    optionCode  := e_OPTION_DOMAIN_LIST,
                    optionLen   := ?,
                    optionData := {
                    domainSearchList := p_domainSearchListOption
                    }
                },
                *
            } // End of template mw_dhcpv6_aftr_dsl_options
+2 −2
Original line number Diff line number Diff line
@@ -115,7 +115,7 @@ module AtsDSLite_TestCases {
                            [] dhcpv6Port.receive(
                                mdw_dhcpv6_Request_options(                    // Await Sollicit DHCPv6 Request to DHCPv6 Server
                                    mw_dhcpv6_options_optionRequest(           //     containing the Option field
                                        mw_dhcpv6_optionRequest_aftrName  //         indicating the AFTR-name DHCPv6 Option (value 64)
                                        mdw_dhcpv6_optionRequest_aftrName  //         indicating the AFTR-name DHCPv6 Option (value 64)
                            ))) { 
                                tc_ac.stop;
                                // Nothing to do
@@ -213,7 +213,7 @@ module AtsDSLite_TestCases {
                            [] dhcpv6Port.receive(
                                mdw_dhcpv6_Request_options(                    // Await DHCPv6 Request to DHCPv6 Server
                                    mw_dhcpv6_options_optionRequest(           //     containing the Option field
                                        mw_dhcpv6_optionRequest_aftrName       //         indicating the AFTR-name DHCPv6 Option (value 64)
                                        mdw_dhcpv6_optionRequest_aftrName       //         indicating the AFTR-name DHCPv6 Option (value 64)
                            ))) { 
                                tc_ac.stop;
                                // Nothing to do