From: Dmitry V. Levin Date: Wed, 21 Dec 2016 15:36:50 +0000 (+0000) Subject: msghdr: cast pointers to kernel_ureg_t instead of long X-Git-Tag: v4.16~249 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=aa350a2b9714c1f5bb0cce9a62a2c1f7919ef66e;p=strace msghdr: cast pointers to kernel_ureg_t instead of long * msghdr.c (print_struct_msghdr): Cast msghdr.msg_name pointer to kernel_ureg_t instead of long. (dumpiov_in_msghdr): Cast msghdr.msg_iov pointer to kernel_ureg_t instead of long. --- diff --git a/msghdr.c b/msghdr.c index 727d2ea9..75efcd58 100644 --- a/msghdr.c +++ b/msghdr.c @@ -340,7 +340,7 @@ print_struct_msghdr(struct tcb *tcp, const struct msghdr *msg, tprints("{msg_name="); const int family = - decode_sockaddr(tcp, (long) msg->msg_name, msg_namelen); + decode_sockaddr(tcp, (kernel_ureg_t) msg->msg_name, msg_namelen); const enum iov_decode decode = (family == AF_NETLINK) ? IOV_DECODE_NETLINK : IOV_DECODE_STR; @@ -394,8 +394,10 @@ dumpiov_in_msghdr(struct tcb *tcp, long addr, unsigned long data_size) { struct msghdr msg; - if (fetch_struct_msghdr(tcp, addr, &msg)) - dumpiov_upto(tcp, msg.msg_iovlen, (long)msg.msg_iov, data_size); + if (fetch_struct_msghdr(tcp, addr, &msg)) { + dumpiov_upto(tcp, msg.msg_iovlen, + (kernel_ureg_t) msg.msg_iov, data_size); + } } SYS_FUNC(sendmsg)