[master] 4580b7d Hmm, as always git cheats me when I add files.

Poul-Henning Kamp phk at varnish-cache.org
Mon Aug 19 15:53:26 CEST 2013


commit 4580b7deeab503af3e5a064a2e5cc218971dea87
Author: Poul-Henning Kamp <phk at FreeBSD.org>
Date:   Mon Aug 19 13:53:06 2013 +0000

    Hmm, as always git cheats me when I add files.

diff --git a/bin/varnishtest/tests/v00038.vtc b/bin/varnishtest/tests/v00038.vtc
index c155119..7de4517 100644
--- a/bin/varnishtest/tests/v00038.vtc
+++ b/bin/varnishtest/tests/v00038.vtc
@@ -1,4 +1,4 @@
-varnishtest "VCL compiler coverage test: vcc_backend.c
+varnishtest "VCL compiler coverage test: vcc_backend.c"
 
 varnish v1 -errvcl "IPv6 address [] wrong" {
 	backend b1 {
@@ -59,7 +59,7 @@ varnish v1 -errvcl "NB: Backend Syntax has changed:" {
 	}
 }
 
-varnish v1 -errvcl "Expected '{' or name of probe." {
+varnish v1 -errvcl "Expected '{' or name of probe, got" {
 	backend b1 {
 		.host = "127.0.0.1";
 		.probe = "NONE";
diff --git a/include/vss.h b/include/vss.h
index d98aa1d..af41057 100644
--- a/include/vss.h
+++ b/include/vss.h
@@ -29,7 +29,7 @@
 /* vss.c */
 struct vss_addr;
 
-int VSS_parse(const char *str, char **addr, char **port);
+const char *VSS_parse(const char *str, char **addr, char **port);
 int VSS_resolve(const char *addr, const char *port, struct vss_addr ***ta);
 int VSS_bind(const struct vss_addr *addr);
 int VSS_listen(const struct vss_addr *addr, int depth);
diff --git a/lib/libvarnish/vss.c b/lib/libvarnish/vss.c
index bc0597a..2c1d8d6 100644
--- a/lib/libvarnish/vss.c
+++ b/lib/libvarnish/vss.c
@@ -71,7 +71,7 @@ struct vss_addr {
  * See also RFC5952
  */
 
-int
+const char *
 VSS_parse(const char *str, char **addr, char **port)
 {
 	const char *p;
@@ -83,7 +83,7 @@ VSS_parse(const char *str, char **addr, char **port)
 		if ((p = strchr(str, ']')) == NULL ||
 		    p == str + 1 ||
 		    (p[1] != '\0' && p[1] != ':'))
-			return (-1);
+			return ("IPv6 address [] wrong.");
 		*addr = strdup(str + 1);
 		XXXAN(*addr);
 		(*addr)[p - (str + 1)] = '\0';
@@ -109,7 +109,7 @@ VSS_parse(const char *str, char **addr, char **port)
 			XXXAN(*port);
 		}
 	}
-	return (0);
+	return (NULL);
 }
 
 /*
@@ -143,8 +143,7 @@ VSS_resolve(const char *addr, const char *port, struct vss_addr ***vap)
 	hints.ai_socktype = SOCK_STREAM;
 	hints.ai_flags = AI_PASSIVE;
 
-	ret = VSS_parse(addr, &hop, &adp);
-	if (ret)
+	if (VSS_parse(addr, &hop, &adp) != NULL)
 		return (0);
 
 	if (adp == NULL)
diff --git a/lib/libvcl/vcc_backend.c b/lib/libvcl/vcc_backend.c
index a8773d0..2cb3469 100644
--- a/lib/libvcl/vcc_backend.c
+++ b/lib/libvcl/vcc_backend.c
@@ -75,14 +75,15 @@ static void
 Emit_Sockaddr(struct vcc *tl, const struct token *t_host, const char *port)
 {
 	const char *ipv4, *ipv4a, *ipv6, *ipv6a, *pa;
+	const char *err;
 	char *hop, *pop;
 
 	AN(t_host->dec);
 
-	if (VSS_parse(t_host->dec, &hop, &pop)) {
+	err = VSS_parse(t_host->dec, &hop, &pop);
+	if (err != NULL) {
 		VSB_printf(tl->sb,
-		    "Backend host '%.*s': wrong syntax (unbalanced [...] ?)\n",
-		    PF(t_host) );
+		    "Backend host '%.*s': %s\n", PF(t_host), err);
 		vcc_ErrWhere(tl, t_host);
 		return;
 	}
@@ -416,7 +417,7 @@ vcc_ParseHostDef(struct vcc *tl, int serial, const char *vgcname)
 			SkipToken(tl, ';');
 		} else if (vcc_IdIs(t_field, "probe")) {
 			VSB_printf(tl->sb,
-			    "Expected '{' or name of probe.");
+			    "Expected '{' or name of probe, got ");
 			vcc_ErrToken(tl, tl->t);
 			VSB_printf(tl->sb, " at\n");
 			vcc_ErrWhere(tl, tl->t);



More information about the varnish-commit mailing list