diff options
author | tuexen <tuexen@FreeBSD.org> | 2018-04-07 21:08:44 +0000 |
---|---|---|
committer | tuexen <tuexen@FreeBSD.org> | 2018-04-07 21:08:44 +0000 |
commit | dedbddca4501eb229e0ac5a488c98f5e73260154 (patch) | |
tree | 65d429534f1a7a5adfbcd8b242bf8c0e9ef2d5e9 /usr.bin | |
parent | b39a0c5e6fbaa5c7ffd34167e29b635d5f0a8363 (diff) | |
download | FreeBSD-src-dedbddca4501eb229e0ac5a488c98f5e73260154.zip FreeBSD-src-dedbddca4501eb229e0ac5a488c98f5e73260154.tar.gz |
MFC r328059:
Improve the printing of cmgs when the length is 0. Fix error handling.
Diffstat (limited to 'usr.bin')
-rw-r--r-- | usr.bin/truss/syscalls.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/usr.bin/truss/syscalls.c b/usr.bin/truss/syscalls.c index 2477b22..ba03094 100644 --- a/usr.bin/truss/syscalls.c +++ b/usr.bin/truss/syscalls.c @@ -1476,10 +1476,15 @@ print_cmsgs(FILE *fp, pid_t pid, bool recv, struct msghdr *msghdr) bool first; len = msghdr->msg_controllen; + if (len == 0) { + fputs("{}", fp); + return; + } cmsgbuf = calloc(1, len); if (get_struct(pid, msghdr->msg_control, cmsgbuf, len) == -1) { fprintf(fp, "%p", msghdr->msg_control); free(cmsgbuf); + return; } msghdr->msg_control = cmsgbuf; first = true; |