72a9247
Name:          american-fuzzy-lop
86d3cf6
Version:       2.16b
f88385c
Release:       1%{?dist}
72a9247
72a9247
Summary:       Practical, instrumentation-driven fuzzer for binary formats
72a9247
72a9247
License:       ASL 2.0
72a9247
72a9247
URL:           http://lcamtuf.coredump.cx/afl/
de5c58f
207f323
Source0:       afl-%{version}.tgz
72a9247
72a9247
# Allow CFLAGS to be appended.
86d3cf6
Patch1:        afl-2.16b-override-cflags.patch
72a9247
72a9247
# Upstream includes armv7hl support as some non-integrated 'contrib'
72a9247
# files, so I have not enabled it here.  No other arch is supported
72a9247
# without arch-specific changes.
72a9247
ExclusiveArch: %{ix86} x86_64
72a9247
72a9247
BuildRequires: clang
72a9247
72a9247
Requires:      gcc
72a9247
72a9247
72a9247
%global afl_helper_path %{_libdir}/afl
72a9247
72a9247
72a9247
%description
72a9247
American fuzzy lop uses a novel type of compile-time instrumentation
72a9247
and genetic algorithms to automatically discover clean, interesting
72a9247
test cases that trigger new internal states in the targeted
72a9247
binary. This substantially improves the functional coverage for the
72a9247
fuzzed code. The compact synthesized corpuses produced by the tool are
72a9247
also useful for seeding other, more labor- or resource-intensive
72a9247
testing regimes down the road.
72a9247
72a9247
Compared to other instrumented fuzzers, afl-fuzz is designed to be
72a9247
practical: it has a modest performance overhead, uses a variety of
72a9247
highly effective fuzzing strategies, requires essentially no
72a9247
configuration, and seamlessly handles complex, real-world use cases -
72a9247
say, common image parsing or file compression libraries.
72a9247
72a9247
72a9247
%package clang
72a9247
Summary:       Clang and clang++ support for %{name}
326dd44
Requires:      %{name} = %{version}-%{release}
72a9247
Requires:      clang
72a9247
72a9247
72a9247
%description clang
72a9247
This subpackage contains clang and clang++ support for
72a9247
%{name}.
72a9247
72a9247
72a9247
%prep
72a9247
%setup -q -n afl-%{version}
72a9247
72a9247
%patch1 -p1
72a9247
72a9247
72a9247
%build
525df84
%{__make} %{?_smp_mflags} \
d96d107
  CFLAGS="%{optflags}" \
d96d107
  PREFIX=%{_prefix} \
d96d107
  HELPER_PATH=%{afl_helper_path} \
d96d107
  DOC_PATH=%{_pkgdocdir}
72a9247
72a9247
72a9247
%install
d96d107
%make_install \
d96d107
  PREFIX=%{_prefix} \
d96d107
  HELPER_PATH=%{afl_helper_path} \
d96d107
  DOC_PATH=%{_pkgdocdir} \
d96d107
  MISC_PATH=%{_pkgdocdir}
