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 @@ -117,2 +117,3 @@ gpam_sql_verify_user_pass(pam_handle_t *pamh, const char *password, gray_slist_t slist; + char const *query; @@ -155,6 +156,7 @@ gpam_sql_verify_user_pass(pam_handle_t *pamh, const char *password, 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); @@ -163,2 +165,4 @@ gpam_sql_verify_user_pass(pam_handle_t *pamh, const char *password, } + } + } |