security::preferred_password_hash_algorithm (private)

 security::preferred_password_hash_algorithm

Defined in packages/acs-tcl/tcl/security-procs.tcl

Check the list of preferred password hash algorithms and the return the best which is available (or "salted-sha1" if nothing applies).

Returns:
password preferred hash algorithm

Partial Call Graph (max 5 caller/called nodes):
%3 ad_check_password ad_check_password (public) security::preferred_password_hash_algorithm security::preferred_password_hash_algorithm ad_check_password->security::preferred_password_hash_algorithm parameter::get parameter::get (public) security::preferred_password_hash_algorithm->parameter::get

Testcases:
No testcase defined.
Source code:

        set preferences [parameter::get  -parameter PasswordHashAlgorithm  -package_id $::acs::kernel_id  -default "salted-sha1"]
        foreach algo $preferences {
            if {[info commands ::security::hash::$algo] ne ""} {
                #
                # This preference is available.
                #
                return $algo
            } else {
                ns_log warning "PasswordHashAlgorithm '$algo' was specified,"  "but is not available in your setup."
            }
        }
        #
        # General fallback (only necessary for invalid parameter settings)
        #
        ns_log warning "No valid PasswordHashAlgorithm was specified: '$preferences'."  "Fall back to default."

        return "salted-sha1"
Generic XQL file:
packages/acs-tcl/tcl/security-procs.xql

PostgreSQL XQL file:
packages/acs-tcl/tcl/security-procs-postgresql.xql

Oracle XQL file:
packages/acs-tcl/tcl/security-procs-oracle.xql

[ hide source ] | [ make this the default ]
Show another procedure: