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
