]> granicus.if.org Git - strace/commitdiff
printstr: rename to printstrn, add printstr as a thin wrapper
authorDmitry V. Levin <ldv@altlinux.org>
Tue, 20 Dec 2016 16:43:26 +0000 (16:43 +0000)
committerDmitry V. Levin <ldv@altlinux.org>
Sun, 25 Dec 2016 11:32:45 +0000 (11:32 +0000)
As about half of all printstr uses cases are invocations with the last
argument set to -1, create a dedicated function for this use case.

* defs.h (printstr): Rename to printstrn.  All callers updated.
(printstr): New static inline function.  All callers updated.

26 files changed:
aio.c
bjm.c
bpf.c
defs.h
evdev.c
execve.c
getrandom.c
hostname.c
io.c
kexec.c
keyctl.c
lookup_dcookie.c
memfd_create.c
mount.c
mq.c
net.c
netlink.c
prctl.c
print_msgbuf.c
readlink.c
reboot.c
sock.c
syslog.c
term.c
v4l2.c
xattr.c

diff --git a/aio.c b/aio.c
index 6ff209219e14089fcea74aef1c2915891cde3a50..68194dec5f9bf075ee4c0d5a25e8946b3bfb3388 100644 (file)
--- a/aio.c
+++ b/aio.c
@@ -130,7 +130,7 @@ print_iocb(struct tcb *tcp, const struct iocb *cb)
        case SUB_COMMON:
                if (cb->aio_lio_opcode == 1 && iocb_is_valid(cb)) {
                        tprints(", str=");
-                       printstr(tcp, cb->aio_buf, cb->aio_nbytes);
+                       printstrn(tcp, cb->aio_buf, cb->aio_nbytes);
                } else {
                        tprintf(", buf=%#" PRIx64, (uint64_t) cb->aio_buf);
                }
diff --git a/bjm.c b/bjm.c
index 6adbb6fa8800e8ac8c9016da89dac1d33c078ffe..03a078ceaa13aa953d3dad92504db02c0d588c0e 100644 (file)
--- a/bjm.c
+++ b/bjm.c
@@ -35,7 +35,7 @@
 
 SYS_FUNC(delete_module)
 {
-       printstr(tcp, tcp->u_arg[0], -1);
+       printstr(tcp, tcp->u_arg[0]);
        tprints(", ");
        printflags(delete_module_flags, tcp->u_arg[1], "O_???");
 
@@ -46,7 +46,7 @@ SYS_FUNC(init_module)
 {
        printaddr_klu(getarg_klu(tcp, 0));
        tprintf(", %" PRI_klu ", ", getarg_klu(tcp, 1));
-       printstr(tcp, tcp->u_arg[2], -1);
+       printstr(tcp, tcp->u_arg[2]);
 
        return RVAL_DECODED;
 }
@@ -59,7 +59,7 @@ SYS_FUNC(finit_module)
        printfd(tcp, tcp->u_arg[0]);
        tprints(", ");
        /* param_values */
-       printstr(tcp, tcp->u_arg[1], -1);
+       printstr(tcp, tcp->u_arg[1]);
        tprints(", ");
        /* flags */
        printflags(module_init_flags, tcp->u_arg[2], "MODULE_INIT_???");
diff --git a/bpf.c b/bpf.c
index d18c05df8256f397ead39b71b3c1fd900378ed8c..df076e5784dac5d7e1866a5b09aba846971b129e 100644 (file)
--- a/bpf.c
+++ b/bpf.c
@@ -170,7 +170,7 @@ bpf_prog_load(struct tcb *const tcp, const kernel_ureg_t addr,
        printxval(bpf_prog_types, attr.prog_type, "BPF_PROG_TYPE_???");
        tprintf(", insn_cnt=%u, insns=%#" PRIx64 ", license=",
                attr.insn_cnt, attr.insns);
-       printstr(tcp, attr.license, -1);
+       printstr(tcp, attr.license);
        tprintf(", log_level=%u, log_size=%u, log_buf=%#" PRIx64 ", kern_version=%u}",
                attr.log_level, attr.log_size, attr.log_buf, attr.kern_version);
 
diff --git a/defs.h b/defs.h
index 7fd50f472e88dce12e8862f3632718af3d4ecf39..ac4c539d0ca4039456e2e3661bb30d8c776e7466 100644 (file)
--- a/defs.h
+++ b/defs.h
@@ -765,11 +765,17 @@ printaddr(kernel_ureg_t addr)
 }
 
 static inline void
-printstr(struct tcb *tcp, kernel_ureg_t addr, long len)
+printstrn(struct tcb *tcp, kernel_ureg_t addr, long len)
 {
        printstr_ex(tcp, addr, len, 0);
 }
 
+static inline void
+printstr(struct tcb *tcp, kernel_ureg_t addr)
+{
+       printstr_ex(tcp, addr, -1, QUOTE_0_TERMINATED);
+}
+
 static inline int
 printflags(const struct xlat *x, unsigned int flags, const char *dflt)
 {
diff --git a/evdev.c b/evdev.c
index c5088ae00ce4593c8634dc0c2e8c9ba092924186..42abcb32b69fcd3cf92c22e759bf2fd1f4455bb1 100644 (file)
--- a/evdev.c
+++ b/evdev.c
@@ -438,7 +438,7 @@ evdev_read_ioctl(struct tcb *const tcp, const unsigned int code,
                        if (syserror(tcp))
                                printaddr(arg);
                        else
-                               printstr(tcp, arg, tcp->u_rval);
+                               printstrn(tcp, arg, tcp->u_rval);
                        return 1;
 # ifdef EVIOCGPROP
                case _IOC_NR(EVIOCGPROP(0)):
index 07997d5ffcb5b2020f2159fa059fe0d119c787d7..03fe476296e42b4bfe559a756d32d184b9effc49 100644 (file)
--- a/execve.c
+++ b/execve.c
@@ -70,7 +70,7 @@ printargv(struct tcb *const tcp, kernel_ureg_t addr)
                        break;
                }
                tprints(sep);
-               printstr(tcp, wordsize < sizeof(cp.p64) ? cp.p32 : cp.p64, -1);
+               printstr(tcp, wordsize < sizeof(cp.p64) ? cp.p32 : cp.p64);
        }
        tprints("]");
 }
