aboutsummaryrefslogtreecommitdiffstats
path: root/common.h
diff options
context:
space:
mode:
authorMattias Andrée <maandree@kth.se>2020-06-01 20:42:37 +0200
committerMattias Andrée <maandree@kth.se>2020-06-01 20:42:37 +0200
commit3c9db91a2369a1e9ff00f8d409f6ef32ff2a3d14 (patch)
treeed9e9e8af65a470cde9930f28766fdb339000fe6 /common.h
parentRemove p before > in syscall formats (diff)
downloadsctrace-3c9db91a2369a1e9ff00f8d409f6ef32ff2a3d14.tar.gz
sctrace-3c9db91a2369a1e9ff00f8d409f6ef32ff2a3d14.tar.bz2
sctrace-3c9db91a2369a1e9ff00f8d409f6ef32ff2a3d14.tar.xz
Print data stored to output parameters in system calls
Signed-off-by: Mattias Andrée <maandree@kth.se>
Diffstat (limited to 'common.h')
-rw-r--r--common.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/common.h b/common.h
index 4a9c151..458d4f9 100644
--- a/common.h
+++ b/common.h
@@ -42,6 +42,8 @@
#endif
+struct process;
+
enum type {
Unknown,
Void,
@@ -72,6 +74,13 @@ enum state {
Exec
};
+struct output {
+ int ells;
+ char fmt;
+ unsigned long long int size;
+ void (*func)(struct process *, size_t);
+};
+
struct process {
pid_t pid;
pid_t thread_leader;
@@ -85,6 +94,7 @@ struct process {
unsigned long long int args[6];
unsigned long long int ret;
enum type ret_type;
+ struct output outputs[6];
/* vfork(2) data */
struct process *continue_on_exit;