Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[haproxy] Fix build failures. #3884

Merged
merged 6 commits into from
Jun 1, 2020
Merged

[haproxy] Fix build failures. #3884

merged 6 commits into from
Jun 1, 2020

Conversation

DavidKorczynski
Copy link
Collaborator

@DavidKorczynski DavidKorczynski commented May 27, 2020

Fixes broken haproxy build. These commits are particularly relevant for the update:

It is only the fuzz_hpack_decode fuzzer that failed.

@TravisBuddy
Copy link

Travis tests have failed

Hey @DavidKorczynski,
Please read the following log in order to understand the failure reason.
It'll be awesome if you fix what's wrong and commit the changes.

1st Build

View build log

./infra/travis/travis_build.py
Building project haproxy
Running command: python /home/travis/build/google/oss-fuzz/infra/helper.py build_fuzzers haproxy --engine libfuzzer --sanitizer memory --architecture x86_64
Running: docker build -t gcr.io/oss-fuzz/haproxy projects/haproxy

Step 1/7 : FROM gcr.io/oss-fuzz-base/base-builder
latest: Pulling from oss-fuzz-base/base-builder
























Digest: sha256:12b7b470479f04fd1b6a124291486f555169a5496a355ee75cf333c117d4bb92
Status: Downloaded newer image for gcr.io/oss-fuzz-base/base-builder:latest
 ---> 978820b89281
Step 2/7 : MAINTAINER [email protected]
 ---> Running in 08fc7fa473c1
Removing intermediate container 08fc7fa473c1
 ---> e3abbd50bcf6
Step 3/7 : RUN apt-get update && apt-get install -y make
 ---> Running in 74d81ee3721c
Get:1 http://security.ubuntu.com/ubuntu xenial-security InRelease [109 kB]
Hit:2 http://archive.ubuntu.com/ubuntu xenial InRelease
Hit:3 http://ppa.launchpad.net/git-core/ppa/ubuntu xenial InRelease
Get:4 http://security.ubuntu.com/ubuntu xenial-security/main amd64 Packages [1116 kB]
Get:5 http://archive.ubuntu.com/ubuntu xenial-updates InRelease [109 kB]
Get:6 http://archive.ubuntu.com/ubuntu xenial-backports InRelease [107 kB]
Fetched 1441 kB in 0s (1902 kB/s)
Reading package lists...
Reading package lists...
Building dependency tree...
Reading state information...
make is already the newest version (4.1-6).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Removing intermediate container 74d81ee3721c
 ---> f0d5b9eb873d
Step 4/7 : RUN git clone https://github.com/haproxy/haproxy
 ---> Running in 0e880e425d40
Cloning into 'haproxy'...
Removing intermediate container 0e880e425d40
 ---> 6f432c0ffac0
Step 5/7 : WORKDIR $SRC
 ---> Running in 2cc842e2883e
Removing intermediate container 2cc842e2883e
 ---> e686abc45de0
Step 6/7 : COPY build.sh $SRC
 ---> 8e16e7c14344
Step 7/7 : COPY fuzz* $SRC/
 ---> f804f4f8d5b8
Successfully built f804f4f8d5b8
Successfully tagged gcr.io/oss-fuzz/haproxy:latest
Keeping existing build artifacts as-is (if any).
Running: docker run --rm --privileged -i -v /home/travis/build/google/oss-fuzz/build/work/haproxy:/work gcr.io/oss-fuzz-base/msan-builder bash -c 'cp -r /msan /work'
Unable to find image 'gcr.io/oss-fuzz-base/msan-builder:latest' locally
latest: Pulling from oss-fuzz-base/msan-builder
















Digest: sha256:5f9af039d569ffa31e5c1219dba6586f2e27d32c32ec6dea8c37cfb1d10cad01
Status: Downloaded newer image for gcr.io/oss-fuzz-base/msan-builder:latest
Running: docker run --rm --privileged -i --cap-add SYS_PTRACE -e FUZZING_ENGINE=libfuzzer -e SANITIZER=memory -e ARCHITECTURE=x86_64 -e FUZZING_LANGUAGE=c++ -e MSAN_LIBS_PATH=/work/msan -v /home/travis/build/google/oss-fuzz/build/out/haproxy:/out -v /home/travis/build/google/oss-fuzz/build/work/haproxy:/work -t gcr.io/oss-fuzz/haproxy
---------------------------------------------------------------
Compiling libFuzzer to /usr/lib/libFuzzingEngine.a... ar: creating /usr/lib/libFuzzingEngine.a
 done.
---------------------------------------------------------------
CC=clang
CXX=clang++
CFLAGS=-O1 -fno-omit-frame-pointer -gline-tables-only -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION -fsanitize=memory -fsanitize-memory-track-origins -fsanitize=fuzzer-no-link
CXXFLAGS=-O1 -fno-omit-frame-pointer -gline-tables-only -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION -fsanitize=memory -fsanitize-memory-track-origins -fsanitize=fuzzer-no-link -stdlib=libc++
---------------------------------------------------------------
+ export 'ORIG_CFLAGS=-O1 -fno-omit-frame-pointer -gline-tables-only -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION -fsanitize=memory -fsanitize-memory-track-origins -fsanitize=fuzzer-no-link'
+ ORIG_CFLAGS='-O1 -fno-omit-frame-pointer -gline-tables-only -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION -fsanitize=memory -fsanitize-memory-track-origins -fsanitize=fuzzer-no-link'
+ cd haproxy
+ sed 's/LD = $(CC)/LD = ${CXX}/g' -i Makefile
+ sed 's/CC = gcc/#CC = gcc/g' -i Makefile
+ sed 's/CFLAGS = $(ARCH_FLAGS) $(CPU_CFLAGS) $(DEBUG_CFLAGS) $(SPEC_CFLAGS)/CFLAGS = $(ARCH_FLAGS) $(CPU_CFLAGS) $(DEBUG_CFLAGS) $(SPEC_CFLAGS) ${ORIG_CFLAGS}/g' -i Makefile
+ sed 's/LDFLAGS = $(ARCH_FLAGS) -g/LDFLAGS = $(ARCH_FLAGS) -g ${CXXFLAGS}/g' -i Makefile
+ make TARGET=generic
  CC      src/ev_poll.o
  CC      src/mux_h2.o
  CC      src/stream.o
  CC      src/mux_fcgi.o
  CC      src/cfgparse-listen.o
  CC      src/http_ana.o
  CC      src/stats.o
  CC      src/mux_h1.o
  CC      src/flt_spoe.o
  CC      src/server.o
  CC      src/cfgparse.o
  CC      src/checks.o
  CC      src/backend.o
  CC      src/log.o
  CC      src/peers.o
  CC      src/cli.o
  CC      src/haproxy.o
  CC      src/stick_table.o
  CC      src/standard.o
  CC      src/sample.o
  CC      src/proxy.o
  CC      src/stream_interface.o
  CC      src/pattern.o
  CC      src/dns.o
  CC      src/proto_tcp.o
  CC      src/listener.o
  CC      src/cfgparse-global.o
  CC      src/h1.o
  CC      src/http_rules.o
  CC      src/http_fetch.o
  CC      src/cache.o
  CC      src/session.o
  CC      src/fcgi-app.o
  CC      src/connection.o
  CC      src/tcp_rules.o
  CC      src/filters.o
  CC      src/task.o
  CC      src/mworker.o
  CC      src/map.o
  CC      src/h1_htx.o
  CC      src/trace.o
  CC      src/flt_trace.o
  CC      src/acl.o
  CC      src/http_htx.o
  CC      src/flt_http_comp.o
  CC      src/payload.o
  CC      src/vars.o
  CC      src/debug.o
  CC      src/mux_pt.o
  CC      src/http_act.o
  CC      src/h2.o
  CC      src/queue.o
  CC      src/fd.o
  CC      src/proto_uxst.o
  CC      src/lb_chash.o
  CC      src/ring.o
  CC      src/frontend.o
  CC      src/raw_sock.o
  CC      src/xprt_handshake.o
  CC      src/htx.o
  CC      src/memory.o
  CC      src/applet.o
  CC      src/channel.o
  CC      src/signal.o
  CC      src/lb_fwrr.o
  CC      src/ev_select.o
  CC      src/sink.o
  CC      src/http_conv.o
  CC      src/proto_sockpair.o
  CC      src/mworker-prog.o
  CC      src/activity.o
  CC      src/lb_fwlc.o
  CC      src/http.o
  CC      src/lb_fas.o
  CC      src/uri_auth.o
  CC      src/hathreads.o
  CC      src/regex.o
  CC      src/auth.o
  CC      src/buffer.o
  CC      src/compression.o
  CC      src/proto_udp.o
  CC      src/lb_map.o
  CC      src/chunk.o
  CC      src/wdt.o
  CC      src/hpack-dec.o
  CC      src/action.o
  CC      src/xxhash.o
  CC      src/pipe.o
  CC      src/shctx.o
  CC      src/hpack-tbl.o
  CC      src/http_acl.o
  CC      src/sha1.o
  CC      src/time.o
  CC      src/hpack-enc.o
  CC      src/fcgi.o
  CC      src/arg.o
  CC      src/base64.o
  CC      src/protocol.o
  CC      src/freq_ctr.o
  CC      src/lru.o
  CC      src/hpack-huff.o
  CC      src/dict.o
  CC      src/hash.o
  CC      src/mailers.o
  CC      src/version.o
  CC      ebtree/ebtree.o
  CC      ebtree/eb32sctree.o
  CC      ebtree/eb32tree.o
  CC      ebtree/eb64tree.o
  CC      ebtree/ebmbtree.o
  CC      ebtree/ebsttree.o
  CC      ebtree/ebimtree.o
  CC      ebtree/ebistree.o
  LD      haproxy
+ cd /src/haproxy
+ sed 's/int main(int argc/int main2(int argc/g' -i ./src/haproxy.c
+ sed 's/dladdr(main,/dladdr(main2,/g' -i ./src/standard.c
+ sed 's/(void*)main/(void*)main2/g' -i ./src/standard.c
+ clang -O1 -fno-omit-frame-pointer -gline-tables-only -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION -fsanitize=memory -fsanitize-memory-track-origins -fsanitize=fuzzer-no-link -Iinclude -Iebtree -g -DUSE_POLL -DUSE_TPROXY '-DCONFIG_HAPROXY_VERSION=""' '-DCONFIG_HAPROXY_DATE=""' -c -o ./src/haproxy.o ./src/haproxy.c
In file included from ./src/haproxy.c:84:
In file included from include/common/cfgparse.h:30:
In file included from include/proto/log.h:34:
In file included from include/types/proxy.h:38:
In file included from ebtree/eb32tree.h:24:
ebtree/ebtree.h:471:35: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
        eb_troot_t *new_left = eb_dotag(&new->branches, EB_LEFT);
                                         ^~~~~~~~~~~~~
ebtree/ebtree.h:472:35: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
        eb_troot_t *new_rght = eb_dotag(&new->branches, EB_RGHT);
                                         ^~~~~~~~~~~~~
ebtree/ebtree.h:473:35: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
        eb_troot_t *new_leaf = eb_dotag(&new->branches, EB_LEAF);
                                         ^~~~~~~~~~~~~
ebtree/ebtree.h:490:41: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
                head->branches.b[EB_RGHT] = eb_dotag(&new->branches, EB_NODE);
                                                      ^~~~~~~~~~~~~
ebtree/ebtree.h:495:40: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
                new->branches.b[EB_LEFT] = eb_dotag(&sub->branches, EB_LEAF);
                                                     ^~~~~~~~~~~~~
ebtree/ebtree.h:508:38: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
                head->branches.b[side] = eb_dotag(&new->branches, EB_NODE);
                                                   ^~~~~~~~~~~~~
ebtree/ebtree.h:513:40: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
                new->branches.b[EB_LEFT] = eb_dotag(&sub->branches, EB_NODE);
                                                     ^~~~~~~~~~~~~
