Table of Contents
name
(string)
name
(string)
auth_data_hash_size
(integer)
auth_vector_timeout
(integer)
auth_data_timeout
(int)
av_request_at_once
(integer)
av_request_at_sync
(integer)
registration_default_algorithm
(string)
registration_qop
(string)
cxdx_forced_peer
(string)
cxdx_dest_realm
(string)
List of Examples
name
parameter usagename
parameter usageauth_data_hash_size
parameter usageauth_vector_timeout
parameter usagepassword_column
parameter usageav_request_at_once
parameter usageav_request_at_sync
parameter usageregistration_default_algorithm
parameter
usageload_credentials
parameter usagecxdx_forced_peer
parameter usageversion_table
parameter usageI_scscf_select
usageI_scscf_drop
usageTable of Contents
name
(string)
name
(string)
auth_data_hash_size
(integer)
auth_vector_timeout
(integer)
auth_data_timeout
(int)
av_request_at_once
(integer)
av_request_at_sync
(integer)
registration_default_algorithm
(string)
registration_qop
(string)
cxdx_forced_peer
(string)
cxdx_dest_realm
(string)
The Following mouldes must be loaded before this module:
TM - Transaction Manager
SL - Stateless Reply
CDP - C Diameter Peer
CDP_AVP - CDP AVP Applications
This is the name of the SCSCF as identified in communication with the HSS (Server-Name AVP of MAR).
Default value is 'sip:scscf.ims.smilecoms.com:6060'.
Example 1.1. name
parameter usage
... modparam("auth_ims", "name", "sip:scscf3.ims.smilecoms.com:6060") ...
This is the name of the SCSCF as identified in communication with the HSS (Server-Name AVP of MAR).
Default value is 'sip:scscf.ims.smilecoms.com:6060'.
Example 1.2. name
parameter usage
... modparam("auth_ims", "name", "sip:scscf3.ims.smilecoms.com:6060") ...
This is the size of the hash table used to store auth vectors (AV). Default value is fine for most people. Use the parameter if you really need to change it.
Default value is “1024”.
Example 1.3. auth_data_hash_size
parameter usage
... modparam("auth_ims", "auth_data_hash_size", 1024) ...
This is the time, in seconds, that a SENTauth vector is valid for. If there is no response ...
Default value is “60”.
Example 1.4. auth_vector_timeout
parameter usage
... modparam("auth_ims", "auth_vector_timeout", "domain") ...
Time, in seconds, a used auth vector is valid for.
Default value is “60”.
How many auth vectors to request in MAR.
Default value is 1
Example 1.6. av_request_at_once
parameter usage
... modparam("auth_ims", "av_request_at_once", 1) ...
How many auth vectors to request at sync. Default value is 1.
Example 1.7. av_request_at_sync
parameter usage
... modparam("auth_ims", "av_request_at_sync", 1) ...
The default authentication algorithm to use for registration if one is not specified.
Options are:
AKAV1-MD5
AKAV2-MD5
MD5
HSS-Selected - HSS will decide on auth algorithm
Default value is “AKAv1-MD5”.
Example 1.8. registration_default_algorithm
parameter
usage
... modparam("auth_ims", "registration_default_algorithm", "HSS-Selected") ...
The QOP options to put in the authorisation challenges.
Default value of this parameter is “auth,auth-int”.
Example 1.9. load_credentials
parameter usage
... modparam("auth_ims", "load_credentials", "auth-int") ...
This function is used to retrieve the next unused SCSCF from thelist for this request (based on callid).
A positive return code (1) means an SCSCF was found and is armed for routing.
Meaning of the parameters is as follows:
initial - Signal whether or not this is an original or subsequent.
This function can be used from REQUEST_ROUTE | FAILURE_ROUTE.
Example 1.12. I_scscf_select
usage
... if (I_scscf_select("0")) { #there is an S-CSCF list - no need to do a UAR t_on_reply("register_reply"); t_on_failure("register_failure"); t_relay(); } ...
Drop the list of SCSCFs for this request (based on callid).
This function can be used from REQUEST_ROUTE | FAILURE_ROUTE | REPLY_ROUTE
.
Perform a UAR on Diameter CXDX interface. This function will build a list of SCSCFs to be used and populate the SCSCF list for the request. On a succesful return of this message you can get the next available SCSCF by using the I_scscf_select functoin in 4.1.
capabilities - whether to request capabilities or not "1" - with capabilities, "0" - no capabilities.
This function can be used from REQUEST_ROUTE.
p.s. this is executed asynchronously. See example on how to retrieve return value
Example 1.14. I_perform_user_authorization_request usage
... I_perform_user_authorization_request("0"); #0=REG/DEREG; 1=REG+Capabilities #this is async so to know status we have to check the reply avp switch ($avp(s:uaa_return_code)){ case 1: #success if (I_scscf_select("0")){ t_on_failure("register_failure"); t_on_reply("register_reply"); if (!t_relay()) { t_reply("500", "Error forwarding to SCSCF"); } } else {#select failed I_scscf_drop(); t_reply("500", "Server error on SCSCF Select (UAR)"); } break; case -1: #failure xlog("L_ERR", "UAR failure - error response sent from module"); break; case -2: #error xlog("L_ERR", "UAR error - sending error response now"); t_reply("500", "UAR failed"); break; default: xlog("L_ERR", "Unknown return code from UAR, value is [$avp(s:uaa_return_code)]"); t_reply("500", "Unknown response code from UAR"); break; } ...
The average response time in milliseconds for UAR-UAA transaction.
The average response time in milliseconds for LIR-LIA transaction.