Commit ef0b08ce authored by pintar's avatar pintar
Browse files

SIP-Authenticate, SIP-Authorization, SIP-Auth-Data-Item types are defined as...

SIP-Authenticate, SIP-Authorization, SIP-Auth-Data-Item types are defined as union and either RFC or 3GPP type definition can be used.
parent 96394cc3
Loading
Loading
Loading
Loading
+66 −85

File changed.

Preview size limit exceeded, changes collapsed.

+1 −1
Original line number Diff line number Diff line
@@ -94,7 +94,7 @@ module DiameterCxDx_Dx_TCFunctions {
                                    vc_destinationRealm,
                                    vc_serverName,
                                    m_serverAssignmentType(UNREGISTERED_USER_E),
                                    m_userDataAlreadyAvailable(USER_DATA_NOT_AVAILABLE_E),
                                    m_userDataAlreadyAvailable_notAvail,//m_userDataAlreadyAvailable(USER_DATA_NOT_AVAILABLE_E),
                                    omit,
                                    valueof(vc_publicIdentity)
                                )
+1 −1
Original line number Diff line number Diff line
@@ -497,7 +497,7 @@
                                vc_userName,
                                vc_publicIdentity,
                                m_sIPNumberAuthItems(1),
                                DiameterCxDx_Templates.m_sIPAuthDataItem_dummy, //TODO: Set real data here
                                m_sIPAuthDataItem_dummy, //TODO: Set real data here
                                vc_serverName
                            )
            ));
+113 −67
Original line number Diff line number Diff line
@@ -99,7 +99,7 @@ module DiameterCxDx_Templates {
                }

                template Visited_Network_Identifier_AVP m_visitedNetworkId(template (value) octetstring p_avpData) := {
                    aVP_Header := m_aVP_HeaderVid_Mbit1(c_visited_Network_Identifier_AVP_Code, lengthof(p_avpData), c_vendId3gpp),
                    aVP_Header := m_aVP_HeaderVid_Mbit1(c_visited_Network_Identifier_AVP_Code, f_getOctetStringLength(p_avpData), c_vendId3gpp),
                    aVP_Data := p_avpData
                }

