blob: 4f16850675cbb9a23e858655b3521347ce5b2178 [file] [log] [blame]
Elliott Hughesc1873762018-12-19 15:13:36 -08001/* Generated by Makefile from block.c.mpers.i btrfs.c.mpers.i dirent.c.mpers.i evdev_mpers.c.mpers.i fetch_bpf_fprog.c.mpers.i fetch_struct_flock.c.mpers.i fetch_struct_keyctl_kdf_params.c.mpers.i fetch_struct_mmsghdr.c.mpers.i fetch_struct_msghdr.c.mpers.i fetch_struct_stat.c.mpers.i fetch_struct_stat64.c.mpers.i fetch_struct_statfs.c.mpers.i fetch_struct_xfs_quotastat.c.mpers.i hdio.c.mpers.i ipc_msgctl.c.mpers.i ipc_shmctl.c.mpers.i loop.c.mpers.i mtd.c.mpers.i perf_ioctl.c.mpers.i print_aio_sigset.c.mpers.i print_group_req.c.mpers.i print_mq_attr.c.mpers.i print_msgbuf.c.mpers.i print_sg_req_info.c.mpers.i print_sigevent.c.mpers.i print_time.c.mpers.i print_timespec.c.mpers.i print_timeval.c.mpers.i print_timex.c.mpers.i printrusage.c.mpers.i printsiginfo.c.mpers.i rt_sigreturn.c.mpers.i rtc.c.mpers.i sg_io_v3.c.mpers.i sigaltstack.c.mpers.i sock.c.mpers.i sysinfo.c.mpers.i times.c.mpers.i ustat.c.mpers.i utime.c.mpers.i v4l2.c.mpers.i; do not edit. */
Elliott Hughesda827082015-12-11 14:50:30 -08002typedef struct {
Elliott Hughesd35df492017-02-15 15:19:05 -08003 int (*block_ioctl)(struct tcb *const tcp, const unsigned int code, const kernel_ulong_t arg);
Elliott Hughesa618f752016-06-02 21:04:08 -07004#define block_ioctl MPERS_PRINTER_NAME(block_ioctl)
5
Elliott Hughesd35df492017-02-15 15:19:05 -08006 int (*btrfs_ioctl)(struct tcb *const tcp, const unsigned int code, const kernel_ulong_t arg);
Elliott Hughesa618f752016-06-02 21:04:08 -07007#define btrfs_ioctl MPERS_PRINTER_NAME(btrfs_ioctl)
8
Elliott Hughes28e98bc2018-06-14 16:59:04 -07009 int (*evdev_write_ioctl_mpers)(struct tcb *const tcp, const unsigned int code, const kernel_ulong_t arg);
10#define evdev_write_ioctl_mpers MPERS_PRINTER_NAME(evdev_write_ioctl_mpers)
Elliott Hughesa618f752016-06-02 21:04:08 -070011
Elliott Hughes77c3ff82017-09-08 17:11:00 -070012 unsigned int (*get_sock_fprog_size)(void);
13#define get_sock_fprog_size MPERS_PRINTER_NAME(get_sock_fprog_size)
14
15 _Bool (*fetch_bpf_fprog)(struct tcb *const tcp, const kernel_ulong_t addr, void *const p);
16#define fetch_bpf_fprog MPERS_PRINTER_NAME(fetch_bpf_fprog)
Elliott Hughesda827082015-12-11 14:50:30 -080017
Elliott Hughesd35df492017-02-15 15:19:05 -080018 _Bool (*fetch_struct_flock)(struct tcb *const tcp, const kernel_ulong_t addr, void *const p);
Elliott Hughesda827082015-12-11 14:50:30 -080019#define fetch_struct_flock MPERS_PRINTER_NAME(fetch_struct_flock)
20
Elliott Hughesd35df492017-02-15 15:19:05 -080021 _Bool (*fetch_struct_flock64)(struct tcb *const tcp, const kernel_ulong_t addr, void *const p);
Elliott Hughesda827082015-12-11 14:50:30 -080022#define fetch_struct_flock64 MPERS_PRINTER_NAME(fetch_struct_flock64)
23
Elliott Hughes77c3ff82017-09-08 17:11:00 -070024 int (*fetch_keyctl_kdf_params)(struct tcb *const tcp, kernel_ulong_t addr, struct strace_keyctl_kdf_params *p);
25#define fetch_keyctl_kdf_params MPERS_PRINTER_NAME(fetch_keyctl_kdf_params)
26
Elliott Hughesd35df492017-02-15 15:19:05 -080027 int (*fetch_struct_mmsghdr)(struct tcb *const tcp, const kernel_ulong_t addr, void *const p);
Elliott Hughes37796792016-07-27 15:02:55 -070028#define fetch_struct_mmsghdr MPERS_PRINTER_NAME(fetch_struct_mmsghdr)
29
30 unsigned int (*sizeof_struct_mmsghdr)(void);
31#define sizeof_struct_mmsghdr MPERS_PRINTER_NAME(sizeof_struct_mmsghdr)
32
Elliott Hughesd35df492017-02-15 15:19:05 -080033 int (*fetch_struct_msghdr)(struct tcb *const tcp, const kernel_ulong_t addr, void *const p);
Elliott Hughes37796792016-07-27 15:02:55 -070034#define fetch_struct_msghdr MPERS_PRINTER_NAME(fetch_struct_msghdr)
35
Elliott Hughesd35df492017-02-15 15:19:05 -080036 _Bool (*fetch_struct_stat)(struct tcb *const tcp, const kernel_ulong_t addr, struct strace_stat *const dst);
Elliott Hughes00604d92016-10-04 14:50:29 -070037#define fetch_struct_stat MPERS_PRINTER_NAME(fetch_struct_stat)
38
Elliott Hughesd35df492017-02-15 15:19:05 -080039 _Bool (*fetch_struct_stat64)(struct tcb *const tcp, const kernel_ulong_t addr, struct strace_stat *const dst);
Elliott Hughes00604d92016-10-04 14:50:29 -070040#define fetch_struct_stat64 MPERS_PRINTER_NAME(fetch_struct_stat64)
41
Elliott Hughesd35df492017-02-15 15:19:05 -080042 _Bool (*fetch_struct_statfs)(struct tcb *const tcp, const kernel_ulong_t addr, struct strace_statfs *const p);
Elliott Hughesa618f752016-06-02 21:04:08 -070043#define fetch_struct_statfs MPERS_PRINTER_NAME(fetch_struct_statfs)
44
Elliott Hughesd35df492017-02-15 15:19:05 -080045 _Bool (*fetch_struct_statfs64)(struct tcb *const tcp, const kernel_ulong_t addr, const kernel_ulong_t size, struct strace_statfs *const p);
Elliott Hughesa618f752016-06-02 21:04:08 -070046#define fetch_struct_statfs64 MPERS_PRINTER_NAME(fetch_struct_statfs64)
47
Elliott Hughesc1873762018-12-19 15:13:36 -080048 _Bool (*fetch_struct_quotastat)(struct tcb *const tcp, const kernel_ulong_t data, void *p);
49#define fetch_struct_quotastat MPERS_PRINTER_NAME(fetch_struct_quotastat)
50
Elliott Hughesd35df492017-02-15 15:19:05 -080051 int (*hdio_ioctl)(struct tcb *const tcp, const unsigned int code, const kernel_ulong_t arg);
Elliott Hughesa618f752016-06-02 21:04:08 -070052#define hdio_ioctl MPERS_PRINTER_NAME(hdio_ioctl)
53
Elliott Hughesd35df492017-02-15 15:19:05 -080054 int (*loop_ioctl)(struct tcb *tcp, const unsigned int code, const kernel_ulong_t arg);
55#define loop_ioctl MPERS_PRINTER_NAME(loop_ioctl)
56
57 int (*mtd_ioctl)(struct tcb *const tcp, const unsigned int code, const kernel_ulong_t arg);
Elliott Hughesa618f752016-06-02 21:04:08 -070058#define mtd_ioctl MPERS_PRINTER_NAME(mtd_ioctl)
59
Elliott Hughes03a418e2018-06-15 13:11:40 -070060 int (*perf_ioctl)(struct tcb *const tcp, const unsigned int code, const kernel_ulong_t arg);
61#define perf_ioctl MPERS_PRINTER_NAME(perf_ioctl)
62
63 void (*print_aio_sigset)(struct tcb *tcp, const kernel_ulong_t addr);
64#define print_aio_sigset MPERS_PRINTER_NAME(print_aio_sigset)
65
Elliott Hughes77c3ff82017-09-08 17:11:00 -070066 void (*print_group_req)(struct tcb *const tcp, const kernel_ulong_t addr, const int len);
67#define print_group_req MPERS_PRINTER_NAME(print_group_req)
68
Elliott Hughesd35df492017-02-15 15:19:05 -080069 void (*printmqattr)(struct tcb *const tcp, const kernel_ulong_t addr, const _Bool decode_flags);
Elliott Hughesda827082015-12-11 14:50:30 -080070#define printmqattr MPERS_PRINTER_NAME(printmqattr)
71
Elliott Hughesd35df492017-02-15 15:19:05 -080072 void (*tprint_msgbuf)(struct tcb *const tcp, const kernel_ulong_t addr, const kernel_ulong_t count);
Elliott Hughesda827082015-12-11 14:50:30 -080073#define tprint_msgbuf MPERS_PRINTER_NAME(tprint_msgbuf)
74
Elliott Hughesd35df492017-02-15 15:19:05 -080075 int (*decode_sg_req_info)(struct tcb *const tcp, const kernel_ulong_t arg);
76#define decode_sg_req_info MPERS_PRINTER_NAME(decode_sg_req_info)
77
78 void (*print_sigevent)(struct tcb *const tcp, const kernel_ulong_t addr);
Elliott Hughesda827082015-12-11 14:50:30 -080079#define print_sigevent MPERS_PRINTER_NAME(print_sigevent)
80
Elliott Hughesdc75b012017-07-05 13:54:44 -070081 _Bool (*print_struct_timespec_data_size)(const void *arg, const size_t size);
82#define print_struct_timespec_data_size MPERS_PRINTER_NAME(print_struct_timespec_data_size)
83
84 _Bool (*print_struct_timespec_array_data_size)(const void *arg, const unsigned int nmemb, const size_t size);
85#define print_struct_timespec_array_data_size MPERS_PRINTER_NAME(print_struct_timespec_array_data_size)
86
Elliott Hughesd35df492017-02-15 15:19:05 -080087 void (*print_timespec)(struct tcb *const tcp, const kernel_ulong_t addr);
Elliott Hughesda827082015-12-11 14:50:30 -080088#define print_timespec MPERS_PRINTER_NAME(print_timespec)
89
Elliott Hughesd35df492017-02-15 15:19:05 -080090 const char * (*sprint_timespec)(struct tcb *const tcp, const kernel_ulong_t addr);
Elliott Hughesda827082015-12-11 14:50:30 -080091#define sprint_timespec MPERS_PRINTER_NAME(sprint_timespec)
92
Elliott Hughesd35df492017-02-15 15:19:05 -080093 void (*print_timespec_utime_pair)(struct tcb *const tcp, const kernel_ulong_t addr);
Elliott Hughesda827082015-12-11 14:50:30 -080094#define print_timespec_utime_pair MPERS_PRINTER_NAME(print_timespec_utime_pair)
95
Elliott Hughesd35df492017-02-15 15:19:05 -080096 void (*print_itimerspec)(struct tcb *const tcp, const kernel_ulong_t addr);
Elliott Hughesda827082015-12-11 14:50:30 -080097#define print_itimerspec MPERS_PRINTER_NAME(print_itimerspec)
98
Elliott Hughesd35df492017-02-15 15:19:05 -080099 void (*print_struct_timeval)(const void *arg);
100#define print_struct_timeval MPERS_PRINTER_NAME(print_struct_timeval)
101
Elliott Hughesdc75b012017-07-05 13:54:44 -0700102 _Bool (*print_struct_timeval_data_size)(const void *arg, const size_t size);
103#define print_struct_timeval_data_size MPERS_PRINTER_NAME(print_struct_timeval_data_size)
104
Elliott Hughesd35df492017-02-15 15:19:05 -0800105 void (*print_timeval)(struct tcb *const tcp, const kernel_ulong_t addr);
Elliott Hughesda827082015-12-11 14:50:30 -0800106#define print_timeval MPERS_PRINTER_NAME(print_timeval)
107
Elliott Hughes39bac052017-05-25 16:56:11 -0700108 void (*print_timeval_utimes)(struct tcb *const tcp, const kernel_ulong_t addr);
109#define print_timeval_utimes MPERS_PRINTER_NAME(print_timeval_utimes)
Elliott Hughesda827082015-12-11 14:50:30 -0800110
Elliott Hughesd35df492017-02-15 15:19:05 -0800111 const char * (*sprint_timeval)(struct tcb *const tcp, const kernel_ulong_t addr);
Elliott Hughesda827082015-12-11 14:50:30 -0800112#define sprint_timeval MPERS_PRINTER_NAME(sprint_timeval)
113
Elliott Hughesd35df492017-02-15 15:19:05 -0800114 void (*print_itimerval)(struct tcb *const tcp, const kernel_ulong_t addr);
Elliott Hughesda827082015-12-11 14:50:30 -0800115#define print_itimerval MPERS_PRINTER_NAME(print_itimerval)
116
Elliott Hughesd35df492017-02-15 15:19:05 -0800117 int (*print_timex)(struct tcb *const tcp, const kernel_ulong_t addr);
Elliott Hughesda827082015-12-11 14:50:30 -0800118#define print_timex MPERS_PRINTER_NAME(print_timex)
119
Elliott Hughesd35df492017-02-15 15:19:05 -0800120 void (*printrusage)(struct tcb *const tcp, const kernel_ulong_t addr);
Elliott Hughesda827082015-12-11 14:50:30 -0800121#define printrusage MPERS_PRINTER_NAME(printrusage)
122
Elliott Hughesd35df492017-02-15 15:19:05 -0800123 void (*printsiginfo_at)(struct tcb *const tcp, const kernel_ulong_t addr);
Elliott Hughesda827082015-12-11 14:50:30 -0800124#define printsiginfo_at MPERS_PRINTER_NAME(printsiginfo_at)
125
Elliott Hughesd35df492017-02-15 15:19:05 -0800126 void (*print_siginfo_array)(struct tcb *const tcp, const kernel_ulong_t addr, const kernel_ulong_t len);
Elliott Hughesa618f752016-06-02 21:04:08 -0700127#define print_siginfo_array MPERS_PRINTER_NAME(print_siginfo_array)
128
Elliott Hughesd35df492017-02-15 15:19:05 -0800129 int (*rtc_ioctl)(struct tcb *const tcp, const unsigned int code, const kernel_ulong_t arg);
Elliott Hughesa618f752016-06-02 21:04:08 -0700130#define rtc_ioctl MPERS_PRINTER_NAME(rtc_ioctl)
131
Elliott Hughesd35df492017-02-15 15:19:05 -0800132 int (*decode_sg_io_v3)(struct tcb *const tcp, const kernel_ulong_t arg);
133#define decode_sg_io_v3 MPERS_PRINTER_NAME(decode_sg_io_v3)
134
135 int (*sock_ioctl)(struct tcb *tcp, const unsigned int code, const kernel_ulong_t arg);
136#define sock_ioctl MPERS_PRINTER_NAME(sock_ioctl)
137
138 int (*v4l2_ioctl)(struct tcb *const tcp, const unsigned int code, const kernel_ulong_t arg);
Elliott Hughesa618f752016-06-02 21:04:08 -0700139#define v4l2_ioctl MPERS_PRINTER_NAME(v4l2_ioctl)
140
Elliott Hughesda827082015-12-11 14:50:30 -0800141} struct_printers;
142extern const struct_printers *printers;
143#define MPERS_PRINTER_NAME(printer_name) printers->printer_name