From 95c1dbcdfffcc3a77e693c3c2759e26a01f465c8 Mon Sep 17 00:00:00 2001 From: Heikki Linnakangas Date: Tue, 7 Mar 2017 19:00:22 +0200 Subject: A collection of small fixes for the SCRAM patch. * Add required #includes for htonl. Per buildfarm members pademelon/gaur. * Remove unnecessary "#include ". * Fix checking for empty string in pg_SASL_init. (Reported by Peter Eisentraut and his compiler) * Move code in pg_SASL_init to match the recent changes (commit ba005f193d) to pg_fe_sendauth() function, where it's copied from. * Return value of malloc() was not checked for NULL in scram_SaltedPassword(). Fix by avoiding the malloc(). --- src/interfaces/libpq/fe-auth.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'src/interfaces/libpq/fe-auth.c') diff --git a/src/interfaces/libpq/fe-auth.c b/src/interfaces/libpq/fe-auth.c index c69260b5226..5fe7e565a01 100644 --- a/src/interfaces/libpq/fe-auth.c +++ b/src/interfaces/libpq/fe-auth.c @@ -445,12 +445,13 @@ pg_SASL_init(PGconn *conn, const char *auth_mechanism) */ if (strcmp(auth_mechanism, SCRAM_SHA256_NAME) == 0) { - char *password = conn->connhost[conn->whichhost].password; + char *password; + conn->password_needed = true; + password = conn->connhost[conn->whichhost].password; if (password == NULL) password = conn->pgpass; - conn->password_needed = true; - if (password == NULL || password == '\0') + if (password == NULL || password[0] == '\0') { printfPQExpBuffer(&conn->errorMessage, PQnoPasswordSupplied); -- cgit v1.2.3