]> err.no Git - varnish/commit
Keep a master copy of the parameter block, to which all changes are applied,
authordes <des@d4fa192b-c00b-0410-8231-f00ffab90ce4>
Fri, 1 Jun 2007 22:18:55 +0000 (22:18 +0000)
committerdes <des@d4fa192b-c00b-0410-8231-f00ffab90ce4>
Fri, 1 Jun 2007 22:18:55 +0000 (22:18 +0000)
commit8282b829a8e64811c1786f473e8679898ddfaa38
tree6b75ab592955872d2441fd1eddda08fce322becb
parent0ad4abc537f0c0ad4ca004be3c9f526ceacfdf6d
Keep a master copy of the parameter block, to which all changes are applied,
and which is copied to the shared parameter block every time a parameter
changes as well as immediately before forking off a child.  This prevents a
hypothetical compromised child from changing the parent's idea of run-time
parameters (which would, for example, allow it to trick the the parent into
starting a new, hypothetically exploitable child with the attacker's choice
of uid / gid).

While I'm here, correct the use of the "volatile" qualifier - it is the
parmeter block itself which can change unpredictably, not the pointer.

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1484 d4fa192b-c00b-0410-8231-f00ffab90ce4
varnish-cache/bin/varnishd/heritage.h
varnish-cache/bin/varnishd/mgt.h
varnish-cache/bin/varnishd/mgt_child.c
varnish-cache/bin/varnishd/mgt_param.c
varnish-cache/bin/varnishd/varnishd.c