[master] c5e9cf1c1 Remove VSB_QUOTE_GLOB, it was committed prematurely and does not quite work the way it should.

Poul-Henning Kamp phk at FreeBSD.org
Mon Apr 27 07:10:08 UTC 2020


commit c5e9cf1c11bb6b6ccb9492887d83be0b2e0ad16f
Author: Poul-Henning Kamp <phk at FreeBSD.org>
Date:   Mon Apr 27 07:08:33 2020 +0000

    Remove VSB_QUOTE_GLOB, it was committed prematurely and does not
    quite work the way it should.

diff --git a/include/vsb.h b/include/vsb.h
index b4305e42a..facea9394 100644
--- a/include/vsb.h
+++ b/include/vsb.h
@@ -84,7 +84,6 @@ void		 VSB_destroy(struct vsb **);
 #define VSB_QUOTE_CSTR		8
 #define VSB_QUOTE_UNSAFE	16
 #define VSB_QUOTE_ESCHEX	32
-#define VSB_QUOTE_GLOB		64
 void		 VSB_quote_pfx(struct vsb *, const char*, const void *,
 		     int len, int how);
 void		 VSB_quote(struct vsb *, const void *, int len, int how);
diff --git a/lib/libvarnish/vsb.c b/lib/libvarnish/vsb.c
index 4c4570c7b..ef9f164b0 100644
--- a/lib/libvarnish/vsb.c
+++ b/lib/libvarnish/vsb.c
@@ -563,7 +563,7 @@ VSB_quote_pfx(struct vsb *s, const char *pfx, const void *v, int len, int how)
 		nl = 0;
 		switch (*q) {
 		case '?':
-			if (how & (VSB_QUOTE_CSTR | VSB_QUOTE_GLOB))
+			if (how & VSB_QUOTE_CSTR)
 				(void)VSB_putc(s, '\\');
 			(void)VSB_putc(s, *q);
 			break;
@@ -571,10 +571,6 @@ VSB_quote_pfx(struct vsb *s, const char *pfx, const void *v, int len, int how)
 			(void)VSB_putc(s, *q);
 			break;
 		case '\\':
-			if (!(how & (VSB_QUOTE_UNSAFE)))
-				(void)VSB_putc(s, '\\');
-			(void)VSB_putc(s, *q);
-			break;
 		case '"':
 			if (!(how & VSB_QUOTE_UNSAFE))
 				(void)VSB_putc(s, '\\');
@@ -586,38 +582,18 @@ VSB_quote_pfx(struct vsb *s, const char *pfx, const void *v, int len, int how)
 			} else if (how & (VSB_QUOTE_NONL|VSB_QUOTE_UNSAFE)) {
 				(void)VSB_printf(s, "\n");
 				nl = 1;
-			} else if (how & VSB_QUOTE_GLOB) {
-				(void)VSB_printf(s, "\\\\n");
 			} else {
 				(void)VSB_printf(s, "\\n");
 			}
 			break;
 		case '\r':
-			if (how & VSB_QUOTE_GLOB)
-				(void)VSB_cat(s, "\\\\r");
-			else
-				(void)VSB_cat(s, "\\r");
+			(void)VSB_cat(s, "\\r");
 			break;
 		case '\t':
-			if (how & VSB_QUOTE_GLOB)
-				(void)VSB_cat(s, "\\\\t");
-			else
-				(void)VSB_cat(s, "\\t");
+			(void)VSB_cat(s, "\\t");
 			break;
 		case '\v':
-			if (how & VSB_QUOTE_GLOB)
-				(void)VSB_cat(s, "\\\\v");
-			else
-				(void)VSB_cat(s, "\\v");
-			break;
-		case '[':
-		case ']':
-		case '{':
-		case '}':
-		case '*':
-			if (how & VSB_QUOTE_GLOB)
-				(void)VSB_putc(s, '\\');
-			(void)VSB_putc(s, *q);
+			(void)VSB_cat(s, "\\v");
 			break;
 		default:
 			/* XXX: Implement VSB_QUOTE_JSON */
diff --git a/lib/libvarnish/vsb_test.c b/lib/libvarnish/vsb_test.c
index c6e4866ff..9ac60154c 100644
--- a/lib/libvarnish/vsb_test.c
+++ b/lib/libvarnish/vsb_test.c
@@ -16,26 +16,6 @@ struct tc {
 
 static struct tc tcs[] = {
 	{
-	    VSB_QUOTE_GLOB,
-	    "abcdefghijklmnopqrstvwxyz",
-	    "abcdefghijklmnopqrstvwxyz"
-	}, {
-	    VSB_QUOTE_GLOB,
-	    "ABCDEFGHIJKLMNOPQRSTVWXYZ",
-	    "ABCDEFGHIJKLMNOPQRSTVWXYZ"
-	}, {
-	    VSB_QUOTE_GLOB,
-	    "01234567789",
-	    "01234567789"
-	}, {
-	    VSB_QUOTE_GLOB,
-	    "abcde[f-g]{h,i,j}\\l?*xyz",
-	    "abcde\\[f-g\\]\\{h,i,j\\}\\\\l\\?\\*xyz"
-	}, {
-	    VSB_QUOTE_GLOB,
-	    "0123\t \"\r\v\n'",
-	    "0123\\\\t \\\"\\\\r\\\\v\\\\n'"
-	}, {
 	    0, NULL, NULL
 	}
 };


More information about the varnish-commit mailing list