Commit Graph

242 Commits

Author SHA1 Message Date
Dmitry Vyukov
7daaa06d53 dashboard/app: restrict patch testing result CC list
Currently dashboard sends patch testing result to full bug CC list
(which includes kernel mailing lists). This is unnecessary and causes
problems with patchwork.
Reply only to people in the testing request CC list
(adding our mailing list if it was missing).

Fixes #526
2018-02-22 13:08:34 +01:00
Dmitry Vyukov
e5db1f4f47
Update issue_template.txt 2018-02-20 20:21:07 +01:00
Dmitry Vyukov
632a8c2c6c
Update syzbot.md 2018-02-02 09:49:21 +01:00
Dmitry Vyukov
02553e2292
Update found_bugs.md 2018-01-30 15:23:49 +01:00
Dmitry Vyukov
a899be78f5
Update found_bugs.md 2018-01-30 13:15:30 +01:00
Dmitry Vyukov
6b2a715e62
Update found_bugs.md 2018-01-25 09:11:47 +01:00
Dmitry Vyukov
aeb24072ff
Update found_bugs.md 2018-01-22 12:09:16 +01:00
Dmitry Vyukov
3661e26e74 pkg/compiler: support non-zero-terminated strings
Add stringnoz type.
2018-01-18 18:48:39 +01:00
Dmitry Vyukov
9aaf64b374 docs: clarify that syzbot testing can be used for debugging 2018-01-16 13:37:14 +01:00
Dmitry Vyukov
5585946e22 pkg/compiler: support void type
"void": type with static size 0
	mostly useful inside of templates and varlen unions
	can't be syscall argument
2018-01-13 12:52:09 +01:00
Dmitry Vyukov
6b52293f4d pkg/compiler: support type templates
Netlink descriptions contain tons of code duplication,
and need much more for proper descriptions. Introduce
type templates to simplify writing such descriptions
and remove code duplication.

Note: type templates are experimental, have poor error handling
and are subject to change.

Type templates can be declared as follows:

```
type buffer[DIR] ptr[DIR, array[int8]]
type fileoff[BASE] BASE
type nlattr[TYPE, PAYLOAD] {
	nla_len		len[parent, int16]
	nla_type	const[TYPE, int16]
	payload		PAYLOAD
} [align_4]
```

and later used as follows:

```
syscall(a buffer[in], b fileoff[int64], c ptr[in, nlattr[FOO, int32]])
```
2018-01-13 12:52:09 +01:00
Dmitry Vyukov
7166c86520 sys/linux: add ion and ashmem devices support
Note: ion supercedes the old android interface,
which is moved to sys/android.
2018-01-09 21:24:28 +01:00
Dmitry Vyukov
5aac8b06c6
Update found_bugs.md 2018-01-09 19:57:15 +01:00
Dmitry Vyukov
a7899a5895
Update found_bugs.md 2018-01-09 17:12:16 +01:00
Dmitry Vyukov
66288e0e0b pkg/compiler: add builtin bool type aliases
This adds builtin:

type bool8 int8[0:1]
type bool16 int16[0:1]
type bool32 int32[0:1]
type bool64 int64[0:1]
type boolptr intptr[0:1]

We used to use just int's for bools.
But bool types provide several advantages:
 - make true/false probability equal
 - improve description expressiveness
 - reduce search space (we will take advantage of this later)
2018-01-08 12:52:31 +01:00
Dmitry Vyukov
402a0dc87e sys: support type aliases (aka typedefs)
Complex types that are often repeated can be given short type aliases using the
following syntax:

```
type identifier underlying_type
```

For example:

```
type signalno int32[0:65]
type net_port proc[20000, 4, int16be]
```

Then, type alias can be used instead of the underlying type in any contexts.
Underlying type needs to be described as if it's a struct field, that is,
with the base type if it's required. However, type alias can be used as syscall
arguments as well. Underlying types are currently restricted to integer types,
`ptr`, `ptr64`, `const`, `flags` and `proc` types.
2018-01-08 12:52:31 +01:00
Dmitry Vyukov
8e6b9eeb27 pkg/compiler: add bitsize type
This is need for few crypto/xfrm descriptions.
2018-01-06 17:40:36 +01:00
Dmitry Vyukov
6f03c35620 dashboard/app: extract fixing tags from commits
Support the new scheme of associating fixing commits with bugs.
Now we provide a tag along the lines of:

Reported-by: <syzbot+a4a91f6fc35e102@syzkaller.appspotmail.com>

The tag is supposed to be added to the commit.
Then we parse commit logs and extract these tags.

The final part on the dashboard is not ready yet,
but syz-ci should already parse and send the tags.
2017-12-27 09:09:18 +01:00
Tim Tianyang Chen
eaadba986d syz-manager: enable sending group emails
Email_Addr variable has been changed to Email_Addrs that contains
a list of recipient.

Signed-off-by: Tim Tianyang Chen <soapcn@gmail.com>
2017-12-21 10:27:12 +01:00
Dmitry Vyukov
90a46995a8 Makefile: fix Android builds
There are 2 known problems with current Android support:
1. It does not work with newer NDK
(happens on every NDK update).
2. Dynamic Go binaries do not start on Android emulator.

Drop special Android support and just build static linux binaries.

For context see:
https://groups.google.com/forum/#!msg/syzkaller/etg1ZJmTMzg/NYE-yjxxAQAJ
https://groups.google.com/d/msg/syzkaller/8KjCYWslTFY/1oTXn5tTAgAJ

Fixes #478
2017-12-20 10:52:19 +01:00
Dmitry Vyukov
b6f0c91b3a
Update found_bugs.md 2017-12-16 08:25:34 +01:00
Tim Tianyang Chen
ac20b98c1b syz-manager: add simple email support
Users can specify an email address to reveive notifications when a
bug is discovered for the first time, without setting up a full fledged
dashboard. The supported mailer is mailx.