index c82b3b7f8be05d478b96f51c4a3331a72f4eddd5..c82d39c8e081178372611545fe0dfecdc072f12b 100644 (file)
@@ -7,7 +7,7 @@ SYS_FUNC(getrandom)
                if (syserror(tcp))
                        printaddr(tcp->u_arg[0]);
                else
-                       printstr(tcp, tcp->u_arg[0], tcp->u_rval);
+                       printstrn(tcp, tcp->u_arg[0], tcp->u_rval);
                tprintf(", %lu, ", tcp->u_arg[1]);
                printflags(getrandom_flags, tcp->u_arg[2], "GRND_???");
        }
index c64d954dad9beb2faefa579bd30d49d49991c726..cc66f3ff2e333fe4be71daa2d66f6be2cbc7ef9d 100644 (file)
@@ -2,7 +2,7 @@
 
 SYS_FUNC(sethostname)
 {
-       printstr(tcp, tcp->u_arg[0], tcp->u_arg[1]);
+       printstrn(tcp, tcp->u_arg[0], tcp->u_arg[1]);
        tprintf(", %lu", tcp->u_arg[1]);
 
        return RVAL_DECODED;
@@ -15,7 +15,7 @@ SYS_FUNC(gethostname)
                if (syserror(tcp))
                        printaddr(tcp->u_arg[0]);
                else
-                       printstr(tcp, tcp->u_arg[0], -1);
+                       printstr(tcp, tcp->u_arg[0]);
                tprintf(", %lu", tcp->u_arg[1]);
        }
        return 0;
diff --git a/io.c b/io.c
index d225eb6bd6481c47b83c7a700bac210fc1fc54b6..e3be54adc8659cf7003d267c34ba772a4675956a 100644 (file)
--- a/io.c
+++ b/io.c
@@ -41,7 +41,7 @@ SYS_FUNC(read)
                if (syserror(tcp))
                        printaddr(tcp->u_arg[1]);
                else
-                       printstr(tcp, tcp->u_arg[1], tcp->u_rval);
+                       printstrn(tcp, tcp->u_arg[1], tcp->u_rval);
                tprintf(", %lu", tcp->u_arg[2]);
        }
        return 0;