ebtree/ebtree.h:761:33: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
        gparent->b[gpside] = eb_dotag(&parent->branches, EB_NODE);
                                       ^~~~~~~~~~~~~~~~
ebtree/ebtree.h:767:15: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
                                eb_dotag(&parent->branches, pside);
                                          ^~~~~~~~~~~~~~~~
ebtree/ebtree.h:770:15: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
                                eb_dotag(&parent->branches, pside);
                                          ^~~~~~~~~~~~~~~~
10 warnings generated.
+ ar cr libetree.a ./ebtree/eb32sctree.o ./ebtree/eb32tree.o ./ebtree/eb64tree.o ./ebtree/ebimtree.o ./ebtree/ebistree.o ./ebtree/ebmbtree.o ./ebtree/ebsttree.o ./ebtree/ebtree.o
+ ar cr libhaproxy.a ./src/acl.o ./src/action.o ./src/activity.o ./src/applet.o ./src/arg.o ./src/auth.o ./src/backend.o ./src/base64.o ./src/buffer.o ./src/cache.o ./src/cfgparse-global.o ./src/cfgparse-listen.o ./src/cfgparse.o ./src/channel.o ./src/checks.o ./src/chunk.o ./src/cli.o ./src/compression.o ./src/connection.o ./src/debug.o ./src/dict.o ./src/dns.o ./src/ev_poll.o ./src/ev_select.o ./src/fcgi-app.o ./src/fcgi.o ./src/fd.o ./src/filters.o ./src/flt_http_comp.o ./src/flt_spoe.o ./src/flt_trace.o ./src/freq_ctr.o ./src/frontend.o ./src/h1.o ./src/h1_htx.o ./src/h2.o ./src/haproxy.o ./src/hash.o ./src/hathreads.o ./src/hpack-dec.o ./src/hpack-enc.o ./src/hpack-huff.o ./src/hpack-tbl.o ./src/http.o ./src/http_acl.o ./src/http_act.o ./src/http_ana.o ./src/http_conv.o ./src/http_fetch.o ./src/http_htx.o ./src/http_rules.o ./src/htx.o ./src/lb_chash.o ./src/lb_fas.o ./src/lb_fwlc.o ./src/lb_fwrr.o ./src/lb_map.o ./src/listener.o ./src/log.o ./src/lru.o ./src/mailers.o ./src/map.o ./src/memory.o ./src/mux_fcgi.o ./src/mux_h1.o ./src/mux_h2.o ./src/mux_pt.o ./src/mworker-prog.o ./src/mworker.o ./src/pattern.o ./src/payload.o ./src/peers.o ./src/pipe.o ./src/proto_sockpair.o ./src/proto_tcp.o ./src/proto_udp.o ./src/proto_uxst.o ./src/protocol.o ./src/proxy.o ./src/queue.o ./src/raw_sock.o ./src/regex.o ./src/ring.o ./src/sample.o ./src/server.o ./src/session.o ./src/sha1.o ./src/shctx.o ./src/signal.o ./src/sink.o ./src/standard.o ./src/stats.o ./src/stick_table.o ./src/stream.o ./src/stream_interface.o ./src/task.o ./src/tcp_rules.o ./src/time.o ./src/trace.o ./src/uri_auth.o ./src/vars.o ./src/version.o ./src/wdt.o ./src/xprt_handshake.o ./src/xxhash.o
+ cp /src/fuzz_hpack_decode.c .
+ clang -O1 -fno-omit-frame-pointer -gline-tables-only -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION -fsanitize=memory -fsanitize-memory-track-origins -fsanitize=fuzzer-no-link -Iinclude -Iebtree -g -DUSE_POLL -DUSE_TPROXY '-DCONFIG_HAPROXY_VERSION=""' '-DCONFIG_HAPROXY_DATE=""' -c fuzz_hpack_decode.c -o fuzz_hpack_decode.o
In file included from fuzz_hpack_decode.c:49:
In file included from include/../src/hpack-tbl.c:37:
In file included from include/types/global.h:32:
In file included from include/types/listener.h:37:
In file included from ebtree/eb32tree.h:24:
ebtree/ebtree.h:471:35: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
        eb_troot_t *new_left = eb_dotag(&new->branches, EB_LEFT);
                                         ^~~~~~~~~~~~~
ebtree/ebtree.h:472:35: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
        eb_troot_t *new_rght = eb_dotag(&new->branches, EB_RGHT);
                                         ^~~~~~~~~~~~~
ebtree/ebtree.h:473:35: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
        eb_troot_t *new_leaf = eb_dotag(&new->branches, EB_LEAF);
                                         ^~~~~~~~~~~~~
ebtree/ebtree.h:490:41: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
                head->branches.b[EB_RGHT] = eb_dotag(&new->branches, EB_NODE);
                                                      ^~~~~~~~~~~~~
ebtree/ebtree.h:495:40: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
                new->branches.b[EB_LEFT] = eb_dotag(&sub->branches, EB_LEAF);
                                                     ^~~~~~~~~~~~~
ebtree/ebtree.h:508:38: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
                head->branches.b[side] = eb_dotag(&new->branches, EB_NODE);
                                                   ^~~~~~~~~~~~~
ebtree/ebtree.h:513:40: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
                new->branches.b[EB_LEFT] = eb_dotag(&sub->branches, EB_NODE);
                                                     ^~~~~~~~~~~~~
ebtree/ebtree.h:761:33: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
        gparent->b[gpside] = eb_dotag(&parent->branches, EB_NODE);
                                       ^~~~~~~~~~~~~~~~
ebtree/ebtree.h:767:15: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
                                eb_dotag(&parent->branches, pside);
                                          ^~~~~~~~~~~~~~~~
ebtree/ebtree.h:770:15: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
                                eb_dotag(&parent->branches, pside);
                                          ^~~~~~~~~~~~~~~~
fuzz_hpack_decode.c:64:39: warning: too many arguments in call to 'hpack_dht_alloc'
        dht = hpack_dht_alloc(dht_size);
              ~~~~~~~~~~~~~~~         ^
