diff options
Diffstat (limited to 'src/backend/libpq/auth.c')
-rw-r--r-- | src/backend/libpq/auth.c | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/src/backend/libpq/auth.c b/src/backend/libpq/auth.c index fe7bc3c9d1d..2fd417e6130 100644 --- a/src/backend/libpq/auth.c +++ b/src/backend/libpq/auth.c @@ -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; |