From: Dmitry V. Levin Date: Tue, 28 Jun 2016 22:25:10 +0000 (+0000) Subject: msghdr.c: when printing struct struct cmsghdr.cmsg_data, also print its name X-Git-Tag: v4.13~86 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=08c0960ad516f3005a1dbea155efcef6957d713b;p=strace msghdr.c: when printing struct struct cmsghdr.cmsg_data, also print its name * msghdr.c (print_scm_rights, print_scm_creds, print_scm_security, print_cmsg_ip_pktinfo, print_cmsg_ip_ttl, print_cmsg_ip_tos, print_cmsg_ip_checksum, print_cmsg_ip_opts, print_cmsg_ip_recverr, print_cmsg_ip_origdstaddr): Print "cmsg_data=" before its contents. * tests/inet-cmsg.c (print_pktinfo, print_ttl, print_tos, print_opts, print_origdstaddr): Update expected output. * tests/scm_rights-fd.test: Likewise. --- diff --git a/msghdr.c b/msghdr.c index 931d3bd0..66e5a704 100644 --- a/msghdr.c +++ b/msghdr.c @@ -65,7 +65,7 @@ print_scm_rights(struct tcb *tcp, const void *cmsg_data, if (sizeof(*fds) > data_len) return; - tprints(", ["); + tprints(", cmsg_data=["); while ((const char *) fds < end) { if (seen) tprints(", "); @@ -85,7 +85,7 @@ print_scm_creds(struct tcb *tcp, const void *cmsg_data, if (sizeof(*uc) > data_len) return; - tprintf(", {pid=%u, uid=%u, gid=%u}", + tprintf(", cmsg_data={pid=%u, uid=%u, gid=%u}", (unsigned) uc->pid, (unsigned) uc->uid, (unsigned) uc->gid); } @@ -96,7 +96,7 @@ print_scm_security(struct tcb *tcp, const void *cmsg_data, if (!data_len) return; - tprints(", "); + tprints(", cmsg_data="); print_quoted_string(cmsg_data, data_len, 0); } @@ -109,7 +109,7 @@ print_cmsg_ip_pktinfo(struct tcb *tcp, const void *cmsg_data, if (sizeof(*info) > data_len) return; - tprints(", {ipi_ifindex="); + tprints(", cmsg_data={ipi_ifindex="); print_ifindex(info->ipi_ifindex); tprintf(", ipi_spec_dst=inet_addr(\"%s\"), ipi_addr=inet_addr(\"%s\")}", inet_ntoa(info->ipi_spec_dst), inet_ntoa(info->ipi_addr)); @@ -124,7 +124,7 @@ print_cmsg_ip_ttl(struct tcb *tcp, const void *cmsg_data, if (sizeof(*ttl) > data_len) return; - tprintf(", {ttl=%u}", *ttl); + tprintf(", cmsg_data={ttl=%u}", *ttl); } static void @@ -136,7 +136,7 @@ print_cmsg_ip_tos(struct tcb *tcp, const void *cmsg_data, if (sizeof(*tos) > data_len) return; - tprintf(", {tos=%x}", *tos); + tprintf(", cmsg_data={tos=%x}", *tos); } static void @@ -148,7 +148,7 @@ print_cmsg_ip_checksum(struct tcb *tcp, const void *cmsg_data, if (sizeof(*csum) > data_len) return; - tprintf(", {csum=%u}", *csum); + tprintf(", cmsg_data={csum=%u}", *csum); } static void @@ -161,7 +161,7 @@ print_cmsg_ip_opts(struct tcb *tcp, const void *cmsg_data, if (!data_len) return; - tprints(", {opts=0x"); + tprints(", cmsg_data={opts=0x"); for (i = 0; i < data_len; ++i) tprintf("%02x", opts[i]); tprints("}"); @@ -185,7 +185,7 @@ print_cmsg_ip_recverr(struct tcb *tcp, const void *cmsg_data, if (sizeof(*err) > data_len) return; - tprintf(", {ee_errno=%u, ee_origin=%u, ee_type=%u, ee_code=%u" + tprintf(", cmsg_data={ee_errno=%u, ee_origin=%u, ee_type=%u, ee_code=%u" ", ee_info=%u, ee_data=%u, offender=", err->ee_errno, err->ee_origin, err->ee_type, err->ee_code, err->ee_info, err->ee_data); @@ -200,7 +200,7 @@ print_cmsg_ip_origdstaddr(struct tcb *tcp, const void *cmsg_data, if (sizeof(struct sockaddr_in) > data_len) return; - tprints(", "); + tprints(", cmsg_data="); print_sockaddr(tcp, cmsg_data, data_len); } diff --git a/tests/inet-cmsg.c b/tests/inet-cmsg.c index b7207a3d..b1d655a2 100644 --- a/tests/inet-cmsg.c +++ b/tests/inet-cmsg.c @@ -38,7 +38,7 @@ static void print_pktinfo(const struct cmsghdr *c) { - printf("IP_PKTINFO, {ipi_ifindex=if_nametoindex(\"lo\")" + printf("IP_PKTINFO, cmsg_data={ipi_ifindex=if_nametoindex(\"lo\")" ", ipi_spec_dst=inet_addr(\"127.0.0.1\")" ", ipi_addr=inet_addr(\"127.0.0.1\")}"); } @@ -48,7 +48,7 @@ print_ttl(const struct cmsghdr *c) { const unsigned int *ttl = (const unsigned int *) CMSG_DATA(c); - printf("IP_TTL, {ttl=%u}", *ttl); + printf("IP_TTL, cmsg_data={ttl=%u}", *ttl); } static void @@ -56,7 +56,7 @@ print_tos(const struct cmsghdr *c) { const uint8_t *tos = (const uint8_t *) CMSG_DATA(c); - printf("IP_TOS, {tos=%x}", *tos); + printf("IP_TOS, cmsg_data={tos=%x}", *tos); } static void @@ -67,7 +67,7 @@ print_opts(const char *name, const struct cmsghdr *c) printf("%s", name); if (len) { - printf(", {opts=0x"); + printf(", cmsg_data={opts=0x"); size_t i; for (i = 0; i < len; ++i) printf("%02x", opts[i]); @@ -82,7 +82,7 @@ print_origdstaddr(const struct cmsghdr *c) const struct sockaddr_in *sin = (const struct sockaddr_in *) CMSG_DATA(c); - printf("IP_ORIGDSTADDR, {sa_family=AF_INET, sin_port=htons(%u)" + printf("IP_ORIGDSTADDR, cmsg_data={sa_family=AF_INET, sin_port=htons(%u)" ", sin_addr=inet_addr(\"127.0.0.1\")}", ntohs(sin->sin_port)); } #endif diff --git a/tests/scm_rights-fd.test b/tests/scm_rights-fd.test index 2d92cb86..70a0f2a8 100755 --- a/tests/scm_rights-fd.test +++ b/tests/scm_rights-fd.test @@ -63,8 +63,8 @@ ids='\{pid='"$n"', uid=[0-9]+, gid=[0-9]+\}' msg_head='\{msg_name=NULL, msg_namelen=0, msg_iov='"$iov"', msg_iovlen=1, msg_control=' msg_tail=', msg_controllen='"$n"', msg_flags=0' -rights='\{cmsg_len='"$n"', cmsg_level=SOL_SOCKET, cmsg_type=SCM_RIGHTS, '"$rights_data"'\}' -creds='\{cmsg_len='"$n"', cmsg_level=SOL_SOCKET, cmsg_type=SCM_CREDENTIALS, '"$ids"'\}' +rights='\{cmsg_len='"$n"', cmsg_level=SOL_SOCKET, cmsg_type=SCM_RIGHTS, cmsg_data='"$rights_data"'\}' +creds='\{cmsg_len='"$n"', cmsg_level=SOL_SOCKET, cmsg_type=SCM_CREDENTIALS, cmsg_data='"$ids"'\}' EXPECTED="$LOG.expected"