fuzz_hpack_decode.c:65:33: warning: passing 'char *' to parameter of type 'const uint8_t *' (aka 'const unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
        hpack_decode_frame(dht, new_str, size, list,sizeof(list)/sizeof(list[0]), &tmp);
                                ^~~~~~~
include/../src/hpack-dec.c:147:62: note: passing argument to parameter 'raw' here
int hpack_decode_frame(struct hpack_dht *dht, const uint8_t *raw, uint32_t len,
                                                             ^
12 warnings generated.
+ clang++ -g -O1 -fno-omit-frame-pointer -gline-tables-only -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION -fsanitize=memory -fsanitize-memory-track-origins -fsanitize=fuzzer-no-link -stdlib=libc++ -fsanitize=fuzzer fuzz_hpack_decode.o libhaproxy.a libetree.a -o /out/fuzz_hpack_decode
+ cp /src/fuzz_cfg_parser.c .
+ clang -O1 -fno-omit-frame-pointer -gline-tables-only -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION -fsanitize=memory -fsanitize-memory-track-origins -fsanitize=fuzzer-no-link -Iinclude -Iebtree -g -DUSE_POLL -DUSE_TPROXY '-DCONFIG_HAPROXY_VERSION=""' '-DCONFIG_HAPROXY_DATE=""' -c -o fuzz_cfg_parser.o fuzz_cfg_parser.c
fuzz_cfg_parser.c:26:41: warning: implicit declaration of function 'getpid' is invalid in C99 [-Wimplicit-function-declaration]
        sprintf(filename, "/tmp/libfuzzer.%d", getpid());
                                               ^
fuzz_cfg_parser.c:35:2: warning: implicit declaration of function 'readcfgfile' is invalid in C99 [-Wimplicit-function-declaration]
        readcfgfile(filename);
        ^
fuzz_cfg_parser.c:37:2: warning: implicit declaration of function 'unlink' is invalid in C99 [-Wimplicit-function-declaration]
        unlink(filename);
        ^
3 warnings generated.
+ clang++ -g -O1 -fno-omit-frame-pointer -gline-tables-only -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION -fsanitize=memory -fsanitize-memory-track-origins -fsanitize=fuzzer-no-link -stdlib=libc++ -fsanitize=fuzzer fuzz_cfg_parser.o libhaproxy.a libetree.a -o /out/fuzz_cfg_parser
Running: docker run --rm --privileged -i -v /home/travis/build/google/oss-fuzz/build/out/haproxy:/out -v /home/travis/build/google/oss-fuzz/build/work/haproxy:/work -e FUZZING_ENGINE=libfuzzer -e SANITIZER=memory -e ARCHITECTURE=x86_64 -e FUZZING_LANGUAGE=c++ -e MSAN_LIBS_PATH=/work/msan gcr.io/oss-fuzz-base/base-msan-builder patch_build.py /out
Unable to find image 'gcr.io/oss-fuzz-base/base-msan-builder:latest' locally
latest: Pulling from oss-fuzz-base/base-msan-builder















Digest: sha256:919f5c6f7517f3b427c84d07ab1559ed23e17ad7617f0fd1290624304f56edfc
Status: Downloaded newer image for gcr.io/oss-fuzz-base/base-msan-builder:latest
WARNING: Instrumented library not found for /lib/x86_64-linux-gnu/libm.so.6
WARNING: Instrumented library not found for /lib/x86_64-linux-gnu/libpthread.so.0
WARNING: Instrumented library not found for /lib/x86_64-linux-gnu/librt.so.1
WARNING: Instrumented library not found for /lib/x86_64-linux-gnu/libdl.so.2
WARNING: Instrumented library not found for /lib/x86_64-linux-gnu/libgcc_s.so.1
WARNING: Instrumented library not found for /lib/x86_64-linux-gnu/libc.so.6
WARNING: Instrumented library not found for /lib/x86_64-linux-gnu/libm.so.6
WARNING: Instrumented library not found for /lib/x86_64-linux-gnu/libpthread.so.0
WARNING: Instrumented library not found for /lib/x86_64-linux-gnu/librt.so.1
WARNING: Instrumented library not found for /lib/x86_64-linux-gnu/libdl.so.2
WARNING: Instrumented library not found for /lib/x86_64-linux-gnu/libgcc_s.so.1
WARNING: Instrumented library not found for /lib/x86_64-linux-gnu/libc.so.6
Running command: python /home/travis/build/google/oss-fuzz/infra/helper.py check_build haproxy --engine libfuzzer --sanitizer memory --architecture x86_64
Running: docker run --rm --privileged -i -e FUZZING_ENGINE=libfuzzer -e SANITIZER=memory -e ARCHITECTURE=x86_64 -v /home/travis/build/google/oss-fuzz/build/out/haproxy:/out -t gcr.io/oss-fuzz-base/base-runner test_all
Unable to find image 'gcr.io/oss-fuzz-base/base-runner:latest' locally
latest: Pulling from oss-fuzz-base/base-runner













Digest: sha256:5f03db2c7aa217ccbfa12e1d01c4eecfc8ddd58b97362d8e46910aee7f9cc675
Status: Downloaded newer image for gcr.io/oss-fuzz-base/base-runner:latest
INFO: performing bad build checks for /tmp/not-out/fuzz_cfg_parser.
INFO: performing bad build checks for /tmp/not-out/fuzz_hpack_decode.
Broken fuzz targets (1):
fuzz_hpack_decode:
BAD BUILD: /tmp/not-out/fuzz_hpack_decode seems to have either startup crash or exit:
INFO: Seed: 1337
INFO: Loaded 1 modules   (38616 inline 8-bit counters): 38616 [0xe81d70, 0xe8b448), 
INFO: Loaded 1 PC tables (38616 PCs): 38616 [0xb52250,0xbe8fd0), 
INFO: -max_len is not provided; libFuzzer will not generate inputs larger than 4096 bytes
INFO: A corpus is not provided, starting from an empty corpus
#2	INITED cov: 12 ft: 13 corp: 1/1b exec/s: 0 rss: 73Mb
MemorySanitizer:DEADLYSIGNAL
==103==ERROR: MemorySanitizer: SEGV on unknown address 0x00000000000e (pc 0x00000052764f bp 0x7ffcb20f48f0 sp 0x7ffcb20f48c0 T103)
==103==The signal is caused by a READ memory access.
==103==Hint: address points to the zero page.
    #0 0x52764f in hpack_valid_idx /src/haproxy/include/common/hpack-tbl.h:174:20
    #1 0x524c22 in hpack_decode_frame /src/haproxy/include/../src/hpack-dec.c:187:9
    #2 0x52834d in LLVMFuzzerTestOneInput /src/haproxy/fuzz_hpack_decode.c:65:9
    #3 0x459201 in fuzzer::Fuzzer::ExecuteCallback(unsigned char const*, unsigned long) /src/llvm-project/compiler-rt/lib/fuzzer/FuzzerLoop.cpp:558:15
    #4 0x458945 in fuzzer::Fuzzer::RunOne(unsigned char const*, unsigned long, bool, fuzzer::InputInfo*, bool*) /src/llvm-project/compiler-rt/lib/fuzzer/FuzzerLoop.cpp:470:3
    #5 0x45a361 in fuzzer::Fuzzer::MutateAndTestOne() /src/llvm-project/compiler-rt/lib/fuzzer/FuzzerLoop.cpp:701:19
    #6 0x45ade5 in fuzzer::Fuzzer::Loop(std::__Fuzzer::vector<fuzzer::SizedFile, fuzzer::fuzzer_allocator<fuzzer::SizedFile> >&) /src/llvm-project/compiler-rt/lib/fuzzer/FuzzerLoop.cpp:837:5
    #7 0x44a505 in fuzzer::FuzzerDriver(int*, char***, int (*)(unsigned char const*, unsigned long)) /src/llvm-project/compiler-rt/lib/fuzzer/FuzzerDriver.cpp:846:6
    #8 0x472552 in main /src/llvm-project/compiler-rt/lib/fuzzer/FuzzerMain.cpp:19:10
    #9 0x7fa6cc07c82f in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x2082f)
    #10 0x41ec28 in _start (/tmp/not-out/fuzz_hpack_decode+0x41ec28)

DEDUP_TOKEN: hpack_valid_idx--hpack_decode_frame--LLVMFuzzerTestOneInput
MemorySanitizer can not provide additional info.
SUMMARY: MemorySanitizer: SEGV /src/haproxy/include/common/hpack-tbl.h:174:20 in hpack_valid_idx
==103==ABORTING
MS: 2 ChangeBinInt-InsertByte-; base unit: adc83b19e793491b1c6ea0fd8b46cd9f32e592fc
0xb5,0xd,
\xb5\x0d
artifact_prefix='./'; Test unit written to ./crash-90e4a9a74651c7a5a79897dadea5deaef236ed71
Base64: tQ0=
ERROR: 50% of fuzz targets seem to be broken. See the list above for a detailed information.
Check build failed.
Failed projects: haproxy

2nd Build

View build log

./infra/travis/travis_build.py
Building project haproxy
Running command: python /home/travis/build/google/oss-fuzz/infra/helper.py build_fuzzers haproxy --engine afl --sanitizer address --architecture x86_64
Running: docker build -t gcr.io/oss-fuzz/haproxy projects/haproxy

Step 1/7 : FROM gcr.io/oss-fuzz-base/base-builder
latest: Pulling from oss-fuzz-base/base-builder
























Digest: sha256:12b7b470479f04fd1b6a124291486f555169a5496a355ee75cf333c117d4bb92
Status: Downloaded newer image for gcr.io/oss-fuzz-base/base-builder:latest
 ---> 978820b89281
Step 2/7 : MAINTAINER [email protected]
 ---> Running in 5f04857ade2c
Removing intermediate container 5f04857ade2c
 ---> 86b38d5013ad
Step 3/7 : RUN apt-get update && apt-get install -y make
 ---> Running in 00c8c3681a67
Get:1 http://security.ubuntu.com/ubuntu xenial-security InRelease [109 kB]
Hit:2 http://archive.ubuntu.com/ubuntu xenial InRelease
Hit:3 http://ppa.launchpad.net/git-core/ppa/ubuntu xenial InRelease
Get:4 http://security.ubuntu.com/ubuntu xenial-security/main amd64 Packages [1116 kB]
Get:5 http://archive.ubuntu.com/ubuntu xenial-updates InRelease [109 kB]
Get:6 http://archive.ubuntu.com/ubuntu xenial-backports InRelease [107 kB]
Fetched 1441 kB in 0s (1733 kB/s)
Reading package lists...
Reading package lists...
Building dependency tree...
Reading state information...
make is already the newest version (4.1-6).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Removing intermediate container 00c8c3681a67
 ---> d9eb1b20c347
Step 4/7 : RUN git clone https://github.com/haproxy/haproxy
 ---> Running in c205973b239d
Cloning into 'haproxy'...
Removing intermediate container c205973b239d
 ---> a74f3fe0800a
Step 5/7 : WORKDIR $SRC
 ---> Running in be5e2d55a1a3
Removing intermediate container be5e2d55a1a3
 ---> 7e2c4f7ac7e1
Step 6/7 : COPY build.sh $SRC
 ---> fc3955728720
Step 7/7 : COPY fuzz* $SRC/
 ---> bee51462ba38
Successfully built bee51462ba38
Successfully tagged gcr.io/oss-fuzz/haproxy:latest
Keeping existing build artifacts as-is (if any).
Running: docker run --rm --privileged -i --cap-add SYS_PTRACE -e FUZZING_ENGINE=afl -e SANITIZER=address -e ARCHITECTURE=x86_64 -e FUZZING_LANGUAGE=c++ -v /home/travis/build/google/oss-fuzz/build/out/haproxy:/out -v /home/travis/build/google/oss-fuzz/build/work/haproxy:/work -t gcr.io/oss-fuzz/haproxy
---------------------------------------------------------------
Compiling afl to /usr/lib/libFuzzingEngine.a ...ar: creating /usr/lib/libFuzzingEngine.a
rm -f afl-gcc afl-fuzz afl-showmap afl-tmin afl-gotcpu afl-analyze afl-as as afl-g++ afl-clang afl-clang++ *.o *~ a.out core core.[1-9][0-9]* *.stackdump test .test test-instr .test-instr0 .test-instr1 qemu_mode/qemu-2.10.0.tar.bz2 afl-qemu-trace
rm -rf out_dir qemu_mode/qemu-2.10.0
make -C llvm_mode clean
make[1]: Entering directory '/src/afl/llvm_mode'
rm -f *.o *.so *~ a.out core core.[1-9][0-9]* test-instr .test-instr0 .test-instr1 
rm -f ../afl-clang-fast ../afl-llvm-pass.so ../afl-llvm-rt.o ../afl-llvm-rt-32.o ../afl-llvm-rt-64.o ../afl-clang-fast++
make[1]: Leaving directory '/src/afl/llvm_mode'
make -C libdislocator clean
make[1]: Entering directory '/src/afl/libdislocator'
rm -f *.o *.so *~ a.out core core.[1-9][0-9]*
rm -f libdislocator.so
make[1]: Leaving directory '/src/afl/libdislocator'
make -C libtokencap clean
make[1]: Entering directory '/src/afl/libtokencap'
rm -f *.o *.so *~ a.out core core.[1-9][0-9]*
rm -f libtokencap.so
make[1]: Leaving directory '/src/afl/libtokencap'
[!] Note: skipping x86 compilation checks (AFL_NO_X86 set).
clang -O3 -funroll-loops -Wall -D_FORTIFY_SOURCE=2 -g -Wno-pointer-sign -DAFL_PATH=\"/usr/local/lib/afl\" -DDOC_PATH=\"/usr/local/share/doc/afl\" -DBIN_PATH=\"/usr/local/bin\" afl-gcc.c -o afl-gcc -ldl
set -e; for i in afl-g++ afl-clang afl-clang++; do ln -sf afl-gcc $i; done
clang -O3 -funroll-loops -Wall -D_FORTIFY_SOURCE=2 -g -Wno-pointer-sign -DAFL_PATH=\"/usr/local/lib/afl\" -DDOC_PATH=\"/usr/local/share/doc/afl\" -DBIN_PATH=\"/usr/local/bin\" afl-fuzz.c -o afl-fuzz -ldl
clang -O3 -funroll-loops -Wall -D_FORTIFY_SOURCE=2 -g -Wno-pointer-sign -DAFL_PATH=\"/usr/local/lib/afl\" -DDOC_PATH=\"/usr/local/share/doc/afl\" -DBIN_PATH=\"/usr/local/bin\" afl-showmap.c -o afl-showmap -ldl
clang -O3 -funroll-loops -Wall -D_FORTIFY_SOURCE=2 -g -Wno-pointer-sign -DAFL_PATH=\"/usr/local/lib/afl\" -DDOC_PATH=\"/usr/local/share/doc/afl\" -DBIN_PATH=\"/usr/local/bin\" afl-tmin.c -o afl-tmin -ldl
clang -O3 -funroll-loops -Wall -D_FORTIFY_SOURCE=2 -g -Wno-pointer-sign -DAFL_PATH=\"/usr/local/lib/afl\" -DDOC_PATH=\"/usr/local/share/doc/afl\" -DBIN_PATH=\"/usr/local/bin\" afl-gotcpu.c -o afl-gotcpu -ldl
clang -O3 -funroll-loops -Wall -D_FORTIFY_SOURCE=2 -g -Wno-pointer-sign -DAFL_PATH=\"/usr/local/lib/afl\" -DDOC_PATH=\"/usr/local/share/doc/afl\" -DBIN_PATH=\"/usr/local/bin\" afl-analyze.c -o afl-analyze -ldl
clang -O3 -funroll-loops -Wall -D_FORTIFY_SOURCE=2 -g -Wno-pointer-sign -DAFL_PATH=\"/usr/local/lib/afl\" -DDOC_PATH=\"/usr/local/share/doc/afl\" -DBIN_PATH=\"/usr/local/bin\" afl-as.c -o afl-as -ldl
ln -sf afl-as as
[!] Note: skipping build tests (you may need to use LLVM or QEMU mode).
[+] LLVM users: see llvm_mode/README.llvm for a faster alternative to afl-gcc.
[+] All done! Be sure to review README - it's pretty short and useful.
NOTE: If you can read this, your terminal probably uses white background.
This will make the UI hard to read. See docs/status_screen.txt for advice.
 done.
---------------------------------------------------------------
CC=clang
CXX=clang++
CFLAGS=-O1 -fno-omit-frame-pointer -gline-tables-only -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION -fsanitize=address -fsanitize-address-use-after-scope -fsanitize-coverage=trace-pc-guard
CXXFLAGS=-O1 -fno-omit-frame-pointer -gline-tables-only -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION -fsanitize=address -fsanitize-address-use-after-scope -fsanitize-coverage=trace-pc-guard -stdlib=libc++
---------------------------------------------------------------
+ export 'ORIG_CFLAGS=-O1 -fno-omit-frame-pointer -gline-tables-only -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION -fsanitize=address -fsanitize-address-use-after-scope -fsanitize-coverage=trace-pc-guard'
+ ORIG_CFLAGS='-O1 -fno-omit-frame-pointer -gline-tables-only -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION -fsanitize=address -fsanitize-address-use-after-scope -fsanitize-coverage=trace-pc-guard'
+ cd haproxy
+ sed 's/LD = $(CC)/LD = ${CXX}/g' -i Makefile
+ sed 's/CC = gcc/#CC = gcc/g' -i Makefile
+ sed 's/CFLAGS = $(ARCH_FLAGS) $(CPU_CFLAGS) $(DEBUG_CFLAGS) $(SPEC_CFLAGS)/CFLAGS = $(ARCH_FLAGS) $(CPU_CFLAGS) $(DEBUG_CFLAGS) $(SPEC_CFLAGS) ${ORIG_CFLAGS}/g' -i Makefile
+ sed 's/LDFLAGS = $(ARCH_FLAGS) -g/LDFLAGS = $(ARCH_FLAGS) -g ${CXXFLAGS}/g' -i Makefile
+ make TARGET=generic
  CC      src/ev_poll.o
  CC      src/mux_h2.o
  CC      src/stream.o
  CC      src/mux_fcgi.o
  CC      src/cfgparse-listen.o
  CC      src/http_ana.o
  CC      src/stats.o
  CC      src/mux_h1.o
  CC      src/flt_spoe.o
  CC      src/server.o
  CC      src/cfgparse.o
  CC      src/checks.o
  CC      src/backend.o
  CC      src/log.o
  CC      src/peers.o
  CC      src/cli.o
  CC      src/haproxy.o
  CC      src/stick_table.o
  CC      src/standard.o
  CC      src/sample.o
  CC      src/proxy.o
  CC      src/stream_interface.o
  CC      src/pattern.o
  CC      src/dns.o
  CC      src/proto_tcp.o
  CC      src/listener.o
  CC      src/cfgparse-global.o
  CC      src/h1.o
  CC      src/http_rules.o
  CC      src/http_fetch.o
  CC      src/cache.o
  CC      src/session.o
  CC      src/fcgi-app.o
  CC      src/connection.o
  CC      src/tcp_rules.o
  CC      src/filters.o
  CC      src/task.o
  CC      src/mworker.o
  CC      src/map.o
  CC      src/h1_htx.o
  CC      src/trace.o
  CC      src/flt_trace.o
  CC      src/acl.o
  CC      src/http_htx.o
  CC      src/flt_http_comp.o
  CC      src/payload.o
  CC      src/vars.o
  CC      src/debug.o
  CC      src/mux_pt.o
  CC      src/http_act.o
  CC      src/h2.o
  CC      src/queue.o
  CC      src/fd.o
  CC      src/proto_uxst.o
  CC      src/lb_chash.o
  CC      src/ring.o
  CC      src/frontend.o
  CC      src/raw_sock.o
  CC      src/xprt_handshake.o
  CC      src/htx.o
  CC      src/memory.o
  CC      src/applet.o
  CC      src/channel.o
  CC      src/signal.o
  CC      src/lb_fwrr.o
  CC      src/ev_select.o
  CC      src/sink.o
  CC      src/http_conv.o
  CC      src/proto_sockpair.o
  CC      src/mworker-prog.o
  CC      src/activity.o
  CC      src/lb_fwlc.o
  CC      src/http.o
  CC      src/lb_fas.o
  CC      src/uri_auth.o
  CC      src/hathreads.o
  CC      src/regex.o
  CC      src/auth.o
  CC      src/buffer.o
  CC      src/compression.o
  CC      src/proto_udp.o
  CC      src/lb_map.o
  CC      src/chunk.o
  CC      src/wdt.o
  CC      src/hpack-dec.o
  CC      src/action.o
  CC      src/xxhash.o
  CC      src/pipe.o
  CC      src/shctx.o
  CC      src/hpack-tbl.o
  CC      src/http_acl.o
  CC      src/sha1.o
  CC      src/time.o
  CC      src/hpack-enc.o
  CC      src/fcgi.o
  CC      src/arg.o
  CC      src/base64.o
  CC      src/protocol.o
  CC      src/freq_ctr.o
  CC      src/lru.o
  CC      src/hpack-huff.o
  CC      src/dict.o
  CC      src/hash.o
  CC      src/mailers.o
  CC      src/version.o
  CC      ebtree/ebtree.o
  CC      ebtree/eb32sctree.o
  CC      ebtree/eb32tree.o
  CC      ebtree/eb64tree.o
  CC      ebtree/ebmbtree.o
  CC      ebtree/ebsttree.o
  CC      ebtree/ebimtree.o
  CC      ebtree/ebistree.o
  LD      haproxy
+ cd /src/haproxy
+ sed 's/int main(int argc/int main2(int argc/g' -i ./src/haproxy.c
+ sed 's/dladdr(main,/dladdr(main2,/g' -i ./src/standard.c
+ sed 's/(void*)main/(void*)main2/g' -i ./src/standard.c
+ clang -O1 -fno-omit-frame-pointer -gline-tables-only -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION -fsanitize=address -fsanitize-address-use-after-scope -fsanitize-coverage=trace-pc-guard -Iinclude -Iebtree -g -DUSE_POLL -DUSE_TPROXY '-DCONFIG_HAPROXY_VERSION=""' '-DCONFIG_HAPROXY_DATE=""' -c -o ./src/haproxy.o ./src/haproxy.c
In file included from ./src/haproxy.c:84:
In file included from include/common/cfgparse.h:30:
In file included from include/proto/log.h:34:
In file included from include/types/proxy.h:38:
In file included from ebtree/eb32tree.h:24:
ebtree/ebtree.h:471:35: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
        eb_troot_t *new_left = eb_dotag(&new->branches, EB_LEFT);
                                         ^~~~~~~~~~~~~
ebtree/ebtree.h:472:35: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
        eb_troot_t *new_rght = eb_dotag(&new->branches, EB_RGHT);
                                         ^~~~~~~~~~~~~
ebtree/ebtree.h:473:35: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
        eb_troot_t *new_leaf = eb_dotag(&new->branches, EB_LEAF);
                                         ^~~~~~~~~~~~~
ebtree/ebtree.h:490:41: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
                head->branches.b[EB_RGHT] = eb_dotag(&new->branches, EB_NODE);
                                                      ^~~~~~~~~~~~~
ebtree/ebtree.h:495:40: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
                new->branches.b[EB_LEFT] = eb_dotag(&sub->branches, EB_LEAF);
                                                     ^~~~~~~~~~~~~
ebtree/ebtree.h:508:38: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
                head->branches.b[side] = eb_dotag(&new->branches, EB_NODE);
                                                   ^~~~~~~~~~~~~
ebtree/ebtree.h:513:40: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
                new->branches.b[EB_LEFT] = eb_dotag(&sub->branches, EB_NODE);
                                                     ^~~~~~~~~~~~~
ebtree/ebtree.h:761:33: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
        gparent->b[gpside] = eb_dotag(&parent->branches, EB_NODE);
                                       ^~~~~~~~~~~~~~~~
ebtree/ebtree.h:767:15: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
                                eb_dotag(&parent->branches, pside);
                                          ^~~~~~~~~~~~~~~~
ebtree/ebtree.h:770:15: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
                                eb_dotag(&parent->branches, pside);
                                          ^~~~~~~~~~~~~~~~
10 warnings generated.
+ ar cr libetree.a ./ebtree/eb32sctree.o ./ebtree/eb32tree.o ./ebtree/eb64tree.o ./ebtree/ebimtree.o ./ebtree/ebistree.o ./ebtree/ebmbtree.o ./ebtree/ebsttree.o ./ebtree/ebtree.o
+ ar cr libhaproxy.a ./src/acl.o ./src/action.o ./src/activity.o ./src/applet.o ./src/arg.o ./src/auth.o ./src/backend.o ./src/base64.o ./src/buffer.o ./src/cache.o ./src/cfgparse-global.o ./src/cfgparse-listen.o ./src/cfgparse.o ./src/channel.o ./src/checks.o ./src/chunk.o ./src/cli.o ./src/compression.o ./src/connection.o ./src/debug.o ./src/dict.o ./src/dns.o ./src/ev_poll.o ./src/ev_select.o ./src/fcgi-app.o ./src/fcgi.o ./src/fd.o ./src/filters.o ./src/flt_http_comp.o ./src/flt_spoe.o ./src/flt_trace.o ./src/freq_ctr.o ./src/frontend.o ./src/h1.o ./src/h1_htx.o ./src/h2.o ./src/haproxy.o ./src/hash.o ./src/hathreads.o ./src/hpack-dec.o ./src/hpack-enc.o ./src/hpack-huff.o ./src/hpack-tbl.o ./src/http.o ./src/http_acl.o ./src/http_act.o ./src/http_ana.o ./src/http_conv.o ./src/http_fetch.o ./src/http_htx.o ./src/http_rules.o ./src/htx.o ./src/lb_chash.o ./src/lb_fas.o ./src/lb_fwlc.o ./src/lb_fwrr.o ./src/lb_map.o ./src/listener.o ./src/log.o ./src/lru.o ./src/mailers.o ./src/map.o ./src/memory.o ./src/mux_fcgi.o ./src/mux_h1.o ./src/mux_h2.o ./src/mux_pt.o ./src/mworker-prog.o ./src/mworker.o ./src/pattern.o ./src/payload.o ./src/peers.o ./src/pipe.o ./src/proto_sockpair.o ./src/proto_tcp.o ./src/proto_udp.o ./src/proto_uxst.o ./src/protocol.o ./src/proxy.o ./src/queue.o ./src/raw_sock.o ./src/regex.o ./src/ring.o ./src/sample.o ./src/server.o ./src/session.o ./src/sha1.o ./src/shctx.o ./src/signal.o ./src/sink.o ./src/standard.o ./src/stats.o ./src/stick_table.o ./src/stream.o ./src/stream_interface.o ./src/task.o ./src/tcp_rules.o ./src/time.o ./src/trace.o ./src/uri_auth.o ./src/vars.o ./src/version.o ./src/wdt.o ./src/xprt_handshake.o ./src/xxhash.o
+ cp /src/fuzz_hpack_decode.c .
+ clang -O1 -fno-omit-frame-pointer -gline-tables-only -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION -fsanitize=address -fsanitize-address-use-after-scope -fsanitize-coverage=trace-pc-guard -Iinclude -Iebtree -g -DUSE_POLL -DUSE_TPROXY '-DCONFIG_HAPROXY_VERSION=""' '-DCONFIG_HAPROXY_DATE=""' -c fuzz_hpack_decode.c -o fuzz_hpack_decode.o
In file included from fuzz_hpack_decode.c:49:
In file included from include/../src/hpack-tbl.c:37:
In file included from include/types/global.h:32:
In file included from include/types/listener.h:37:
In file included from ebtree/eb32tree.h:24:
ebtree/ebtree.h:471:35: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
        eb_troot_t *new_left = eb_dotag(&new->branches, EB_LEFT);
                                         ^~~~~~~~~~~~~
ebtree/ebtree.h:472:35: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
        eb_troot_t *new_rght = eb_dotag(&new->branches, EB_RGHT);
                                         ^~~~~~~~~~~~~
ebtree/ebtree.h:473:35: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
        eb_troot_t *new_leaf = eb_dotag(&new->branches, EB_LEAF);
                                         ^~~~~~~~~~~~~
ebtree/ebtree.h:490:41: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
                head->branches.b[EB_RGHT] = eb_dotag(&new->branches, EB_NODE);
                                                      ^~~~~~~~~~~~~
ebtree/ebtree.h:495:40: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
                new->branches.b[EB_LEFT] = eb_dotag(&sub->branches, EB_LEAF);
                                                     ^~~~~~~~~~~~~
ebtree/ebtree.h:508:38: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
                head->branches.b[side] = eb_dotag(&new->branches, EB_NODE);
                                                   ^~~~~~~~~~~~~
ebtree/ebtree.h:513:40: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
                new->branches.b[EB_LEFT] = eb_dotag(&sub->branches, EB_NODE);
                                                     ^~~~~~~~~~~~~
ebtree/ebtree.h:761:33: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
        gparent->b[gpside] = eb_dotag(&parent->branches, EB_NODE);
                                       ^~~~~~~~~~~~~~~~
ebtree/ebtree.h:767:15: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
                                eb_dotag(&parent->branches, pside);
                                          ^~~~~~~~~~~~~~~~
ebtree/ebtree.h:770:15: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
                                eb_dotag(&parent->branches, pside);
                                          ^~~~~~~~~~~~~~~~
fuzz_hpack_decode.c:64:39: warning: too many arguments in call to 'hpack_dht_alloc'
        dht = hpack_dht_alloc(dht_size);
              ~~~~~~~~~~~~~~~         ^
fuzz_hpack_decode.c:65:33: warning: passing 'char *' to parameter of type 'const uint8_t *' (aka 'const unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
        hpack_decode_frame(dht, new_str, size, list,sizeof(list)/sizeof(list[0]), &tmp);
                                ^~~~~~~
include/../src/hpack-dec.c:147:62: note: passing argument to parameter 'raw' here
int hpack_decode_frame(struct hpack_dht *dht, const uint8_t *raw, uint32_t len,
                                                             ^
12 warnings generated.
+ clang++ -g -O1 -fno-omit-frame-pointer -gline-tables-only -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION -fsanitize=address -fsanitize-address-use-after-scope -fsanitize-coverage=trace-pc-guard -stdlib=libc++ /usr/lib/libFuzzingEngine.a fuzz_hpack_decode.o libhaproxy.a libetree.a -o /out/fuzz_hpack_decode
+ cp /src/fuzz_cfg_parser.c .
+ clang -O1 -fno-omit-frame-pointer -gline-tables-only -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION -fsanitize=address -fsanitize-address-use-after-scope -fsanitize-coverage=trace-pc-guard -Iinclude -Iebtree -g -DUSE_POLL -DUSE_TPROXY '-DCONFIG_HAPROXY_VERSION=""' '-DCONFIG_HAPROXY_DATE=""' -c -o fuzz_cfg_parser.o fuzz_cfg_parser.c
fuzz_cfg_parser.c:26:41: warning: implicit declaration of function 'getpid' is invalid in C99 [-Wimplicit-function-declaration]
        sprintf(filename, "/tmp/libfuzzer.%d", getpid());
                                               ^
fuzz_cfg_parser.c:35:2: warning: implicit declaration of function 'readcfgfile' is invalid in C99 [-Wimplicit-function-declaration]
        readcfgfile(filename);
        ^
fuzz_cfg_parser.c:37:2: warning: implicit declaration of function 'unlink' is invalid in C99 [-Wimplicit-function-declaration]
        unlink(filename);
        ^
3 warnings generated.
+ clang++ -g -O1 -fno-omit-frame-pointer -gline-tables-only -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION -fsanitize=address -fsanitize-address-use-after-scope -fsanitize-coverage=trace-pc-guard -stdlib=libc++ /usr/lib/libFuzzingEngine.a fuzz_cfg_parser.o libhaproxy.a libetree.a -o /out/fuzz_cfg_parser
Running command: python /home/travis/build/google/oss-fuzz/infra/helper.py check_build haproxy --engine afl --sanitizer address --architecture x86_64
Running: docker run --rm --privileged -i -e FUZZING_ENGINE=afl -e SANITIZER=address -e ARCHITECTURE=x86_64 -v /home/travis/build/google/oss-fuzz/build/out/haproxy:/out -t gcr.io/oss-fuzz-base/base-runner test_all
Unable to find image 'gcr.io/oss-fuzz-base/base-runner:latest' locally
latest: Pulling from oss-fuzz-base/base-runner













Digest: sha256:5f03db2c7aa217ccbfa12e1d01c4eecfc8ddd58b97362d8e46910aee7f9cc675
Status: Downloaded newer image for gcr.io/oss-fuzz-base/base-runner:latest
INFO: performing bad build checks for /tmp/not-out/fuzz_cfg_parser.
INFO: performing bad build checks for /tmp/not-out/fuzz_hpack_decode.
Broken fuzz targets (1):
fuzz_hpack_decode:
BAD BUILD: fuzzing /tmp/not-out/fuzz_hpack_decode with afl-fuzz failed.
/tmp/not-out/afl-fuzz -m none -i /tmp/fuzz_hpack_decode_corpus -o /tmp/fuzz_hpack_decode_afl_address_out /tmp/not-out/fuzz_hpack_decode
afl-fuzz 2.56b by <[email protected]>
[+] Disabling the UI because AFL_NO_UI is set.
[+] You have 2 CPU cores and 1 runnable tasks (utilization: 50%).
[+] Try parallel jobs - see docs/parallel_fuzzing.txt.
[*] Checking CPU core loadout...
[+] Found a free CPU core, binding to #1.
[*] Checking core_pattern...

[-] Hmm, your system is configured to send core dump notifications to an
    external utility. This will cause issues: there will be an extended delay
    between stumbling upon a crash and having this information relayed to the
    fuzzer via the standard waitpid() API.

    To avoid having crashes misinterpreted as timeouts, please log in as root
    and temporarily modify /proc/sys/kernel/core_pattern, like so:

    echo core >/proc/sys/kernel/core_pattern
[*] Setting up output directories...
[+] Output directory exists but deemed OK to reuse.
[*] Deleting old session data...
[+] Output dir cleanup successful.
[*] Scanning '/tmp/fuzz_hpack_decode_corpus'...
[+] No auto-generated dictionary tokens to reuse.
[*] Creating hard links for all input files...
[*] Validating target binary...
[+] Persistent mode binary detected.
[+] Deferred forkserver binary detected.
[*] Attempting dry run with 'id:000000,orig:input'...
[*] Spinning up the fork server...
[+] All right - fork server is up.

[-] Oops, the program crashed with one of the test cases provided. There are
    several possible explanations:

    - The test case causes known crashes under normal working conditions. If
      so, please remove it. The fuzzer should be seeded with interesting
      inputs - but not ones that cause an outright crash.

    - Least likely, there is a horrible bug in the fuzzer. If other options
      fail, poke <[email protected]> for troubleshooting tips.
�
[-] PROGRAM ABORT : Test case 'id:000000,orig:input' results in a crash
         Location : perform_dry_run(), afl-fuzz.c:2874

ERROR: 50% of fuzz targets seem to be broken. See the list above for a detailed information.
Check build failed.
Failed projects: haproxy
TravisBuddy Request Identifier: e890c2e0-a015-11ea-aa49-9d3926c79f60

…_h2 to initialise a memory pool. Disabling this for now as this is a larger change in the code base and will fix up in the coming week.
@TravisBuddy
Copy link

Hey @DavidKorczynski,
Your changes look good to me!

View build log

TravisBuddy Request Identifier: 8bbfa280-a019-11ea-aa49-9d3926c79f60

@TravisBuddy
Copy link

Travis tests have failed

Hey @DavidKorczynski,
Please read the following log in order to understand the failure reason.
It'll be awesome if you fix what's wrong and commit the changes.

1st Build

View build log

./infra/travis/travis_build.py
Building project haproxy
Running command: python /home/travis/build/google/oss-fuzz/infra/helper.py build_fuzzers haproxy --engine libfuzzer --sanitizer memory --architecture x86_64
Running: docker build -t gcr.io/oss-fuzz/haproxy projects/haproxy

Step 1/7 : FROM gcr.io/oss-fuzz-base/base-builder
latest: Pulling from oss-fuzz-base/base-builder
























Digest: sha256:12b7b470479f04fd1b6a124291486f555169a5496a355ee75cf333c117d4bb92
Status: Downloaded newer image for gcr.io/oss-fuzz-base/base-builder:latest
 ---> 978820b89281
Step 2/7 : MAINTAINER [email protected]
 ---> Running in 2215b02998ec
Removing intermediate container 2215b02998ec
 ---> 868d727bf505
Step 3/7 : RUN apt-get update && apt-get install -y make
 ---> Running in 76e93c9c5758
Get:1 http://security.ubuntu.com/ubuntu xenial-security InRelease [109 kB]
Hit:2 http://archive.ubuntu.com/ubuntu xenial InRelease
Hit:3 http://ppa.launchpad.net/git-core/ppa/ubuntu xenial InRelease
Get:4 http://security.ubuntu.com/ubuntu xenial-security/main amd64 Packages [1116 kB]
Get:5 http://archive.ubuntu.com/ubuntu xenial-updates InRelease [109 kB]
Get:6 http://archive.ubuntu.com/ubuntu xenial-backports InRelease [107 kB]
Fetched 1441 kB in 0s (1804 kB/s)
Reading package lists...
Reading package lists...
Building dependency tree...
Reading state information...
make is already the newest version (4.1-6).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Removing intermediate container 76e93c9c5758
 ---> c23211e18238
Step 4/7 : RUN git clone https://github.com/haproxy/haproxy
 ---> Running in 08694862642d
Cloning into 'haproxy'...
Removing intermediate container 08694862642d
 ---> b13fbb94b559
Step 5/7 : WORKDIR $SRC
 ---> Running in d4ff8f05d86d
Removing intermediate container d4ff8f05d86d
 ---> 57378af54faf
Step 6/7 : COPY build.sh $SRC
 ---> cc5abeb2fad1
Step 7/7 : COPY fuzz* $SRC/
 ---> 1d6111341741
Successfully built 1d6111341741
Successfully tagged gcr.io/oss-fuzz/haproxy:latest
Keeping existing build artifacts as-is (if any).
Running: docker run --rm --privileged -i -v /home/travis/build/google/oss-fuzz/build/work/haproxy:/work gcr.io/oss-fuzz-base/msan-builder bash -c 'cp -r /msan /work'
Unable to find image 'gcr.io/oss-fuzz-base/msan-builder:latest' locally
latest: Pulling from oss-fuzz-base/msan-builder
















Digest: sha256:5f9af039d569ffa31e5c1219dba6586f2e27d32c32ec6dea8c37cfb1d10cad01
Status: Downloaded newer image for gcr.io/oss-fuzz-base/msan-builder:latest
Running: docker run --rm --privileged -i --cap-add SYS_PTRACE -e FUZZING_ENGINE=libfuzzer -e SANITIZER=memory -e ARCHITECTURE=x86_64 -e FUZZING_LANGUAGE=c++ -e MSAN_LIBS_PATH=/work/msan -v /home/travis/build/google/oss-fuzz/build/out/haproxy:/out -v /home/travis/build/google/oss-fuzz/build/work/haproxy:/work -t gcr.io/oss-fuzz/haproxy
---------------------------------------------------------------
Compiling libFuzzer to /usr/lib/libFuzzingEngine.a... ar: creating /usr/lib/libFuzzingEngine.a
 done.
---------------------------------------------------------------
CC=clang
CXX=clang++
CFLAGS=-O1 -fno-omit-frame-pointer -gline-tables-only -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION -fsanitize=memory -fsanitize-memory-track-origins -fsanitize=fuzzer-no-link
CXXFLAGS=-O1 -fno-omit-frame-pointer -gline-tables-only -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION -fsanitize=memory -fsanitize-memory-track-origins -fsanitize=fuzzer-no-link -stdlib=libc++
---------------------------------------------------------------
+ export 'ORIG_CFLAGS=-O1 -fno-omit-frame-pointer -gline-tables-only -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION -fsanitize=memory -fsanitize-memory-track-origins -fsanitize=fuzzer-no-link'
+ ORIG_CFLAGS='-O1 -fno-omit-frame-pointer -gline-tables-only -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION -fsanitize=memory -fsanitize-memory-track-origins -fsanitize=fuzzer-no-link'
+ cd haproxy
+ sed 's/LD = $(CC)/LD = ${CXX}/g' -i Makefile
+ sed 's/CC = gcc/#CC = gcc/g' -i Makefile
+ sed 's/CFLAGS = $(ARCH_FLAGS) $(CPU_CFLAGS) $(DEBUG_CFLAGS) $(SPEC_CFLAGS)/CFLAGS = $(ARCH_FLAGS) $(CPU_CFLAGS) $(DEBUG_CFLAGS) $(SPEC_CFLAGS) ${ORIG_CFLAGS}/g' -i Makefile
+ sed 's/LDFLAGS = $(ARCH_FLAGS) -g/LDFLAGS = $(ARCH_FLAGS) -g ${CXXFLAGS}/g' -i Makefile
+ make TARGET=generic
  CC      src/ev_poll.o
  CC      src/mux_h2.o
  CC      src/stream.o
  CC      src/mux_fcgi.o
  CC      src/cfgparse-listen.o
  CC      src/http_ana.o
  CC      src/stats.o
  CC      src/mux_h1.o
  CC      src/flt_spoe.o
  CC      src/server.o
  CC      src/cfgparse.o
  CC      src/checks.o
  CC      src/backend.o
  CC      src/log.o
  CC      src/peers.o
  CC      src/cli.o
  CC      src/haproxy.o
  CC      src/stick_table.o
  CC      src/standard.o
  CC      src/sample.o
  CC      src/proxy.o
  CC      src/stream_interface.o
  CC      src/pattern.o
  CC      src/dns.o
  CC      src/proto_tcp.o
  CC      src/listener.o
  CC      src/cfgparse-global.o
  CC      src/h1.o
  CC      src/http_rules.o
  CC      src/http_fetch.o
  CC      src/cache.o
  CC      src/session.o
  CC      src/fcgi-app.o
  CC      src/connection.o
  CC      src/tcp_rules.o
  CC      src/filters.o
  CC      src/task.o
  CC      src/mworker.o
  CC      src/map.o
  CC      src/h1_htx.o
  CC      src/trace.o
  CC      src/flt_trace.o
  CC      src/acl.o
  CC      src/http_htx.o
  CC      src/flt_http_comp.o
  CC      src/payload.o
  CC      src/vars.o
  CC      src/debug.o
  CC      src/mux_pt.o
  CC      src/http_act.o
  CC      src/h2.o
  CC      src/queue.o
  CC      src/fd.o
  CC      src/proto_uxst.o
  CC      src/lb_chash.o
  CC      src/ring.o
  CC      src/frontend.o
  CC      src/raw_sock.o
  CC      src/xprt_handshake.o
  CC      src/htx.o
  CC      src/memory.o
  CC      src/applet.o
  CC      src/channel.o
  CC      src/signal.o
  CC      src/lb_fwrr.o
  CC      src/ev_select.o
  CC      src/sink.o
  CC      src/http_conv.o
  CC      src/proto_sockpair.o
  CC      src/mworker-prog.o
  CC      src/activity.o
  CC      src/lb_fwlc.o
  CC      src/http.o
  CC      src/lb_fas.o
  CC      src/uri_auth.o
  CC      src/hathreads.o
  CC      src/regex.o
  CC      src/auth.o
  CC      src/buffer.o
  CC      src/compression.o
  CC      src/proto_udp.o
  CC      src/lb_map.o
  CC      src/chunk.o
  CC      src/wdt.o
  CC      src/hpack-dec.o
  CC      src/action.o
  CC      src/xxhash.o
  CC      src/pipe.o
  CC      src/shctx.o
  CC      src/hpack-tbl.o
  CC      src/http_acl.o
  CC      src/sha1.o
  CC      src/time.o
  CC      src/hpack-enc.o
  CC      src/fcgi.o
  CC      src/arg.o
  CC      src/base64.o
  CC      src/protocol.o
  CC      src/freq_ctr.o
  CC      src/lru.o
  CC      src/hpack-huff.o
  CC      src/dict.o
  CC      src/hash.o
  CC      src/mailers.o
  CC      src/version.o
  CC      ebtree/ebtree.o
  CC      ebtree/eb32sctree.o
  CC      ebtree/eb32tree.o
  CC      ebtree/eb64tree.o
  CC      ebtree/ebmbtree.o
  CC      ebtree/ebsttree.o
  CC      ebtree/ebimtree.o
  CC      ebtree/ebistree.o
  LD      haproxy
+ cd /src/haproxy
+ sed 's/int main(int argc/int main2(int argc/g' -i ./src/haproxy.c
+ sed 's/dladdr(main,/dladdr(main2,/g' -i ./src/standard.c
+ sed 's/(void*)main/(void*)main2/g' -i ./src/standard.c
+ clang -O1 -fno-omit-frame-pointer -gline-tables-only -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION -fsanitize=memory -fsanitize-memory-track-origins -fsanitize=fuzzer-no-link -Iinclude -Iebtree -g -DUSE_POLL -DUSE_TPROXY '-DCONFIG_HAPROXY_VERSION=""' '-DCONFIG_HAPROXY_DATE=""' -c -o ./src/haproxy.o ./src/haproxy.c
In file included from ./src/haproxy.c:84:
In file included from include/common/cfgparse.h:30:
In file included from include/proto/log.h:34:
In file included from include/types/proxy.h:38:
In file included from ebtree/eb32tree.h:24:
ebtree/ebtree.h:471:35: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
        eb_troot_t *new_left = eb_dotag(&new->branches, EB_LEFT);
                                         ^~~~~~~~~~~~~
ebtree/ebtree.h:472:35: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
        eb_troot_t *new_rght = eb_dotag(&new->branches, EB_RGHT);
                                         ^~~~~~~~~~~~~
ebtree/ebtree.h:473:35: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
        eb_troot_t *new_leaf = eb_dotag(&new->branches, EB_LEAF);
                                         ^~~~~~~~~~~~~
ebtree/ebtree.h:490:41: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
                head->branches.b[EB_RGHT] = eb_dotag(&new->branches, EB_NODE);
                                                      ^~~~~~~~~~~~~
ebtree/ebtree.h:495:40: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
                new->branches.b[EB_LEFT] = eb_dotag(&sub->branches, EB_LEAF);
                                                     ^~~~~~~~~~~~~
ebtree/ebtree.h:508:38: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
                head->branches.b[side] = eb_dotag(&new->branches, EB_NODE);
                                                   ^~~~~~~~~~~~~
ebtree/ebtree.h:513:40: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
                new->branches.b[EB_LEFT] = eb_dotag(&sub->branches, EB_NODE);
                                                     ^~~~~~~~~~~~~
ebtree/ebtree.h:761:33: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
        gparent->b[gpside] = eb_dotag(&parent->branches, EB_NODE);
                                       ^~~~~~~~~~~~~~~~
ebtree/ebtree.h:767:15: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
                                eb_dotag(&parent->branches, pside);
                                          ^~~~~~~~~~~~~~~~
ebtree/ebtree.h:770:15: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
                                eb_dotag(&parent->branches, pside);
                                          ^~~~~~~~~~~~~~~~
10 warnings generated.
+ ar cr libetree.a ./ebtree/eb32sctree.o ./ebtree/eb32tree.o ./ebtree/eb64tree.o ./ebtree/ebimtree.o ./ebtree/ebistree.o ./ebtree/ebmbtree.o ./ebtree/ebsttree.o ./ebtree/ebtree.o
+ ar cr libhaproxy.a ./src/acl.o ./src/action.o ./src/activity.o ./src/applet.o ./src/arg.o ./src/auth.o ./src/backend.o ./src/base64.o ./src/buffer.o ./src/cache.o ./src/cfgparse-global.o ./src/cfgparse-listen.o ./src/cfgparse.o ./src/channel.o ./src/checks.o ./src/chunk.o ./src/cli.o ./src/compression.o ./src/connection.o ./src/debug.o ./src/dict.o ./src/dns.o ./src/ev_poll.o ./src/ev_select.o ./src/fcgi-app.o ./src/fcgi.o ./src/fd.o ./src/filters.o ./src/flt_http_comp.o ./src/flt_spoe.o ./src/flt_trace.o ./src/freq_ctr.o ./src/frontend.o ./src/h1.o ./src/h1_htx.o ./src/h2.o ./src/haproxy.o ./src/hash.o ./src/hathreads.o ./src/hpack-dec.o ./src/hpack-enc.o ./src/hpack-huff.o ./src/hpack-tbl.o ./src/http.o ./src/http_acl.o ./src/http_act.o ./src/http_ana.o ./src/http_conv.o ./src/http_fetch.o ./src/http_htx.o ./src/http_rules.o ./src/htx.o ./src/lb_chash.o ./src/lb_fas.o ./src/lb_fwlc.o ./src/lb_fwrr.o ./src/lb_map.o ./src/listener.o ./src/log.o ./src/lru.o ./src/mailers.o ./src/map.o ./src/memory.o ./src/mux_fcgi.o ./src/mux_h1.o ./src/mux_h2.o ./src/mux_pt.o ./src/mworker-prog.o ./src/mworker.o ./src/pattern.o ./src/payload.o ./src/peers.o ./src/pipe.o ./src/proto_sockpair.o ./src/proto_tcp.o ./src/proto_udp.o ./src/proto_uxst.o ./src/protocol.o ./src/proxy.o ./src/queue.o ./src/raw_sock.o ./src/regex.o ./src/ring.o ./src/sample.o ./src/server.o ./src/session.o ./src/sha1.o ./src/shctx.o ./src/signal.o ./src/sink.o ./src/standard.o ./src/stats.o ./src/stick_table.o ./src/stream.o ./src/stream_interface.o ./src/task.o ./src/tcp_rules.o ./src/time.o ./src/trace.o ./src/uri_auth.o ./src/vars.o ./src/version.o ./src/wdt.o ./src/xprt_handshake.o ./src/xxhash.o
+ cp /src/fuzz_hpack_decode.c .
+ clang -O1 -fno-omit-frame-pointer -gline-tables-only -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION -fsanitize=memory -fsanitize-memory-track-origins -fsanitize=fuzzer-no-link -Iinclude -Iebtree -g -DUSE_POLL -DUSE_TPROXY '-DCONFIG_HAPROXY_VERSION=""' '-DCONFIG_HAPROXY_DATE=""' -c fuzz_hpack_decode.c -o fuzz_hpack_decode.o
In file included from fuzz_hpack_decode.c:54:
In file included from include/../src/hpack-tbl.c:37:
In file included from include/types/global.h:32:
In file included from include/types/listener.h:37:
In file included from ebtree/eb32tree.h:24:
ebtree/ebtree.h:471:35: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
        eb_troot_t *new_left = eb_dotag(&new->branches, EB_LEFT);
                                         ^~~~~~~~~~~~~
ebtree/ebtree.h:472:35: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
        eb_troot_t *new_rght = eb_dotag(&new->branches, EB_RGHT);
                                         ^~~~~~~~~~~~~
ebtree/ebtree.h:473:35: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
        eb_troot_t *new_leaf = eb_dotag(&new->branches, EB_LEAF);
                                         ^~~~~~~~~~~~~
ebtree/ebtree.h:490:41: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
                head->branches.b[EB_RGHT] = eb_dotag(&new->branches, EB_NODE);
                                                      ^~~~~~~~~~~~~
ebtree/ebtree.h:495:40: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
                new->branches.b[EB_LEFT] = eb_dotag(&sub->branches, EB_LEAF);
                                                     ^~~~~~~~~~~~~
ebtree/ebtree.h:508:38: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
                head->branches.b[side] = eb_dotag(&new->branches, EB_NODE);
                                                   ^~~~~~~~~~~~~
ebtree/ebtree.h:513:40: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
                new->branches.b[EB_LEFT] = eb_dotag(&sub->branches, EB_NODE);
                                                     ^~~~~~~~~~~~~
ebtree/ebtree.h:761:33: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
        gparent->b[gpside] = eb_dotag(&parent->branches, EB_NODE);
                                       ^~~~~~~~~~~~~~~~
ebtree/ebtree.h:767:15: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
                                eb_dotag(&parent->branches, pside);
                                          ^~~~~~~~~~~~~~~~
ebtree/ebtree.h:770:15: warning: taking address of packed member 'branches' of class or structure 'eb_node' may result in an unaligned pointer value [-Waddress-of-packed-member]
                                eb_dotag(&parent->branches, pside);
                                          ^~~~~~~~~~~~~~~~
fuzz_hpack_decode.c:78:37: warning: passing 'char *' to parameter of type 'const uint8_t *' (aka 'const unsigned char *') converts between pointers to integer types with different sign [-Wpointer-sign]
            hpack_decode_frame(dht, new_str, size, list,sizeof(list)/sizeof(list[0]), &tmp);
                                    ^~~~~~~
include/../src/hpack-dec.c:147:62: note: passing argument to parameter 'raw' here
int hpack_decode_frame(struct hpack_dht *dht, const uint8_t *raw, uint32_t len,
                                                             ^
11 warnings generated.
+ clang++ -g -O1 -fno-omit-frame-pointer -gline-tables-only -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION -fsanitize=memory -fsanitize-memory-track-origins -fsanitize=fuzzer-no-link -stdlib=libc++ -fsanitize=fuzzer fuzz_hpack_decode.o libhaproxy.a libetree.a -o /out/fuzz_hpack_decode
+ cp /src/fuzz_cfg_parser.c .
+ clang -O1 -fno-omit-frame-pointer -gline-tables-only -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION -fsanitize=memory -fsanitize-memory-track-origins -fsanitize=fuzzer-no-link -Iinclude -Iebtree -g -DUSE_POLL -DUSE_TPROXY '-DCONFIG_HAPROXY_VERSION=""' '-DCONFIG_HAPROXY_DATE=""' -c -o fuzz_cfg_parser.o fuzz_cfg_parser.c
fuzz_cfg_parser.c:26:41: warning: implicit declaration of function 'getpid' is invalid in C99 [-Wimplicit-function-declaration]
        sprintf(filename, "/tmp/libfuzzer.%d", getpid());
                                               ^
fuzz_cfg_parser.c:35:2: warning: implicit declaration of function 'readcfgfile' is invalid in C99 [-Wimplicit-function-declaration]
        readcfgfile(filename);
        ^
fuzz_cfg_parser.c:37:2: warning: implicit declaration of function 'unlink' is invalid in C99 [-Wimplicit-function-declaration]
        unlink(filename);
        ^
3 warnings generated.
+ clang++ -g -O1 -fno-omit-frame-pointer -gline-tables-only -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION -fsanitize=memory -fsanitize-memory-track-origins -fsanitize=fuzzer-no-link -stdlib=libc++ -fsanitize=fuzzer fuzz_cfg_parser.o libhaproxy.a libetree.a -o /out/fuzz_cfg_parser
Running: docker run --rm --privileged -i -v /home/travis/build/google/oss-fuzz/build/out/haproxy:/out -v /home/travis/build/google/oss-fuzz/build/work/haproxy:/work -e FUZZING_ENGINE=libfuzzer -e SANITIZER=memory -e ARCHITECTURE=x86_64 -e FUZZING_LANGUAGE=c++ -e MSAN_LIBS_PATH=/work/msan gcr.io/oss-fuzz-base/base-msan-builder patch_build.py /out
Unable to find image 'gcr.io/oss-fuzz-base/base-msan-builder:latest' locally
latest: Pulling from oss-fuzz-base/base-msan-builder















Digest: sha256:919f5c6f7517f3b427c84d07ab1559ed23e17ad7617f0fd1290624304f56edfc
Status: Downloaded newer image for gcr.io/oss-fuzz-base/base-msan-builder:latest
WARNING: Instrumented library not found for /lib/x86_64-linux-gnu/libm.so.6
WARNING: Instrumented library not found for /lib/x86_64-linux-gnu/libpthread.so.0
WARNING: Instrumented library not found for /lib/x86_64-linux-gnu/librt.so.1
WARNING: Instrumented library not found for /lib/x86_64-linux-gnu/libdl.so.2
WARNING: Instrumented library not found for /lib/x86_64-linux-gnu/libgcc_s.so.1
WARNING: Instrumented library not found for /lib/x86_64-linux-gnu/libc.so.6
WARNING: Instrumented library not found for /lib/x86_64-linux-gnu/libm.so.6
WARNING: Instrumented library not found for /lib/x86_64-linux-gnu/libpthread.so.0
WARNING: Instrumented library not found for /lib/x86_64-linux-gnu/librt.so.1
WARNING: Instrumented library not found for /lib/x86_64-linux-gnu/libdl.so.2
WARNING: Instrumented library not found for /lib/x86_64-linux-gnu/libgcc_s.so.1
WARNING: Instrumented library not found for /lib/x86_64-linux-gnu/libc.so.6
Running command: python /home/travis/build/google/oss-fuzz/infra/helper.py check_build haproxy --engine libfuzzer --sanitizer memory --architecture x86_64
Running: docker run --rm --privileged -i -e FUZZING_ENGINE=libfuzzer -e SANITIZER=memory -e ARCHITECTURE=x86_64 -v /home/travis/build/google/oss-fuzz/build/out/haproxy:/out -t gcr.io/oss-fuzz-base/base-runner test_all
Unable to find image 'gcr.io/oss-fuzz-base/base-runner:latest' locally
latest: Pulling from oss-fuzz-base/base-runner













Digest: sha256:5f03db2c7aa217ccbfa12e1d01c4eecfc8ddd58b97362d8e46910aee7f9cc675
Status: Downloaded newer image for gcr.io/oss-fuzz-base/base-runner:latest
INFO: performing bad build checks for /tmp/not-out/fuzz_cfg_parser.
INFO: performing bad build checks for /tmp/not-out/fuzz_hpack_decode.
Broken fuzz targets (1):
fuzz_hpack_decode:
BAD BUILD: /tmp/not-out/fuzz_hpack_decode seems to have either startup crash or exit:
INFO: Seed: 1337
INFO: Loaded 1 modules   (38616 inline 8-bit counters): 38616 [0xe81d90, 0xe8b468), 
INFO: Loaded 1 PC tables (38616 PCs): 38616 [0xb522f0,0xbe9070), 
INFO: -max_len is not provided; libFuzzer will not generate inputs larger than 4096 bytes
==104==WARNING: MemorySanitizer: use-of-uninitialized-value
    #0 0x5295fb in __pool_get_first /src/haproxy/include/common/memory.h:412:6
    #1 0x529405 in pool_alloc_dirty /src/haproxy/include/common/memory.h:443:11
    #2 0x5291cc in pool_alloc /src/haproxy/include/common/memory.h:534:6
    #3 0x529055 in hpack_dht_alloc /src/haproxy/include/common/hpack-tbl.h:257:8
    #4 0x528355 in LLVMFuzzerTestOneInput /src/haproxy/fuzz_hpack_decode.c:74:15
    #5 0x459201 in fuzzer::Fuzzer::ExecuteCallback(unsigned char const*, unsigned long) /src/llvm-project/compiler-rt/lib/fuzzer/FuzzerLoop.cpp:558:15
    #6 0x45a676 in fuzzer::Fuzzer::ReadAndExecuteSeedCorpora(std::__Fuzzer::vector<fuzzer::SizedFile, fuzzer::fuzzer_allocator<fuzzer::SizedFile> >&) /src/llvm-project/compiler-rt/lib/fuzzer/FuzzerLoop.cpp:748:3
    #7 0x45aae9 in fuzzer::Fuzzer::Loop(std::__Fuzzer::vector<fuzzer::SizedFile, fuzzer::fuzzer_allocator<fuzzer::SizedFile> >&) /src/llvm-project/compiler-rt/lib/fuzzer/FuzzerLoop.cpp:799:3
    #8 0x44a505 in fuzzer::FuzzerDriver(int*, char***, int (*)(unsigned char const*, unsigned long)) /src/llvm-project/compiler-rt/lib/fuzzer/FuzzerDriver.cpp:846:6
    #9 0x472552 in main /src/llvm-project/compiler-rt/lib/fuzzer/FuzzerMain.cpp:19:10
    #10 0x7ffb4934182f in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x2082f)
    #11 0x41ec28 in _start (/tmp/not-out/fuzz_hpack_decode+0x41ec28)

DEDUP_TOKEN: __pool_get_first--pool_alloc_dirty--pool_alloc
  Uninitialized value was created by an allocation of 'pool' in the stack frame of function 'LLVMFuzzerTestOneInput'
    #0 0x5281d0 in LLVMFuzzerTestOneInput /src/haproxy/fuzz_hpack_decode.c:58

DEDUP_TOKEN: LLVMFuzzerTestOneInput
SUMMARY: MemorySanitizer: use-of-uninitialized-value /src/haproxy/include/common/memory.h:412:6 in __pool_get_first
Unique heap origins: 13
Stack depot allocated bytes: 800
Unique origin histories: 1
History depot allocated bytes: 24
Exiting
MS: 0 ; base unit: 0000000000000000000000000000000000000000


artifact_prefix='./'; Test unit written to ./crash-da39a3ee5e6b4b0d3255bfef95601890afd80709
Base64: 
ERROR: 50% of fuzz targets seem to be broken. See the list above for a detailed information.
Check build failed.
Failed projects: haproxy
TravisBuddy Request Identifier: 8d178900-a027-11ea-aa49-9d3926c79f60

@TravisBuddy
Copy link

Hey @DavidKorczynski,
Your changes look good to me!

View build log

TravisBuddy Request Identifier: 61f61810-a02a-11ea-aa49-9d3926c79f60

@inferno-chromium
Copy link
Collaborator

Assigning to current sheriff - @oliverchang

@TravisBuddy
Copy link

Hey @DavidKorczynski,
Your changes look good to me!

View build log

TravisBuddy Request Identifier: 4222e190-a196-11ea-b485-534d9f3e4954

@inferno-chromium
Copy link
Collaborator

Thanks a lot for these build fixes.

@inferno-chromium inferno-chromium merged commit e3e1174 into google:master Jun 1, 2020
@TravisBuddy
Copy link

Hey @DavidKorczynski,
Something went wrong with the build.

TravisCI finished with status errored, which means the build failed because of something unrelated to the tests, such as a problem with a dependency or the build process itself.

View build log

TravisBuddy Request Identifier: e0d08530-a412-11ea-946e-418bdaa55b61

zchcai added a commit to zchcai/oss-fuzz that referenced this pull request Jun 3, 2020
* [cryptofuzz] Add Microsoft SymCrypt (google#3826)

* [gRPC-gateway] Initial integration (google#3807)

* [doc] Update new_project_guide.md (google#3828)

* [knot-dns] link against liblmdb statically (google#3797)

Relates to https://gitlab.labs.nic.cz/knot/knot-dns/-/commit/d4ec3a3aa8b7e2ba4d196e2f7984173069e3d91b

Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=22191

* Simplify rust project setup. (google#3830)

* Simplify rust project setup.

- Add rust and cargo-fuzz in base builder.
- Set RUSTC_BOOSTRAP to make ASan available.
- Set RUSTFLAGS and C,CXXFLAGS properly.

* Quick fix for helper.py build_fuzzers. (google#3832)

* Parse project language and use in infra/helper.py (google#3834)

* Parse project language and use in infra/helper.py

* Fix exception message.

* Add FUZZING_LANGUAGE to build step. (google#3835)

* Add fuzzing language correctly during compile step. (google#3837)

* Remove unneeded rust hacks after google#3830. (google#3840)

* Fix missing FUZZING_LANGUAGE in coverage build. (google#3843)

* Use hardcoded FUZZING_LANGUAGE to unbreak CIFuzz. (google#3844)

* solidity: Disable Z3 build in dockerfile (google#3831)

* cifuzz: use pull_request.number instead of GITHUB_REF (google#3845)

Closes google#3732

* wasmtime: build fuzz targets with --all-features (google#3850)

This enables not only the binaryen-using fuzz targets, but also the peepmatic fuzz targets (which is necessary after bytecodealliance/wasmtime#1727).

* Relax project language requirement. (google#3846)

This is necessary for the bisector to be able to build older revisions.

Print a warning instead.

* libzmq: add maintainer, add UBSAN (google#3829)

* Add another maintainer to libzmq's CC list

* Enable UBSAN for libzmq

* libzmq: disable afl fuzzer, CI fails

* libsodium: do not let libsodium's autogen.sh download files from gnu.org

There is no sanity check and if the download fails because gnu.org is down
the build fails with unhelpful errors

* Fixed changes added in clang-11.0. (google#3852)

* Bump httplib2 from 0.11.3 to 0.18.0 in /infra/gcb (google#3853)

Bumps [httplib2](https://github.com/httplib2/httplib2) from 0.11.3 to 0.18.0.
- [Release notes](https://github.com/httplib2/httplib2/releases)
- [Changelog](https://github.com/httplib2/httplib2/blob/master/CHANGELOG)
- [Commits](httplib2/httplib2@v0.11.3...v0.18.0)

Signed-off-by: dependabot[bot] <[email protected]>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* [TiDB] initial integration (google#3849)

* [Minify] Initial integration (google#3848)

* Set rust flags always in compile step. (google#3859)

This is needed for projects that mix both rust and c/c++.

* Remove unneeded RUSTC_BOOTSTRAP since nightly is used

* [fasthttp] Initial integration (google#3858)

* [libfido2] bump libcbor version from 0.5.0 to 0.7.0 (google#3861)

* Fix cras build failure, use default rust nightly.

* Don't add Rust sanitizer flags when using ubsan or i386. (google#3862)

Rust sanitizer flags are not supported for these configs.
Fixes Cras and ecc-diff-fuzzer builds.

* [hermes] Initial setup for Hermes (google#3698)

* [poppler] Exercise a few more methods (google#3857)

* [minify] Moved build script upstream (google#3867)

* Use available nightly rust for spidermonkey build

* Use available rust nightly in spidermonkey-ufi

* Use available rust nightly in firefox

* [python3-libraries] Fix build (google#3869)

* Use latest git version. (google#3870)

Adds features needed by firefox and spidermonkey-ufi builds.

* libzmq: fix MSAN (google#3868)

* libzmq: build libsodium with --disable-asm to avoid false positives in MSAN checks

* libzmq: set autoconf install prefix to avoid /usr/local being added to the linker library paths

A non-working version of the standard library is installed in oss-fuzz's images
under /usr/local/lib. Using it breaks MSAN's tests with false positives.
Set the prefix in autoconf to something different from the default
/usr/local, as /lib is added by autoconf automatically to the linker
flags, which means this broken standard library is used instead of the
instrumented one in /usr/lib.

* build_specified_commit: revert to using cp. (google#3871)


rsync seems to have disappeared in the latest images somehow, and we
can't rely on it always existing.

* Don't add sanitizer=coverage in RUSTFLAGS

* Remove libpcap patch merged upstream (google#3865)

* Install Python 3.8.3 on builder image. (google#3874)

Part of fixing google#3756.

* [qt] Get a shallow clone of qtbase (google#3872)

Reduces the size by nearly 200 MB

* [qt] Add fuzzer for QImage::loadFromData() (google#3873)

* Fix jsoncpp build

* build_specified_commit: Don't replace gitdir if already relative. (google#3875)

Upgraded git broke this.

* [skia] Speculative build fix (google#3847)

* [stb] extend code coverage for stb_image (google#3784)

* [stb] extend code coverage for stb_image

* remove wget's from build.sh

* add wget's to Dockerfile

* fix Dockerfile

* [hermes] Fix coverage build (google#3877)

* Update email address to non-alias for clusterfuzz login (google#3878)

* add hosts and interns (google#3879)

Signed-off-by: Asra Ali <[email protected]>

* [qt] Don't install build-essential (google#3880)

It's in base-builder now.

* [hermes] Add CC for issues (google#3882)

* [systemd] turn off hongfuzz (google#3889)

See google#3887

* Remove libbz2-dev dependency installed in base-builder for python3 (google#3890)

* Remove libbz2-dev dependency installed in base-builder for python3

Fixes google#3888

* Revert "[systemd] turn off hongfuzz (google#3889)" (google#3891)

This reverts commit d638fac.

* Set up python in one docker layer, remove python deps. (google#3893)

* Set up python in one docker layer.

Address review comment in google#3890 (review)

* Remove all python dependencies, keep build-essential.

* Makes suricata work with rust sanitizers (google#3897)

* [firefox] Fix libFuzzer cloning process (google#3896)

* Fix spidermonkey-ufi build.

* [nanopb] Use $(which python3) instead of hardcoding /usr/bin/python3 (google#3895)

After the addition of Python 3.8 in google#3874, the default python3 is
now /usr/local/bin/python3. The nanopb Dockerfile hardcoded a path
of /usr/bin/python3, causing again problems of Python packages being
installed for different version than attempting to run with.

* Fix CIFuzz issue where targets assumed in OSS-Fuzz build if exists (google#3817)

Make some other changes:
1. Refactor fuzz_target.py and fuzz_target_test.py
2. Introduce pyfakefs and parameterized as dependencies and use them
in tests.
3. Fix infra-tests in CI so that they use installed dependencies

* Fix spidermonkey-ufi build

* Extend Zeek project auto_ccs (google#3898)

* [libgd] Add another fuzzer to libgd (google#3892)

* [qt] Add qtdeclarative (google#3901)

* [qt] Add qtdeclarative

* [qt] Ignore stdout from make

"The job exceeded the maximum log length, and has been terminated."

* Updating jsoncpp primary contact (google#3900)

* [php] Remove --enable-json (google#3899)

JSON is now always compiled in, and cannot be explicitly enabled.

* Don't create empty corpus archive as it wont unpack. (google#3903)

* Update email addresses for Prometheus (google#3905)

Signed-off-by: Julius Volz <[email protected]>

* [cryptofuzz] wolfCrypt: Build with support for AES-CFB, AES-OFB (google#3904)

* libzmq: enable honggfuzz (google#3909)

* Update Prometheus maintainer in Dockerfile (google#3906)

...to myself (Prometheus co-creator).

Signed-off-by: Julius Volz <[email protected]>

* Revert "[systemd] remove my non-gmail address (google#3606)" (google#3910)

This reverts commit 65dcabc.

* [GDAL] Move clone of dependencies to upstream repository (google#3911)

Cloning of build dependencies and patching is now done by
https://github.com/OSGeo/gdal/blob/master/gdal/fuzzers/build.sh

* bump libtorrent to fuzz the 2.0 release branch (google#3913)

* [FFmpeg] install rsync as it is required for the seed corpus (google#3912)

Fixes: Issue 22500 (build failure)

* Fix builds_status cron exception. (google#3914)

When build log is not found, skip it and avoid 404.
Fixes exception
```
Traceback (most recent call last):
  File "oss-fuzz/infra/gcb/builds_status.py", line 243, in <module>
    main()
  File "oss-fuzz/infra/gcb/builds_status.py", line 228, in main
    status_filename='status.json')
  File "oss-fuzz/infra/gcb/builds_status.py", line 159, in update_build_status
    last_build = find_last_build(builds, project, build_tag_suffix)
  File "oss-fuzz/infra/gcb/builds_status.py", line 102, in find_last_build
    log.download_to_filename(f.name)
  File "/var/jenkins_home/workspace/infra/builds_status/ENV/local/lib/python2.7/site-packages/google/cloud/storage/blob.py", line 565, in download_to_filename
    file_obj, client=client, start=start, end=end)
  File "/var/jenkins_home/workspace/infra/builds_status/ENV/local/lib/python2.7/site-packages/google/cloud/storage/blob.py", line 537, in download_to_file
    _raise_from_invalid_response(exc)
  File "/var/jenkins_home/workspace/infra/builds_status/ENV/local/lib/python2.7/site-packages/google/cloud/storage/blob.py", line 1873, in _raise_from_invalid_response
    raise exceptions.from_http_response(error.response)
google.api_core.exceptions.NotFound: 404 GET https://www.googleapis.com/download/storage/v1/b/oss-fuzz-gcb-logs/o/log-9fca5dab-72bf-4970-9557-86b93ede51e0.txt?alt=media: No such object: oss-fuzz-gcb-logs/log-9fca5dab-72bf-4970-9557-86b93ede51e0.txt
Build step 'Execute shell' marked build as failure
Finished: FAILURE
```

* Retry building project images in build_specified_commit. (google#3915)

To mitigate transient network issues.

* Prometheus: Don't use WORKDIR $SRC (google#3908)

This makes build_fuzzers work with local checkouts.

Without this, it complains with 'Cannot use local checkout with "WORKDIR
/src".'

Signed-off-by: Julien Pivotto <[email protected]>

* [systemd] add DaanDeMeyer's address (google#3916)

* [muparser] initial integration (google#3814)

* [haproxy] Fix build failures. (google#3884)

* Updated the haproxy fuzzers to build again.

* The frame decoder needs additional updates since we need to call init_h2 to initialise a memory pool. Disabling this for now as this is a larger change in the code base and will fix up in the coming week.

* Fixed hpack decode.

* Updated the yaml since we dont want memory sanitizer.

* Update project.yaml (google#3917)

* install rsync (google#3920)

* [LibRaw] Initial integration (google#3918)

* Init integration

* Fix formatting

* Add size check

* Update maintainers

* PR Feedback

* Add newline

* Disable UBSan vptr

* Disable building examples

* Remove disabling UBSan vptr

Co-authored-by: Jamie Pinheiro <[email protected]>

* ecc-diff-fuzzer buils nettle without openssl (google#3922)

* Update Dockerfile (google#3923)

* Added contact to zlib-ng project auto_ccs. (google#3924)

* [qt] Add pdf to image corpus (google#3926)

* [haproxy] Minor fix (google#3928)

* Revert "[qt] Add pdf to image corpus (google#3926)" (google#3929)

To handle PDFs, QImage requires qtwebengine
which doesn't build statically.

This reverts commit 934c770.

* Fix TensorFlow build (google#3930)

* Remove [email protected] as he left Google

* Use python3 as python2 is deprecated

* Need to manually install numpy now as it is used in the toolchain

* Use bazelisk instead of the grep configure -> get Bazel version -> curl hack

* Remove C++11 constraint as TF now builds and uses C++14

* Handle review

* Remove source sed/replace as it is no longer needed

Co-authored-by: Guido Vranken <[email protected]>
Co-authored-by: AdamKorcz <[email protected]>
Co-authored-by: Daniel Salzman <[email protected]>
Co-authored-by: Abhishek Arya <[email protected]>
Co-authored-by: Oliver Chang <[email protected]>
Co-authored-by: Bhargava Shastry <[email protected]>
Co-authored-by: Evgeny Vereshchagin <[email protected]>
Co-authored-by: Nick Fitzgerald <[email protected]>
Co-authored-by: Luca Boccassi <[email protected]>
Co-authored-by: DavidKorczynski <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Gabriel Kihlman <[email protected]>
Co-authored-by: neildhar <[email protected]>
Co-authored-by: tsdgeos <[email protected]>
Co-authored-by: Catena cyber <[email protected]>
Co-authored-by: Robert Löhning <[email protected]>
Co-authored-by: Kevin Lubick <[email protected]>
Co-authored-by: Randy <[email protected]>
Co-authored-by: Will <[email protected]>
Co-authored-by: asraa <[email protected]>
Co-authored-by: Christian Holler (:decoder) <[email protected]>
Co-authored-by: Petteri Aimonen <[email protected]>
Co-authored-by: jonathanmetzman <[email protected]>
Co-authored-by: Jon Siwek <[email protected]>
Co-authored-by: Google AutoFuzz Team <[email protected]>
Co-authored-by: kabeer27 <[email protected]>
Co-authored-by: Nikita Popov <[email protected]>
Co-authored-by: Julius Volz <[email protected]>
Co-authored-by: Even Rouault <[email protected]>
Co-authored-by: Arvid Norberg <[email protected]>
Co-authored-by: Michael Niedermayer <[email protected]>
Co-authored-by: Julien Pivotto <[email protected]>
Co-authored-by: Ingo Berg <[email protected]>
Co-authored-by: Teju Nareddy <[email protected]>
Co-authored-by: Jamie Pinheiro <[email protected]>
Co-authored-by: Jamie Pinheiro <[email protected]>
Co-authored-by: Nathan Moinvaziri <[email protected]>
Co-authored-by: Mihai Maruseac <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants