strace cant parse struct msghdr RHEL

Al Gambardella agam.email at gmail.com
Tue Oct 4 13:00:17 UTC 2016


I downloaded strace version 4.13 and was able to build the source code
and produce the strace executable. I need to see the all of the
payload in the recvmsg and sendmsg calls. including the iov style
arrays

My system is RHEL Server 5.8 Tikanga. Kernel version 2.6.18-348.el5

When I run strace with the following command line:
./strace -p <mypid> -e 'trace=recvmsg,sendmsg' -e write=8 -e read=8

I am getting the following output (which contains errors). Can someone
explain why and if this can be fixed?

sendmsg(8, {msg_name=NULL, msg_namelen=-7630976, msg_iov=NULL,
msg_iovlen=92, msg_control=[{cmsg_len=2048, cmsg_level=SOL_IP,
cmsg_type=0x8f800000 /* IP_??? */}, {cmsg_len=2565867895,
cmsg_level=0xc26cff8b /* SOL_??? */, cmsg_type=0x8cacff8b}, ...],
msg_controllen=38647074816,
msg_flags=MSG_DONTROUTE|MSG_CTRUNC|MSG_DONTWAIT|MSG_WAITALL|MSG_FIN|MSG_SYN|MSG_CONFIRM|MSG_MORE|0xff8b0010},
0) = 12
sendmsg(8, {msg_name=NULL, msg_namelen=-7623584, msg_iov=NULL,
msg_iovlen=33655230453052149, msg_control=./strace: umoven: short read
(13250 < 20480) @0xff8bac3e: Input/output error
0x2ff8bac3e, msg_controllen=38647082208,
msg_flags=MSG_DONTROUTE|MSG_CTRUNC|MSG_TRUNC|MSG_SYN|MSG_CONFIRM|MSG_ERRQUEUE|MSG_MORE|0xff8b0010},
0) = 12
./strace: Out of memory
recvmsg(8, {msg_name=NULL, msg_namelen=-7623488, msg_iov=NULL,
msg_iovlen=0, msg_control=NULL, msg_controllen=17869443930177667072,
msg_flags=MSG_CTRUNC|MSG_TRUNC|MSG_WAITALL|MSG_CONFIRM|0xbe00010},
MSG_WAITALL) = 4188
sendmsg(8, {msg_name=NULL, msg_namelen=-7623584, msg_iov=NULL,
msg_iovlen=33655230453052149, msg_control=./strace: umoven: short read
(13250 < 20480) @0xff8bac3e: Input/output error
0x2ff8bac3e, msg_controllen=38647082208,
msg_flags=MSG_DONTROUTE|MSG_CTRUNC|MSG_TRUNC|MSG_SYN|MSG_CONFIRM|MSG_ERRQUEUE|MSG_MORE|0xff8b0010},
0) = 12
./strace: Out of memory
recvmsg(8, {msg_name=NULL, msg_namelen=-7623488, msg_iov=NULL,
msg_iovlen=0, msg_control=NULL, msg_controllen=17869443930177667072,
msg_flags=MSG_CTRUNC|MSG_TRUNC|MSG_WAITALL|MSG_CONFIRM|0xbe00010},
MSG_WAITALL) = 12
recvmsg(8, {msg_name=NULL, msg_namelen=-7623488, msg_iov=NULL,
msg_iovlen=0, msg_control=NULL, msg_controllen=17869443930177667072,
msg_flags=MSG_CTRUNC|MSG_TRUNC|MSG_WAITALL|MSG_CONFIRM|0xbe00010},
MSG_WAITALL) = 12
recvmsg(8, {msg_name=NULL, msg_namelen=-7623488, msg_iov=NULL,
msg_iovlen=0, msg_control=NULL, msg_controllen=17869443930177667072,
msg_flags=MSG_CTRUNC|MSG_TRUNC|MSG_WAITALL|MSG_CONFIRM|0xbe00010},
MSG_WAITALL) = 4188
sendmsg(8, {msg_name=NULL, msg_namelen=-7623584, msg_iov=NULL,
msg_iovlen=33655230453052149, msg_control=./strace: umoven: short read
(13250 < 20480) @0xff8bac3e: Input/output error
0x2ff8bac3e, msg_controllen=38647082208,
msg_flags=MSG_DONTROUTE|MSG_CTRUNC|MSG_TRUNC|MSG_SYN|MSG_CONFIRM|MSG_ERRQUEUE|MSG_MORE|0xff8b0010},
0) = 12
./strace: Out of memory
recvmsg(8, {msg_name=NULL, msg_namelen=-7623488, msg_iov=NULL,
msg_iovlen=0, msg_control=NULL, msg_controllen=17869443930177667072,
msg_flags=MSG_CTRUNC|MSG_TRUNC|MSG_WAITALL|MSG_CONFIRM|0xbe00010},
MSG_WAITALL) = 4188
sendmsg(8, {msg_name=NULL, msg_namelen=-7623584, msg_iov=NULL,
msg_iovlen=33655230453052149, msg_control=./strace: umoven: short read
(13250 < 20480) @0xff8bac3e: Input/output error
0x2ff8bac3e, msg_controllen=38647082208,
msg_flags=MSG_DONTROUTE|MSG_CTRUNC|MSG_TRUNC|MSG_SYN|MSG_CONFIRM|MSG_ERRQUEUE|MSG_MORE|0xff8b0010},
0) = 12
./strace: Out of memory
recvmsg(8, {msg_name=NULL, msg_namelen=-7623488, msg_iov=NULL,
msg_iovlen=0, msg_control=NULL, msg_controllen=17869443930177667072,
msg_flags=MSG_CTRUNC|MSG_TRUNC|MSG_WAITALL|MSG_CONFIRM|0xbe00010},
MSG_WAITALL) = 12
recvmsg(8, {msg_name=NULL, msg_namelen=-7623488, msg_iov=NULL,
msg_iovlen=0, msg_control=NULL, msg_controllen=17869443930177667072,
msg_flags=MSG_CTRUNC|MSG_TRUNC|MSG_WAITALL|MSG_CONFIRM|0xbe00010},
MSG_WAITALL) = 4188
sendmsg(8, {msg_name=NULL, msg_namelen=-7623584, msg_iov=NULL,
msg_iovlen=33655230453052149, msg_control=./strace: umoven: short read
(13250 < 20480) @0xff8bac3e: Input/output error
0x2ff8bac3e, msg_controllen=38647082208,
msg_flags=MSG_DONTROUTE|MSG_CTRUNC|MSG_TRUNC|MSG_SYN|MSG_CONFIRM|MSG_ERRQUEUE|MSG_MORE|0xff8b0010},
0) = 12
./strace: Out of memory
recvmsg(8, {msg_name=NULL, msg_namelen=-7623488, msg_iov=NULL,
msg_iovlen=0, msg_control=NULL, msg_controllen=17869443930177667072,
msg_flags=MSG_CTRUNC|MSG_TRUNC|MSG_WAITALL|MSG_CONFIRM|0xbe00010},
MSG_WAITALL) = 4188
sendmsg(8, {msg_name=NULL, msg_namelen=-7631616, msg_iov=NULL,
msg_iovlen=10, msg_control=[{cmsg_len=17920, cmsg_level=SOL_IP,
cmsg_type=0x8d000000 /* IP_??? */}, {cmsg_len=3158845,
cmsg_level=0x5f534d4e /* SOL_??? */, cmsg_type=0x4e5f534f}, ...],
msg_controllen=300847264664,
msg_flags=MSG_DONTROUTE|MSG_CTRUNC|MSG_DONTWAIT|MSG_EOR|MSG_SYN|MSG_CONFIRM|MSG_MORE|0xff8b0010},
0) = 74
sendmsg(8, {msg_name=NULL, msg_namelen=-7631504, msg_iov=NULL,
msg_iovlen=29510720283184520, msg_control=[{cmsg_len=2048,
cmsg_level=SOL_IP, cmsg_type=0x8d700000 /* IP_??? */},
{cmsg_len=3971745833, cmsg_level=0x7ff00bc7 /* SOL_??? */,
cmsg_type=0xbda}, ...], msg_controllen=38647074288,
msg_flags=MSG_DONTROUTE|MSG_CTRUNC|MSG_DONTWAIT|MSG_WAITALL|MSG_SYN|MSG_CONFIRM|MSG_MORE|0xff8b0000},
0) = 12
./strace: Out of memory
sendmsg(8, {msg_name=NULL, msg_namelen=-7623584, msg_iov=NULL,
msg_iovlen=33655230453052149, msg_control=./strace: umoven: short read
(13250 < 20480) @0xff8bac3e: Input/output error
0x2ff8bac3e, msg_controllen=38647082208,
msg_flags=MSG_DONTROUTE|MSG_CTRUNC|MSG_TRUNC|MSG_SYN|MSG_CONFIRM|MSG_ERRQUEUE|MSG_MORE|0xff8b0010},
0) = 12
./strace: Out of memory




More information about the Strace-devel mailing list