72a9247
72a9247
72a9247
%files
72a9247
%doc docs/*
d96d107
%doc experimental/
9eafae2
%doc testcases/
f88385c
%{_bindir}/afl-analyze
72a9247
%{_bindir}/afl-fuzz
72a9247
%{_bindir}/afl-gcc
72a9247
%{_bindir}/afl-g++
9a8e4d3
%{_bindir}/afl-plot
72a9247
%{_bindir}/afl-showmap
b1fd2ad
%{_bindir}/afl-tmin
7d844d2
%{_bindir}/afl-cmin
7d844d2
%{_bindir}/afl-gotcpu
7d844d2
%{_bindir}/afl-whatsup
72a9247
%dir %{afl_helper_path}
72a9247
%{afl_helper_path}/afl-as
72a9247
%{afl_helper_path}/as
72a9247
72a9247
72a9247
%files clang
72a9247
%doc docs/COPYING
72a9247
%{_bindir}/afl-clang
72a9247
%{_bindir}/afl-clang++
72a9247
72a9247
72a9247
%changelog
86d3cf6
* Fri Jun 24 2016 Richard W.M. Jones <rjones@redhat.com> - 2.16b-1
86d3cf6
- New upstream version 2.16b (RHBZ#1336154).
86d3cf6
47ba0ec
* Wed May 04 2016 Richard W.M. Jones <rjones@redhat.com> - 2.12b-1
47ba0ec
- New upstream version 2.12b (RHBZ#1331192).
47ba0ec
3e78b07
* Thu Mar 31 2016 Richard W.M. Jones <rjones@redhat.com> - 2.10b-1
3e78b07
- New upstream version 2.10b (RHBZ#1317205).
3e78b07
7a4113b
* Tue Mar 08 2016 Richard W.M. Jones <rjones@redhat.com> - 2.07b-1
7a4113b
- New upstream version 2.07b (RHBZ#1311776).
7a4113b
9cd6f58
* Mon Feb 22 2016 Richard W.M. Jones <rjones@redhat.com> - 2.04b-1
9cd6f58
- New upstream version 2.04b (RHBZ#1310407).
9cd6f58
4a3f055
* Thu Feb 18 2016 Richard W.M. Jones <rjones@redhat.com> - 2.02b-1
4a3f055
- New upstream version 2.02b (RHBZ#1309139).
4a3f055
- Remove afl-as, packaged in error.
4a3f055
f88385c
* Mon Feb 15 2016 Richard W.M. Jones <rjones@redhat.com> - 2.00b-1
f88385c
- New upstream version 2.00b (RHBZ#1306060).
f88385c
- Rebase CFLAGS override patch.
f88385c
- New programs afl-analyze, afl-as.
f88385c
7796c92
* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1.96b-2
7796c92
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
7796c92
7e20454
* Mon Jan  4 2016 Richard W.M. Jones <rjones@redhat.com> - 1.96b-1
7e20454
- New upstream version 1.96b (RHBZ#1292637).
7e20454
652cd17
* Tue Nov 17 2015 Richard W.M. Jones <rjones@redhat.com> - 1.95b-1
652cd17
- New upstream version 1.95b (RHBZ#1262537).
652cd17
73a00f3
* Wed Sep  9 2015 Richard W.M. Jones <rjones@redhat.com> - 1.93b-1
73a00f3
- New upstream version 1.93b (RHBZ#1259960).
73a00f3
be33ff2
* Thu Sep  3 2015 Richard W.M. Jones <rjones@redhat.com> - 1.90b-1
be33ff2
- New upstream version 1.90b.
be33ff2
207f323
* Mon Aug 31 2015 Pádraig Brady <pbrady@redhat.com> - 1.88b-1
207f323
- Latest upstream
207f323
743cf22
* Tue Jun 16 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.71b-2
743cf22
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
743cf22
52879b2
* Thu Apr 23 2015 Richard W.M. Jones <rjones@redhat.com> - 1.71b-1
52879b2
- New upstream version 1.71b.
52879b2
de5c58f
* Tue Feb 10 2015 Richard W.M. Jones <rjones@redhat.com> - 1.42b-1
de5c58f
- New upstream version 1.42b.
de5c58f
- Remove trademarked image from source (RHBZ#1191184).
de5c58f
- Use wildcard in .gitignore file.
de5c58f
d4176ad
* Sat Feb  7 2015 Richard W.M. Jones <rjones@redhat.com> - 1.40b-1
d4176ad
- New upstream version 1.40b (RHBZ#1188782).
d4176ad
cea9cf2
* Tue Feb 03 2015 Pádraig Brady <pbrady@redhat.com> - 1.38b-1
cea9cf2
- Latest upstream
cea9cf2
7d844d2
* Mon Jan 26 2015 Pádraig Brady <pbrady@redhat.com> - 1.28b-1
7d844d2
- Latest upstream
7d844d2
b1fd2ad
* Thu Jan 22 2015 Pádraig Brady <pbrady@redhat.com> - 1.19b-1
b1fd2ad
- Latest upstream
b1fd2ad
b7b0f67
* Mon Jan 19 2015 Richard W.M. Jones <rjones@redhat.com> - 1.15b-1
b7b0f67
- New upstream version 1.15b (RHBZ#1177434).
b7b0f67
9a8e4d3
* Tue Dec 23 2014 Richard W.M. Jones <rjones@redhat.com> - 0.98b-1
9a8e4d3
- New upstream version 0.98b (RHBZ#1172581).
9a8e4d3
- Rename afl-plot.sh script to afl-plot.
9a8e4d3
7c1eb90
* Mon Dec  8 2014 Richard W.M. Jones <rjones@redhat.com> - 0.88b-1
7c1eb90
- New upstream version 0.88b (RHBZ#1170943).
7c1eb90
- Add afl-plot.sh script.  This requires gnuplot, but it gives a
7c1eb90
  suitable error message if gnuplot is not installed, so don't
7c1eb90
  add a dependency.
7c1eb90
d96d107
* Sun Nov 30 2014 Pádraig Brady <pbrady@redhat.com> - 0.78b-1
d96d107
- Latest upstream
d96d107
326dd44
* Mon Nov 17 2014 Richard W.M. Jones <rjones@redhat.com> - 0.50b-2
326dd44
- Don't use epoch in requires.
326dd44
72a9247
* Sun Nov 16 2014 Richard W.M. Jones <rjones@redhat.com> - 0.50b-1
72a9247
- New upstream version 0.50b.
72a9247
- Remove 'sed' dependency as it is no longer used.
72a9247
- Rebase CFLAGS patch.
72a9247
- Add clang wrapper as a subpackage.
72a9247
72a9247
* Sat Nov 15 2014 Richard W.M. Jones <rjones@redhat.com> - 0.48b-1
72a9247
- New upstream version 0.48b.
72a9247
- Fix: https://code.google.com/p/american-fuzzy-lop/issues/detail?id=13
72a9247
72a9247
* Sat Nov 15 2014 Richard W.M. Jones <rjones@redhat.com> - 0.47b-1
72a9247
- New upstream version 0.47b.
72a9247
- Use stable Source URL.
72a9247
- Remove parallel fix which is now upstream.
72a9247
72a9247
* Fri Nov 14 2014 Richard W.M. Jones <rjones@redhat.com> - 0.46b-1
72a9247
- New upstream version 0.46b.
72a9247
- Ditch USE_64BIT/CONF_64BIT.
72a9247
- Package now owns afl_helper_path.
72a9247
- Parallel builds now work, and make uses _smp_mflags.
72a9247
- Uses CFLAGS optflags.
72a9247
- Include (some) experimental scripts.
72a9247
72a9247
* Thu Nov 13 2014 Richard W.M. Jones <rjones@redhat.com> - 0.45b-1
72a9247
- Initial packaging of afl.