[master] 5335c72 Have listen_socks tell what session step to go to after accept.

Poul-Henning Kamp phk at FreeBSD.org
Mon Mar 23 08:46:40 CET 2015


commit 5335c72147f4123d969fefa340e36b5c34d84479
Author: Poul-Henning Kamp <phk at FreeBSD.org>
Date:   Thu Mar 19 15:07:33 2015 +0000

    Have listen_socks tell what session step to go to after accept.

diff --git a/bin/varnishd/cache/cache.h b/bin/varnishd/cache/cache.h
index 4ddf35a..26e2a5e 100644
--- a/bin/varnishd/cache/cache.h
+++ b/bin/varnishd/cache/cache.h
@@ -139,12 +139,6 @@ typedef struct {
 
 /*--------------------------------------------------------------------*/
 
-enum sess_step {
-#define SESS_STEP(l, u)		S_STP_##u,
-#include "tbl/steps.h"
-#undef SESS_STEP
-};
-
 enum req_step {
 #define REQ_STEP(l, u, arg)	R_STP_##u,
 #include "tbl/steps.h"
diff --git a/bin/varnishd/common/common.h b/bin/varnishd/common/common.h
index 843048e..b268082 100644
--- a/bin/varnishd/common/common.h
+++ b/bin/varnishd/common/common.h
@@ -62,6 +62,12 @@ enum obj_flags {
 #undef OBJ_FLAG
 };
 
+enum sess_step {
+#define SESS_STEP(l, u)		S_STP_##u,
+#include "tbl/steps.h"
+#undef SESS_STEP
+};
+
 struct cli;
 
 /**********************************************************************
diff --git a/bin/varnishd/common/heritage.h b/bin/varnishd/common/heritage.h
index 949853b..c8f857b 100644
--- a/bin/varnishd/common/heritage.h
+++ b/bin/varnishd/common/heritage.h
@@ -39,6 +39,7 @@ struct listen_sock {
 	int				sock;
 	const char			*name;
 	const struct suckaddr		*addr;
+	enum sess_step			first_step;
 };
 
 VTAILQ_HEAD(listen_sock_head, listen_sock);
diff --git a/bin/varnishd/mgt/mgt_acceptor.c b/bin/varnishd/mgt/mgt_acceptor.c
index 1d9aa47..318d215 100644
--- a/bin/varnishd/mgt/mgt_acceptor.c
+++ b/bin/varnishd/mgt/mgt_acceptor.c
@@ -132,6 +132,7 @@ mac_callback(void *priv, const struct suckaddr *sa)
 	AN(ls);
 	ls->sock = -1;
 	ls->addr = sa;
+	ls->first_step = S_STP_H1NEWSESS;
 	fail = mac_opensocket(ls, NULL);
 	if (ls->sock < 0) {
 		*(mh->err) = strerror(fail);
diff --git a/include/tbl/steps.h b/include/tbl/steps.h
index 534d9a3..1e0b415 100644
--- a/include/tbl/steps.h
+++ b/include/tbl/steps.h
@@ -31,6 +31,7 @@
 /*lint -save -e525 -e539 */
 
 #ifdef SESS_STEP
+SESS_STEP(h1newsess,	H1NEWSESS)
 SESS_STEP(h1newreq,	H1NEWREQ)
 SESS_STEP(h1working,	H1WORKING)
 #endif



More information about the varnish-commit mailing list