[master] a48147a add svg versions of the graphviz-generated graphs to html docs

Nils Goroll nils.goroll at uplex.de
Mon Oct 13 17:19:08 CEST 2014

commit a48147aae7157fbc2d7de19b9e541ffa18fc9fa3
Author: Nils Goroll <nils.goroll at uplex.de>
Date:   Mon Oct 13 16:02:16 2014 +0200

    add svg versions of the graphviz-generated graphs to html docs

diff --git a/doc/Makefile.am b/doc/Makefile.am
index 927b54a..e420a99 100644
--- a/doc/Makefile.am
+++ b/doc/Makefile.am
@@ -14,4 +14,5 @@ else
-SUBDIRS = sphinx graphviz
+# build graphviz before sphinx, so sphinx docs can use svg output
+SUBDIRS = graphviz sphinx
diff --git a/doc/sphinx/reference/index.rst b/doc/sphinx/reference/index.rst
index 32458a6..72924e3 100644
--- a/doc/sphinx/reference/index.rst
+++ b/doc/sphinx/reference/index.rst
@@ -8,6 +8,7 @@ The Varnish Reference Manual
 	:maxdepth: 2
+	states.rst
diff --git a/doc/sphinx/reference/states.rst b/doc/sphinx/reference/states.rst
new file mode 100644
index 0000000..098e5a2
--- /dev/null
+++ b/doc/sphinx/reference/states.rst
@@ -0,0 +1,40 @@
+.. _reference-states:
+Varnish Processing States
+Varnish processing of client and backend requests is implemented as
+state machines. Whenever a state is entered, a C function is called,
+which in turn calls the appropriate Varnish core code functions to
+process the request or response at this stage. For most states, core
+code also calls into a state-specific function compiled from VCL, a
+VCL subroutine (see :ref:`vcl-built-in-subs` ).
+As a general guideline, core code aims to prepare objects accessible
+from VCL with good defaults for the most common cases before calling
+into the respective VCL subroutine. These can then be modified from
+VCL where necessary.
+The following graphs attempt to provide an overview over the
+processing states, their transisions and the most relevant functions
+in core code. They represent a compromise between usefulness for
+core/VMOD developers and administrators and are intended to serve as
+the reference basis for deriavtive work, such as more VCL-centric
+Client Side
+.. image:: ../../graphviz/cache_req_fsm.svg
+Backend Side
+.. image:: ../../graphviz/cache_fetch.svg

More information about the varnish-commit mailing list