]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
Handle NULL return values in PostgreSQL
authorNick Porter <nick@portercomputing.co.uk>
Mon, 21 Oct 2024 12:53:37 +0000 (13:53 +0100)
committerNick Porter <nick@portercomputing.co.uk>
Mon, 21 Oct 2024 15:38:01 +0000 (16:38 +0100)
src/modules/rlm_sql/drivers/rlm_sql_postgresql/rlm_sql_postgresql.c

index c71c00e4688da84972c580d4dee1b22258e8559a..b59359faa272d497d3d477027479742ef2a80c76 100644 (file)
@@ -575,6 +575,7 @@ static unlang_action_t sql_fetch_row(rlm_rcode_t *p_result, UNUSED int *priority
        if ((PQntuples(conn->result) > 0) && (records > 0)) {
                conn->row = talloc_zero_array(conn, char *, records + 1);
                for (i = 0; i < records; i++) {
+                       if (PQgetisnull(conn->result, conn->cur_row, i)) continue;
                        len = PQgetlength(conn->result, conn->cur_row, i);
                        conn->row[i] = talloc_array(conn->row, char, len + 1);
                        strlcpy(conn->row[i], PQgetvalue(conn->result, conn->cur_row, i), len + 1);