mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2024-11-18 22:54:00 +00:00
community/afl to 2.57b-11
This commit is contained in:
parent
402e65e360
commit
535fc4e97e
2 changed files with 48 additions and 6 deletions
|
@ -8,7 +8,7 @@
|
|||
|
||||
pkgname=afl
|
||||
pkgver=2.57b
|
||||
pkgrel=9
|
||||
pkgrel=11
|
||||
pkgdesc='Security-oriented fuzzer using compile-time instrumentation and genetic algorithms'
|
||||
url='http://lcamtuf.coredump.cx/afl/'
|
||||
arch=('x86_64')
|
||||
|
@ -23,19 +23,25 @@ provides=('american-fuzzy-lop')
|
|||
replaces=('american-fuzzy-lop')
|
||||
options=('!emptydirs' '!strip')
|
||||
source=(https://github.com/google/AFL/archive/v${pkgver}/${pkgname}-${pkgver}.tar.gz
|
||||
llvm13.patch)
|
||||
llvm13.patch
|
||||
llvm14.patch)
|
||||
sha256sums=('6f05a6515c07abe49f6f292bd13c96004cc1e016bda0c3cc9c2769dd43f163ee'
|
||||
'ec000fddabc566ac8d2b1af0444843e384d93f7faa4ff55677db1507164ef26f')
|
||||
'ec000fddabc566ac8d2b1af0444843e384d93f7faa4ff55677db1507164ef26f'
|
||||
'1f05ba247a295985889669ed892f2150ec38c202c13986fda78f0959e5e39524')
|
||||
sha512sums=('5d12b96229e966aeb11deb47cd8eb36cde2fa32656eb187db02c7240909d6acda36be59b2baf7e42cddd228d25ec94c8bffc3fa27f7f4b5e1e462b62929ce75d'
|
||||
'53f1739fe96b24add8b717a5f820ef6b938863c2434e60594bf66fb317808142c369b904d962eac3209128fcf02578b7e0f9908d6e8c53b2a4ebd0fe00ae1cf8')
|
||||
'53f1739fe96b24add8b717a5f820ef6b938863c2434e60594bf66fb317808142c369b904d962eac3209128fcf02578b7e0f9908d6e8c53b2a4ebd0fe00ae1cf8'
|
||||
'16e12e0e023bc05d00e261a4f06644d8ac07cf8aa18a0781d5316198b1e2829c4d91ad9ec48f3a318ee8bf5a430796c6111a7dbbc3af435a43e495c45d0ae609')
|
||||
b2sums=('69029d59451e468528386154e8938a1a7303765e039f98aa05e36f07314398f60ff2578f765142e1f1ff653e5ab93ea53a2efb98abe275046ebacdd3ca8363b6'
|
||||
'60c58a7bd115189a05866899852d760723c6dd255bd684ed90d61c1be56b8bd3bf8702aa9540ad4235469b2dc32253ee645b6f7ac7bbb924eb9f711c3a07e375')
|
||||
'60c58a7bd115189a05866899852d760723c6dd255bd684ed90d61c1be56b8bd3bf8702aa9540ad4235469b2dc32253ee645b6f7ac7bbb924eb9f711c3a07e375'
|
||||
'0a51146d7e2dcfd18ee7c0d9e730da609b197214a971072262b652e01c0375dd9122c18f97f074b267e49ccfe8c4c22d531e74897cb68daf9c9b6c88722cf3f0')
|
||||
|
||||
prepare() {
|
||||
cd AFL-${pkgver}
|
||||
# Minimal build fix for LLVM 13 inspired by:
|
||||
# Minimal build fixes for LLVM 13 and 14 inspired by:
|
||||
# https://github.com/AFLplusplus/AFLplusplus/commit/1ba5d1008e74
|
||||
# https://github.com/grame-cncm/faust/commit/1275ec6774e0
|
||||
patch -Np1 -i ../llvm13.patch
|
||||
patch -Np1 -i ../llvm14.patch
|
||||
}
|
||||
|
||||
build() {
|
||||
|
|
36
community/afl/llvm14.patch
Normal file
36
community/afl/llvm14.patch
Normal file
|
@ -0,0 +1,36 @@
|
|||
diff -upr AFL-2.57b.orig/llvm_mode/afl-llvm-pass.so.cc AFL-2.57b/llvm_mode/afl-llvm-pass.so.cc
|
||||
--- AFL-2.57b.orig/llvm_mode/afl-llvm-pass.so.cc 2020-07-04 19:24:18.000000000 +0300
|
||||
+++ AFL-2.57b/llvm_mode/afl-llvm-pass.so.cc 2022-06-23 04:41:29.536472961 +0300
|
||||
@@ -42,6 +42,7 @@
|
||||
#include "llvm/IR/IRBuilder.h"
|
||||
#include "llvm/IR/LegacyPassManager.h"
|
||||
#include "llvm/IR/Module.h"
|
||||
+#include "llvm/Pass.h"
|
||||
#include "llvm/Support/Debug.h"
|
||||
#include "llvm/Transforms/IPO/PassManagerBuilder.h"
|
||||
|
||||
@@ -131,20 +132,20 @@ bool AFLCoverage::runOnModule(Module &M)
|
||||
|
||||
/* Load prev_loc */
|
||||
|
||||
- LoadInst *PrevLoc = IRB.CreateLoad(AFLPrevLoc);
|
||||
+ LoadInst *PrevLoc = IRB.CreateLoad(AFLPrevLoc->getType()->getScalarType()->getPointerElementType(), AFLPrevLoc);
|
||||
PrevLoc->setMetadata(M.getMDKindID("nosanitize"), MDNode::get(C, None));
|
||||
Value *PrevLocCasted = IRB.CreateZExt(PrevLoc, IRB.getInt32Ty());
|
||||
|
||||
/* Load SHM pointer */
|
||||
|
||||
- LoadInst *MapPtr = IRB.CreateLoad(AFLMapPtr);
|
||||
+ LoadInst *MapPtr = IRB.CreateLoad(AFLMapPtr->getType()->getScalarType()->getPointerElementType(), AFLMapPtr);
|
||||
MapPtr->setMetadata(M.getMDKindID("nosanitize"), MDNode::get(C, None));
|
||||
Value *MapPtrIdx =
|
||||
- IRB.CreateGEP(MapPtr, IRB.CreateXor(PrevLocCasted, CurLoc));
|
||||
+ IRB.CreateGEP(MapPtr->getType()->getScalarType()->getPointerElementType(), MapPtr, IRB.CreateXor(PrevLocCasted, CurLoc));
|
||||
|
||||
/* Update bitmap */
|
||||
|
||||
- LoadInst *Counter = IRB.CreateLoad(MapPtrIdx);
|
||||
+ LoadInst *Counter = IRB.CreateLoad(MapPtrIdx->getType()->getScalarType()->getPointerElementType(), MapPtrIdx);
|
||||
Counter->setMetadata(M.getMDKindID("nosanitize"), MDNode::get(C, None));
|
||||
Value *Incr = IRB.CreateAdd(Counter, ConstantInt::get(Int8Ty, 1));
|
||||
IRB.CreateStore(Incr, MapPtrIdx)
|
Loading…
Reference in a new issue