@@ -113,12 +113,18 @@ module DiameterCxDx_Templates {
                    aVP_Data := p_avpData
                }
                
                template User_Data_Already_Available_AVP m_userDataAlreadyAvailable (template (value) Usr_Dat_Al_Av_Code p_avpData
                ) := {
                template User_Data_Already_Available_AVP m_userDataAlreadyAvailable (template Usr_Dat_Al_Av_Code p_avpData) := 
                {
                    aVP_Header := m_aVP_HeaderVid_Mbit1(c_user_Data_Already_Available_AVP_Code, 4, c_vendId3gpp),
                    aVP_Data := p_avpData
                }
                
                template User_Data_Already_Available_AVP m_userDataAlreadyAvailable_notAvail := 
                {
                    aVP_Header := m_aVP_HeaderVid_Mbit1(c_user_Data_Already_Available_AVP_Code, 4, c_vendId3gpp),
                    aVP_Data := USER_DATA_NOT_AVAILABLE_E
                }

                template (value) Redirect_Host_AVP m_redirectHost(template (value) Diameter_Identity p_avpData) := 
                {
                    aVP_Header := m_aVP_HeaderVid_Mbit1(c_redirect_Host_AVP_Code, lengthof(p_avpData), omit),
@@ -160,7 +166,7 @@ module DiameterCxDx_Templates {
                template (value) SIP_Authentication_Context_AVP  m_sIP_Authentication_Context_digest(
                                                                                                     in template (value) octetstring p_aVP_Data
                ) := {
                    aVP_Header := m_aVP_HeaderVid_Mbit1(c_sIP_Authentication_Context_AVP_Code, lengthof(p_aVP_Data), c_vendId3gpp),
                    aVP_Header := m_aVP_HeaderVid_Mbit1(c_sIP_Authentication_Context_AVP_Code, f_getOctetStringLength(p_aVP_Data), c_vendId3gpp),
                    aVP_Data := p_aVP_Data
                }
            
@@ -168,18 +174,34 @@ module DiameterCxDx_Templates {
                    aVP_Header := m_aVP_HeaderVid_Mbit1(c_sIP_Number_Auth_Items_AVP_Code, 4, c_vendId3gpp),
                    aVP_Data := p_avpData
                }
                template (value) SIP_Authorization_AVP m_sipAuthorization(template (value) octetstring p_avpData) := {
                    sIP_Authorization_AVP_3GPP :={
                        aVP_Header  := m_aVP_HeaderVid_Mbit1(c_sIP_Authorization_AVP_Code, f_getOctetStringLength(p_avpData), c_vendId3gpp),
                        aVP_Data    := p_avpData
                    }
                }
            
                template (value) SIP_Authentication_Scheme_AVP m_sIPAuthenticationScheme(template (value) SIP_Auth_Schm_Type p_SIPAuthSchmType) := {
                    aVP_Header := m_aVP_HeaderVid_Mbit1(c_sIP_Authentication_Scheme_AVP_Code, 4, c_vendId3gpp),
                    aVP_Data := p_SIPAuthSchmType
                }
            
                template (value) SIP_Item_Number_AVP m_sIPItemNumber(template (value) UInt32 p_aVP_Data) := {
                    aVP_Header := m_aVP_HeaderVid_Mbit1(c_sIP_Item_Number_AVP_Code, 4, c_vendId3gpp),
                    aVP_Data   := p_aVP_Data
                }
                
                template (value) Line_Identifier_AVP m_line_Identifier(
                                                                       in template (value) octetstring p_aVP_Data
                ) := {
                    aVP_Header := m_aVP_HeaderVid_Mbit1(c_line_Identifier_AVP_Code, lengthof(p_aVP_Data), c_vendId3gpp),
                    aVP_Header := m_aVP_HeaderVid_Mbit1(c_line_Identifier_AVP_Code, f_getOctetStringLength(p_aVP_Data), c_vendId3gpp),
                    aVP_Data := p_aVP_Data
                }
                
                template (value) User_Data_AVP m_userData(template (value) octetstring p_aVpData) := {

                aVP_Header := m_aVP_HeaderVid_Mbit1(c_user_Data_AVP_Code,
                                                    4+lengthof(p_aVpData),
                                                    4+f_getOctetStringLength(p_aVpData),
                                                    c_vendId3gpp),
                aVP_Data := p_aVpData
                }
@@ -349,8 +371,9 @@ module DiameterCxDx_Templates {
                    aVP_Data   := ?
                }
                
                template LibDiameter_Types_CxDx_AVPs.SIP_Auth_Data_Item_AVP m_sIPAuthDataItem_dummy := {
                    aVP_Header := m_aVP_HeaderVid_Mbit1(LibDiameter_Types_CxDx_AVPs.c_sIP_Auth_Data_Item_AVP_Code, 1, c_vendId3gpp),
                template SIP_Auth_Data_Item_AVP m_sIPAuthDataItem_dummy := {
                    sIP_Auth_Data_Item_AVP_3GPP :={
                        aVP_Header := m_aVP_HeaderVid_Mbit1(c_sIP_Auth_Data_Item_AVP_Code, 1, c_vendId3gpp),
                        sIP_Authentication_Scheme   := omit,
                        sIP_Item_Number             := omit,
                        sIP_Authenticate            := omit,
@@ -365,9 +388,11 @@ module DiameterCxDx_Templates {
                        line_Identifier             := omit,
                        aVP_Type                    := omit
                    }
                }
                
                template LibDiameter_Types_CxDx_AVPs.SIP_Auth_Data_Item_AVP mw_sIPAuthDataItem_dummy := {
                    aVP_Header := mw_aVP_HeaderVid_Mbit1(LibDiameter_Types_CxDx_AVPs.c_sIP_Auth_Data_Item_AVP_Code, ?, c_vendId3gpp),
                template SIP_Auth_Data_Item_AVP mw_sIPAuthDataItem_dummy := {
                    sIP_Auth_Data_Item_AVP_3GPP := {
                        aVP_Header := mw_aVP_HeaderVid_Mbit1(c_sIP_Auth_Data_Item_AVP_Code, ?, c_vendId3gpp),
                        sIP_Authentication_Scheme   := *,
                        sIP_Item_Number             := *,
                        sIP_Authenticate            := *,
@@ -382,8 +407,9 @@ module DiameterCxDx_Templates {
                        line_Identifier             := *,
                        aVP_Type                    := *
                    }
                }
                
                template LibDiameter_Types_CxDx_AVPs.SIP_Auth_Data_Item_AVP mw_sIPAuthDataItem(
                template SIP_Auth_Data_Item_AVP mw_sIPAuthDataItem(
                                                                                               in template (present) SIP_Authentication_Scheme_AVP  p_sIP_Authentication_Scheme := ?,
                                                                                               in template SIP_Authenticate_AVP                     p_sIP_Authenticate := *,
                                                                                               in template SIP_Authorization_AVP                    p_sIP_Authorization := *,
@@ -392,6 +418,7 @@ module DiameterCxDx_Templates {
                                                                                               in template Line_Identifier_AVP                      p_line_Identifier := *,
                                                                                               in template Framed_IP_Address_AVP                    p_framed_IP_Address := *
                ) modifies mw_sIPAuthDataItem_dummy := {
                    sIP_Auth_Data_Item_AVP_3GPP := {
                        sIP_Authentication_Scheme   := p_sIP_Authentication_Scheme,
                        sIP_Authenticate            := p_sIP_Authenticate,
                        sIP_Authorization           := p_sIP_Authorization,
@@ -400,8 +427,9 @@ module DiameterCxDx_Templates {
                        line_Identifier             := p_line_Identifier,
                        framed_IP_Address           := p_framed_IP_Address
                    }
                }
                
                template LibDiameter_Types_CxDx_AVPs.SIP_Auth_Data_Item_AVP m_sIPAuthDataItem (template (value) SIP_Authentication_Scheme_AVP   p_sIP_Authentication_Scheme,
                template SIP_Auth_Data_Item_AVP m_sIPAuthDataItem (template (value) SIP_Authentication_Scheme_AVP   p_sIP_Authentication_Scheme,
                                                                                               template (omit) SIP_Item_Number_AVP              p_sIP_Item_Number := omit,
                                                                                               template (omit) SIP_Authenticate_AVP             p_sIP_Authenticate := omit,
                                                                                               template (omit) SIP_Authorization_AVP            p_sIP_Authorization := omit,
@@ -411,6 +439,7 @@ module DiameterCxDx_Templates {
                                                                                               template (omit) SIP_Digest_Authenticate_AVP      p_sIP_Digest_Authenticate := omit,
                                                                                               template (omit) Line_Identifier_AVP              p_line_Identifier := omit
                ) modifies m_sIPAuthDataItem_dummy := {
                    sIP_Auth_Data_Item_AVP_3GPP :={
                        sIP_Authentication_Scheme   := p_sIP_Authentication_Scheme,
                        sIP_Item_Number             := p_sIP_Item_Number,
                        sIP_Authenticate            := p_sIP_Authenticate,
@@ -421,6 +450,12 @@ module DiameterCxDx_Templates {
                        sIP_Digest_Authenticate     := p_sIP_Digest_Authenticate,
                        line_Identifier             := p_line_Identifier
                    }
                }
            
                template (present) SIP_Authentication_Scheme_AVP mw_sIPAuthenticationScheme(template (present) SIP_Auth_Schm_Type p_SIPAuthSchmType) := {
                    aVP_Header := mw_aVP_HeaderVid_Mbit1(c_sIP_Authentication_Scheme_AVP_Code, 4, c_vendId3gpp),
                    aVP_Data := p_SIPAuthSchmType
                }
                
                template Line_Identifier_AVP mw_line_Identifier_dummy := {
                    aVP_Header := mw_aVP_HeaderVid_Mbit1(c_line_Identifier_AVP_Code, ?, c_vendId3gpp),
@@ -431,8 +466,19 @@ module DiameterCxDx_Templates {
                    aVP_Header := mw_aVP_HeaderVid_Mbit1(c_integrity_Key_AVP_Code, ?, c_vendId3gpp),
                    aVP_Data := ?
                }
                template SIP_Authorization_AVP mw_sipAuthorization
                    modifies mw_sIPAuthorization_dummy := {
                
                template SIP_Authorization_AVP mw_sipAuthorization_any := {
                    sIP_Authorization_AVP_3GPP :={
                        aVP_Header  := mw_aVP_HeaderVid_Mbit1(c_sIP_Authorization_AVP_Code, ?, c_vendId3gpp),
                        aVP_Data    := ?
                    }
                }
                
                template SIP_Authenticate_AVP mw_sIPAuthenticate_any := {
                    sIP_Authenticate_AVP_3GPP :={
                        aVP_Header  := mw_aVP_HeaderVid_Mbit1(c_sIP_Authenticate_AVP_Code, ?, c_vendId3gpp),
                        aVP_Data    := ?
                    }
                }
            }//end group awaitingTemplatesForAVPs
            
@@ -843,7 +889,7 @@ module DiameterCxDx_Templates {
                                                       template (omit) User_Name_AVP             p_userName,
                                                       template (omit) Public_Identity_AVP       p_publicIdentity,
                                                       template (omit) SIP_Number_Auth_Items_AVP p_SIPNumberAuthItems,
                                                       template (omit) LibDiameter_Types_CxDx_AVPs.SIP_Auth_Data_Item_AVP    p_SIPAuthDataItem)
                                                       template (omit) SIP_Auth_Data_Item_AVP    p_SIPAuthDataItem)
            modifies m_MAR_Body_dummy := {
                vendor_Specific_Application_Id := m_vendor_Specific_Appl_Id_Cx, //mandatory in TS 129 229
                auth_Application_Id := omit,                                    //not in TS 129 229
@@ -1347,7 +1393,7 @@ module DiameterCxDx_Templates {
                                                                    template (omit) User_Name_AVP             p_userName,
                                                                    template (omit) Public_Identity_AVP       p_publicIdentity,
                                                                    template (omit) SIP_Number_Auth_Items_AVP p_SIPNumberAuthItems,
                                                                    template (omit) LibDiameter_Types_CxDx_AVPs.SIP_Auth_Data_Item_AVP    p_SIPAuthDataItem,
                                                                    template (omit) SIP_Auth_Data_Item_AVP    p_SIPAuthDataItem,
                                                                    template (omit) Server_Name_AVP           p_serverName
                                                                  )
                modifies m_MAR_basic := {
@@ -1370,7 +1416,7 @@ module DiameterCxDx_Templates {
                                                           template (value) User_Name_AVP            p_userName,
                                                           template User_Data_AVP                   p_userData,
                                                           template Charging_Information_AVP        p_chargingInformation,
                                                           template LibDiameter_Types_CxDx_AVPs.SIP_Auth_Data_Item_AVP p_sIPAuthDataItem
                                                           template SIP_Auth_Data_Item_AVP p_sIPAuthDataItem
                ) modifies m_PPR_basic := {
                    vendor_Specific_Application_Id := m_vendor_Specific_Appl_Id_Cx, //mandatory in TS 129 229
                    auth_Application_Id := omit,                                    //not in TS 129 229
@@ -1483,7 +1529,7 @@ module DiameterCxDx_Templates {
                                                       template (present) User_Name_AVP             p_userName:=?,
                                                       template (present) Public_Identity_AVP       p_publicIdentity,
                                                       template (present) SIP_Number_Auth_Items_AVP p_sIpNumberAuthItems,
                                                       template (present) LibDiameter_Types_CxDx_AVPs.SIP_Auth_Data_Item_AVP p_sIpAuthDataItem,
                                                       template (present) SIP_Auth_Data_Item_AVP p_sIpAuthDataItem,
                                                       template (present) Server_Name_AVP           p_server_Name:=?
                ) 
                modifies mw_MAR_basic := {
@@ -1502,7 +1548,7 @@ module DiameterCxDx_Templates {
                                                        template (present) User_Name_AVP             p_userName,
                                                        template User_Data_AVP                       p_userData := omit,
                                                        template Charging_Information_AVP            p_charging_Information := omit,
                                                        template LibDiameter_Types_CxDx_AVPs.SIP_Auth_Data_Item_AVP              p_sIP_Auth_Data_Item := omit
                                                        template SIP_Auth_Data_Item_AVP              p_sIP_Auth_Data_Item := omit
                ) modifies mw_PPR_basic := {
                    user_Data := p_userData,
                    charging_Information := p_charging_Information,