From 8f0c8e6722ef989ecbb7f1656b36e6dd8a489753 Mon Sep 17 00:00:00 2001 From: des Date: Tue, 22 Aug 2006 08:17:54 +0000 Subject: [PATCH] Allow an empty address if a port is specified; thus ":80" is a valid listening address ("port 80 on all interfaces") git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@886 d4fa192b-c00b-0410-8231-f00ffab90ce4 --- varnish-cache/bin/varnishd/mgt_vcc.c | 2 +- varnish-cache/bin/varnishd/tcp.c | 5 ++--- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/varnish-cache/bin/varnishd/mgt_vcc.c b/varnish-cache/bin/varnishd/mgt_vcc.c index 996d8419..69999cd8 100644 --- a/varnish-cache/bin/varnishd/mgt_vcc.c +++ b/varnish-cache/bin/varnishd/mgt_vcc.c @@ -136,7 +136,7 @@ mgt_vcc_default(const char *b_arg, const char *f_arg) * XXX: a bug for a backend to not reply at that time, so then * XXX: again: we should check it here in the "trivial" case. */ - if (TCP_parse(b_arg, &addr, &port) != 0) { + if (TCP_parse(b_arg, &addr, &port) != 0 || addr == NULL) { fprintf(stderr, "invalid backend address\n"); return (1); } diff --git a/varnish-cache/bin/varnishd/tcp.c b/varnish-cache/bin/varnishd/tcp.c index 5cfe3803..209daa91 100644 --- a/varnish-cache/bin/varnishd/tcp.c +++ b/varnish-cache/bin/varnishd/tcp.c @@ -101,9 +101,8 @@ TCP_parse(const char *str, char **addr, char **port) if (p == NULL) { *addr = strdup(str); } else { - if (p == str) - return (-1); - *addr = strndup(str, p - str); + if (p > str) + *addr = strndup(str, p - str); *port = strdup(p + 1); } } -- 2.39.5