@@ -51,7 +51,7 @@ SYS_FUNC(write)
 {
        printfd(tcp, tcp->u_arg[0]);
        tprints(", ");
-       printstr(tcp, tcp->u_arg[1], tcp->u_arg[2]);
+       printstrn(tcp, tcp->u_arg[1], tcp->u_arg[2]);
        tprintf(", %lu", tcp->u_arg[2]);
 
        return RVAL_DECODED;
@@ -87,7 +87,7 @@ print_iovec(struct tcb *tcp, void *elem_buf, size_t elem_size, void *data)
                                len = c->data_size;
                        if (c->data_size != -1UL)
                                c->data_size -= len;
-                       printstr(tcp, iov[0], len);
+                       printstrn(tcp, iov[0], len);
                        break;
                case IOV_DECODE_NETLINK:
                        if (len > c->data_size)
@@ -156,7 +156,7 @@ SYS_FUNC(pread)
                if (syserror(tcp))
                        printaddr(tcp->u_arg[1]);
                else
-                       printstr(tcp, tcp->u_arg[1], tcp->u_rval);
+                       printstrn(tcp, tcp->u_arg[1], tcp->u_rval);
                tprintf(", %lu, ", tcp->u_arg[2]);
                printllval(tcp, "%lld", 3);
        }
