diff options
Diffstat (limited to 'pam_sql/pam_pgsql.c')
-rw-r--r-- | pam_sql/pam_pgsql.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/pam_sql/pam_pgsql.c b/pam_sql/pam_pgsql.c index f6d19e1..5f66b53 100644 --- a/pam_sql/pam_pgsql.c +++ b/pam_sql/pam_pgsql.c @@ -115,6 +115,7 @@ gpam_sql_verify_user_pass(pam_handle_t *pamh, const char *password, char *p; int n; gray_slist_t slist; + char const *query; n = PQntuples(res); DEBUG(20,("Returned %d tuples", n)); @@ -153,14 +154,17 @@ gpam_sql_verify_user_pass(pam_handle_t *pamh, const char *password, /* FIXME: This comment is needed to pacify `make check-sql-config' in doc: gpam_sql_find_config("setenv-query") */ - if (rc == PAM_SUCCESS - && (query = gpam_sql_get_query(pamh, - "setenv-query", - &slist, 0))) { + if (rc == PAM_SUCCESS) { + rc = gpam_sql_get_query(pamh, "setenv-query", 0, + &slist, &query); + if (rc == PAM_SUCCESS) { + if (query) { pgsql_setenv(pamh, pgconn, query); gray_slist_free(&slist); } } + } + } PQclear(res); PQfinish(pgconn); |