r1001 - trunk/varnish-cache/bin/varnishd

phk at projects.linpro.no phk at projects.linpro.no
Sat Sep 16 11:06:45 CEST 2006


Author: phk
Date: 2006-09-16 11:06:45 +0200 (Sat, 16 Sep 2006)
New Revision: 1001

Modified:
   trunk/varnish-cache/bin/varnishd/varnishd.c
Log:
Add -p param=value command line argument.


Modified: trunk/varnish-cache/bin/varnishd/varnishd.c
===================================================================
--- trunk/varnish-cache/bin/varnishd/varnishd.c	2006-09-16 09:01:21 UTC (rev 1000)
+++ trunk/varnish-cache/bin/varnishd/varnishd.c	2006-09-16 09:06:45 UTC (rev 1001)
@@ -145,6 +145,8 @@
 	    "  -h classic,<buckets>");
 	fprintf(stderr, "    %-28s # %s\n", "",
 	    "  -h classic,<buckets>,<buckets_per_mutex>");
+	fprintf(stderr, "    %-28s # %s\n", "-p param=value",
+	    "set parameter");
 	fprintf(stderr, "    %-28s # %s\n",
 	    "-s kind[,storageoptions]", "Backend storage specification");
 	fprintf(stderr, "    %-28s # %s\n", "",
@@ -334,12 +336,12 @@
 {
 	int o;
 	unsigned d_flag = 0;
-	const char *a_arg = NULL;
 	const char *b_arg = NULL;
 	const char *f_arg = NULL;
 	const char *h_flag = "classic";
 	const char *s_arg = "file";
 	const char *T_arg = NULL;
+	char *p;
 	struct params param;
 	struct cli cli[1];
 
@@ -359,10 +361,11 @@
 	MCF_ParamInit(cli);
 	cli_check(cli);
 
-	while ((o = getopt(argc, argv, "a:b:df:h:s:t:T:Vw:")) != -1)
+	while ((o = getopt(argc, argv, "a:b:df:h:p:s:t:T:Vw:")) != -1)
 		switch (o) {
 		case 'a':
-			a_arg = optarg;
+			MCF_ParamSet(cli, "listen_address", optarg);
+			cli_check(cli);
 			break;
 		case 'b':
 			b_arg = optarg;
@@ -376,6 +379,14 @@
 		case 'h':
 			h_flag = optarg;
 			break;
+		case 'p':
+			p = strchr(optarg, '=');
+			if (p == NULL)
+				usage();
+			*p++ = '\0';
+			MCF_ParamSet(cli, optarg, p);
+			cli_check(cli);
+			break;
 		case 's':
 			s_arg = optarg;
 			break;
@@ -418,10 +429,6 @@
 	setup_storage(s_arg);
 	setup_hash(h_flag);
 
-	if (a_arg != NULL)
-		MCF_ParamSet(cli, "listen_address", a_arg);
-	cli_check(cli);
-
 	VSL_MgtInit(SHMLOG_FILENAME, 8*1024*1024);
 
 	if (d_flag == 1)




More information about the varnish-commit mailing list