summary refs log tree commit diff
path: root/CHANGES
blob: b588b5c4da01cf4e888f6966dec50690e4b21f98 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
Tag: 1.0.0

	Build recipe rework

	Additions:
	- Compliance with REUSE 3.0 has been added

	Removals:
	- Support for Dyninst < 10 has been dropped
	- Command-line options -dfl have been removed


Remote: https://github.com/vanhauser-thc/afl-dyninst
Date: 2021-05-21

 - performance level 1 is now standard and only -x needed for extra performance
   flags. There was no disadvantage in previous level 1 so its default now.
 - removed -l option because of bugs in the implementation, bugs in dyninst
   and behavior of dyninst that was not good for our purpose. Use -r instead
 - Only compile dyninst9 bug workaround when necessary
 - added -I option (only instrument specific functions)
 - updated the README for guidance to build with dyninst version 10
 - added support for dyninst version 10
 - added -x performance optimization option and a speed enhancement patch that
   is always active. before this afl-dyninst was meh, now it is OK.
   top speed is now ~110% on stock afl-dyninst and ~65% on stock afl-gcc
 - -e option now also understands function names, not only 0x1234 addresses
 - searches for multiple entrypoints now: main, init, start and _NAME variants
 - afl-dyninst now works fine with AARCH64 and PPC :)
 - more verbose output, -vv -vvv support
 => at this stage did talos-vulndev/afl-dyninst the last pull from this repo
 - fixed some typos
 - renamed afl-fuzz.sh to afl-fuzz-dyninst.sh and make install
   installs now the scripts
 - added -E switch to force a program exit at specific addresses
 - added -D switch which does not do basic block instrumentation
 - the -S switch can now be specified several times
 - checks the dyninst version and comments on the -f option
 - added -S switch to skip instrumenting a specific function
 - added make install target
 - updated README
 - Fix for programs that were unable to print to stdout after instrumentation
 - added -f switch to fix a bug in dyninst where sometimes the edi/rdi
   register is not saved which is used in the instrumentation function
   when a function is using edi/rdi for parameter passing
 - added -m switch to only instrument basic blocks of a minimum size
 - code beautifications, more detailed output, spelling fixes
 - added afl-dyninst.sh and afl-fuzz.sh helper scripts which presets
   the necessary environment variables

Remote: https://github.com/talos-vulndev/afl-dyninst
Date: 2018-03-17