Hi 

Currently, Klee does not model network calls, therefore, instead of calling the 
__socket syscall, it returns EAFNOSUPPORT.  
You would need to write a network model by extending the file system model in 
runtime/POSIX to be able to run network applications in KLEE. You can take a 
look in that folder to see how the file system model is implemented.

Cristi


On Jun 24, 2010, at 8:37 PM, George Argyros wrote:

> ??,
> 
> I am trying to test a small webserver with klee (miniweb).
> However klee fails to create a valid socket. Specifically i am getting
> the following output:
> 
> $ klee --libc=uclibc --posix-runtime miniweb.bc
> KLEE: NOTE: Using model: /home/george/klee/Release/lib/libkleeRuntimePOSIX.bca
> KLEE: output directory = "klee-out-4"
> KLEE: WARNING: undefined reference to function: __strdup
> KLEE: WARNING: undefined reference to function: __xstat64
> KLEE: WARNING: executable has module level assembly (ignoring)
> KLEE: WARNING: calling external: syscall(54, 0, 21505, 182988536)
> KLEE: WARNING: calling __user_main with extra arguments.
> KLEE: WARNING: calling external: __xstat64(3, 182929440, 183065448)
> KLEE: WARNING: calling external: printf(177620552, 0, 8, 19)
> MiniWeb 0.8.19 (C)2005 Written by Stanley Huang
> 
> KLEE: WARNING: __syscall_rt_sigaction: silently ignoring
> Listening port: 80
> Web root: webroot
> Max clients: 32
> URL handlers: 1
> Dir listing: on
> KLEE: WARNING: __socketcall: ignoring (EAFNOSUPPORT)
> Error starting instance #0
> Failed to launch miniweb
> 
> KLEE: done: total instructions = 28679
> KLEE: done: completed paths = 1
> KLEE: done: generated tests = 1
> 
> I also tried a small program which simply invokes socket(AF_INET,
> SOCK_STREAM, 0),
> with the same results (EAFNOSUPPORT error).
> 
> Have anyone else encountered this error? It is related to uclibc or klee?
> 
> Thanks,
> George
> _______________________________________________
> klee-dev mailing list
> klee-dev at keeda.stanford.edu
> http://keeda.Stanford.EDU/mailman/listinfo/klee-dev

Reply via email to