summaryrefslogtreecommitdiff
path: root/io.c
diff options
context:
space:
mode:
authorJohn Hughes <john@Calva.COM>2001-03-06 15:08:09 +0000
committerJohn Hughes <john@Calva.COM>2001-03-06 15:08:09 +0000
commitbdf48f55f264a9cd2eb1b3cac8f1f87c1acad008 (patch)
treea6aec362b09b1cddf3112ff58fba02cb69303220 /io.c
parent8ba4b3fc8c7baf1212d4eb2dc0e9312c14d1010d (diff)
downloadstrace-bdf48f55f264a9cd2eb1b3cac8f1f87c1acad008.tar.gz
strace-bdf48f55f264a9cd2eb1b3cac8f1f87c1acad008.tar.bz2
strace-bdf48f55f264a9cd2eb1b3cac8f1f87c1acad008.tar.xz
Merge Harald Böhme's solaris patches
Diffstat (limited to 'io.c')
-rw-r--r--io.c30
1 files changed, 30 insertions, 0 deletions
diff --git a/io.c b/io.c
index a819c11..0fe8c3d 100644
--- a/io.c
+++ b/io.c
@@ -279,6 +279,36 @@ struct tcb *tcp;
#endif /* LINUX */
+#if _LFS64_LARGEFILE
+int
+sys_pread64(tcp)
+struct tcb *tcp;
+{
+ if (entering(tcp)) {
+ tprintf("%ld, ", tcp->u_arg[0]);
+ } else {
+ if (syserror(tcp))
+ tprintf("%#lx", tcp->u_arg[1]);
+ else
+ printstr(tcp, tcp->u_arg[1], tcp->u_rval);
+ tprintf(", %lu, %#llx", tcp->u_arg[2], get64(tcp->u_arg[3], tcp->u_arg[4]));
+ }
+ return 0;
+}
+
+int
+sys_pwrite64(tcp)
+struct tcb *tcp;
+{
+ if (entering(tcp)) {
+ tprintf("%ld, ", tcp->u_arg[0]);
+ printstr(tcp, tcp->u_arg[1], tcp->u_arg[2]);
+ tprintf(", %lu, %#llx", tcp->u_arg[2], get64(tcp->u_arg[3], tcp->u_arg[4]));
+ }
+ return 0;
+}
+#endif
+
int
sys_ioctl(tcp)
struct tcb *tcp;