Signed-off-by: Tim Tianyang Chen <soapcn@gmail.com>
2017-12-14 08:57:27 +01:00
Andrey Konovalov
ce7f2399c4
Update found_bugs_usb.md 2017-12-12 16:57:20 +01:00
Andrey Konovalov
7e77969996
Update found_bugs_usb.md 2017-12-12 16:57:07 +01:00
Dmitry Vyukov
8e1e4403ac
Update syzbot.md 2017-12-08 18:45:02 +01:00
Dmitry Vyukov
221ec6c697 docs: clarify what is syzkaller config parameter 2017-12-08 13:18:37 +01:00
Ed Maste
1a6a7478c2 docs: use 'c++' to build on FreeBSD
Building the executor via `gcc executor/executor_freebsd.cc ...`
requires that a GCC package first be installed on the FreeBSD VM image.
The FreeBSD base system comes with Clang already installed, so we can
build via `c++ executor/executor_freebsd.cc ...` and avoid having to
install additional packages.
2017-11-29 08:55:05 +01:00
Andrey Konovalov
cb27b030b5
Update found_bugs_usb.md 2017-11-23 17:15:51 +01:00
Andrey Konovalov
5378ce720e
Update found_bugs_usb.md 2017-11-23 17:07:17 +01:00
Atul Prakash
9113005830 docs/linux: added and updated docs for ARM32 architecture
docs/linux: Also fixed link and spacing in arm32 docs
2017-11-22 10:17:35 +01:00
Andrey Konovalov
d4d14b030e
Update found_bugs_usb.md 2017-11-21 15:05:03 +01:00
Andrey Konovalov
7401db5302
Update found_bugs_usb.md 2017-11-21 14:55:21 +01:00
Dmitry Vyukov
e93131fcce dashboard/app: remember job links
Remember link for jobs.
Check that mailing list is in CC when we accept commands.
2017-11-19 11:58:17 +01:00
Dmitry Vyukov
bf82068946 dashboard/app: assorted improvements/fixes for patch testing
Fix a bunch of bugs after testing.
Also update docs for patch testing.
2017-11-17 21:04:40 +01:00
Andrey Konovalov
699e0a68ad
Update found_bugs_usb.md 2017-11-08 00:03:26 +01:00
Andrey Konovalov
ef57962634
Update contributing.md 2017-11-07 14:23:57 +01:00
Andrey Konovalov
102fd70169
Update found_bugs_usb.md 2017-11-07 14:05:28 +01:00
Andrey Konovalov
4baddb8d39
Update found_bugs_usb.md 2017-11-07 14:01:33 +01:00
Andrey Konovalov
262ab53d85
Update found_bugs_usb.md 2017-11-07 13:59:04 +01:00
Andrey Konovalov
085e9f8d56
Update found_bugs_usb.md 2017-11-07 13:51:40 +01:00
Andrey Konovalov
d49979f75f
Update found_bugs_usb.md 2017-11-07 13:34:40 +01:00
Dmitry Vyukov
8bac040e2a docs: update path to syz-execprog binary 2017-11-07 10:39:39 +01:00
Andrey Konovalov
4340937250
Update found_bugs_usb.md 2017-11-06 16:23:50 +01:00
Andrey Konovalov
0b00174908
Update found_bugs_usb.md 2017-11-06 14:30:51 +01:00
Andrey Konovalov
6972c447af
Update found_bugs_usb.md 2017-11-06 13:20:02 +01:00
Andrey Konovalov
ff12ae316d
Update found_bugs_usb.md 2017-11-04 21:53:06 +01:00
Andrey Konovalov
c78b455b14
Update found_bugs_usb.md 2017-11-04 18:37:14 +01:00
Andrey Konovalov
7c537a4b3d
Update found_bugs_usb.md 2017-11-03 15:48:10 +01:00
Dmitry Vyukov
e930d6f675
Update contributing.md 2017-11-03 13:16:21 +03:00
Andrey Konovalov
02b8363d92
Update found_bugs_usb.md 2017-11-02 21:57:17 +01:00
Andrey Konovalov
d13dbe4be1
Update found_bugs_usb.md 2017-11-02 21:03:35 +01:00
Andrey Konovalov
66e5c44375
Update found_bugs_usb.md 2017-11-02 17:28:12 +01:00
Andrey Konovalov
9814901086
Update found_bugs_usb.md 2017-11-02 17:11:13 +01:00
Andrey Konovalov
d8cc0b2c59
Update found_bugs_usb.md 2017-11-02 16:21:16 +01:00
Andrey Konovalov
d255aac955
Update found_bugs_usb.md 2017-11-02 16:20:37 +01:00
Andrey Konovalov
e9056a1546
Update external_fuzzing_network.md 2017-11-02 16:16:54 +01:00
Andrey Konovalov
2494cc50f5
Update found_bugs_usb.md 2017-11-02 16:10:52 +01:00
Andrey Konovalov
ebfe42c394
Update found_bugs.md 2017-11-02 16:06:19 +01:00
Andrey Konovalov
3c214efbf4
Update found_bugs_usb.md 2017-11-02 15:59:48 +01:00
Andrey Konovalov
dab7524e27
Update found_bugs_usb.md 2017-11-02 15:18:10 +01:00
Dmitry Vyukov
e511d9f8d8 docs: add found_bugs for akaros 2017-11-01 20:41:02 +03:00
Magicansk
e775312e81 Update troubleshooting.md
Fixed MD syntax.
2017-11-01 10:51:24 +03:00
Wei Wei
5b3a76c9f8 docs: choose iproute2 to use *ip neigh add* command when connecting VM with buildroot v2017.02.6 2017-10-30 14:45:26 +01:00
Andrey Konovalov
a35d18d5c5
Update external_fuzzing_network.md 2017-10-30 13:06:16 +01:00
Andrey Konovalov
a9b8c06dee
Update external_fuzzing_network.md 2017-10-30 13:05:13 +01:00
Andrey Konovalov
80c748800e docs: assorted improvements 2017-10-27 15:39:00 +02:00
Andrey Konovalov
06a268ea21 docs: add doc on external network fuzzing 2017-10-27 15:39:00 +02:00
Andrey Konovalov
127b1dd85c docs: move linux kernel specific docs to docs/linux/ dir 2017-10-27 10:04:34 +02:00
Andrey Konovalov
26d265c811 docs, tools: add local link checker
This commit adds tools/check_links.py script, that checks that all local
links from documentation files are valid; fixes some of the invalid links
that we had; and makes travis buildbot check them as well.
2017-10-27 10:04:34 +02:00
Dmitry Vyukov
0a4d6e56b9 Update syzbot.md 2017-10-26 18:12:36 +02:00
Dmitry Vyukov
75cdcbe159 Update syzbot.md 2017-10-26 10:29:03 +02:00
Andrey Konovalov
0c732b810d Update setup_ubuntu-host_qemu-vm_x86-64-kernel.md 2017-10-26 00:03:50 +02:00
Utkarsh Anand
3f955eba7f Lots of changes to sys/netbsd (#397)
* Lots of changes to sys/netbsd:
- Removed a few syscalls that did not have proper constants defined.
- Autogenerated *.const files.
- Removed a few types like uid and gid, that were not available.
- Ran make generate

* Few changes for NetBSD support:
- Added sys/netbsd/init.go
- Added netbsd to sys/sys.go

* Fix order in sys/sys.go

* Update documentation for NetBSD
2017-10-25 09:27:47 +02:00
Andrey Konovalov
3d7d860fba Update found_bugs_usb.md 2017-10-24 17:03:46 +02:00
Dmitry Vyukov
01191dcf5d Update syzbot.md 2017-10-24 13:30:53 +02:00
Andrey Konovalov
7a28007ebe Update found_bugs_usb.md 2017-10-24 13:20:00 +02:00
Dmitry Vyukov
5009f8ec62 Update syzbot.md 2017-10-24 13:17:14 +02:00
Andrey Konovalov
92f543f08a Update found_bugs_usb.md 2017-10-23 16:43:19 +02:00
Utkarsh Anand
9a70df4192 Added documentation for NetBSD.
- Added a new file that documents the image preparation and running instructions for NetBSD.
2017-10-23 16:14:46 +02:00
Andrey Konovalov
afeb98ca65 Update found_bugs_usb.md 2017-10-23 13:25:21 +02:00
LeadroyaL
4d9c071338 use absolute link 2017-10-20 10:27:24 +02:00
LeadroyaL
534e07edeb docs: fix configuration documentation 2017-10-20 10:27:24 +02:00
Dmitry Vyukov
355f57c5fb Update freebsd.md 2017-10-19 14:34:48 +02:00
Dmitry Vyukov
b8d21896b6 Delete issue_template.md 2017-10-19 14:27:44 +02:00
Dmitry Vyukov
d1fdae0c34 Create issue_template.txt 2017-10-19 14:27:36 +02:00
Dmitry Vyukov
f7e3d40e6f Update freebsd.md 2017-10-19 13:31:40 +02:00
Dmitry Vyukov
d629e2b7fe Update freebsd.md 2017-10-19 13:28:49 +02:00
Andrey Konovalov
10c53cfcdb Update found_bugs_usb.md 2017-10-19 13:13:56 +02:00
Andrey Konovalov
5776783af1 Update found_bugs_usb.md 2017-10-18 14:16:38 +02:00
Dmitry Vyukov
0c3dda40b8 Update contributing.md 2017-10-18 12:31:05 +02:00
Dmitry Vyukov
7ba02b7e21 Update pull_request_template.txt 2017-10-18 12:26:12 +02:00
Dmitry Vyukov
21c4900972 Update pull_request_template.txt 2017-10-18 12:25:15 +02:00
Dmitry Vyukov
1ba1282960 Create pull_request_template.txt 2017-10-18 12:23:12 +02:00
Dmitry Vyukov
7fdc7eba93 Create issue_template.md 2017-10-18 12:14:53 +02:00
Dmitry Vyukov
83d9b33c5b Update contributing.md 2017-10-18 12:07:21 +02:00
Willem de Bruijn
b69d27d17e docs: minor updates to x86_64 ubuntu setup instruction 2017-10-17 15:26:15 +02:00
Dmitry Vyukov
a1bdb604cc syz-manager: extend periodic messages
Add coverage and number of reproducing programs to the periodic messages.
When all machines are busy reproducing crashes, it appears that
syz-manager hanged as number of executed programs does not increase.
Coverage is just a nice characteristic.
Also print machine check message, it appears once and contains useful info.
2017-10-17 15:00:01 +02:00
Dmitry Vyukov
493f7afa4b docs: add some info about freebsd 2017-10-17 13:56:29 +02:00
Dmitry Vyukov
85b1f93f8d executor, pkg/ipc: unify ipc protocol between linux and other OSes
We currently use more complex and functional protocol on linux,
and a simple ad-hoc protocol on other OSes.
This leads to code duplication in both ipc and executor.
Linux supports coverage, shared memory communication and fork server,
which would also be useful for most other OSes.

Unify communication protocol and parametrize it by
(1) use of shmem or only pipes, (2) use of fork server.

This reduces duplication in ipc and executor and will
allow to support the useful features for other OSes easily.

Finally, this fixes akaros support as it currently uses
syz-stress running on host (linux) and executor running on akaros.
2017-10-16 14:21:54 +02:00
Dmitry Vyukov
d158fb9d3b executor: add akaros support
Does not work yet, also needs ipc changes.
2017-10-16 14:21:54 +02:00