aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorBruce Momjian <bruce@momjian.us>2002-02-25 20:07:02 +0000
committerBruce Momjian <bruce@momjian.us>2002-02-25 20:07:02 +0000
commitf75e16d459e65d97ce09bb442f8c859a4f131bd7 (patch)
treec01a05aae8f1d14a40779a3aede8f634ddeab2da /src
parent9694a41a5739b567f365ab6a8f80da2413c499da (diff)
downloadpostgresql-f75e16d459e65d97ce09bb442f8c859a4f131bd7.tar.gz
postgresql-f75e16d459e65d97ce09bb442f8c859a4f131bd7.zip
Fix for PAM error message display:
> and that the right fix is to make each of the subsequent calls be in > this same pattern, not to try to emulate their nonsensical style. Dominic J. Eidson
Diffstat (limited to 'src')
-rw-r--r--src/backend/libpq/auth.c56
1 files changed, 28 insertions, 28 deletions
diff --git a/src/backend/libpq/auth.c b/src/backend/libpq/auth.c
index fc2ec1c72f1..8e0e731e48e 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.74 2002/02/23 04:17:46 petere Exp $
+ * $Header: /cvsroot/pgsql/src/backend/libpq/auth.c,v 1.75 2002/02/25 20:07:02 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@@ -766,9 +766,9 @@ CheckPAMAuth(Port *port, char *user, char *password)
return STATUS_ERROR;
}
- if (retval == PAM_SUCCESS)
- retval = pam_set_item(pamh, PAM_USER, user);
- else
+ retval = pam_set_item(pamh, PAM_USER, user);
+
+ if (retval != PAM_SUCCESS)
{
snprintf(PQerrormsg, PQERRORMSG_LENGTH,
"CheckPAMAuth: pam_set_item(PAM_USER) failed: '%s'\n",
@@ -778,9 +778,10 @@ CheckPAMAuth(Port *port, char *user, char *password)
pam_passwd = NULL; /* Unset pam_passwd */
return STATUS_ERROR;
}
- if (retval == PAM_SUCCESS)
- retval = pam_set_item(pamh, PAM_CONV, &pam_passw_conv);
- else
+
+ retval = pam_set_item(pamh, PAM_CONV, &pam_passw_conv);
+
+ if (retval != PAM_SUCCESS)
{
snprintf(PQerrormsg, PQERRORMSG_LENGTH,
"CheckPAMAuth: pam_set_item(PAM_CONV) failed: '%s'\n",
@@ -790,9 +791,10 @@ CheckPAMAuth(Port *port, char *user, char *password)
pam_passwd = NULL; /* Unset pam_passwd */
return STATUS_ERROR;
}
- if (retval == PAM_SUCCESS)
- retval = pam_authenticate(pamh, 0);
- else
+
+ retval = pam_authenticate(pamh, 0);
+
+ if (retval != PAM_SUCCESS)
{
snprintf(PQerrormsg, PQERRORMSG_LENGTH,
"CheckPAMAuth: pam_authenticate failed: '%s'\n",
@@ -802,9 +804,10 @@ CheckPAMAuth(Port *port, char *user, char *password)
pam_passwd = NULL; /* Unset pam_passwd */
return STATUS_ERROR;
}
- if (retval == PAM_SUCCESS)
- retval = pam_acct_mgmt(pamh, 0);
- else
+
+ retval = pam_acct_mgmt(pamh, 0);
+
+ if (retval != PAM_SUCCESS)
{
snprintf(PQerrormsg, PQERRORMSG_LENGTH,
"CheckPAMAuth: pam_acct_mgmt failed: '%s'\n",
@@ -814,24 +817,21 @@ CheckPAMAuth(Port *port, char *user, char *password)
pam_passwd = NULL; /* Unset pam_passwd */
return STATUS_ERROR;
}
- if (retval == PAM_SUCCESS)
- {
- retval = pam_end(pamh, retval);
- if (retval != PAM_SUCCESS)
- {
- snprintf(PQerrormsg, PQERRORMSG_LENGTH,
- "CheckPAMAuth: Failed to release PAM authenticator: '%s'\n",
- pam_strerror(pamh, retval));
- fputs(PQerrormsg, stderr);
- pqdebug("%s", PQerrormsg);
- }
- pam_passwd = NULL; /* Unset pam_passwd */
+ retval = pam_end(pamh, retval);
- return (retval == PAM_SUCCESS ? STATUS_OK : STATUS_ERROR);
+ if (retval != PAM_SUCCESS)
+ {
+ snprintf(PQerrormsg, PQERRORMSG_LENGTH,
+ "CheckPAMAuth: Failed to release PAM authenticator: '%s'\n",
+ pam_strerror(pamh, retval));
+ fputs(PQerrormsg, stderr);
+ pqdebug("%s", PQerrormsg);
}
- else
- return STATUS_ERROR;
+
+ pam_passwd = NULL; /* Unset pam_passwd */
+
+ return (retval == PAM_SUCCESS ? STATUS_OK : STATUS_ERROR);
}
#endif /* USE_PAM */