• Nils Goroll's avatar
    Add VCL source information to panics · 4f285262
    Nils Goroll authored
    Now that we have the vpi ref as set by VPI_Count() available via struct
    wrk_vpi, we can dump our position in VCL at the time of the panic.
    
    Additional changes:
    
    * move handling info from pan_wrk() to the new VPI_Panic()
    * output the source index of vcl sources with the name in
      VCL_Panic()
    
    The additional panic section looks like this:
    
    vpi = 0x7f5478be93b0 {
      handling (VCL::return) = 0x0 (none),
      ref = 6,
      vpi_ref = 0x7f54753fb530 {
        source = 0 (\"<vcl.inline>\"),
        offset = 365,
        line = 20,
        pos = 25,
        src = \"vtc.panic(\\\"Had Panic header: \\\" + resp.ht[...]\"
      },
    },
    
    The source line is truncated (and truncation denoted by [...]) if longer
    than 40 characters.
    
    If the in-memory vcl data source string looks truncated, tok = "..." may
    be output instead of src "...".
    4f285262
Name
Last commit
Last update
.circleci Loading commit data...
.github Loading commit data...
bin Loading commit data...
doc Loading commit data...
etc Loading commit data...
include Loading commit data...
lib Loading commit data...
m4 Loading commit data...
man Loading commit data...
tools Loading commit data...
vmod Loading commit data...
.dir-locals.el Loading commit data...
.gitignore Loading commit data...
.lgtm.yml Loading commit data...
.syntastic_c_config Loading commit data...
.travis.yml Loading commit data...
CONTRIBUTING Loading commit data...
ChangeLog Loading commit data...
INSTALL Loading commit data...
LICENSE Loading commit data...
Makefile.am Loading commit data...
README.Packaging Loading commit data...
README.rst Loading commit data...
autogen.des Loading commit data...
autogen.sh Loading commit data...
configure.ac Loading commit data...
flint.lnt Loading commit data...
varnish-legacy.m4 Loading commit data...
varnish.m4 Loading commit data...
varnishapi-uninstalled.pc.in Loading commit data...
varnishapi.pc.in Loading commit data...
vtc.am Loading commit data...
wflags.py Loading commit data...