aboutsummaryrefslogtreecommitdiffstats
path: root/executor
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2018-12-15 15:17:13 +0100
committerDmitry Vyukov <dvyukov@google.com>2018-12-15 15:17:13 +0100
commitdef91db3fe955168c82038ac2ee39783e81a2af0 (patch)
treeb6cbf100001e7b9fe34a8e2eb4ab00438f3e0154 /executor
parent7a944a0a666587f229291814b30644cc0859674c (diff)
prog, pkg/csource: more readable serialization for strings
Always serialize strings in readable format (non-hex). Serialize binary data in readable format in more cases. Fixes #792
Diffstat (limited to 'executor')
-rw-r--r--executor/defs.h8
-rw-r--r--executor/executor.cc1
-rw-r--r--executor/syscalls.h2
3 files changed, 7 insertions, 4 deletions
diff --git a/executor/defs.h b/executor/defs.h
index 486a521dd..d6acd94e6 100644
--- a/executor/defs.h
+++ b/executor/defs.h
@@ -145,7 +145,7 @@
#if GOARCH_32_fork_shmem
#define GOARCH "32_fork_shmem"
-#define SYZ_REVISION "f0257b726ddd3b09086a9525a4aae0e0d8cfa6af"
+#define SYZ_REVISION "1cb234b0ee2b1630b831f86086747c3e008060c2"
#define SYZ_EXECUTOR_USES_FORK_SERVER 1
#define SYZ_EXECUTOR_USES_SHMEM 1
#define SYZ_PAGE_SIZE 4096
@@ -155,7 +155,7 @@
#if GOARCH_32_shmem
#define GOARCH "32_shmem"
-#define SYZ_REVISION "136d60e9280b55ca8a1f24fed877e2f0ae72e348"
+#define SYZ_REVISION "8da90b7592aadc1f08e0ae1cb56ecb1ce2d0ad38"
#define SYZ_EXECUTOR_USES_FORK_SERVER 0
#define SYZ_EXECUTOR_USES_SHMEM 1
#define SYZ_PAGE_SIZE 8192
@@ -165,7 +165,7 @@
#if GOARCH_64
#define GOARCH "64"
-#define SYZ_REVISION "ece48c7de48771745acdea340f4c52c47e058e65"
+#define SYZ_REVISION "d81730cda36dc2946536413b33737c5635fabb71"
#define SYZ_EXECUTOR_USES_FORK_SERVER 0
#define SYZ_EXECUTOR_USES_SHMEM 0
#define SYZ_PAGE_SIZE 4096
@@ -175,7 +175,7 @@
#if GOARCH_64_fork
#define GOARCH "64_fork"
-#define SYZ_REVISION "0c64cdd471dfa62b3e34ed221afe8472c9125d38"
+#define SYZ_REVISION "8c3363b9502e6df103438d98f573e2ef70ab34f2"
#define SYZ_EXECUTOR_USES_FORK_SERVER 1
#define SYZ_EXECUTOR_USES_SHMEM 0
#define SYZ_PAGE_SIZE 8192
diff --git a/executor/executor.cc b/executor/executor.cc
index 6569326d3..c0d549c0a 100644
--- a/executor/executor.cc
+++ b/executor/executor.cc
@@ -585,6 +585,7 @@ retry:
}
case arg_data: {
uint64 size = read_input(&input_pos);
+ size &= ~(1ull << 63); // readable flag
NONFAILING(memcpy(addr, input_pos, size));
// Read out the data.
for (uint64 i = 0; i < (size + 7) / 8; i++)
diff --git a/executor/syscalls.h b/executor/syscalls.h
index 3629d04b1..51e784eb0 100644
--- a/executor/syscalls.h
+++ b/executor/syscalls.h
@@ -13545,6 +13545,7 @@ const call_t syscalls[] = {
{"test$auto0", 0},
{"test$bf0", 0},
{"test$bf1", 0},
+ {"test$blob0", 0},
{"test$csum_encode", 0},
{"test$csum_ipv4", 0},
{"test$csum_ipv4_tcp", 0},
@@ -13604,6 +13605,7 @@ const call_t syscalls[] = {
{"test$res0", 0},
{"test$res1", 0},
{"test$res2", 0},
+ {"test$str0", 0},
{"test$struct", 0},
{"test$syz_union3", 0},
{"test$syz_union4", 0},