@@ -167,7 +167,7 @@ SYS_FUNC(pwrite)
 {
        printfd(tcp, tcp->u_arg[0]);
        tprints(", ");
-       printstr(tcp, tcp->u_arg[1], tcp->u_arg[2]);
+       printstrn(tcp, tcp->u_arg[1], tcp->u_arg[2]);
        tprintf(", %lu, ", tcp->u_arg[2]);
        printllval(tcp, "%lld", 3);
 
diff --git a/kexec.c b/kexec.c
index 4872ca5bac55426afd6ca492f042de3aec5863cc..a1f0ccbbad9335b75bf7e23c46b27280fa8b5164 100644 (file)
--- a/kexec.c
+++ b/kexec.c
@@ -113,7 +113,7 @@ SYS_FUNC(kexec_file_load)
        /* cmdline_len */
        tprintf("%" PRI_klu ", ", getarg_klu(tcp, 2));
        /* cmdline */
-       printstr(tcp, tcp->u_arg[3], tcp->u_arg[2]);
+       printstrn(tcp, tcp->u_arg[3], tcp->u_arg[2]);
        tprints(", ");
        /* flags */
        printflags64(kexec_file_load_flags, getarg_klu(tcp, 4), "KEXEC_FILE_???");
index edf59e59c7b85f076314bb2cdc0b942140cddf48..38a120e22a2cb3624cd64a40ee6344eaa51ca2bd 100644 (file)
--- a/keyctl.c
+++ b/keyctl.c
@@ -51,13 +51,13 @@ print_keyring_serial_number(key_serial_t id)
 SYS_FUNC(add_key)
 {
        /* type */
-       printstr(tcp, tcp->u_arg[0], -1);
+       printstr(tcp, tcp->u_arg[0]);
        /* description */
        tprints(", ");
-       printstr(tcp, tcp->u_arg[1], -1);
+       printstr(tcp, tcp->u_arg[1]);
        /* payload */
        tprints(", ");
-       printstr(tcp, tcp->u_arg[2], tcp->u_arg[3]);
+       printstrn(tcp, tcp->u_arg[2], tcp->u_arg[3]);
        /* payload length */
        tprintf(", %lu, ", tcp->u_arg[3]);
        /* keyring serial number */
@@ -69,13 +69,13 @@ SYS_FUNC(add_key)
 SYS_FUNC(request_key)
 {
        /* type */
-       printstr(tcp, tcp->u_arg[0], -1);
+       printstr(tcp, tcp->u_arg[0]);
        /* description */
        tprints(", ");
-       printstr(tcp, tcp->u_arg[1], -1);
+       printstr(tcp, tcp->u_arg[1]);
        /* callout_info */
        tprints(", ");
-       printstr(tcp, tcp->u_arg[2], -1);
+       printstr(tcp, tcp->u_arg[2]);
        /* keyring serial number */
        tprints(", ");
        print_keyring_serial_number(tcp->u_arg[3]);
@@ -96,7 +96,7 @@ keyctl_update_key(struct tcb *tcp, key_serial_t id, kernel_ulong_t addr,
 {
        print_keyring_serial_number(id);
        tprints(", ");
-       printstr(tcp, addr, len);
+       printstrn(tcp, addr, len);
        tprintf(", %llu", zero_extend_signed_to_ull(len));
 }
 
@@ -135,9 +135,9 @@ keyctl_keyring_search(struct tcb *tcp, key_serial_t id1, kernel_ulong_t addr1,
 {
        print_keyring_serial_number(id1);
        tprints(", ");
-       printstr(tcp, addr1, -1);
+       printstr(tcp, addr1);
        tprints(", ");
-       printstr(tcp, addr2, -1);
+       printstr(tcp, addr2);
        tprints(", ");
        print_keyring_serial_number(id2);
 }
@@ -157,7 +157,7 @@ keyctl_instantiate_key(struct tcb *tcp, key_serial_t id1, kernel_ulong_t addr,
 {
        print_keyring_serial_number(id1);
        tprints(", ");
-       printstr(tcp, addr, len);
+       printstrn(tcp, addr, len);
        tprintf(", %llu, ", zero_extend_signed_to_ull(len));
        print_keyring_serial_number(id2);
 }
@@ -256,7 +256,7 @@ keyctl_dh_compute(struct tcb *tcp, kernel_ulong_t params, kernel_ulong_t buf,
                        kernel_ulong_t rval = (tcp->u_rval >= 0) &&
                                ((kernel_ulong_t) tcp->u_rval > len) ? len :
                                (kernel_ulong_t) tcp->u_rval;
-                       printstr(tcp, buf, rval);
+                       printstrn(tcp, buf, rval);
                }
                tprintf(", %llu", zero_extend_signed_to_ull(len));
        }
@@ -290,7 +290,7 @@ SYS_FUNC(keyctl)
                break;
 
        case KEYCTL_JOIN_SESSION_KEYRING:
-               printstr(tcp, arg2, -1);
+               printstr(tcp, arg2);
                break;
 
        case KEYCTL_UPDATE:
index 13f4370fcefede8fac875957f08a2fcac21d50a4..079a05818aa1b9c0dbe9f0db8ff9e8e4084dc9a4 100644 (file)
@@ -40,7 +40,7 @@ SYS_FUNC(lookup_dcookie)
        if (syserror(tcp))
                printaddr(tcp->u_arg[argn]);
        else
-               printstr(tcp, tcp->u_arg[argn], tcp->u_rval);
+               printstrn(tcp, tcp->u_arg[argn], tcp->u_rval);
 
        /* len */
        tprintf(", %" PRI_klu, getarg_klu(tcp, argn + 1));
index 7c1407724737c5cb81578d2d4fcb122f81ca2425..0101f061bf3cd2e2c038a6cd23685c8bb3a53141 100644 (file)
@@ -31,7 +31,7 @@
 
 SYS_FUNC(memfd_create)
 {
-       printstr(tcp, tcp->u_arg[0], -1);
+       printstr(tcp, tcp->u_arg[0]);
        tprints(", ");
        printflags(memfd_create_flags, tcp->u_arg[1], "MFD_???");
 
diff --git a/mount.c b/mount.c
index 1ae445dc6faad7ce06255845c653e15ccb8f3edc..cf3afe3370184cd8f321c25d9f8778056e1c365c 100644 (file)
--- a/mount.c
+++ b/mount.c
@@ -65,7 +65,7 @@ SYS_FUNC(mount)
        if (ignore_type)
                printaddr(tcp->u_arg[2]);
        else
-               printstr(tcp, tcp->u_arg[2], -1);
+               printstr(tcp, tcp->u_arg[2]);
        tprints(", ");
 
        if (old_magic) {
@@ -80,7 +80,7 @@ SYS_FUNC(mount)
        if (ignore_data)
                printaddr(tcp->u_arg[4]);
        else
-               printstr(tcp, tcp->u_arg[4], -1);
+               printstr(tcp, tcp->u_arg[4]);
 
        return RVAL_DECODED;
 }
diff --git a/mq.c b/mq.c
index c1d47ab1125053e972e3b4c6c1f25c04d684e58f..f79f9400dbce867e47c0a85fb2a444b04a33eeb3 100644 (file)
--- a/mq.c
+++ b/mq.c
@@ -48,7 +48,7 @@ SYS_FUNC(mq_open)
 SYS_FUNC(mq_timedsend)
 {
        tprintf("%d, ", (int) tcp->u_arg[0]);
-       printstr(tcp, tcp->u_arg[1], tcp->u_arg[2]);
+       printstrn(tcp, tcp->u_arg[1], tcp->u_arg[2]);
        tprintf(", %" PRI_klu ", %u, ", getarg_klu(tcp, 2),
                (unsigned int) tcp->u_arg[3]);
        print_timespec(tcp, tcp->u_arg[4]);
@@ -61,7 +61,7 @@ SYS_FUNC(mq_timedreceive)
                tprintf("%d, ", (int) tcp->u_arg[0]);
        } else {
                if (!syserror(tcp) && (tcp->u_rval >= 0))
-                       printstr(tcp, tcp->u_arg[1], tcp->u_rval);
+                       printstrn(tcp, tcp->u_arg[1], tcp->u_rval);
                else
                        printaddr(tcp->u_arg[1]);
                tprintf(", %" PRI_klu ", ", getarg_klu(tcp, 2));
diff --git a/net.c b/net.c
index 57788b434ef85a76e75a897ca9694811f9fc3799..00cfd707e04c147f75b813856df0b61fce85a66d 100644 (file)
--- a/net.c
+++ b/net.c
@@ -113,7 +113,7 @@ decode_sockbuf(struct tcb *const tcp, const int fd, const kernel_ureg_t addr,
                decode_netlink(tcp, addr, addrlen);
                break;
        default:
-               printstr(tcp, addr, addrlen);
+               printstrn(tcp, addr, addrlen);
        }
 }
 
@@ -605,7 +605,7 @@ print_getsockopt(struct tcb *const tcp, const unsigned int level,
                if (len == sizeof(int)) {
                        printnum_int(tcp, addr, "%d");
                } else {
-                       printstr(tcp, addr, len);
+                       printstrn(tcp, addr, len);
                }
        } else {
                printaddr(addr);
@@ -642,7 +642,7 @@ print_mreq(struct tcb *const tcp, const kernel_ureg_t addr,
        struct ip_mreq mreq;
 
        if (len < sizeof(mreq)) {
-               printstr(tcp, addr, len);
+               printstrn(tcp, addr, len);
                return;
        }
        if (umove_or_printaddr(tcp, addr, &mreq))
@@ -685,7 +685,7 @@ print_mreq6(struct tcb *const tcp, const kernel_ureg_t addr,
        return;
 
 fail:
-       printstr(tcp, addr, len);
+       printstrn(tcp, addr, len);
 }
 #endif /* IPV6_ADD_MEMBERSHIP */
 
@@ -837,7 +837,7 @@ print_setsockopt(struct tcb *const tcp, const unsigned int level,
                if (len == sizeof(int)) {
                        printnum_int(tcp, addr, "%d");
                } else {
-                       printstr(tcp, addr, len);
+                       printstrn(tcp, addr, len);
                }
        } else {
                printaddr(addr);
index ebc35eac73d6d1fd93fadfa18b55f590731412ef..13ff1c55343161799cbb5924abb9feb7973aa705 100644 (file)
--- a/netlink.c
+++ b/netlink.c
@@ -40,7 +40,7 @@ fetch_nlmsghdr(struct tcb *const tcp, struct nlmsghdr *const nlmsghdr,
               const kernel_ureg_t addr, const unsigned long len)
 {
        if (len < sizeof(struct nlmsghdr)) {
-               printstr(tcp, addr, len);
+               printstrn(tcp, addr, len);
                return false;
        }
 
@@ -81,7 +81,7 @@ decode_nlmsghdr_with_payload(struct tcb *const tcp,
        if (nlmsg_len > sizeof(struct nlmsghdr)) {
                tprints(", ");
 
-               printstr(tcp, addr + sizeof(struct nlmsghdr),
+               printstrn(tcp, addr + sizeof(struct nlmsghdr),
                         nlmsg_len - sizeof(struct nlmsghdr));
        }
 
diff --git a/prctl.c b/prctl.c
index a2abfb793d51b7ecd526d3e9943c20baab9af0ff..ddf9a844295ad5f8830341ce2bb9d58561836e50 100644 (file)
--- a/prctl.c
+++ b/prctl.c
@@ -252,7 +252,7 @@ SYS_FUNC(prctl)
                if (arg2 == PR_SET_VMA_ANON_NAME) {
                        tprintf(", PR_SET_VMA_ANON_NAME, %#" PRI_klx, arg3);
                        tprintf(", %" PRI_klu ", ", arg4);
-                       printstr(tcp, arg5, -1);
+                       printstr(tcp, arg5);
                } else {
                        /* There are no other sub-options now, but there
                         * might be in future... */
index a279044b4f58f82ee6f46546d054c72ec453049f..e6fe4306f6f031005802b073f1718bd32def7415 100644 (file)
@@ -45,7 +45,7 @@ MPERS_PRINTER_DECL(void, tprint_msgbuf, struct tcb *const tcp,
 
        if (!umove_or_printaddr(tcp, addr, &msg)) {
                tprintf("{%lu, ", (long) msg.mtype);
-               printstr(tcp, addr + sizeof(msg.mtype), count);
+               printstrn(tcp, addr + sizeof(msg.mtype), count);
                tprints("}");
        }
        tprintf(", %lu, ", count);
index 299b083b077369c81a6eebfa8dd82027c8b3ea61..af4f319f95809cf3461947d7d0295eda59e226b1 100644 (file)
@@ -50,7 +50,7 @@ decode_readlink(struct tcb *tcp, int offset)
                         * "..." continuation based on garbage
                         * past return buffer's end.
                         */
-                       printstr(tcp, tcp->u_arg[offset + 1], tcp->u_rval);
+                       printstrn(tcp, tcp->u_arg[offset + 1], tcp->u_rval);
                tprintf(", %lu", tcp->u_arg[offset + 2]);
        }
        return 0;
index 1669a3d1639b29a288aaee0bd61126c22a008b7c..381e4e8955b64934131531d99f8caf4b2e26f72a 100644 (file)
--- a/reboot.c
+++ b/reboot.c
@@ -17,7 +17,7 @@ SYS_FUNC(reboot)
        printflags(bootflags3, cmd, "LINUX_REBOOT_CMD_???");
        if (cmd == LINUX_REBOOT_CMD_RESTART2) {
                tprints(", ");
-               printstr(tcp, tcp->u_arg[3], -1);
+               printstr(tcp, tcp->u_arg[3]);
        }
        return RVAL_DECODED;
 }
diff --git a/sock.c b/sock.c
index dcc3e41ea670ab9826da4ef7f780940aca920a7e..b7336f436a182b783bb2bd4fb30955f9a20ab056 100644 (file)
--- a/sock.c
+++ b/sock.c
@@ -207,7 +207,7 @@ sock_ioctl(struct tcb *const tcp, const unsigned int code, const kernel_ureg_t a
        case SIOCBRADDBR:
        case SIOCBRDELBR:
                tprints(", ");
-               printstr(tcp, arg, -1);
+               printstr(tcp, arg);
                break;
 #endif
 
index 6be941c665168e9fadb28b9c40e14bcfc126b343..c04f7bd90ec24d492fc37e3be81b8a3bbdbd1644 100644 (file)
--- a/syslog.c
+++ b/syslog.c
@@ -70,7 +70,7 @@ SYS_FUNC(syslog)
        if (syserror(tcp))
                printaddr(tcp->u_arg[1]);
        else
-               printstr(tcp, tcp->u_arg[1], tcp->u_rval);
+               printstrn(tcp, tcp->u_arg[1], tcp->u_rval);
        /* len */
        tprintf(", %d", (int) tcp->u_arg[2]);
 
diff --git a/term.c b/term.c
index 62a2efebd5fe155882beab78a36513c8b8bd1b37..26af12377ea9ae9fb04549a657b8a88d68b67ecb 100644 (file)
--- a/term.c
+++ b/term.c
@@ -275,7 +275,7 @@ term_ioctl(struct tcb *const tcp, const unsigned int code,
        /* ioctls with an indirect parameter displayed as a char */
        case TIOCSTI:
                tprints(", ");
-               printstr(tcp, arg, 1);
+               printstrn(tcp, arg, 1);
                break;
 
        /* ioctls with no parameters */
diff --git a/v4l2.c b/v4l2.c
index 922f3917d82eb142bbb44a58633709e849de7fc2..e746a1ed263bb02ecec875206177f442339407df 100644 (file)
--- a/v4l2.c
+++ b/v4l2.c
@@ -668,7 +668,7 @@ print_v4l2_ext_control(struct tcb *tcp, void *elem_buf, size_t elem_size, void *
        tprintf(", size=%u", p->size);
        if (p->size > 0) {
                tprints(", string=");
-               printstr(tcp, (kernel_ureg_t) p->string, p->size);
+               printstrn(tcp, (kernel_ureg_t) p->string, p->size);
        } else
 # endif
        tprintf(", value=%d, value64=%" PRId64, p->value, (int64_t) p->value64);
diff --git a/xattr.c b/xattr.c
index b52c71d31a1de98ac1e3f8d94f32a6bcb0864dd6..7eaefebb00fa1b15a43820755330f992e604aa35 100644 (file)
--- a/xattr.c
+++ b/xattr.c
@@ -58,7 +58,7 @@ SYS_FUNC(setxattr)
 {
        printpath(tcp, tcp->u_arg[0]);
        tprints(", ");
-       printstr(tcp, tcp->u_arg[1], -1);
+       printstr(tcp, tcp->u_arg[1]);
        print_xattr_val(tcp, tcp->u_arg[2], tcp->u_arg[3], tcp->u_arg[3]);
        tprints(", ");
        printflags(xattrflags, tcp->u_arg[4], "XATTR_???");
@@ -69,7 +69,7 @@ SYS_FUNC(fsetxattr)
 {
        printfd(tcp, tcp->u_arg[0]);
        tprints(", ");
-       printstr(tcp, tcp->u_arg[1], -1);
+       printstr(tcp, tcp->u_arg[1]);
        print_xattr_val(tcp, tcp->u_arg[2], tcp->u_arg[3], tcp->u_arg[3]);
        tprints(", ");
        printflags(xattrflags, tcp->u_arg[4], "XATTR_???");
@@ -81,7 +81,7 @@ SYS_FUNC(getxattr)
        if (entering(tcp)) {
                printpath(tcp, tcp->u_arg[0]);
                tprints(", ");
-               printstr(tcp, tcp->u_arg[1], -1);
+               printstr(tcp, tcp->u_arg[1]);
        } else {
                print_xattr_val(tcp, tcp->u_arg[2], tcp->u_arg[3], tcp->u_rval);
        }
@@ -93,7 +93,7 @@ SYS_FUNC(fgetxattr)
        if (entering(tcp)) {
                printfd(tcp, tcp->u_arg[0]);
                tprints(", ");
-               printstr(tcp, tcp->u_arg[1], -1);
+               printstr(tcp, tcp->u_arg[1]);
        } else {
                print_xattr_val(tcp, tcp->u_arg[2], tcp->u_arg[3], tcp->u_rval);
        }
@@ -107,7 +107,7 @@ print_xattr_list(struct tcb *const tcp, const kernel_ureg_t addr,
        if (!size || syserror(tcp)) {
                printaddr(addr);
        } else {
-               printstr(tcp, addr, tcp->u_rval);
+               printstrn(tcp, addr, tcp->u_rval);
        }
        tprintf(", %lu", size);
 }
@@ -138,7 +138,7 @@ SYS_FUNC(removexattr)
 {
        printpath(tcp, tcp->u_arg[0]);
        tprints(", ");
-       printstr(tcp, tcp->u_arg[1], -1);
+       printstr(tcp, tcp->u_arg[1]);
        return RVAL_DECODED;
 }
 
@@ -146,6 +146,6 @@ SYS_FUNC(fremovexattr)
 {
        printfd(tcp, tcp->u_arg[0]);
        tprints(", ");
-       printstr(tcp, tcp->u_arg[1], -1);
+       printstr(tcp, tcp->u_arg[1]);
        return RVAL_DECODED;
 }