[3.0] 2b1905e works
Lasse Karstensen
lkarsten at varnish-cache.org
Thu Nov 3 19:02:20 CET 2011
commit 2b1905e67eb6b9d4011555cb71268ae7ea398d79
Author: Lasse Karstensen <lasse at varnish-software.com>
Date: Fri Oct 28 15:48:31 2011 +0200
works
diff --git a/bin/varnishncsa/varnishncsa.c b/bin/varnishncsa/varnishncsa.c
index dbde1b4..bb954eb 100644
--- a/bin/varnishncsa/varnishncsa.c
+++ b/bin/varnishncsa/varnishncsa.c
@@ -725,6 +725,10 @@ h_ncsa(void *priv, enum VSL_tag_e tag, unsigned fd,
case '{': {
const char *h, *tmp;
char fname[100], type;
+
+ // maybe
+ const char *key2;
+
tmp = p;
type = 0;
while (*tmp != '\0' && *tmp != '}')
@@ -761,11 +765,50 @@ h_ncsa(void *priv, enum VSL_tag_e tag, unsigned fd,
VSB_cat(os, (lp->df_handling ? lp->df_handling : "-"));
p = tmp;
break;
- } else if (strcmp(fname, "Varnish:vcllog") == 0) {
- VSB_cat(os, (lp->log1 ? lp->log1 : "-"));
- p = tmp;
- break;
+// } else if (strcmp(fname, "Varnish:vcllog") == 0) {
+// VSB_cat(os, (lp->log1 ? lp->log1 : "-"));
+// p = tmp;
+// break;
}
+ case 'l':
+ // std.log("Foo: bar")
+ // %{Foo}l
+ printf("case l was hit with fname: %s\n", fname);
+ // Extract "Foo" from fname
+ char *delim;
+ char keyword[100];
+ char *kwptr;
+ char *startpos;
+
+ // keyword = "init";
+
+ delim = strchr(fname, ':');
+ printf(": found at %d\n", delim - fname);
+ // startpos = delim - fname;
+
+ // buffer overflow all the way.
+ startpos = strncpy(keyword, delim+1, sizeof keyword);
+ printf("meh");
+ printf("startpos is: %d\n", startpos);
+
+ printf("rest is: %s\n", delim+1); // startpos);
+ printf("keyword is: %s\n", keyword);
+
+ //keyword = delim + 1;
+
+// printf("split2: %d\n", *split2);
+
+ // key2 = trimline(fname, split2);
+ //&&printf("key: %s\n", key2);
+ //keyword = strcpy("bar"; // trimline(fname+1, split);
+ //keyword = "foo";
+
+ //strcpy(key2, "bar"); // trimline(fname+1, split);
+ h = vcl_log(lp, keyword);
+ VSB_cat(os, h ? h : "-");
+ p = tmp;
+ break;
+///////
default:
fprintf(stderr, "Unknown format starting at: %s\n", --p);
More information about the varnish-commit
mailing list