[Varnish] #1800: PRIV_TASK in a vmod object method leads to code that cannot be compiled/linked

Varnish varnish-bugs at varnish-cache.org
Mon Oct 12 16:55:20 CEST 2015


#1800: PRIV_TASK in a vmod object method leads to code that cannot be
compiled/linked
--------------------+--------------------
 Reporter:  geoff   |       Owner:
     Type:  defect  |      Status:  new
 Priority:  normal  |   Milestone:  Later
Component:  vmod    |     Version:  4.1.0
 Severity:  normal  |  Resolution:
 Keywords:          |
--------------------+--------------------

Comment (by daghf):

 Hi

 I had a look, and this comes down to overly simple parsing in
 vcc_expr.c:vcc_priv_arg, where we've forgot to take VMOD objects into
 account.

 The parsing code blindly assumes the VMOD name to be the initial portion
 of the function invocation string leading up to the first dot.

 This works fine for regular function calls ("vmodname.foo(..)"), but
 breaks down for VMOD objects, where the parsed result is the arbitrary
 name of the object instance ("my_object.foo(..)").

 We need to expand on this to do a lookup that tells us if the parsed name
 is a VMOD object, and if so return the corresponding VMOD name.

-- 
Ticket URL: <https://www.varnish-cache.org/trac/ticket/1800#comment:4>
Varnish <https://varnish-cache.org/>
The Varnish HTTP Accelerator



More information about the varnish-bugs mailing list