]> git.ipfire.org Git - thirdparty/haproxy.git/commitdiff
BUG/MEDIUM server: Fix crash when dynamic is defined, but not key is provided.
authorOlivier Houchard <ohouchard@haproxy.com>
Wed, 15 Mar 2017 14:11:06 +0000 (15:11 +0100)
committerWilly Tarreau <w@1wt.eu>
Wed, 15 Mar 2017 15:01:33 +0000 (16:01 +0100)
Wait until we're sure we have a key before trying to calculate its length.

[wt: no backport needed, was just merged]

src/server.c

index 4e03e50a4695ecb3117551d5f4514222783f18c7..5589723efb26c2655b5ab467900bf499c6f51fea 100644 (file)
@@ -85,7 +85,7 @@ void srv_set_dyncookie(struct server *s)
        struct server *tmpserv;
        char *tmpbuf;
        unsigned long long hash_value;
-       size_t key_len = strlen(p->dyncookie_key);
+       size_t key_len;
        size_t buffer_len;
        int addr_len;
        int port;
@@ -94,6 +94,7 @@ void srv_set_dyncookie(struct server *s)
            !(s->proxy->ck_opts & PR_CK_DYNAMIC) ||
            s->proxy->dyncookie_key == NULL)
                return;
+       key_len = strlen(p->dyncookie_key);
 
        if (s->addr.ss_family != AF_INET &&
            s->addr.ss_family != AF_INET6)