mirror of
https://github.com/postgres/postgres.git
synced 2025-08-24 09:27:52 +03:00
Remove protocol version change. Try MD5 first, then crypt() on all clients.
This commit is contained in:
@@ -8,7 +8,7 @@
|
||||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $Header: /cvsroot/pgsql/src/backend/libpq/auth.c,v 1.57 2001/08/15 18:42:14 momjian Exp $
|
||||
* $Header: /cvsroot/pgsql/src/backend/libpq/auth.c,v 1.58 2001/08/16 04:27:18 momjian Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@@ -501,13 +501,16 @@ ClientAuthentication(Port *port)
|
||||
status = recv_and_check_password_packet(port);
|
||||
break;
|
||||
|
||||
case uaCrypt:
|
||||
sendAuthRequest(port, AUTH_REQ_CRYPT);
|
||||
status = recv_and_check_password_packet(port);
|
||||
break;
|
||||
|
||||
case uaMD5:
|
||||
sendAuthRequest(port, AUTH_REQ_MD5);
|
||||
if ((status = recv_and_check_password_packet(port)) == STATUS_OK)
|
||||
break;
|
||||
port->auth_method = uaCrypt;
|
||||
/* Try crypt() for old client */
|
||||
/* FALL THROUGH */
|
||||
|
||||
case uaCrypt:
|
||||
sendAuthRequest(port, AUTH_REQ_CRYPT);
|
||||
status = recv_and_check_password_packet(port);
|
||||
break;
|
||||
|
||||
|
@@ -10,7 +10,7 @@
|
||||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $Header: /cvsroot/pgsql/src/backend/libpq/hba.c,v 1.62 2001/08/15 18:42:15 momjian Exp $
|
||||
* $Header: /cvsroot/pgsql/src/backend/libpq/hba.c,v 1.63 2001/08/16 04:27:18 momjian Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@@ -227,15 +227,8 @@ parse_hba_auth(List *line, ProtocolVersion proto, UserAuth *userauth_p,
|
||||
else if (strcmp(token, "reject") == 0)
|
||||
*userauth_p = uaReject;
|
||||
else if (strcmp(token, "crypt") == 0)
|
||||
{
|
||||
/* if the client supports it, use MD5 */
|
||||
if (PG_PROTOCOL_MAJOR(proto) > 2 ||
|
||||
(PG_PROTOCOL_MAJOR(proto) == 2 &&
|
||||
PG_PROTOCOL_MINOR(proto) >= 1))
|
||||
*userauth_p = uaMD5;
|
||||
else
|
||||
*userauth_p = uaCrypt;
|
||||
}
|
||||
/* Try MD5 first; on failure, switch to crypt() */
|
||||
*userauth_p = uaMD5;
|
||||
else
|
||||
*error_p = true;
|
||||
line = lnext(line);
|
||||
|
Reference in New Issue
Block a user