Move fallback -yy socket print from printfd to print_sockaddr_by_inode
* util.c (printfd): In -yy mode, move fallback print of proto:[inode] ...
* socketutils.c (to print_sockaddr_by_inode): ... here.
diff --git a/socketutils.c b/socketutils.c
index f0faf8c..2f4a9b0 100644
--- a/socketutils.c
+++ b/socketutils.c
@@ -326,6 +326,11 @@
r = inet_print(fd, AF_INET6, IPPROTO_UDP, inode, "UDPv6");
else if (strcmp(proto_name, "UNIX") == 0)
r = unix_print(fd, inode);
+
+ if (!r) {
+ tprintf("%s:[%lu]", proto_name, inode);
+ r = true;
+ }
} else {
const struct {
const int family;
diff --git a/util.c b/util.c
index 01969a7..4616920 100644
--- a/util.c
+++ b/util.c
@@ -512,18 +512,14 @@
if (show_fd_path > 1 &&
strncmp(path, socket_prefix, socket_prefix_len) == 0 &&
path[path_len - 1] == ']') {
- unsigned long inodenr;
+ unsigned long inodenr =
+ strtoul(path + socket_prefix_len, NULL, 10);
#define PROTO_NAME_LEN 32
char proto_buf[PROTO_NAME_LEN];
const char *proto =
getfdproto(tcp, fd, proto_buf, PROTO_NAME_LEN);
- inodenr = strtoul(path + socket_prefix_len, NULL, 10);
- if (!print_sockaddr_by_inode(inodenr, proto)) {
- if (proto)
- tprintf("%s:[%lu]", proto, inodenr);
- else
- tprints(path);
- }
+ if (!print_sockaddr_by_inode(inodenr, proto))
+ tprints(path);
} else {
print_quoted_string(path, path_len,
QUOTE_OMIT_LEADING_TRAILING_QUOTES);