Thanks for your reply Evgeniy.

> It could be possible 
to hack something, but it does not sound easy

Could you please give me some pointers into what needs to be hacked to make 
this possible?

>  it's not clear to 
me how one would tie them together. 

The scenario is the following: I am using libFuzzer to fuzz a library, and 
libFuzzer works best
with a sanitizer like asan (as recommended by the documentation). What I 
would like to do is
use taint information from the dataflow sanitizer to make fuzzing more 
efficient and focus on
interesting parts of the input.

On Friday, June 9, 2017 at 2:41:57 PM UTC-7, Evgeniy Stepanov wrote:
>
> Hi, 
>
> these tools were not designed to work together. It could be possible 
> to hack something, but it does not sound easy. In particular, they use 
> different techniques for intercepting libc calls and it's not clear to 
> me how one would tie them together. 
>
>
> On Fri, Jun 9, 2017 at 8:52 AM, hariri via address-sanitizer 
> <address-...@googlegroups.com <javascript:>> wrote: 
> > Hi, 
> > 
> > I am trying to use the dataflow sanitizer with the address sanitizer, 
> but 
> > they clash together giving me a long sequence of errors due to multiple 
> > definitions in both sanitizers: 
> > 
> > 
> clang-llvm/ninja-build-clang/lib/clang/5.0.0/lib/linux/libclang_rt.dfsan-x86_64.a(interception_linux.cc.o):
>  
>
> > In function `__interception::GetRealFunctionAddress(char const*, \ 
> > 
> > unsigned long*, unsigned long, unsigned long)': 
> > 
> > 
> clang-llvm/llvm/projects/compiler-rt/lib/interception/interception_linux.cc:22:
>  
>
> > multiple definition of `__interception::GetRealFunctionAddress(char 
> const*, 
> > unsigned long*, u\ 
> > 
> > nsigned long, unsigned long)' 
> > 
> > 
> clang-llvm/ninja-build-clang/lib/clang/5.0.0/lib/linux/libclang_rt.asan-x86_64.a(interception_linux.cc.o):clang-llvm/llvm/projects/compiler-rt/\
>  
>
> > 
> > lib/interception/interception_linux.cc:22: first defined here 
> > 
> > 
> clang-llvm/ninja-build-clang/lib/clang/5.0.0/lib/linux/libclang_rt.dfsan-x86_64.a(interception_linux.cc.o):
>  
>
> > In function `__interception::GetFuncAddrVer(char const*, char con\ 
> > 
> > st*)': 
> > 
> > 
> clang-llvm/llvm/projects/compiler-rt/lib/interception/interception_linux.cc:28:
>  
>
> > multiple definition of `__interception::GetFuncAddrVer(char const*, char 
> > const*)' 
> > 
> > 
> clang-llvm/ninja-build-clang/lib/clang/5.0.0/lib/linux/libclang_rt.asan-x86_64.a(interception_linux.cc.o):clang-llvm/llvm/projects/compiler-rt/\
>  
>
> > 
> > lib/interception/interception_linux.cc:28: first defined here 
> > 
> > 
> clang-llvm/ninja-build-clang/lib/clang/5.0.0/lib/linux/libclang_rt.dfsan-x86_64.a(sanitizer_allocator.cc.o):
>  
>
> > In function `atomic_load<__sanitizer::atomic_uint8_t>': 
> > 
> > 
> clang-llvm/llvm/projects/compiler-rt/lib/sanitizer_common/sanitizer_atomic_clang_x86.h:47:
>  
>
> > multiple definition of `__sanitizer::internal_allocator()' 
> > 
> > 
> clang-llvm/ninja-build-clang/lib/clang/5.0.0/lib/linux/libclang_rt.asan-x86_64.a(sanitizer_allocator.cc.o):clang-llvm/llvm/projects/compiler-rt\
>  
>
> > 
> > /lib/sanitizer_common/sanitizer_atomic_clang_x86.h:47: first defined 
> here 
> > 
> > 
> clang-llvm/ninja-build-clang/lib/clang/5.0.0/lib/linux/libclang_rt.dfsan-x86_64.a(sanitizer_allocator.cc.o):
>  
>
> > In function `__sanitizer::LowLevelAllocator::Allocate(unsigned l\ 
> > 
> > ong)': 
> > 
> > 
> > The simplest stripped example is compiling any cpp file for example: 
> > 
> > // simple.cc 
> > 
> > int main() { 
> > 
> >   return 0; 
> > 
> > } 
> > 
> > 
> > with the command: 
> > 
> > clang++ simple.cc -fsanitize=address,dataflow 
> > 
> > 
> > Thanks, 
> > 
> > Farah 
> > 
> > -- 
> > You received this message because you are subscribed to the Google 
> Groups 
> > "address-sanitizer" group. 
> > To unsubscribe from this group and stop receiving emails from it, send 
> an 
> > email to address-saniti...@googlegroups.com <javascript:>. 
> > For more options, visit https://groups.google.com/d/optout. 
>

-- 
You received this message because you are subscribed to the Google Groups 
"address-sanitizer" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to address-sanitizer+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to