From be59812a891f495de2a4d1dbff528e3ecbaa13ac Mon Sep 17 00:00:00 2001 From: Mark Mossberg Date: Mon, 6 Mar 2017 16:08:49 -0500 Subject: [PATCH] Support linux read/write in stdout/stdin files (#51) --- manticore/core/executor.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/manticore/core/executor.py b/manticore/core/executor.py index b03f1e6..548ba2c 100644 --- a/manticore/core/executor.py +++ b/manticore/core/executor.py @@ -697,7 +697,7 @@ class Executor(object): stdout = '' for sysname, fd, data in state.model.syscall_trace: - if sysname == '_transmit' and fd == 1: + if sysname in ('_transmit', '_write') and fd == 1: stdout += ''.join(map(str, data)) file(self._getFilename('test_%08x.stdout'%test_number),'a').write(stdout) @@ -706,7 +706,7 @@ class Executor(object): with open(self._getFilename(stdin_file), 'wb') as f: try: for sysname, fd, data in state.model.syscall_trace: - if sysname != '_receive' or fd != 0: + if sysname not in ('_receive', '_read') or fd != 0: continue for c in data: f.write(chr(solver.get_value(state.constraints, c)))