[master] e94b1e8 Move stevedore.h to storage.h and have it contain only the back-side (storage-module facing) bits.
Poul-Henning Kamp
phk at varnish-cache.org
Mon Oct 10 14:27:07 CEST 2011
commit e94b1e8af31ac7ecfdadbcb5ab376955a397f20e
Author: Poul-Henning Kamp <phk at FreeBSD.org>
Date: Mon Oct 10 12:26:31 2011 +0000
Move stevedore.h to storage.h and have it contain only the back-side
(storage-module facing) bits.
Move the front-side bits to cache.h
diff --git a/bin/varnishd/Makefile.am b/bin/varnishd/Makefile.am
index b1f2a5c..2b822fa 100644
--- a/bin/varnishd/Makefile.am
+++ b/bin/varnishd/Makefile.am
@@ -88,7 +88,7 @@ noinst_HEADERS = \
heritage.h \
mgt.h \
mgt_cli.h \
- stevedore.h \
+ storage.h \
storage_persistent.h \
vparam.h
diff --git a/bin/varnishd/cache.h b/bin/varnishd/cache.h
index 41efdad..930f197 100644
--- a/bin/varnishd/cache.h
+++ b/bin/varnishd/cache.h
@@ -46,7 +46,6 @@
#include <pthread_np.h>
#endif
#include <stdarg.h>
-#include <stdint.h>
#include <string.h>
#include <limits.h>
#include <unistd.h>
@@ -94,6 +93,7 @@ enum {
struct iovec;
struct cli;
+struct exp;
struct vsb;
struct sess;
struct director;
@@ -379,6 +379,15 @@ struct worker {
struct acct acct_tmp;
};
+/* LRU ---------------------------------------------------------------*/
+
+struct lru {
+ unsigned magic;
+#define LRU_MAGIC 0x3fec7bb0
+ VTAILQ_HEAD(,objcore) lru_head;
+ struct lock mtx;
+};
+
/* Storage -----------------------------------------------------------*/
struct storage {
@@ -961,9 +970,20 @@ enum body_status RFC2616_Body(const struct sess *sp);
unsigned RFC2616_Req_Gzip(const struct sess *sp);
int RFC2616_Do_Cond(const struct sess *sp);
+/* stevedore.c */
+struct object *STV_NewObject(struct sess *sp, const char *hint, unsigned len,
+ struct exp *, uint16_t nhttp);
+struct storage *STV_alloc(const struct sess *sp, size_t size);
+void STV_trim(struct storage *st, size_t size);
+void STV_free(struct storage *st);
+void STV_open(void);
+void STV_close(void);
+void STV_Freestore(struct object *o);
+
/* storage_synth.c */
struct vsb *SMS_Makesynth(struct object *obj);
void SMS_Finish(struct object *obj);
+void SMS_Init(void);
/* storage_persistent.c */
void SMP_Init(void);
diff --git a/bin/varnishd/cache_center.c b/bin/varnishd/cache_center.c
index 463a05b..1eb249e 100644
--- a/bin/varnishd/cache_center.c
+++ b/bin/varnishd/cache_center.c
@@ -57,7 +57,6 @@ DOT acceptor -> start [style=bold,color=green]
#include "config.h"
-#include <errno.h>
#include <math.h>
#include <poll.h>
#include <stdio.h>
@@ -66,7 +65,6 @@ DOT acceptor -> start [style=bold,color=green]
#include "cache.h"
#include "hash_slinger.h"
-#include "stevedore.h"
#include "vcl.h"
#include "vcli_priv.h"
#include "vsha256.h"
diff --git a/bin/varnishd/cache_dir_dns.c b/bin/varnishd/cache_dir_dns.c
index acb3689..ae96dbb 100644
--- a/bin/varnishd/cache_dir_dns.c
+++ b/bin/varnishd/cache_dir_dns.c
@@ -31,7 +31,6 @@
#include <netinet/in.h>
-#include <errno.h>
#include <netdb.h>
#include <stdio.h>
#include <stdlib.h>
diff --git a/bin/varnishd/cache_esi_fetch.c b/bin/varnishd/cache_esi_fetch.c
index b6ef527..1db5259 100644
--- a/bin/varnishd/cache_esi_fetch.c
+++ b/bin/varnishd/cache_esi_fetch.c
@@ -35,8 +35,6 @@
#include "cache.h"
#include "cache_esi.h"
-#include "stevedore.h"
-#include "vct.h"
/*---------------------------------------------------------------------
* Read some bytes.
diff --git a/bin/varnishd/cache_expire.c b/bin/varnishd/cache_expire.c
index 8e18cb5..f9dcdd1 100644
--- a/bin/varnishd/cache_expire.c
+++ b/bin/varnishd/cache_expire.c
@@ -57,7 +57,6 @@
#include "binary_heap.h"
#include "hash_slinger.h"
-#include "stevedore.h"
#include "vtim.h"
static pthread_t exp_thread;
diff --git a/bin/varnishd/cache_fetch.c b/bin/varnishd/cache_fetch.c
index 75319d8..4300780 100644
--- a/bin/varnishd/cache_fetch.c
+++ b/bin/varnishd/cache_fetch.c
@@ -36,7 +36,6 @@
#include "cache.h"
-#include "stevedore.h"
#include "vcli_priv.h"
#include "vct.h"
#include "vtcp.h"
diff --git a/bin/varnishd/cache_hash.c b/bin/varnishd/cache_hash.c
index 67aa3af..12855e1 100644
--- a/bin/varnishd/cache_hash.c
+++ b/bin/varnishd/cache_hash.c
@@ -61,7 +61,6 @@
#include "cache_backend.h"
#include "hash_slinger.h"
-#include "stevedore.h"
#include "vav.h"
#include "vsha256.h"
diff --git a/bin/varnishd/cache_main.c b/bin/varnishd/cache_main.c
index 54d71f8..6e62fd2 100644
--- a/bin/varnishd/cache_main.c
+++ b/bin/varnishd/cache_main.c
@@ -36,7 +36,6 @@
#include "cache_waiter.h"
#include "hash_slinger.h"
-#include "stevedore.h"
/*--------------------------------------------------------------------
* Per thread storage for the session currently being processed by
diff --git a/bin/varnishd/cache_pool.c b/bin/varnishd/cache_pool.c
index 4421969..00eaef5 100644
--- a/bin/varnishd/cache_pool.c
+++ b/bin/varnishd/cache_pool.c
@@ -42,7 +42,6 @@
#include "config.h"
-#include <errno.h>
#include <math.h>
#include <stdlib.h>
diff --git a/bin/varnishd/cache_response.c b/bin/varnishd/cache_response.c
index bacf906..9768eeb 100644
--- a/bin/varnishd/cache_response.c
+++ b/bin/varnishd/cache_response.c
@@ -37,7 +37,6 @@
#include "cache.h"
-#include "stevedore.h"
#include "vct.h"
#include "vtim.h"
diff --git a/bin/varnishd/cache_waiter_epoll.c b/bin/varnishd/cache_waiter_epoll.c
index 3eaa627..301fcf2 100644
--- a/bin/varnishd/cache_waiter_epoll.c
+++ b/bin/varnishd/cache_waiter_epoll.c
@@ -37,7 +37,6 @@
#include <sys/epoll.h>
-#include <errno.h>
#include <fcntl.h>
#include <stdlib.h>
diff --git a/bin/varnishd/cache_waiter_kqueue.c b/bin/varnishd/cache_waiter_kqueue.c
index a81f4c2..8bee1c9 100644
--- a/bin/varnishd/cache_waiter_kqueue.c
+++ b/bin/varnishd/cache_waiter_kqueue.c
@@ -38,7 +38,6 @@
#include <sys/types.h>
#include <sys/event.h>
-#include <errno.h>
#include <fcntl.h>
#include <stdlib.h>
#include <unistd.h>
diff --git a/bin/varnishd/cache_waiter_ports.c b/bin/varnishd/cache_waiter_ports.c
index 2e02406..821ebc3 100644
--- a/bin/varnishd/cache_waiter_ports.c
+++ b/bin/varnishd/cache_waiter_ports.c
@@ -35,7 +35,6 @@
#include <sys/time.h>
-#include <errno.h>
#include <math.h>
#include <port.h>
#include <stdio.h>
diff --git a/bin/varnishd/common.h b/bin/varnishd/common.h
index 13249eb..4e56a40 100644
--- a/bin/varnishd/common.h
+++ b/bin/varnishd/common.h
@@ -77,6 +77,10 @@ const void *pick(const struct choice *cp, const char *which, const char *kind);
#define NEEDLESS_RETURN(foo) return (foo)
+/* stevedore.c */
+void STV_Config(const char *spec);
+void STV_Config_Transient(void);
+
/* vsm.c */
// extern struct VSM_head *VSM_head;
// extern const struct VSM_chunk *vsm_end;
diff --git a/bin/varnishd/mgt.h b/bin/varnishd/mgt.h
index 9d12752..2b17052 100644
--- a/bin/varnishd/mgt.h
+++ b/bin/varnishd/mgt.h
@@ -86,6 +86,7 @@ extern const char *mgt_vcl_dir;
extern const char *mgt_vmod_dir;
extern unsigned mgt_vcc_err_unref;
+
#define REPORT0(pri, fmt) \
do { \
fprintf(stderr, fmt "\n"); \
diff --git a/bin/varnishd/mgt_child.c b/bin/varnishd/mgt_child.c
index 5af26fe..2108230 100644
--- a/bin/varnishd/mgt_child.c
+++ b/bin/varnishd/mgt_child.c
@@ -34,7 +34,6 @@
#include <sys/types.h>
#include <sys/wait.h>
-#include <errno.h>
#include <fcntl.h>
#include <poll.h>
#include <signal.h>
diff --git a/bin/varnishd/stevedore.c b/bin/varnishd/stevedore.c
index ff1bdf5..6deffb4 100644
--- a/bin/varnishd/stevedore.c
+++ b/bin/varnishd/stevedore.c
@@ -38,7 +38,7 @@
#include "cache.h"
-#include "stevedore.h"
+#include "storage.h"
#include "vav.h"
#include "vcli_priv.h"
#include "vrt.h"
diff --git a/bin/varnishd/stevedore.h b/bin/varnishd/stevedore.h
deleted file mode 100644
index 9cd0b7b..0000000
--- a/bin/varnishd/stevedore.h
+++ /dev/null
@@ -1,119 +0,0 @@
-/*-
- * Copyright (c) 2006 Verdens Gang AS
- * Copyright (c) 2006-2011 Varnish Software AS
- * All rights reserved.
- *
- * Author: Poul-Henning Kamp <phk at phk.freebsd.dk>
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL AUTHOR OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- */
-
-struct stevedore;
-struct exp;
-struct sess;
-struct iovec;
-struct object;
-struct objcore;
-struct stv_objsecrets;
-
-typedef void storage_init_f(struct stevedore *, int ac, char * const *av);
-typedef void storage_open_f(const struct stevedore *);
-typedef struct storage *storage_alloc_f(struct stevedore *, size_t size);
-typedef void storage_trim_f(struct storage *, size_t size);
-typedef void storage_free_f(struct storage *);
-typedef struct object *storage_allocobj_f(struct stevedore *, struct sess *sp,
- unsigned ltot, const struct stv_objsecrets *);
-typedef void storage_close_f(const struct stevedore *);
-
-/* Prototypes for VCL variable responders */
-#define VRTSTVTYPE(ct) typedef ct storage_var_##ct(const struct stevedore *);
-#include "tbl/vrt_stv_var.h"
-#undef VRTSTVTYPE
-
-/*--------------------------------------------------------------------*/
-
-struct lru {
- unsigned magic;
-#define LRU_MAGIC 0x3fec7bb0
- VTAILQ_HEAD(,objcore) lru_head;
- struct lock mtx;
-};
-
-/*--------------------------------------------------------------------*/
-
-struct stevedore {
- unsigned magic;
-#define STEVEDORE_MAGIC 0x4baf43db
- const char *name;
- unsigned transient;
- storage_init_f *init; /* called by mgt process */
- storage_open_f *open; /* called by cache process */
- storage_alloc_f *alloc; /* --//-- */
- storage_trim_f *trim; /* --//-- */
- storage_free_f *free; /* --//-- */
- storage_close_f *close; /* --//-- */
- storage_allocobj_f *allocobj; /* --//-- */
-
- struct lru *lru;
-
-#define VRTSTVVAR(nm, vtype, ctype, dval) storage_var_##ctype *var_##nm;
-#include "tbl/vrt_stv_var.h"
-#undef VRTSTVVAR
-
- /* private fields */
- void *priv;
-
- VTAILQ_ENTRY(stevedore) list;
- char ident[16]; /* XXX: match VSM_chunk.ident */
-};
-
-struct object *STV_MkObject(struct sess *sp, void *ptr, unsigned ltot,
- const struct stv_objsecrets *soc);
-
-struct object *STV_NewObject(struct sess *sp, const char *hint, unsigned len,
- struct exp *, uint16_t nhttp);
-struct storage *STV_alloc(const struct sess *sp, size_t size);
-void STV_trim(struct storage *st, size_t size);
-void STV_free(struct storage *st);
-void STV_open(void);
-void STV_close(void);
-void STV_Config(const char *spec);
-void STV_Config_Transient(void);
-void STV_Freestore(struct object *o);
-
-struct lru *LRU_Alloc(void);
-void LRU_Free(struct lru *lru);
-
-int STV_GetFile(const char *fn, int *fdp, const char **fnp, const char *ctx);
-uintmax_t STV_FileSize(int fd, const char *size, unsigned *granularity,
- const char *ctx);
-
-/* Synthetic Storage */
-void SMS_Init(void);
-
-extern const struct stevedore sma_stevedore;
-extern const struct stevedore smf_stevedore;
-extern const struct stevedore smp_stevedore;
-#ifdef HAVE_LIBUMEM
-extern const struct stevedore smu_stevedore;
-#endif
diff --git a/bin/varnishd/stevedore_utils.c b/bin/varnishd/stevedore_utils.c
index 42c2b47..e428f58 100644
--- a/bin/varnishd/stevedore_utils.c
+++ b/bin/varnishd/stevedore_utils.c
@@ -51,7 +51,7 @@
#include "mgt.h"
-#include "stevedore.h"
+#include "storage.h"
#include "vnum.h"
#ifndef O_LARGEFILE
diff --git a/bin/varnishd/storage.h b/bin/varnishd/storage.h
new file mode 100644
index 0000000..80cad13
--- /dev/null
+++ b/bin/varnishd/storage.h
@@ -0,0 +1,97 @@
+/*-
+ * Copyright (c) 2006 Verdens Gang AS
+ * Copyright (c) 2006-2011 Varnish Software AS
+ * All rights reserved.
+ *
+ * Author: Poul-Henning Kamp <phk at phk.freebsd.dk>
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL AUTHOR OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ *
+ * This defines the backend interface between the stevedore and the
+ * pluggable storage implementations.
+ *
+ */
+
+struct stv_objsecrets;
+struct stevedore;
+struct sess;
+struct lru;
+
+typedef void storage_init_f(struct stevedore *, int ac, char * const *av);
+typedef void storage_open_f(const struct stevedore *);
+typedef struct storage *storage_alloc_f(struct stevedore *, size_t size);
+typedef void storage_trim_f(struct storage *, size_t size);
+typedef void storage_free_f(struct storage *);
+typedef struct object *storage_allocobj_f(struct stevedore *, struct sess *sp,
+ unsigned ltot, const struct stv_objsecrets *);
+typedef void storage_close_f(const struct stevedore *);
+
+/* Prototypes for VCL variable responders */
+#define VRTSTVTYPE(ct) typedef ct storage_var_##ct(const struct stevedore *);
+#include "tbl/vrt_stv_var.h"
+#undef VRTSTVTYPE
+
+/*--------------------------------------------------------------------*/
+
+struct stevedore {
+ unsigned magic;
+#define STEVEDORE_MAGIC 0x4baf43db
+ const char *name;
+ unsigned transient;
+ storage_init_f *init; /* called by mgt process */
+ storage_open_f *open; /* called by cache process */
+ storage_alloc_f *alloc; /* --//-- */
+ storage_trim_f *trim; /* --//-- */
+ storage_free_f *free; /* --//-- */
+ storage_close_f *close; /* --//-- */
+ storage_allocobj_f *allocobj; /* --//-- */
+
+ struct lru *lru;
+
+#define VRTSTVVAR(nm, vtype, ctype, dval) storage_var_##ctype *var_##nm;
+#include "tbl/vrt_stv_var.h"
+#undef VRTSTVVAR
+
+ /* private fields */
+ void *priv;
+
+ VTAILQ_ENTRY(stevedore) list;
+ char ident[16]; /* XXX: match VSM_chunk.ident */
+};
+
+/*--------------------------------------------------------------------*/
+int STV_GetFile(const char *fn, int *fdp, const char **fnp, const char *ctx);
+uintmax_t STV_FileSize(int fd, const char *size, unsigned *granularity,
+ const char *ctx);
+struct object *STV_MkObject(struct sess *sp, void *ptr, unsigned ltot,
+ const struct stv_objsecrets *soc);
+
+struct lru *LRU_Alloc(void);
+void LRU_Free(struct lru *lru);
+
+/*--------------------------------------------------------------------*/
+extern const struct stevedore sma_stevedore;
+extern const struct stevedore smf_stevedore;
+extern const struct stevedore smp_stevedore;
+#ifdef HAVE_LIBUMEM
+extern const struct stevedore smu_stevedore;
+#endif
diff --git a/bin/varnishd/storage_file.c b/bin/varnishd/storage_file.c
index 171d9d0..ecfc4ff 100644
--- a/bin/varnishd/storage_file.c
+++ b/bin/varnishd/storage_file.c
@@ -37,8 +37,8 @@
#include <stdlib.h>
#include "cache.h"
+#include "storage.h"
-#include "stevedore.h"
#include "vnum.h"
#ifndef MAP_NOCORE
diff --git a/bin/varnishd/storage_malloc.c b/bin/varnishd/storage_malloc.c
index bc5a565..967137c 100644
--- a/bin/varnishd/storage_malloc.c
+++ b/bin/varnishd/storage_malloc.c
@@ -35,8 +35,8 @@
#include <stdlib.h>
#include "cache.h"
+#include "storage.h"
-#include "stevedore.h"
#include "vnum.h"
struct sma_sc {
diff --git a/bin/varnishd/storage_persistent.c b/bin/varnishd/storage_persistent.c
index d379c4a..abe25f6 100644
--- a/bin/varnishd/storage_persistent.c
+++ b/bin/varnishd/storage_persistent.c
@@ -44,9 +44,9 @@
#include <string.h>
#include "cache.h"
+#include "storage.h"
#include "hash_slinger.h"
-#include "stevedore.h"
#include "vcli.h"
#include "vcli_priv.h"
#include "vend.h"
diff --git a/bin/varnishd/storage_persistent_mgt.c b/bin/varnishd/storage_persistent_mgt.c
index 7ec9089..2cdcc6b 100644
--- a/bin/varnishd/storage_persistent_mgt.c
+++ b/bin/varnishd/storage_persistent_mgt.c
@@ -42,8 +42,8 @@
#include <stdlib.h>
#include "cache.h"
+#include "storage.h"
-#include "stevedore.h"
#include "vsha256.h"
#include "persistent.h"
diff --git a/bin/varnishd/storage_persistent_silo.c b/bin/varnishd/storage_persistent_silo.c
index be2e2bf..8209613 100644
--- a/bin/varnishd/storage_persistent_silo.c
+++ b/bin/varnishd/storage_persistent_silo.c
@@ -38,9 +38,9 @@
#include <stdlib.h>
#include "cache.h"
+#include "storage.h"
#include "hash_slinger.h"
-#include "stevedore.h"
#include "vsha256.h"
#include "vtim.h"
diff --git a/bin/varnishd/storage_persistent_subr.c b/bin/varnishd/storage_persistent_subr.c
index e3df368..b4bbb3f 100644
--- a/bin/varnishd/storage_persistent_subr.c
+++ b/bin/varnishd/storage_persistent_subr.c
@@ -42,6 +42,7 @@
#include <stdlib.h>
#include "cache.h"
+#include "storage.h"
#include "vsha256.h"
diff --git a/bin/varnishd/storage_synth.c b/bin/varnishd/storage_synth.c
index 0792dbd..5df2c08 100644
--- a/bin/varnishd/storage_synth.c
+++ b/bin/varnishd/storage_synth.c
@@ -33,8 +33,8 @@
#include <stdlib.h>
#include "cache.h"
+#include "storage.h"
-#include "stevedore.h"
static struct lock sms_mtx;
diff --git a/bin/varnishd/storage_umem.c b/bin/varnishd/storage_umem.c
index 4459a47..9198a99 100644
--- a/bin/varnishd/storage_umem.c
+++ b/bin/varnishd/storage_umem.c
@@ -40,8 +40,7 @@
#include <umem.h>
#include "cache.h"
-
-#include "stevedore.h"
+#include "storage.h"
static size_t smu_max = SIZE_MAX;
static MTX smu_mtx;
diff --git a/bin/varnishd/varnishd.c b/bin/varnishd/varnishd.c
index 722c10e..7fe72aa 100644
--- a/bin/varnishd/varnishd.c
+++ b/bin/varnishd/varnishd.c
@@ -35,7 +35,6 @@
#include <sys/utsname.h>
#include <ctype.h>
-#include <errno.h>
#include <fcntl.h>
#include <stdio.h>
#include <stdlib.h>
@@ -48,7 +47,6 @@
#include "hash_slinger.h"
#include "heritage.h"
-#include "stevedore.h"
#include "vav.h"
#include "vcli.h"
#include "vcli_common.h"
More information about the varnish-commit
mailing list