diff options
| author | Dmitry Vyukov <dvyukov@google.com> | 2019-03-14 14:17:31 +0100 |
|---|---|---|
| committer | Dmitry Vyukov <dvyukov@google.com> | 2019-03-14 14:55:59 +0100 |
| commit | d23e90a7b44b62b0d3b116a6d30849ce66051529 (patch) | |
| tree | 1bdbc7c9d1d8e0b4f635a896147e26f1ad42b457 /docs/linux | |
| parent | 1e8208402d9c84d5f3ee6e33b63db8befbf61032 (diff) | |
all: switch to Go 1.12
Differences in code formatting between Go versions cause constant
problems for us (https://github.com/golang/go/issues/25161).
Currently we support 1.9 and 1.10. Switch to newer 1.11 and 1.12.
Fixes #1013
Diffstat (limited to 'docs/linux')
| -rw-r--r-- | docs/linux/setup.md | 2 | ||||
| -rw-r--r-- | docs/linux/setup_linux-host_android-device_arm64-kernel.md | 3 | ||||
| -rw-r--r-- | docs/linux/setup_linux-host_isolated.md | 20 | ||||
| -rw-r--r-- | docs/linux/setup_ubuntu-host_android-device_arm32-kernel.md | 27 | ||||
| -rw-r--r-- | docs/linux/setup_ubuntu-host_qemu-vm_x86-64-kernel.md | 22 |
5 files changed, 4 insertions, 70 deletions
diff --git a/docs/linux/setup.md b/docs/linux/setup.md index 4f18157cf..e7d976388 100644 --- a/docs/linux/setup.md +++ b/docs/linux/setup.md @@ -66,7 +66,7 @@ For some details on fuzzing the kernel on an Android device check out [this page ### Syzkaller -`syzkaller` is written in [Go](https://golang.org), a `Go 1.9+` toolchain is required for build. +`syzkaller` is written in [Go](https://golang.org), a `Go 1.11+` toolchain is required for build. Go distribution can be downloaded from https://golang.org/dl/. Unpack Go into a directory, say, `$HOME/goroot`. diff --git a/docs/linux/setup_linux-host_android-device_arm64-kernel.md b/docs/linux/setup_linux-host_android-device_arm64-kernel.md index 77ffa6eaa..4880020d2 100644 --- a/docs/linux/setup_linux-host_android-device_arm64-kernel.md +++ b/docs/linux/setup_linux-host_android-device_arm64-kernel.md @@ -1,11 +1,8 @@ # Setup: Linux or Mac OS host, Android device, arm64 kernel Prerequisites: - - go1.8+ toolchain (can be downloaded from [here](https://golang.org/dl/)) - Android Serial Cable or [Suzy-Q](https://chromium.googlesource.com/chromiumos/platform/ec/+/master/docs/case_closed_debugging.md) device to capture console output is preferable but optional. syzkaller can work with normal USB cable as well, but that can be somewhat unreliable and turn lots of crashes into "lost connection to test machine" crashes with no additional info. - - Build syzkaller - In case you have old Android `/dev/ion` driver: ```sh diff --git a/docs/linux/setup_linux-host_isolated.md b/docs/linux/setup_linux-host_isolated.md index 0ee3beab5..ec12fa101 100644 --- a/docs/linux/setup_linux-host_isolated.md +++ b/docs/linux/setup_linux-host_isolated.md @@ -53,28 +53,8 @@ Host * Before fuzzing, connect to the machine and keep the connection open so all scp and ssh usage will reuse it. -## Go - -Install Go 1.8.1: -``` bash -wget https://storage.googleapis.com/golang/go1.8.1.linux-amd64.tar.gz -tar -xf go1.8.1.linux-amd64.tar.gz -mv go goroot -export GOROOT=`pwd`/goroot -export PATH=$PATH:$GOROOT/bin -mkdir gopath -export GOPATH=`pwd`/gopath -``` - ## Syzkaller -Get and build syzkaller: -``` bash -go get -u -d github.com/google/syzkaller/... -cd gopath/src/github.com/google/syzkaller/ -make -``` - Use the following config: ``` { diff --git a/docs/linux/setup_ubuntu-host_android-device_arm32-kernel.md b/docs/linux/setup_ubuntu-host_android-device_arm32-kernel.md index 8f1618e68..1c479c8b0 100644 --- a/docs/linux/setup_ubuntu-host_android-device_arm32-kernel.md +++ b/docs/linux/setup_ubuntu-host_android-device_arm32-kernel.md @@ -15,37 +15,14 @@ These were tested on an NXP Pico-Pi-IMX7D following the instructions [here](http If feasible, recompile and reinstall the Linux kernel with any debugging options available on your board. -## Install Go - -Install Go as follows: -``` bash -wget https://storage.googleapis.com/golang/go1.9.2.linux-amd64.tar.gz -tar -xf go1.9.2.linux-amd64.tar.gz -export PATH=`pwd`/go/bin:$PATH -mkdir gopath -export GOPATH=`pwd`/gopath -``` - -## Build syzkaller code - -### Initialize a working directory and set up environment variables - -Create a working directory. Also make sure GOROOT, GOPATH are defined and exported as instructed earlier. - -``` bash -go get -u -d github.com/google/syzkaller/... -cd gopath/src/github.com/google/syzkaller/ -mkdir workdir -``` - -### Build syzkaller executables +## Build syzkaller executables Run make. ``` make TARGETOS=linux TARGETARCH=arm ``` -### Create a manager configuration file +## Create a manager configuration file Create a manager config myboard.cfg, replacing the environment variables `$GOPATH`, `$KERNEL` (path to kernel build dir for the ARM32 board), and `$DEVICES` (the device ID for your board as reported by adb devices) with their actual values. Change any other flags as needed for your ARM board. diff --git a/docs/linux/setup_ubuntu-host_qemu-vm_x86-64-kernel.md b/docs/linux/setup_ubuntu-host_qemu-vm_x86-64-kernel.md index d2f3c6ced..c91af4625 100644 --- a/docs/linux/setup_ubuntu-host_qemu-vm_x86-64-kernel.md +++ b/docs/linux/setup_ubuntu-host_qemu-vm_x86-64-kernel.md @@ -196,29 +196,8 @@ To kill the running QEMU instance: kill $(cat vm.pid) ``` -## Go - -Install Go 1.8.1: -``` bash -wget https://storage.googleapis.com/golang/go1.8.1.linux-amd64.tar.gz -tar -xf go1.8.1.linux-amd64.tar.gz -mv go goroot -export GOROOT=`pwd`/goroot -export PATH=$GOROOT/bin:$PATH -mkdir gopath -export GOPATH=`pwd`/gopath -``` - ## syzkaller -Get and build syzkaller: -``` bash -go get -u -d github.com/google/syzkaller/... -cd gopath/src/github.com/google/syzkaller/ -mkdir workdir -make -``` - Create a manager config like the following, replacing the environment variables `$GOPATH`, `$KERNEL` and `$IMAGE` with their actual values. ``` @@ -243,6 +222,7 @@ variables `$GOPATH`, `$KERNEL` and `$IMAGE` with their actual values. Run syzkaller manager: ``` bash +mkdir workdir ./bin/syz-manager -config=my.cfg ``` |
