[master] 1fa2d44 Make it possible to name -a arguments
Poul-Henning Kamp
phk at FreeBSD.org
Sat Aug 12 23:08:16 CEST 2017
commit 1fa2d446c80359163989f56c99caac9afdea4749
Author: Poul-Henning Kamp <phk at FreeBSD.org>
Date: Sat Aug 12 21:07:17 2017 +0000
Make it possible to name -a arguments
diff --git a/bin/varnishd/common/heritage.h b/bin/varnishd/common/heritage.h
index 987b072..528bc1e 100644
--- a/bin/varnishd/common/heritage.h
+++ b/bin/varnishd/common/heritage.h
@@ -39,6 +39,7 @@ struct listen_arg {
#define LISTEN_ARG_MAGIC 0xbb2fc333
VTAILQ_ENTRY(listen_arg) list;
const char *endpoint;
+ const char *name;
VTAILQ_HEAD(,listen_sock) socks;
const struct transport *transport;
};
@@ -50,6 +51,7 @@ struct listen_sock {
VTAILQ_ENTRY(listen_sock) arglist;
int sock;
char *endpoint;
+ const char *name;
struct suckaddr *addr;
const struct transport *transport;
};
diff --git a/bin/varnishd/mgt/mgt_acceptor.c b/bin/varnishd/mgt/mgt_acceptor.c
index 83969b4..a4e7e41 100644
--- a/bin/varnishd/mgt/mgt_acceptor.c
+++ b/bin/varnishd/mgt/mgt_acceptor.c
@@ -122,6 +122,7 @@ mac_callback(void *priv, const struct suckaddr *sa)
AN(ls->addr);
ls->endpoint = strdup(la->endpoint);
AN(ls->endpoint);
+ la->name = ls->name;
ls->transport = la->transport;
VJ_master(JAIL_MASTER_PRIVPORT);
fail = mac_opensocket(ls);
@@ -154,25 +155,24 @@ mac_callback(void *priv, const struct suckaddr *sa)
}
void
-MAC_Arg(const char *arg)
+MAC_Arg(const char *spec)
{
char **av;
struct listen_arg *la;
const char *err;
int error;
const struct transport *xp;
+ const char *name;
- av = VAV_Parse(arg, NULL, ARGV_COMMA);
- if (av == NULL)
- ARGV_ERR("Parse error: out of memory\n");
- if (av[0] != NULL)
- ARGV_ERR("%s\n", av[0]);
+ av = MGT_NamedArg(spec, &name, "-a");
+ AN(av);
ALLOC_OBJ(la, LISTEN_ARG_MAGIC);
AN(la);
VTAILQ_INIT(&la->socks);
VTAILQ_INSERT_TAIL(&listen_args, la, list);
la->endpoint = av[1];
+ la->name = name;
if (av[2] == NULL) {
xp = XPORT_Find("http/1");
diff --git a/bin/varnishd/mgt/mgt_main.c b/bin/varnishd/mgt/mgt_main.c
index 31f9bf7..8b6c643 100644
--- a/bin/varnishd/mgt/mgt_main.c
+++ b/bin/varnishd/mgt/mgt_main.c
@@ -838,7 +838,7 @@ main(int argc, char * const *argv)
}
if (VTAILQ_EMPTY(&heritage.socks))
- MAC_Arg(":80");
+ MAC_Arg(":80\0"); // XXX: extra NUL for FlexeLint
assert(!VTAILQ_EMPTY(&heritage.socks));
More information about the varnish-commit
mailing list