CRYPT_CHECKSALT
Section: C Library Functions (3)
Page Index
BSD mandoc
libxcrypt
NAME
crypt_checksalt
- validate a crypt setting string
LIBRARY
Lb libcrypt
SYNOPSIS
In crypt.h
Ft int
Fo crypt_checksalt
Fa const char *setting
Fc
DESCRIPTION
checks the
setting
string against the system configuration
and reports whether the hashing method and parameters it specifies
are acceptable.
It is intended to be used by programs
such as
login(1)
to determine whether the user's passphrase should be re-hashed
using the currently preferred hashing method.
RETURN VALUES
The return value is 0 if there is nothing wrong with this setting.
Otherwise, it is one of the following constants:
- CRYPT_SALT_OK
-
setting
is a fully correct setting string.
This constant is guaranteed to equal 0.
- CRYPT_SALT_INVALID
-
setting
is not a valid setting string; either it specifies a hashing method
that is not known to this version of libxcrypt,
or it specifies invalid parameters for the method.
- CRYPT_SALT_METHOD_DISABLED (Not implemented, yet)
-
setting
specifies a hashing method that is no longer allowed to be used at all;
crypt
will fail if passed this
setting
Manual intervention will be required to reactivate the user's account.
- CRYPT_SALT_METHOD_LEGACY (Not implemented, yet)
-
setting
specifies a hashing method that is no longer considered strong enough
for use with new passphrases.
crypt
will still authenticate a passphrase against this setting,
but if authentication succeeds,
the passphrase should be re-hashed using the currently preferred method.
- CRYPT_SALT_TOO_CHEAP (Not implemented, yet)
-
setting
specifies cost parameters that are considered too cheap for use with
new passphrases.
crypt
will still authenticate a passphrase against this setting,
but if authentication succeeds,
the passphrase should be re-hashed using the currently preferred method.
FEATURE TEST MACROS
In crypt.h
will define the macro
CRYPT_CHECKSALT_AVAILABLE
if
is available in the current version of libxcrypt.
BUGS
Since full configurability is not yet implemented, the current
implementation will only ever return
CRYPT_SALT_OK (0)
or
CRYPT_SALT_INVALID
when invoked.
PORTABILITY NOTES
The function
is not part of any standard.
It was added to libxcrypt in version 4.3.0.
ATTRIBUTES
For an explanation of the terms used in this section, see
attributes(7).
Interface | Attribute | Value
|
| Thread safety | MT-Safe
|
SEE ALSO
crypt(3),
crypt_gensalt3,
crypt(5)