diff options
Diffstat (limited to 'src/backend/libpq/crypt.c')
-rw-r--r-- | src/backend/libpq/crypt.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/backend/libpq/crypt.c b/src/backend/libpq/crypt.c index b01525dc28a..d37c70901b8 100644 --- a/src/backend/libpq/crypt.c +++ b/src/backend/libpq/crypt.c @@ -24,6 +24,8 @@ #include "utils/syscache.h" #include "utils/timestamp.h" +/* Enables deprecation warnings for MD5 passwords. */ +bool md5_password_warnings = true; /* * Fetch stored password for a user, for authentication. @@ -174,6 +176,14 @@ encrypt_password(PasswordType target_type, const char *role, MAX_ENCRYPTED_PASSWORD_LEN))); } + if (md5_password_warnings && + get_password_type(encrypted_password) == PASSWORD_TYPE_MD5) + ereport(WARNING, + (errcode(ERRCODE_WARNING_DEPRECATED_FEATURE), + errmsg("setting an MD5-encrypted password"), + errdetail("MD5 password support is deprecated and will be removed in a future release of PostgreSQL."), + errhint("Refer to the PostgreSQL documentation for details about migrating to another password type."))); + return encrypted_password; } |