forked from quic-go/quic-go
run fuzzit
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
dist: trusty
|
||||
dist: xenial
|
||||
group: travis_latest
|
||||
|
||||
language: go
|
||||
@@ -13,8 +13,11 @@ env:
|
||||
global:
|
||||
- TIMESCALE_FACTOR=20
|
||||
- GO111MODULE=on
|
||||
# FUZZIT_API_KEY
|
||||
- secure: "eb4Z/iUit+B6KTcKOKxfBQUyTUK+X2HiEXmT8pdReDnC1Q4ciq7NaW/v0nYq6aGMhbOFCVb1XEpST99+LlCxSyJYfH5ZYe/QtwT6/SoRkHyREhkk5UHxu/6CCozgZum9LN1YIi9piUMSKuC6Vh1hiRk5/DQUtTGukbiSmynj+PZddeO71f75EuZpa45cT0kd62HCcr6GRAtkx4BIH00JaMRihWwtFs6WaZG5N9pjV/FPCp+q/J5mKaSUKvCNv2sgwkKC/VqG8XOxBjrhI2Z9s/wGgpf4/BiTrN3D9+qodql2OfhHmRC65CRzOmXxdwXGj0zqWB2mtjcY3tws4XxuDkiChxTanwqDQQ92WLIgCkyazEaLDaFvfCMSkHuLcpWHSIrs1yeKJ2ko5vrvKQ1fsWgyXXtDaG+sq6YymHrCFtL83YY1aFbDt0q22+HFvhEqYdkKIglTpYdcyM+UoT57UagGwU81crXKyYqyCfvsHQM5ieNTBg01ZKEZYiie731ytB4W7duhp5dz5ZkezeZLtjX4NTbOtRRq8qhh9fDMAcuuCbLC/hkhBL9oRRlcPJaRdQKQd8QryS/pxwTrqtlNZ6X+GFjNls49kahdMThaigyocCzAsVFVXQTCUluGIqjDLTFlYxfDkGfkFK3k3bT6KkM5rQbfWIjdpkMRJyO0jR4="
|
||||
matrix:
|
||||
- TRAVIS_GOARCH=amd64 TESTMODE=lint
|
||||
- TRAVIS_GOARCH=amd64 TESTMODE=fuzz
|
||||
- TRAVIS_GOARCH=amd64 TESTMODE=unit
|
||||
- TRAVIS_GOARCH=amd64 TESTMODE=integration
|
||||
- TRAVIS_GOARCH=386 TESTMODE=unit
|
||||
|
||||
30
.travis/fuzzit.sh
Executable file
30
.travis/fuzzit.sh
Executable file
@@ -0,0 +1,30 @@
|
||||
if [ "$TRAVIS_PULL_REQUEST" = "false" ]; then
|
||||
export FUZZING_TYPE="fuzzing"
|
||||
export BRANCH=${TRAVIS_BRANCH}
|
||||
else
|
||||
export FUZZING_TYPE="local-regression"
|
||||
export BRANCH="PR-${TRAVIS_PULL_REQUEST}"
|
||||
fi
|
||||
|
||||
## Build fuzzing targets
|
||||
## go-fuzz doesn't support modules for now, so ensure we do everything
|
||||
## in the old style GOPATH way
|
||||
export GO111MODULE="off"
|
||||
|
||||
## Install go-fuzz
|
||||
go get -u github.com/dvyukov/go-fuzz/go-fuzz github.com/dvyukov/go-fuzz/go-fuzz-build
|
||||
|
||||
# install quic-go
|
||||
go get -d -v -u ./...
|
||||
|
||||
cd fuzzing/header
|
||||
|
||||
go-fuzz-build -libfuzzer -o fuzz-header.a .
|
||||
clang -fsanitize=fuzzer fuzz-header.a -o fuzz-header
|
||||
|
||||
## Install fuzzit
|
||||
wget -q -O fuzzit https://github.com/fuzzitdev/fuzzit/releases/download/v2.4.23/fuzzit_Linux_x86_64
|
||||
chmod a+x fuzzit
|
||||
|
||||
# Create the job
|
||||
./fuzzit create job --type ${FUZZING_TYPE} --branch ${BRANCH} --revision=${TRAVIS_COMMIT} quic-go/fuzz-header fuzz-header
|
||||
@@ -6,6 +6,10 @@ if [ ${TESTMODE} == "lint" ]; then
|
||||
./bin/golangci-lint run ./...
|
||||
fi
|
||||
|
||||
if [ ${TESTMODE} == "fuzz" ]; then
|
||||
.travis/fuzzit.sh
|
||||
fi
|
||||
|
||||
if [ ${TESTMODE} == "unit" ]; then
|
||||
ginkgo -r -v -cover -randomizeAllSpecs -randomizeSuites -trace -skipPackage integrationtests,benchmark
|
||||
fi
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
[](https://circleci.com/gh/lucas-clemente/quic-go)
|
||||
[](https://ci.appveyor.com/project/lucas-clemente/quic-go/branch/master)
|
||||
[](https://codecov.io/gh/lucas-clemente/quic-go/)
|
||||
[](https://fuzzit.dev)
|
||||
|
||||
quic-go is an implementation of the [QUIC](https://en.wikipedia.org/wiki/QUIC) protocol in Go. It roughly implements the [IETF QUIC draft](https://github.com/quicwg/base-drafts), although we don't fully support any of the draft versions at the moment.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user