varnish / libvmod-digest Goto Github PK
View Code? Open in Web Editor NEWDigest and HMAC vmod
License: Other
Digest and HMAC vmod
License: Other
HI,
4.1 branch build is failing on FreeBSD 10.1-REL
cd . && /bin/sh /root/work/varnish-vmods/libvmod-digest/missing automake-1.15 --foreign
/bin/sh ./config.status
config.status: creating Makefile
config.status: creating src/Makefile
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing depfiles commands
config.status: executing libtool commands
/usr/local/share/varnish/vmodtool.py ../src/vmod_digest.vcc
/bin/sh ../libtool --tag=CC --mode=compile cc -DHAVE_CONFIG_H -I. -I.. -I/usr/local/include/varnish -Wall -Werror -g -O2 -MT vmod_digest.lo -MD -MP -MF .deps/vmod_digest.Tpo -c -o vmod_digest.lo vmod_digest.c
libtool: compile: cc -DHAVE_CONFIG_H -I. -I.. -I/usr/local/include/varnish -Wall -Werror -g -O2 -MT vmod_digest.lo -MD -MP -MF .deps/vmod_digest.Tpo -c vmod_digest.c -fPIC -DPIC -o .libs/vmod_digest.o
vmod_digest.c:42:10: fatal error: 'mhash.h' file not found
^
1 error generated.
*** Error code 1
Stop.
make[2]: stopped in /root/work/varnish-vmods/libvmod-digest/src
However mhash.h is present:
❯ la /usr/local/include/mhash.h [4:41:14 PM]
-rw-r--r-- 1 root wheel 223B Nov 5 16:30 /usr/local/include/mhash.h
And I added includedir /usr/local/include to the configure command
Any ideas?
The latest commit to src/vmod_digest.c seems to have broken compile on FreeBSD
libtool: compile: gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I/usr/local/include/varnish -Wall -Wextra -Werror -I/usr/local/include -g -O2 -MT vmod_digest.lo -MD -MP -MF .deps/vmod_digest.Tpo -c vmod_digest.c -fPIC -DPIC -o .libs/vmod_digest.o
In file included from /usr/local/include/mutils/mincludes.h:34,
from /usr/local/include/mhash.h:6,
from vmod_digest.c:45:
/usr/local/include/mutils/mhash_config.h:186:1: error: "PACKAGE" redefined
In file included from vmod_digest.c:34:
../config.h:50:1: error: this is the location of the previous definition
In file included from /usr/local/include/mutils/mincludes.h:34,
from /usr/local/include/mhash.h:6,
from vmod_digest.c:45:
/usr/local/include/mutils/mhash_config.h:189:1: error: "PACKAGE_BUGREPORT" redefined
In file included from vmod_digest.c:34:
../config.h:53:1: error: this is the location of the previous definition
In file included from /usr/local/include/mutils/mincludes.h:34,
from /usr/local/include/mhash.h:6,
from vmod_digest.c:45:
/usr/local/include/mutils/mhash_config.h:192:1: error: "PACKAGE_NAME" redefined
In file included from vmod_digest.c:34:
../config.h:56:1: error: this is the location of the previous definition
In file included from /usr/local/include/mutils/mincludes.h:34,
from /usr/local/include/mhash.h:6,
from vmod_digest.c:45:
/usr/local/include/mutils/mhash_config.h:195:1: error: "PACKAGE_STRING" redefined
In file included from vmod_digest.c:34:
../config.h:59:1: error: this is the location of the previous definition
In file included from /usr/local/include/mutils/mincludes.h:34,
from /usr/local/include/mhash.h:6,
from vmod_digest.c:45:
/usr/local/include/mutils/mhash_config.h:198:1: error: "PACKAGE_TARNAME" redefined
In file included from vmod_digest.c:34:
../config.h:62:1: error: this is the location of the previous definition
In file included from /usr/local/include/mutils/mincludes.h:34,
from /usr/local/include/mhash.h:6,
from vmod_digest.c:45:
/usr/local/include/mutils/mhash_config.h:201:1: error: "PACKAGE_VERSION" redefined
In file included from vmod_digest.c:34:
../config.h:68:1: error: this is the location of the previous definition
In file included from /usr/local/include/mutils/mincludes.h:34,
from /usr/local/include/mhash.h:6,
from vmod_digest.c:45:
/usr/local/include/mutils/mhash_config.h:213:1: error: "VERSION" redefined
In file included from vmod_digest.c:34:
There are several compiler warnings in master:
vmod_digest.c:354:16: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for (j = 0; j < blocksize; j++) {
^
vmod_digest.c:357:25: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
assert((hexptr-hexenc)<(2*blocksize + 3));
^
/opt/varnish/varnish-4.1.0/include/varnish/vas.h:58:8: note: in definition of macro 'assert'
if (!(e)) { \
^
vmod_digest.c:425:15: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for (i = 0; i<mhash_get_block_size(hash);i++) {
^
As far as I can tell the only format returned by the various digest methods is a hex encoded string. Is it easy to retrieve a base64 encoded version of the same data? Perhaps either:
a) an additional parameter to each hash/hmac function that indicates the desired string format
-- or --
b) a new set hex/base64 util functions
Sorry for this issue, but I have to use an alpine version of Varnish, because I can't find have varnish-dev installed on M1, I have this error:
Package 'varnish-dev' has no installation candidate
I tried many things.... but no success. So I am trying to use an alpine version of varnish Docker image (7.0-alpine).
For now I have:
FROM varnish:7.0-alpine
RUN apk update && apk add --no-cache \
python3 \
py3-docutils \
py3-sphinx \
varnish-dev \
curl \
libtool \
make \
automake \
git \
autoconf \
libmhash-dev --repository=http://dl-cdn.alpinelinux.org/alpine/edge/testing/ \
openssl-dev
# install libvmod-digest
ENV LIBVMOD_DIGEST_BRANCH=master
RUN cd /usr/local/bin/ && \
git clone -b ${LIBVMOD_DIGEST_BRANCH} https://github.com/varnish/libvmod-digest.git && \
cd libvmod-digest && \
./autogen.sh && \
sh ./configure --disable-dependency-tracking && \
make install && \
cd /usr/local/bin && \
rm -rf libvmod-digest && \
ldconfig
It seems to work, but it ends with this message:
#7 6.275 ----------------------------------------------------------------------
#7 6.275 Libraries have been installed in:
#7 6.275 /usr/lib/varnish/vmods
#7 6.275
#7 6.275 If you ever happen to want to link against installed libraries
#7 6.275 in a given directory, LIBDIR, you must either use libtool, and
#7 6.275 specify the full pathname of the library, or use the '-LLIBDIR'
#7 6.275 flag during linking and do at least one of the following:
#7 6.275 - add LIBDIR to the 'LD_LIBRARY_PATH' environment variable
#7 6.275 during execution
#7 6.275 - add LIBDIR to the 'LD_RUN_PATH' environment variable
#7 6.275 during linking
#7 6.275 - use the '-Wl,-rpath -Wl,LIBDIR' linker flag
#7 6.275
#7 6.275 See any operating system documentation about shared libraries for
#7 6.275 more information, such as the ld(1) and ld.so(8) manual pages.
#7 6.275 ----------------------------------------------------------------------
#7 6.276 make[2]: Leaving directory '/usr/local/bin/libvmod-digest/src'
#7 6.276 make[1]: Leaving directory '/usr/local/bin/libvmod-digest/src'
#7 6.278 make[1]: Entering directory '/usr/local/bin/libvmod-digest'
#7 6.278 rst2man README.rst vmod_digest.3
#7 6.519 make[2]: Entering directory '/usr/local/bin/libvmod-digest'
#7 6.519 make[2]: Nothing to be done for 'install-exec-am'.
#7 6.520 ./install-sh -c -d '/usr/local/share/doc/libvmod-digest'
#7 6.526 /usr/bin/install -c -m 644 README.rst LICENSE '/usr/local/share/doc/libvmod-digest'
#7 6.529 ./install-sh -c -d '/usr/local/share/man/man3'
#7 6.536 /usr/bin/install -c -m 644 vmod_digest.3 '/usr/local/share/man/man3'
#7 6.539 make[2]: Leaving directory '/usr/local/bin/libvmod-digest'
#7 6.539 make[1]: Leaving directory '/usr/local/bin/libvmod-digest'
------
executor failed running [/bin/sh -c cd /usr/local/bin/ && git clone -b ${LIBVMOD_DIGEST_BRANCH} https://github.com/varnish/libvmod-digest.git && cd libvmod-digest && ./autogen.sh && ./configure --disable-dependency-tracking && make install && cd /usr/local/bin && rm -rf libvmod-digest && ldconfig]: exit code: 1
ERROR: Service 'varnish' failed to build : Build failed
I am not an expert in make files... is there a way to make it 'silent' ? to avoid any output ?
Hi,
I have compiled your digest module and trying to use base64 in my vcl but it fails. I have a vcl file say mymodule.vcl
and it has very simple logic within a subroutine say initiate_request. This subroutine is called in my main.vcl
file and it checks for a keyword in url and encodes the ip address when true else not.
When i hit a request containing the keyword i see 502 error and varnish logs are also exiting. i see log abandoned log reacquired
lines in the end.
Provided vcl file content and logs below. please provide us a solution and root cause of this issue.
my varnish version is 5.1.3
and i installed this module as instructed in readme file.
// mymodule.vcl
vcl 4.0;
import digest;
sub initiate_request {
if (req.url ~ "/site1/") {
set req.http.digest = digest.base64(client.ip);
} else {
set req.http.digest = client.ip;
}
}
on hitting the url the logs are
* << Session >> 1
- Begin sess 0 HTTP/1
- SessOpen 119.xxx.xx.186 53778 :80 10.xx.xx.7 80 1555407000.057236 22
- Link req 2 rxreq
- VSL flush
- End synth
* << Request >> 2
- Begin req 1 rxreq
- Timestamp Start: 1555407000.058357 0.000000 0.000000
- Timestamp Req: 1555407000.058357 0.000000 0.000000
- ReqStart 119.xxx.xx.186 53778
- ReqMethod GET
- ReqURL /site1/index.html
- ReqProtocol HTTP/1.1
- ReqHeader Host: 35.xx.xx.27
- ReqHeader Cache-Control: max-age=0
- ReqHeader Upgrade-Insecure-Requests: 1
- ReqHeader User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/73.0.3683.86 Chrome/73.0.3683.86 Safari/537.36
- ReqHeader Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
- ReqHeader Accept-Encoding: gzip, deflate
- ReqHeader Accept-Language: en-GB,en-US;q=0.9,en;q=0.8,da;q=0.7
- ReqHeader Via: HTTP/1.1 forward.http.proxy:3128
- ReqHeader Connection: keep-alive
- VCL_call RECV
- VSL flush
- End synth
Log abandoned
Log reacquired
i have commented out the ips for security reasons.
Hi all,
Can anybody help me, libvmod-digest can be make?
Varnish version:
varnish (modified varnish-4.1.11 61367ed17d08a9ef80a2d42dc84caef79cdeee7a)
Copyright (c) 2006 Verdens Gang AS
Copyright (c) Varnish Software 2006-2019 AS
varnishd -V
varnishd (varnish-4.0.2 revision bfe7cd1)
Copyright (c) 2006 Verdens Gang AS
Copyright (c) 2006-2014 Varnish Software AS
make[2]: Entering directory `/root/libvmod-digest-libvmod-digest-1.0.1/src'
/bin/sh ../libtool --tag=CC --mode=compile gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I/usr/share/varnish/include -I/usr/include/varnish -Wall -Wextra -g -O2 -MT vmod_digest.lo -MD -MP -MF .deps/vmod_digest.Tpo -c -o vmod_digest.lo vmod_digest.c
libtool: compile: gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I/usr/share/varnish/include -I/usr/include/varnish -Wall -Wextra -g -O2 -MT vmod_digest.lo -MD -MP -MF .deps/vmod_digest.Tpo -c vmod_digest.c -fPIC -DPIC -o .libs/vmod_digest.o
vmod_digest.c:95:24: error: expected ‘)’ before ‘struct’
init_function(VRT_CTX, struct vmod_priv *priv, enum vcl_event_e e)
^
vmod_digest.c:286:28: error: expected ‘)’ before ‘hashid’
vmod_hmac_generic(VRT_CTX, hashid hash, const char *key, const char *msg)
^
vmod_digest.c:333:30: error: expected ‘)’ before ‘enum’
vmod_base64_generic(VRT_CTX, enum alphabets a, const char *msg, int is_hex)
^
vmod_digest.c:356:37: error: expected ‘)’ before ‘enum’
vmod_base64_decode_generic(VRT_CTX, enum alphabets a, const char *msg)
^
vmod_digest.c:379:28: error: expected ‘)’ before ‘hashid’
vmod_hash_generic(VRT_CTX, hashid hash, const char *msg)
^
vmod_digest.c:403:29: error: expected ‘)’ before ‘const’
vmod_hash_ ## low (VRT_CTX, const char *msg) \
^
vmod_digest.c:410:1: note: in expansion of macro ‘VMOD_HASH_FOO’
VMOD_HASH_FOO(sha1,SHA1)
^
vmod_digest.c:403:29: error: expected ‘)’ before ‘const’
vmod_hash_ ## low (VRT_CTX, const char *msg) \
^
vmod_digest.c:411:1: note: in expansion of macro ‘VMOD_HASH_FOO’
VMOD_HASH_FOO(sha224,SHA224)
^
vmod_digest.c:403:29: error: expected ‘)’ before ‘const’
vmod_hash_ ## low (VRT_CTX, const char *msg) \
^
vmod_digest.c:412:1: note: in expansion of macro ‘VMOD_HASH_FOO’
VMOD_HASH_FOO(sha256,SHA256)
^
vmod_digest.c:403:29: error: expected ‘)’ before ‘const’
vmod_hash_ ## low (VRT_CTX, const char *msg) \
^
vmod_digest.c:413:1: note: in expansion of macro ‘VMOD_HASH_FOO’
VMOD_HASH_FOO(sha384,SHA384)
^
vmod_digest.c:403:29: error: expected ‘)’ before ‘const’
vmod_hash_ ## low (VRT_CTX, const char *msg) \
^
vmod_digest.c:414:1: note: in expansion of macro ‘VMOD_HASH_FOO’
VMOD_HASH_FOO(sha512,SHA512)
^
vmod_digest.c:403:29: error: expected ‘)’ before ‘const’
vmod_hash_ ## low (VRT_CTX, const char *msg) \
^
vmod_digest.c:415:1: note: in expansion of macro ‘VMOD_HASH_FOO’
VMOD_HASH_FOO(gost,GOST)
^
vmod_digest.c:403:29: error: expected ‘)’ before ‘const’
vmod_hash_ ## low (VRT_CTX, const char *msg) \
^
vmod_digest.c:416:1: note: in expansion of macro ‘VMOD_HASH_FOO’
VMOD_HASH_FOO(md2,MD2)
^
vmod_digest.c:403:29: error: expected ‘)’ before ‘const’
vmod_hash_ ## low (VRT_CTX, const char *msg) \
^
vmod_digest.c:417:1: note: in expansion of macro ‘VMOD_HASH_FOO’
VMOD_HASH_FOO(md4,MD4)
^
vmod_digest.c:403:29: error: expected ‘)’ before ‘const’
vmod_hash_ ## low (VRT_CTX, const char *msg) \
^
vmod_digest.c:418:1: note: in expansion of macro ‘VMOD_HASH_FOO’
VMOD_HASH_FOO(md5,MD5)
^
vmod_digest.c:403:29: error: expected ‘)’ before ‘const’
vmod_hash_ ## low (VRT_CTX, const char *msg) \
^
vmod_digest.c:419:1: note: in expansion of macro ‘VMOD_HASH_FOO’
VMOD_HASH_FOO(crc32,CRC32)
^
vmod_digest.c:403:29: error: expected ‘)’ before ‘const’
vmod_hash_ ## low (VRT_CTX, const char *msg) \
^
vmod_digest.c:420:1: note: in expansion of macro ‘VMOD_HASH_FOO’
VMOD_HASH_FOO(crc32b,CRC32B)
^
vmod_digest.c:403:29: error: expected ‘)’ before ‘const’
vmod_hash_ ## low (VRT_CTX, const char *msg) \
^
vmod_digest.c:421:1: note: in expansion of macro ‘VMOD_HASH_FOO’
VMOD_HASH_FOO(adler32,ADLER32)
^
vmod_digest.c:403:29: error: expected ‘)’ before ‘const’
vmod_hash_ ## low (VRT_CTX, const char *msg) \
^
vmod_digest.c:422:1: note: in expansion of macro ‘VMOD_HASH_FOO’
VMOD_HASH_FOO(haval128,HAVAL128)
^
vmod_digest.c:403:29: error: expected ‘)’ before ‘const’
vmod_hash_ ## low (VRT_CTX, const char *msg) \
^
vmod_digest.c:423:1: note: in expansion of macro ‘VMOD_HASH_FOO’
VMOD_HASH_FOO(haval160,HAVAL160)
^
vmod_digest.c:403:29: error: expected ‘)’ before ‘const’
vmod_hash_ ## low (VRT_CTX, const char *msg) \
^
vmod_digest.c:424:1: note: in expansion of macro ‘VMOD_HASH_FOO’
VMOD_HASH_FOO(haval192,HAVAL192)
^
vmod_digest.c:403:29: error: expected ‘)’ before ‘const’
vmod_hash_ ## low (VRT_CTX, const char *msg) \
^
vmod_digest.c:425:1: note: in expansion of macro ‘VMOD_HASH_FOO’
VMOD_HASH_FOO(haval224,HAVAL224)
^
vmod_digest.c:403:29: error: expected ‘)’ before ‘const’
vmod_hash_ ## low (VRT_CTX, const char *msg) \
^
vmod_digest.c:426:1: note: in expansion of macro ‘VMOD_HASH_FOO’
VMOD_HASH_FOO(haval256,HAVAL256)
^
vmod_digest.c:403:29: error: expected ‘)’ before ‘const’
vmod_hash_ ## low (VRT_CTX, const char *msg) \
^
vmod_digest.c:427:1: note: in expansion of macro ‘VMOD_HASH_FOO’
VMOD_HASH_FOO(ripemd128,RIPEMD128)
^
vmod_digest.c:403:29: error: expected ‘)’ before ‘const’
vmod_hash_ ## low (VRT_CTX, const char *msg) \
^
vmod_digest.c:428:1: note: in expansion of macro ‘VMOD_HASH_FOO’
VMOD_HASH_FOO(ripemd160,RIPEMD160)
^
vmod_digest.c:403:29: error: expected ‘)’ before ‘const’
vmod_hash_ ## low (VRT_CTX, const char *msg) \
^
vmod_digest.c:429:1: note: in expansion of macro ‘VMOD_HASH_FOO’
VMOD_HASH_FOO(ripemd256,RIPEMD256)
^
vmod_digest.c:403:29: error: expected ‘)’ before ‘const’
vmod_hash_ ## low (VRT_CTX, const char *msg) \
^
vmod_digest.c:430:1: note: in expansion of macro ‘VMOD_HASH_FOO’
VMOD_HASH_FOO(ripemd320,RIPEMD320)
^
vmod_digest.c:403:29: error: expected ‘)’ before ‘const’
vmod_hash_ ## low (VRT_CTX, const char *msg) \
^
vmod_digest.c:431:1: note: in expansion of macro ‘VMOD_HASH_FOO’
VMOD_HASH_FOO(tiger,TIGER)
^
vmod_digest.c:403:29: error: expected ‘)’ before ‘const’
vmod_hash_ ## low (VRT_CTX, const char *msg) \
^
vmod_digest.c:432:1: note: in expansion of macro ‘VMOD_HASH_FOO’
VMOD_HASH_FOO(tiger128,TIGER128)
^
vmod_digest.c:403:29: error: expected ‘)’ before ‘const’
vmod_hash_ ## low (VRT_CTX, const char *msg) \
^
vmod_digest.c:433:1: note: in expansion of macro ‘VMOD_HASH_FOO’
VMOD_HASH_FOO(tiger160,TIGER160)
^
vmod_digest.c:403:29: error: expected ‘)’ before ‘const’
vmod_hash_ ## low (VRT_CTX, const char *msg) \
^
vmod_digest.c:434:1: note: in expansion of macro ‘VMOD_HASH_FOO’
VMOD_HASH_FOO(snefru128,SNEFRU128)
^
vmod_digest.c:403:29: error: expected ‘)’ before ‘const’
vmod_hash_ ## low (VRT_CTX, const char *msg) \
^
vmod_digest.c:435:1: note: in expansion of macro ‘VMOD_HASH_FOO’
VMOD_HASH_FOO(snefru256,SNEFRU256)
^
vmod_digest.c:403:29: error: expected ‘)’ before ‘const’
vmod_hash_ ## low (VRT_CTX, const char *msg) \
^
vmod_digest.c:436:1: note: in expansion of macro ‘VMOD_HASH_FOO’
VMOD_HASH_FOO(whirlpool,WHIRLPOOL)
^
vmod_digest.c:440:30: error: expected ‘)’ before ‘const’
vmod_ ## codec_low (VRT_CTX, const char *msg) \
^
vmod_digest.c:463:1: note: in expansion of macro ‘VMOD_ENCODE_FOO’
VMOD_ENCODE_FOO(base64,BASE64)
^
vmod_digest.c:448:38: error: expected ‘)’ before ‘const’
vmod_ ## codec_low ## _hex (VRT_CTX, const char *msg) \
^
vmod_digest.c:463:1: note: in expansion of macro ‘VMOD_ENCODE_FOO’
VMOD_ENCODE_FOO(base64,BASE64)
^
vmod_digest.c:456:41: error: expected ‘)’ before ‘const’
vmod_ ## codec_low ## _decode (VRT_CTX, const char *msg) \
^
vmod_digest.c:463:1: note: in expansion of macro ‘VMOD_ENCODE_FOO’
VMOD_ENCODE_FOO(base64,BASE64)
^
vmod_digest.c:440:30: error: expected ‘)’ before ‘const’
vmod_ ## codec_low (VRT_CTX, const char *msg) \
^
vmod_digest.c:464:1: note: in expansion of macro ‘VMOD_ENCODE_FOO’
VMOD_ENCODE_FOO(base64url,BASE64URL)
^
vmod_digest.c:448:38: error: expected ‘)’ before ‘const’
vmod_ ## codec_low ## _hex (VRT_CTX, const char *msg) \
^
vmod_digest.c:464:1: note: in expansion of macro ‘VMOD_ENCODE_FOO’
VMOD_ENCODE_FOO(base64url,BASE64URL)
^
vmod_digest.c:456:41: error: expected ‘)’ before ‘const’
vmod_ ## codec_low ## _decode (VRT_CTX, const char *msg) \
^
vmod_digest.c:464:1: note: in expansion of macro ‘VMOD_ENCODE_FOO’
VMOD_ENCODE_FOO(base64url,BASE64URL)
^
vmod_digest.c:440:30: error: expected ‘)’ before ‘const’
vmod_ ## codec_low (VRT_CTX, const char *msg) \
^
vmod_digest.c:465:1: note: in expansion of macro ‘VMOD_ENCODE_FOO’
VMOD_ENCODE_FOO(base64url_nopad,BASE64URLNOPAD)
^
vmod_digest.c:448:38: error: expected ‘)’ before ‘const’
vmod_ ## codec_low ## _hex (VRT_CTX, const char *msg) \
^
vmod_digest.c:465:1: note: in expansion of macro ‘VMOD_ENCODE_FOO’
VMOD_ENCODE_FOO(base64url_nopad,BASE64URLNOPAD)
^
vmod_digest.c:456:41: error: expected ‘)’ before ‘const’
vmod_ ## codec_low ## _decode (VRT_CTX, const char *msg) \
^
vmod_digest.c:465:1: note: in expansion of macro ‘VMOD_ENCODE_FOO’
VMOD_ENCODE_FOO(base64url_nopad,BASE64URLNOPAD)
^
vmod_digest.c:474:29: error: expected ‘)’ before ‘const’
vmod_hmac_ ## hash(VRT_CTX, const char *key, const char *msg) \
^
vmod_digest.c:484:1: note: in expansion of macro ‘VMOD_HMAC_FOO’
VMOD_HMAC_FOO(sha256,SHA256)
^
vmod_digest.c:474:29: error: expected ‘)’ before ‘const’
vmod_hmac_ ## hash(VRT_CTX, const char *key, const char *msg) \
^
vmod_digest.c:485:1: note: in expansion of macro ‘VMOD_HMAC_FOO’
VMOD_HMAC_FOO(sha1,SHA1)
^
vmod_digest.c:474:29: error: expected ‘)’ before ‘const’
vmod_hmac_ ## hash(VRT_CTX, const char *key, const char *msg) \
^
vmod_digest.c:486:1: note: in expansion of macro ‘VMOD_HMAC_FOO’
VMOD_HMAC_FOO(md5,MD5)
^
vmod_digest.c: In function ‘vmod_version’:
vmod_digest.c:490:1: warning: type of ‘VRT_CTX’ defaults to ‘int’ [enabled by default]
vmod_version(VRT_CTX)
^
vmod_digest.c:490:1: error: argument ‘VRT_CTX’ doesn’t match prototype
In file included from vmod_digest.c:57:0:
vcc_if.h:55:12: error: prototype declaration
VCL_STRING vmod_version(const struct vrt_ctx *);
^
vmod_digest.c:492:8: error: ‘ctx’ undeclared (first use in this function)
(void)ctx;
^
vmod_digest.c:492:8: note: each undeclared identifier is reported only once for each function it appears in
vmod_digest.c:490:1: warning: unused parameter ‘VRT_CTX’ [-Wunused-parameter]
vmod_version(VRT_CTX)
^
vmod_digest.c: At top level:
vmod_digest.c:75:3: warning: ‘alphabet’ defined but not used [-Wunused-variable]
} alphabet[N_ALPHA];
^
vmod_digest.c:81:1: warning: ‘vmod_digest_alpha_init’ defined but not used [-Wunused-function]
vmod_digest_alpha_init(struct e_alphabet *alpha)
^
vmod_digest.c:131:1: warning: ‘base64_decode’ defined but not used [-Wunused-function]
base64_decode(struct e_alphabet *alpha, char *d, unsigned dlen, const char *s)
^
vmod_digest.c:205:1: warning: ‘base64_encode’ defined but not used [-Wunused-function]
base64_encode(struct e_alphabet *alpha, const char *in,
^
make[2]: *** [vmod_digest.lo] Error 1
make[2]: Leaving directory `/root/libvmod-digest-libvmod-digest-1.0.1/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/root/libvmod-digest-libvmod-digest-1.0.1'
make: *** [all] Error 2
I've tried to use digest.base64_decode in default.vcl, but not work.
set req.http.x-url = digest.base64_decode("dGVzdHVybA==");
But x-url is empty.
And when use base64(), it's crashed.
Please let me know what I mistake in the code.
Hi there,
I just compiled your vmod on my Mac Os X 10.6.8
$varnishd -V
varnishd (varnish-3.0.2 revision 55e70a4)
Copyright (c) 2006 Verdens Gang AS
Copyright (c) 2006-2011 Varnish Software AS
I tried using the digest.hash_md5()
function in my VCL, the VCL compiles with no error, but when I make an HTTP request, nothing is returned to the browser.
I then tried using digest.hash_sha1
, and it works.
import digest;
sub vcl_deliver
{
set resp.http.whatever = digest.hash_md5("test");
}
0 CLI - Rd ping
0 CLI - Wr 200 19 PONG 1349724370 1.0
8 BackendOpen b default 127.0.0.1 49639 127.0.0.1 8080
8 TxRequest b GET
8 TxURL b /
8 TxProtocol b HTTP/1.1
8 TxHeader b Host: xxx.dyndns.org
8 TxHeader b Pragma: no-cache
8 TxHeader b User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/537.4 (KHTML, like Gecko) Chrome/22.0.1229.79 Safari/537.4
8 TxHeader b Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
8 TxHeader b Accept-Language: en-US,en;q=0.8,fr;q=0.6
8 TxHeader b Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
8 TxHeader b Cookie: __unam=d8cb8fc-1373474e385-fb57489-1; __utmx=61625407.; __utmxx=61625407.; __utmx=1.; __utmxx=1.; __utma=1.55154200.1338591865.1339534723.1340041951.9; __utmz=1.1338591865.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); __utma=61625407.20100163
8 TxHeader b ABTest: TESTa
8 TxHeader b X-Device: desktop
8 TxHeader b X-Varnish: 1830513611
8 TxHeader b Accept-Encoding: gzip
8 RxProtocol b HTTP/1.1
8 RxStatus b 200
8 RxResponse b OK
8 RxHeader b Date: Mon, 08 Oct 2012 19:26:11 GMT
8 RxHeader b Server: Apache/2.2.14 (Unix) DAV/2 mod_ssl/2.2.14 OpenSSL/0.9.8l PHP/5.3.1 mod_perl/2.0.4 Perl/v5.10.1
8 RxHeader b X-Powered-By: PHP/5.3.1
8 RxHeader b Expires: Thu, 19 Nov 1981 08:52:00 GMT
8 RxHeader b Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
8 RxHeader b Pragma: no-cache
8 RxHeader b Set-Cookie: frontend=6de3c6b09cb15240fba3e718f92abc34; expires=Tue, 09-Oct-2012 19:26:11 GMT; path=/; domain=.xxx.dyndns.org; httponly
8 RxHeader b X-Magento-Doesi: 1
8 RxHeader b Transfer-Encoding: chunked
8 RxHeader b Content-Type: text/html; charset=UTF-8
8 Fetch_Body b 3(chunked) cls 0 mklen 1
8 Length b 8708
8 BackendReuse b default
0 WorkThread - 0x100586ae0 start
0 CLI - Rd vcl.load "boot" ./vcl.osJuJwUo.so
0 CLI - Wr 200 36 Loaded "./vcl.osJuJwUo.so" as "boot"
0 CLI - Rd vcl.use "boot"
0 CLI - Wr 200 0
0 CLI - Rd start
0 Debug - "Acceptor poll space increased to 512"
0 Debug - "Acceptor is poll"
0 CLI - Wr 200 0
0 WorkThread - 0x106703ae0 start
0 WorkThread - 0x106786ae0 start
0 WorkThread - 0x107880ae0 start
0 WorkThread - 0x107903ae0 start
0 WorkThread - 0x107986ae0 start
0 WorkThread - 0x107a09ae0 start
0 WorkThread - 0x107a8cae0 start
0 WorkThread - 0x107b0fae0 start
0 WorkThread - 0x107b92ae0 start
0 CLI - Rd ping
0 CLI - Wr 200 19 PONG 1349724375 1.0
0 CLI - Rd ping
0 CLI - Wr 200 19 PONG 1349724378 1.0
Am I missing something?
-Hugues
v1.0.2, both master & 6.3 branches.
** top === varnishtest "Test digest vmod out of workspace"
* top VTEST Test digest vmod out of workspace
** top === server s1 { } -start
** s1 Starting server
**** s1 macro def s1_addr=127.0.0.1
**** s1 macro def s1_port=41415
**** s1 macro def s1_sock=127.0.0.1 41415
* s1 Listen on 127.0.0.1 41415
** top === varnish v1 -arg "-p workspace_client=9k" -vcl+backend {
** s1 Started on 127.0.0.1 41415 (1 iterations)
**** dT 0.003
** v1 Launch
*** v1 CMD: cd ${pwd} && exec varnishd -d -n /tmp/vtc.680297.1ba7e879/v1 -l 2m -p auto_restart=off -p syslog_cli_traffic=off -p sigsegv_handler=on -p thread_pool_min=10 -p debug=+vtc_mode -p vsl_mask=+Debug -a '127.0.0.1:0' -M '127.0.0.1 42579' -P /tmp/vtc.680297.1ba7e879/v1/varnishd.pid -p workspace_client=9k
*** v1 CMD: cd <VMOD DIR>/src && exec varnishd -d -n /tmp/vtc.680297.1ba7e879/v1 -l 2m -p auto_restart=off -p syslog_cli_traffic=off -p sigsegv_handler=on -p thread_pool_min=10 -p debug=+vtc_mode -p vsl_mask=+Debug -a '127.0.0.1:0' -M '127.0.0.1 42579' -P /tmp/vtc.680297.1ba7e879/v1/varnishd.pid -p workspace_client=9k
*** v1 PID: 680303
**** v1 macro def v1_pid=680303
**** v1 macro def v1_name=/tmp/vtc.680297.1ba7e879/v1
**** dT 0.010
*** v1 debug|Debug: Version: varnish-6.4.0 revision 13f137934ec1cf14af66baf7896311115ee35598
*** v1 debug|Debug: Platform: Linux,5.4.0-28-generic,x86_64,-jnone,-sdefault,-sdefault,-hcritbit
*** v1 debug|200 317
*** v1 debug|-----------------------------
*** v1 debug|Varnish Cache CLI 1.0
*** v1 debug|-----------------------------
*** v1 debug|Linux,5.4.0-28-generic,x86_64,-jnone,-sdefault,-sdefault,-hcritbit
*** v1 debug|varnish-6.4.0 revision 13f137934ec1cf14af66baf7896311115ee35598
*** v1 debug|
*** v1 debug|Type 'help' for command list.
*** v1 debug|Type 'quit' to close CLI session.
*** v1 debug|Type 'start' to launch worker process.
*** v1 debug|
**** dT 0.109
**** v1 CLIPOLL 1 0x1 0x0
*** v1 CLI connection fd = 7
**** dT 0.110
*** v1 CLI RX 107
**** v1 CLI RX|kyaachywehmvrbdjdomfppgkwbmhbdot
**** v1 CLI RX|
**** v1 CLI RX|Authentication required.
**** v1 CLI TX|auth 872a5869837b2888273e00245b71d3f237b40dfe1a0ab60cc5cd279bb39a8878
**** dT 0.111
*** v1 CLI RX 200
**** v1 CLI RX|-----------------------------
**** v1 CLI RX|Varnish Cache CLI 1.0
**** v1 CLI RX|-----------------------------
**** v1 CLI RX|Linux,5.4.0-28-generic,x86_64,-jnone,-sdefault,-sdefault,-hcritbit
**** v1 CLI RX|varnish-6.4.0 revision 13f137934ec1cf14af66baf7896311115ee35598
**** v1 CLI RX|
**** v1 CLI RX|Type 'help' for command list.
**** v1 CLI RX|Type 'quit' to close CLI session.
**** v1 CLI RX|Type 'start' to launch worker process.
**** v1 CLI TX|vcl.inline vcl1 << %XJEIFLH|)Xspa8P
**** v1 CLI TX|vcl 4.1;
**** v1 CLI TX|backend s1 { .host = "127.0.0.1"; .port = "41415"; }
**** v1 CLI TX|
**** v1 CLI TX|
**** v1 CLI TX|\timport digest from "<VMOD DIR>/src/.libs/libvmod_digest.so";
**** v1 CLI TX|\timport vtc;
**** v1 CLI TX|
**** v1 CLI TX|\tsub vcl_recv {
**** v1 CLI TX|\t\tvtc.workspace_alloc(client, -5);
**** v1 CLI TX|\t\tif (req.url == "/hmac_sha256") {
**** v1 CLI TX|\t\t\tset req.http.hmac_sha256 = digest.hmac_sha256("key", "The quick brown fox jumps over the lazy dog");
**** v1 CLI TX|\t\t}
**** v1 CLI TX|
**** v1 CLI TX|\t\tif (req.url == "/hmac_sha1") {
**** v1 CLI TX|\t\t\tset req.http.hmac_sha1 = digest.hmac_sha1("key", "The quick brown fox jumps over the lazy dog");
**** v1 CLI TX|\t\t}
**** v1 CLI TX|
**** v1 CLI TX|\t\tif (req.url == "/hmac_md5") {
**** v1 CLI TX|\t\t\tset req.http.md5 = digest.hmac_md5("key", "The quick brown fox jumps over the lazy dog");
**** v1 CLI TX|\t\t}
**** v1 CLI TX|
**** v1 CLI TX|\t\tif (req.url == "/base64") {
**** v1 CLI TX|\t\t\tset req.http.base64 = digest.base64("TeSTTeSTTeST");
**** v1 CLI TX|\t\t}
**** v1 CLI TX|
**** v1 CLI TX|\t\tif (req.url == "/base64_hex") {
**** v1 CLI TX|\t\t\tset req.http.base64_hex = digest.base64_hex("0x54655354");
**** v1 CLI TX|\t\t}
**** v1 CLI TX|
**** v1 CLI TX|\t\tif (req.url == "/base64_decode") {
**** v1 CLI TX|\t\t\tset req.http.base64_decode = digest.base64_decode("zprOsc67z47PgiDOv8+Bzq/Pg86xz4TOtQ==");
**** v1 CLI TX|\t\t}
**** v1 CLI TX|
**** v1 CLI TX|\t\tif (req.url == "/base64url") {
**** v1 CLI TX|\t\t\tset req.http.base64url = digest.base64url("Interesting!");
**** v1 CLI TX|\t\t}
**** v1 CLI TX|
**** v1 CLI TX|\t\tif (req.url == "/base64url_hex") {
**** v1 CLI TX|\t\t\tset req.http.base64url = digest.base64url("496E746572657374696E6721");
**** v1 CLI TX|\t\t}
**** v1 CLI TX|
**** v1 CLI TX|\t\tif (req.url == "/base64url_decode") {
**** v1 CLI TX|\t\t\tset req.http.base64url_decode = digest.base64url_decode("MHg4MDA3MDcxMzQ2M2U3NzQ5YjkwYzJkYzI0OTExZTI3NQ");
**** v1 CLI TX|\t\t}
**** v1 CLI TX|
**** v1 CLI TX|\t\tif (req.url == "/hash_sha1") {
**** v1 CLI TX|\t\t\tset req.http.hash_sha1 = digest.hash_sha1("abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq");
**** v1 CLI TX|\t\t}
**** v1 CLI TX|
**** v1 CLI TX|\t\tif (req.url == "/hash_md4") {
**** v1 CLI TX|\t\t\tset req.http.hash_md4 = digest.hash_md4("abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq");
**** v1 CLI TX|\t\t}
**** v1 CLI TX|
**** v1 CLI TX|\t\tif (req.url == "/hash_whirlpool") {
**** v1 CLI TX|\t\t\tset req.http.hash_whirlpool = digest.hash_whirlpool("abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq");
**** v1 CLI TX|\t\t}
**** v1 CLI TX|\t}
**** v1 CLI TX|
**** v1 CLI TX|
**** v1 CLI TX|%XJEIFLH|)Xspa8P
**** dT 0.211
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 0.259
*** v1 CLI RX 200
**** v1 CLI RX|VCL compiled.
**** v1 CLI TX|vcl.use vcl1
*** v1 CLI RX 200
** v1 Start
**** v1 CLI TX|start
**** dT 0.261
*** v1 debug|Debug: Child (680317) Started
**** dT 0.285
*** v1 CLI RX 200
*** v1 debug|Info: Child (680317) said Child starts
*** v1 wait-running
**** v1 CLI TX|status
*** v1 CLI RX 200
**** v1 CLI RX|Child in state running
**** v1 CLI TX|debug.listen_address
*** v1 CLI RX 200
**** v1 CLI RX|127.0.0.1 38163
**** v1 CLI TX|debug.xid 999
*** v1 CLI RX 200
**** v1 CLI RX|XID is 999
**** v1 CLI TX|debug.listen_address
*** v1 CLI RX 200
**** v1 CLI RX|127.0.0.1 38163
** v1 Listen on 127.0.0.1 38163
**** v1 macro def v1_addr=127.0.0.1
**** v1 macro def v1_port=38163
**** v1 macro def v1_sock=127.0.0.1 38163
**** dT 0.312
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 0.412
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 0.512
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 0.612
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 0.712
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 0.812
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 0.913
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 1.013
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 1.113
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 1.213
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 1.313
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 1.413
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 1.513
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 1.613
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 1.714
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 1.814
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 1.914
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 2.014
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 2.114
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 2.214
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 2.315
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 2.415
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 2.515
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 2.615
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 2.715
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 2.815
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 2.916
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 3.016
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 3.116
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 3.216
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 3.316
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 3.416
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 3.516
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 3.617
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 3.717
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 3.817
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 3.917
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 4.017
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 4.117
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 4.218
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 4.318
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 4.418
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 4.518
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 4.618
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 4.718
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 4.818
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 4.919
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 5.019
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 5.119
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 5.219
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 5.319
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 5.419
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 5.520
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 5.620
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 5.720
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 5.820
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 5.920
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 6.020
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 6.120
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 6.221
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 6.321
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 6.421
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 6.521
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 6.621
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 6.721
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 6.822
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 6.922
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 7.022
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 7.122
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 7.222
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 7.322
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 7.423
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 7.523
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 7.623
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 7.723
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 7.823
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 7.923
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 8.023
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 8.124
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 8.224
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 8.324
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 8.424
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 8.524
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 8.624
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 8.725
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 8.825
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 8.925
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 9.025
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 9.125
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 9.225
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 9.325
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 9.425
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 9.526
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 9.626
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 9.726
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 9.826
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 9.926
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 10.026
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 10.126
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 10.226
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 10.327
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 10.427
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 10.527
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 10.627
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 10.727
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 10.827
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 10.927
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 11.028
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 11.128
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 11.228
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 11.328
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 11.428
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 11.528
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 11.629
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 11.729
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 11.829
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 11.929
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 12.029
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 12.129
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 12.229
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 12.330
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 12.430
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 12.530
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 12.630
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 12.730
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 12.830
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 12.930
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 13.030
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 13.131
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 13.231
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 13.331
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 13.431
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 13.531
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 13.631
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 13.732
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 13.832
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 13.932
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 14.032
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 14.132
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 14.232
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 14.333
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 14.433
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 14.533
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 14.633
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 14.733
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 14.833
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 14.934
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 15.034
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 15.134
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 15.234
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 15.334
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 15.434
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 15.534
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 15.635
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 15.735
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 15.835
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 15.935
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 16.035
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 16.136
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 16.236
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 16.336
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 16.436
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 16.536
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 16.636
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 16.736
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 16.837
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 16.937
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 17.037
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 17.137
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 17.237
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 17.337
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 17.438
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 17.538
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 17.638
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 17.738
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 17.838
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 17.938
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 18.038
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 18.139
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 18.239
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 18.339
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 18.439
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 18.539
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 18.639
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 18.740
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 18.840
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 18.940
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 19.040
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 19.140
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 19.241
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 19.341
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 19.441
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 19.541
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 19.641
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 19.741
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 19.841
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 19.942
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 20.042
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 20.142
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 20.242
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 20.342
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 20.442
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 20.543
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 20.643
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 20.743
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 20.843
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 20.943
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 21.043
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 21.143
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 21.244
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 21.344
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 21.444
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 21.544
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 21.644
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 21.744
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 21.844
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 21.945
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 22.045
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 22.145
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 22.245
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 22.345
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 22.445
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 22.546
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 22.646
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 22.746
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 22.846
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 22.946
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 23.046
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 23.146
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 23.247
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 23.347
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 23.447
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 23.547
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 23.647
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 23.747
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 23.847
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 23.948
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 24.048
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 24.148
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 24.248
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 24.348
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 24.449
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 24.549
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 24.649
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 24.749
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 24.849
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 24.949
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 25.049
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 25.150
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 25.250
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 25.350
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 25.450
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 25.550
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 25.650
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 25.751
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 25.851
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 25.951
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 26.051
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 26.151
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 26.251
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 26.352
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 26.452
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 26.552
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 26.652
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 26.752
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 26.852
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 26.952
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 27.053
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 27.153
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 27.253
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 27.353
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 27.453
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 27.553
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 27.653
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 27.754
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 27.854
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 27.954
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 28.054
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 28.154
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 28.254
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 28.354
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 28.455
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 28.555
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 28.655
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 28.755
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 28.855
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 28.955
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 29.055
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 29.156
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 29.256
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 29.356
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 29.456
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 29.556
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 29.656
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 29.757
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 29.857
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 29.957
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 30.057
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 30.157
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 30.257
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 30.358
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 30.458
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 30.558
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 30.658
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 30.758
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 30.858
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 30.959
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 31.059
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 31.159
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 31.259
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 31.359
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 31.459
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 31.560
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 31.660
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 31.760
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 31.860
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 31.960
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 32.060
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 32.160
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 32.261
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 32.361
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 32.461
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 32.561
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 32.661
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 32.761
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 32.862
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 32.962
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 33.062
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 33.162
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 33.262
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 33.362
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 33.463
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 33.563
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 33.663
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 33.763
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 33.863
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 33.963
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 34.063
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 34.164
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 34.264
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 34.364
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 34.464
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 34.564
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 34.664
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 34.765
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 34.865
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 34.965
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 35.065
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 35.165
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 35.265
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 35.365
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 35.466
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 35.566
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 35.666
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 35.766
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 35.866
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 35.966
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 36.067
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 36.167
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 36.267
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 36.367
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 36.467
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 36.567
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 36.668
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 36.768
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 36.868
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 36.968
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 37.068
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 37.168
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 37.269
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 37.369
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 37.469
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 37.569
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 37.669
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 37.769
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 37.869
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 37.970
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 38.070
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 38.170
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 38.270
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 38.370
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 38.470
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 38.571
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 38.671
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 38.771
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 38.871
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 38.971
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 39.071
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 39.171
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 39.272
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 39.372
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 39.472
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 39.572
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 39.672
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 39.772
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 39.873
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 39.973
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 40.073
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 40.173
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 40.273
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 40.373
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 40.474
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 40.574
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 40.674
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 40.774
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 40.874
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 40.974
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 41.074
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 41.175
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 41.275
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 41.375
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 41.475
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 41.575
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 41.675
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 41.776
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 41.876
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 41.976
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 42.076
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 42.176
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 42.276
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 42.377
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 42.477
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 42.577
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 42.677
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 42.777
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 42.877
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 42.978
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 43.078
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 43.178
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 43.278
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 43.378
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 43.478
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 43.579
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 43.679
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 43.779
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 43.879
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 43.979
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 44.079
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 44.179
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 44.280
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 44.380
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 44.480
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 44.580
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 44.680
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 44.780
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 44.881
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 44.981
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 45.081
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 45.181
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 45.281
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 45.381
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 45.481
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 45.582
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 45.682
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 45.782
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 45.882
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 45.982
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 46.082
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 46.182
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 46.283
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 46.383
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 46.483
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 46.583
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 46.683
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 46.783
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 46.884
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 46.984
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 47.084
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 47.184
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 47.284
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 47.384
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 47.485
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 47.585
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 47.685
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 47.785
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 47.885
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 47.985
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 48.085
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 48.186
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 48.286
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 48.386
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 48.486
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 48.586
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 48.686
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 48.787
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 48.887
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 48.987
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 49.087
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 49.187
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 49.287
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 49.388
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 49.488
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 49.588
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 49.688
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 49.788
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 49.888
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 49.989
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 50.089
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 50.189
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 50.289
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 50.389
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 50.489
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 50.589
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 50.690
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 50.790
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 50.890
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 50.990
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 51.090
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 51.190
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 51.291
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 51.391
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 51.491
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 51.591
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 51.691
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 51.791
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 51.891
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 51.992
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 52.092
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 52.192
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 52.292
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 52.392
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 52.492
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 52.593
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 52.693
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 52.793
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 52.893
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 52.993
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 53.093
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 53.194
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 53.294
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 53.394
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 53.494
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 53.594
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 53.694
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 53.794
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 53.895
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 53.995
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 54.095
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 54.195
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 54.295
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 54.395
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 54.495
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 54.596
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 54.696
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 54.796
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 54.896
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 54.996
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 55.096
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 55.196
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 55.297
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 55.397
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 55.497
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 55.597
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 55.697
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 55.797
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 55.898
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 55.998
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 56.098
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 56.198
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 56.298
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 56.398
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 56.498
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 56.599
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 56.699
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 56.799
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 56.899
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 56.999
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 57.099
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 57.200
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 57.300
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 57.400
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 57.500
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 57.600
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 57.700
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 57.800
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 57.901
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 58.001
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 58.101
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 58.201
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 58.301
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 58.401
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 58.502
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 58.602
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 58.702
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 58.802
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 58.902
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 59.002
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 59.102
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 59.203
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 59.303
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 59.403
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 59.503
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 59.603
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 59.704
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 59.804
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 59.904
*** v1 vsl|No VSL chunk found (child not started ?)
**** dT 60.004
*** v1 vsl|No VSL chunk found (child not started ?)
# top TEST ../src/tests/test02.vtc TIMED OUT (kill -9)
# top TEST ../src/tests/test02.vtc FAILED (60.061) signal=9
./autogen.sh runs fine
./configure runs fine
make gives me the following. Sorry I'm sure where to begin troubleshooting this.
[root@ip-xxx-xxx-xxx-xxx libvmod-digest]# make
make all-recursive
make[1]: Entering directory `/root/libvmod-digest'
Making all in src
make[2]: Entering directory `/root/libvmod-digest/src'
/usr/share/varnish/vmodtool.py ../src/vmod_digest.vcc
/bin/sh ../libtool --tag=CC --mode=compile gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I/usr/include/varnish -Wall -Wextra -g -O2 -MT vmod_digest.lo -MD -MP -MF .deps/vmod_digest.Tpo -c -o vmod_digest.lo vmod_digest.c
libtool: compile: gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I/usr/include/varnish -Wall -Wextra -g -O2 -MT vmod_digest.lo -MD -MP -MF .deps/vmod_digest.Tpo -c vmod_digest.c -fPIC -DPIC -o .libs/vmod_digest.o
vmod_digest.c:95:53: warning: 'enum vcl_event_e' declared inside parameter list [enabled by default]
init_function(VRT_CTX, struct vmod_priv *priv, enum vcl_event_e e)
^
vmod_digest.c:95:53: warning: its scope is only this definition or declaration, which is probably not what you want [enabled by default]
vmod_digest.c:95:65: error: parameter 3 ('e') has incomplete type
init_function(VRT_CTX, struct vmod_priv *priv, enum vcl_event_e e)
^
vmod_digest.c: In function 'init_function':
vmod_digest.c:100:11: error: 'VCL_EVENT_LOAD' undeclared (first use in this function)
if (e != VCL_EVENT_LOAD)
^
vmod_digest.c:100:11: note: each undeclared identifier is reported only once for each function it appears in
vmod_digest.c:95:65: warning: unused parameter 'e' [-Wunused-parameter]
init_function(VRT_CTX, struct vmod_priv *priv, enum vcl_event_e e)
^
make[2]: *** [vmod_digest.lo] Error 1
make[2]: Leaving directory `/root/libvmod-digest/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/root/libvmod-digest'
make: *** [all] Error 2
When I use digest.hash_md5 with any value Varnish crashes:
(gdb) bt
#0 0x0000000801caa5d7 in strlen () from /lib/libc.so.7
#1 0x0000000000440f0f in VRT_StringList (
d=0x8083ce3e8 '0' <repeats 33 times>, "`??\t\bɵ(d\001Expect:", dl=63616,
p=0x800 <Error reading address 0x800: Bad address>, ap=0x7fffedb5a390)
at cache_vrt.c:151
#2 0x00000000004410a9 in VRT_String (ws=0x8083cd080,
h=0x807502c56 "X-WURFL-Device:", p=0x8083ce3b0 '0' <repeats 32 times>,
ap=0x7fffedb5a390) at cache_vrt.c:186
#3 0x0000000000441431 in VRT_SetHdr (sp=0x8083cd008, where=HDR_REQ,
hdr=0x807502c55 "\017X-WURFL-Device:",
p=0x8083ce3b0 '0' <repeats 32 times>) at cache_vrt.c:230
#4 0x0000000807502338 in ?? ()
#5 0x00000008083cd398 in ?? ()
#6 0x000000000068272e in H_Expect ()
#7 0x0000000000000800 in ?? ()
#8 0x00007fffedb5a4d0 in ?? ()
#9 0x0000000802008400 in ?? ()
#10 0x000000000043faf7 in VCL_recv_method (sp=0x0) at vcl_returns.h:23
Previous frame inner to this frame (corrupt stack?)
(gdb) quit
My setup:
Since it is a generated file.
Evening,
Struggling to get this to build with Varnish 4.0. The 3.0 and 4.0 branch complains my varnish source is invalid like they are both only 3.0 compatible?
The master branch gets further and when it makes it yields this error:
make all-recursive
make[1]: Entering directory trunk/libvmod-digest' Making all in src make[2]: Entering directory
trunk/libvmod-digest/src'
/bin/sh ../libtool --tag=CC --mode=compile gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I/usr/include/varnish -Wall -Wextra -g -O2 -MT vmod_digest.lo -MD -MP -MF .deps/vmod_digest.Tpo -c -o vmod_digest.lo vmod_digest.c
libtool: compile: gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I/usr/include/varnish -Wall -Wextra -g -O2 -MT vmod_digest.lo -MD -MP -MF .deps/vmod_digest.Tpo -c vmod_digest.c -fPIC -DPIC -o .libs/vmod_digest.o
vmod_digest.c:91: warning: ‘enum vcl_event_e’ declared inside parameter list
vmod_digest.c:91: error: parameter 3 (‘e’) has incomplete type
vmod_digest.c: In function ‘init_function’:
vmod_digest.c:96: error: ‘VCL_EVENT_LOAD’ undeclared (first use in this function)
vmod_digest.c:96: error: (Each undeclared identifier is reported only once
vmod_digest.c:96: error: for each function it appears in.)
vmod_digest.c:91: warning: unused parameter ‘e’
vmod_digest.c: In function ‘vmod_hmac_generic’:
vmod_digest.c:284: warning: comparison between signed and unsigned integer expressions
vmod_digest.c:287: warning: comparison between signed and unsigned integer expressions
vmod_digest.c: In function ‘vmod_hash_generic’:
vmod_digest.c:355: warning: comparison between signed and unsigned integer expressions
make[2]: *** [vmod_digest.lo] Error 1
make[2]: Leaving directory trunk/libvmod-digest/src' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory
trunk/libvmod-digest'
make: *** [all] Error 2
Is master 4.1 only?
I'm trying to follow http://redcrackle.com/blog/how-install-varnish-module-ubuntu-1204 instruction.
I installed varnishd source from github into ../varnish-cache
and ran ./configure VARNISHSRC=../varnish-cache VMODDIR=/usr/lib/x86_64-linux-gnu/varnish/vmods/
I get error (journalctl -xe)
it shows varnished version is 3.1 although I see
$ varnishd -V
varnishd (varnish-5.1.2 revision 6ece695)
6월 13 12:45:43 devserver-MS-7758 varnishd[4875]: CLI telnet 127.0.0.1 40264 127.0.0.1 6082 Rd ping
6월 13 12:45:43 devserver-MS-7758 varnishd[4875]: CLI telnet 127.0.0.1 40264 127.0.0.1 6082 Wr 200 PONG 1497325543 1.0
6월 13 12:45:43 devserver-MS-7758 varnishd[4875]: CLI telnet 127.0.0.1 40264 127.0.0.1 6082 Rd vcl.load 59f1a456-f067-49a4-9391-340e2301a54a /etc/varnish/default.vcl
6월 13 12:45:43 devserver-MS-7758 varnishd[4875]: CLI telnet 127.0.0.1 40264 127.0.0.1 6082 Wr 106 Message from VCC-compiler:
Incompatible VMOD digest
File name: /usr/lib/x86_64-linux-gnu/varnish/vmods/libvmod_digest.so
VMOD version 6.0
varnishd version 3.1
('/etc/varnish/default.vcl' Line 3 Pos 8)
import digest;
-------######-
Running VCC-compiler failed, exited with 2
VCL compilation failed
6월 13 12:45:43 devserver-MS-7758 reload-vcl[8735]: Command failed with error code 106
Full build log at https://paste.centos.org/view/85d545a9
When trying to make on Ubuntu 20.04 / Debian Buster (4.19.208-1):
libtool: compile: gcc -DHAVE_CONFIG_H -I. -I.. -I/usr/include/varnish -Wall -Wextra -Werror -g -O2 -MT vmod_digest.lo -MD -MP -MF .deps/vmod_digest.Tpo -c vmod_digest.c -fPIC -DPIC -o .libs/vmod_digest.o vmod_digest.c: In function 'vmod_base64_generic': vmod_digest.c:351:6: error: implicit declaration of function 'WS_ReserveAll'; did you mean 'WS_Reserve'? [-Werror=implicit-function-declaration] 351 | u = WS_ReserveAll(ctx->ws); | ^~~~~~~~~~~
I feel like I'm missing a last step.
The build goes through, but Varnish wouldn't start up complaining about a version mismatch:
For context, I'm using the official varnish docker image, specifically 6.4:
My goal is simply to add this VMOD to it, as I need to parse JWT tokens.
To do so, I've set the following up:
Note that I'm checking out "2b7f74b8897765372f2c7d7c760229bd8740fea2" of this repo, because the latest commit which replaces the WS_Reserve() call to WS_ReserveAll() fails the build.
This builds fine, but when I try to start varnish, I get the above error:
ABI mismatch, expected <Varnish 6.4.0 13f137934ec1cf14af66baf7896311115ee35598>, got <���@>
Any help would be much appreciated.
I feel like I'm really close to getting this to work. :)
When building the master branch with gcc 4.8.3 on CentOS 7.1 with Varnish 4.0.3, I get the following errors:
In file included from vmod_digest.c:50:0:
../config.h:51:0: error: "PACKAGE" redefined [-Werror]
#define PACKAGE "libvmod-digest"
^
In file included from /usr/include/mutils/mhash.h:30:0,
from /usr/include/mhash.h:10,
from vmod_digest.c:42:
/usr/local/include/mutils/mhash_config.h:186:0: note: this is the location of the previous definition
#define PACKAGE "mhash"
^
In file included from vmod_digest.c:50:0:
../config.h:54:0: error: "PACKAGE_BUGREPORT" redefined [-Werror]
#define PACKAGE_BUGREPORT ""
^
In file included from /usr/include/mutils/mhash.h:30:0,
from /usr/include/mhash.h:10,
from vmod_digest.c:42:
/usr/local/include/mutils/mhash_config.h:189:0: note: this is the location of the previous definition
#define PACKAGE_BUGREPORT "[email protected]"
^
In file included from vmod_digest.c:50:0:
../config.h:57:0: error: "PACKAGE_NAME" redefined [-Werror]
#define PACKAGE_NAME "libvmod-digest"
^
In file included from /usr/include/mutils/mhash.h:30:0,
from /usr/include/mhash.h:10,
from vmod_digest.c:42:
/usr/local/include/mutils/mhash_config.h:192:0: note: this is the location of the previous definition
#define PACKAGE_NAME "MHASH"
^
In file included from vmod_digest.c:50:0:
../config.h:60:0: error: "PACKAGE_STRING" redefined [-Werror]
#define PACKAGE_STRING "libvmod-digest trunk"
^
In file included from /usr/include/mutils/mhash.h:30:0,
from /usr/include/mhash.h:10,
from vmod_digest.c:42:
/usr/local/include/mutils/mhash_config.h:195:0: note: this is the location of the previous definition
#define PACKAGE_STRING "MHASH 0.9.9"
^
In file included from vmod_digest.c:50:0:
../config.h:63:0: error: "PACKAGE_TARNAME" redefined [-Werror]
#define PACKAGE_TARNAME "libvmod-digest"
^
In file included from /usr/include/mutils/mhash.h:30:0,
from /usr/include/mhash.h:10,
from vmod_digest.c:42:
/usr/local/include/mutils/mhash_config.h:198:0: note: this is the location of the previous definition
#define PACKAGE_TARNAME "mhash"
^
In file included from vmod_digest.c:50:0:
../config.h:69:0: error: "PACKAGE_VERSION" redefined [-Werror]
#define PACKAGE_VERSION "trunk"
^
In file included from /usr/include/mutils/mhash.h:30:0,
from /usr/include/mhash.h:10,
from vmod_digest.c:42:
/usr/local/include/mutils/mhash_config.h:201:0: note: this is the location of the previous definition
#define PACKAGE_VERSION "0.9.9"
^
In file included from vmod_digest.c:50:0:
../config.h:97:0: error: "VERSION" redefined [-Werror]
#define VERSION "trunk"
^
In file included from /usr/include/mutils/mhash.h:30:0,
from /usr/include/mhash.h:10,
from vmod_digest.c:42:
/usr/local/include/mutils/mhash_config.h:213:0: note: this is the location of the previous definition
#define VERSION "0.9.9"
^
I had no problem building with Varnish 4.0.2/CentOS 7.0 a few months ago...
Tried to un/re-install mhash + mhash-devel with no effect.
Hi there,
I tried to compile against varnish 4.0.3 (which is more stable in my view than 4.1), but I got an issue:
cdn@da-pm01:~/libvmod-digest$ make
make all-recursive
make[1]: Entering directory `/home/cdn/libvmod-digest'
Making all in src
make[2]: Entering directory `/home/cdn/libvmod-digest/src'
/bin/bash ../libtool --tag=CC --mode=compile gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I/usr/include/varnish -Wall -Wextra -g -O2 -MT vmod_digest.lo -MD -MP -MF .deps/vmod_digest.Tpo -c -o vmod_digest.lo vmod_digest.c
libtool: compile: gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -I/usr/include/varnish -Wall -Wextra -g -O2 -MT vmod_digest.lo -MD -MP -MF .deps/vmod_digest.Tpo -c vmod_digest.c -fPIC -DPIC -o .libs/vmod_digest.o
vmod_digest.c:91:53: warning: 'enum vcl_event_e' declared inside parameter list [enabled by default]
init_function(VRT_CTX, struct vmod_priv *priv, enum vcl_event_e e)
^
vmod_digest.c:91:53: warning: its scope is only this definition or declaration, which is probably not what you want [enabled by default]
vmod_digest.c:91:65: error: parameter 3 ('e') has incomplete type
init_function(VRT_CTX, struct vmod_priv *priv, enum vcl_event_e e)
^
Could you please check it?
KR
Tamás
Hi,
I'm currently having issues starting varnish with the digest module. import digest;
causes the following error during VCL compilation:
Error:
Message from VCC-compiler:
Could not load VMOD digest
File name: /usr/lib/varnish/vmods/libvmod_digest.so
dlerror: /usr/lib/varnish/vmods/libvmod_digest.so: undefined symbol: vmod_init_function
('/etc/varnish/default.vcl' Line 16 Pos 8)
import digest;
-------######-
Running VCC-compiler failed, exited with 2
VCL compilation failed
I'm using a self-compiled varnish at version 6.2.0 and the master branch of libvmod-digest on Debian. I noticed this issue about a month ago with Varnish 6.1.1, though.
It seems that in the latest commit c42b9fa62a4fba2d861d87b9699d9f591198249c
some change was made that is incompatible with Varnish v. 5.2.1.
When I run the make install command on this latest version, I get the following error:
In file included from vmod_digest.c:53:0:\nvcc_if.h:12:1: error: unknown type name 'vmod_event_f'\n vmod_event_f event_function;\n ^\nvcc_if.h:14:1: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_hmac_sha256(VRT_CTX, VCL_STRING, VCL_STRING);\n ^\nvcc_if.h:14:38: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_hmac_sha256(VRT_CTX, VCL_STRING, VCL_STRING);\n ^\nvcc_if.h:14:50: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_hmac_sha256(VRT_CTX, VCL_STRING, VCL_STRING);\n ^\nvcc_if.h:15:1: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_hmac_sha1(VRT_CTX, VCL_STRING, VCL_STRING);\n ^\nvcc_if.h:15:36: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_hmac_sha1(VRT_CTX, VCL_STRING, VCL_STRING);\n ^\nvcc_if.h:15:48: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_hmac_sha1(VRT_CTX, VCL_STRING, VCL_STRING);\n ^\nvcc_if.h:16:1: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_hmac_md5(VRT_CTX, VCL_STRING, VCL_STRING);\n ^\nvcc_if.h:16:35: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_hmac_md5(VRT_CTX, VCL_STRING, VCL_STRING);\n ^\nvcc_if.h:16:47: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_hmac_md5(VRT_CTX, VCL_STRING, VCL_STRING);\n ^\nvcc_if.h:17:1: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_base64(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:17:33: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_base64(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:18:1: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_base64_hex(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:18:37: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_base64_hex(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:19:1: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_base64_decode(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:19:40: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_base64_decode(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:20:1: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_base64url(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:20:36: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_base64url(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:21:1: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_base64url_hex(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:21:40: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_base64url_hex(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:22:1: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_base64url_decode(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:22:43: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_base64url_decode(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:23:1: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_base64url_nopad(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:23:42: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_base64url_nopad(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:24:1: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_base64url_nopad_hex(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:24:46: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_base64url_nopad_hex(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:25:1: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_base64url_nopad_decode(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:25:49: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_base64url_nopad_decode(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:26:1: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_hash_sha1(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:26:36: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_hash_sha1(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:27:1: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_hash_sha224(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:27:38: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_hash_sha224(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:28:1: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_hash_sha256(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:28:38: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_hash_sha256(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:29:1: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_hash_sha384(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:29:38: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_hash_sha384(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:30:1: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_hash_sha512(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:30:38: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_hash_sha512(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:31:1: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_hash_gost(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:31:36: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_hash_gost(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:32:1: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_hash_md2(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:32:35: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_hash_md2(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:33:1: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_hash_md4(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:33:35: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_hash_md4(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:34:1: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_hash_md5(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:34:35: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_hash_md5(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:35:1: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_hash_crc32(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:35:37: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_hash_crc32(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:36:1: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_hash_crc32b(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:36:38: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_hash_crc32b(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:37:1: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_hash_adler32(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:37:39: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_hash_adler32(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:38:1: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_hash_haval128(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:38:40: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_hash_haval128(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:39:1: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_hash_haval160(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:39:40: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_hash_haval160(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:40:1: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_hash_haval192(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:40:40: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_hash_haval192(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:41:1: error: unknown type name 'VCL_STRING'\n VCL_STRING vmod_hash_haval224(VRT_CTX, VCL_STRING);\n ^\nvcc_if.h:41:40: error: unknown type name 'VCL_STRING'\n
But, when I run it on the previous sha 4ca2b4713c57d5fe2c5525862e3dbeb02ae8d748
it works successfully.
I'd like to use this vmod but am not familiar with compiling c code.
"./configure" fails with this error
checking for mhash_count in -lmhash... no
configure: error: libvmod-digest requires libmhash.
i have the libmhash rpm and the .so files in my system, do I just need to "link" to the libmhash or copy them to certain dir and re-run configure?.
mhash-0.9.9.9-3.el6.x86_64
-rwxr-xr-x 1 root root 180808 Jul 8 2010 /usr/lib64/libmhash.so.2.0.1
with
/usr/local/varnish/sbin/varnishd -V
varnishd (varnish-trunk revision 9e5dfacd0)
Copyright (c) 2006 Verdens Gang AS
Copyright (c) 2006-2015 Varnish Software AS
building varnish5-libvmod-digest
git log | head
commit 09978549a8abb07d84e0492621580f3209378dc3
Author: Piotr Czapla <[email protected]>
Date: Sat Feb 18 13:51:57 2017 +0100
fails
./autogen.sh
./configure ...
make V=1
make all-recursive
make[1]: Entering directory '/usr/local/src/varnish5-libvmod-digest'
Making all in src
make[2]: Entering directory '/usr/local/src/varnish5-libvmod-digest/src'
/bin/sh ../libtool --tag=CC --mode=compile /usr/bin/gcc-7 -DHAVE_CONFIG_H -I. -I.. -I/usr/local/varnish/include/varnish -Wall -Wextra -Werror -I/usr/local/include -O3 -Wall -fstack-protector -funwind-tables -fasynchronous-unwind-tables -fmessage-length=0 -grecord-gcc-switches -march=native -mtune=native -MT vmod_digest.lo -MD -MP -MF .deps/vmod_digest.Tpo -c -o vmod_digest.lo vmod_digest.c
libtool: compile: /usr/bin/gcc-7 -DHAVE_CONFIG_H -I. -I.. -I/usr/local/varnish/include/varnish -Wall -Wextra -Werror -I/usr/local/include -O3 -Wall -fstack-protector -funwind-tables -fasynchronous-unwind-tables -fmessage-length=0 -grecord-gcc-switches -march=native -mtune=native -MT vmod_digest.lo -MD -MP -MF .deps/vmod_digest.Tpo -c vmod_digest.c -fPIC -DPIC -o .libs/vmod_digest.o
In file included from vmod_digest.c:54:0:
/usr/local/varnish/include/varnish/vcl.h:14:4: error: #error "include vrt.h before vcl.h"
# error "include vrt.h before vcl.h"
^~~~~
/usr/local/varnish/include/varnish/vcl.h:69:2: error: unknown type name ‘vcl_event_f’
vcl_event_f *event_vcl;
^~~~~~~~~~~
/usr/local/varnish/include/varnish/vcl.h:70:2: error: unknown type name ‘vcl_func_f’
vcl_func_f *recv_func;
^~~~~~~~~~
/usr/local/varnish/include/varnish/vcl.h:71:2: error: unknown type name ‘vcl_func_f’
vcl_func_f *pipe_func;
^~~~~~~~~~
/usr/local/varnish/include/varnish/vcl.h:72:2: error: unknown type name ‘vcl_func_f’
vcl_func_f *pass_func;
^~~~~~~~~~
/usr/local/varnish/include/varnish/vcl.h:73:2: error: unknown type name ‘vcl_func_f’
vcl_func_f *hash_func;
^~~~~~~~~~
/usr/local/varnish/include/varnish/vcl.h:74:2: error: unknown type name ‘vcl_func_f’
vcl_func_f *purge_func;
^~~~~~~~~~
/usr/local/varnish/include/varnish/vcl.h:75:2: error: unknown type name ‘vcl_func_f’
vcl_func_f *miss_func;
^~~~~~~~~~
/usr/local/varnish/include/varnish/vcl.h:76:2: error: unknown type name ‘vcl_func_f’
vcl_func_f *hit_func;
^~~~~~~~~~
/usr/local/varnish/include/varnish/vcl.h:77:2: error: unknown type name ‘vcl_func_f’
vcl_func_f *deliver_func;
^~~~~~~~~~
...
Hi,
First, we've been using this module in our production setup and it works really well. Thank you for such a nice module.
We're currently using varnish 6.1.1 and I thought maybe it's time to upgrade, but then I found that the latest release (1.0.2) wouldn't work with varnish 6.2 and above. It looks like the issue is already fixed in master branch - so is there any plan to create a new release? 😄
Thanks!
I need to verify RS256 JWT tokens in varnish but I only see the possibility to verify a HS256 token which is now considered insecure especially when talking outside of a closed network.
The Fastly version appears to have a digest.rsa_verify
but I don't think their version is open source: https://docs.fastly.com/guides/vcl/cryptographic-and-hashing-related-vcl-functions
When hashing, the hash is prefixed with "0x".
digest.hmac_sha256("slssecret",req.http.host + req.url );
Which is not the same as when you run the equivalent in other language / programs.
Reference
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.