if (!sock->protoname)
return false;
/* FALL THROUGH */
- case COL_PROTONAME:
+ case COL_SOCK_PROTONAME:
if (sock->protoname)
if (scols_line_set_data(ln, column_index, sock->protoname))
err(EXIT_FAILURE, _("failed to add output data"));
POS <``number``>::
File position.
-PROTONAME <``string``>::
-Protocol name.
-
RDEV <``string``>::
Device ID (if special file).
SOCK.NETS <``number``>::
Inode identifying network namespace where the socket belogs to.
+SOCK.PROTONAME <``string``>::
+Protocol name.
+
SOCK.STATE <``string``>::
State of socket.
TYPE <``string``>::
Cooked version of STTYPE. It is same as STTYPE with exceptions.
-For SOCK, print the value for PROTONAME.
+For SOCK, print the value for SOCK.PROTONAME.
For UNKN, print the value for AINODECLASS if SOURCE is anon_inodefs.
UID <``number``>::
N_("PID of the process targeted by the pidfd") },
[COL_POS] = { "POS", 5, SCOLS_FL_RIGHT, SCOLS_JSON_NUMBER,
N_("file position") },
- [COL_PROTONAME]={ "PROTONAME",0, SCOLS_FL_RIGHT, SCOLS_JSON_STRING,
- N_("protocol name") },
[COL_RDEV] = { "RDEV", 0, SCOLS_FL_RIGHT, SCOLS_JSON_STRING,
N_("device ID (if special file)") },
[COL_SIZE] = { "SIZE", 4, SCOLS_FL_RIGHT, SCOLS_JSON_NUMBER,
N_("listening socket") },
[COL_SOCK_NETNS]={"SOCK.NETNS", 0, SCOLS_FL_RIGHT, SCOLS_JSON_NUMBER,
N_("inode identifying network namespace where the socket belongs to") },
+ [COL_SOCK_PROTONAME]={"SOCK.PROTONAME",0,SCOLS_FL_RIGHT,SCOLS_JSON_STRING,
+ N_("protocol name") },
[COL_SOCK_STATE]={"SOCK.STATE", 0, SCOLS_FL_RIGHT, SCOLS_JSON_STRING,
N_("State of socket") },
[COL_SOCK_TYPE] ={"SOCK.TYPE", 0, SCOLS_FL_RIGHT, SCOLS_JSON_STRING,
COL_PIDFD_NSPID,
COL_PIDFD_PID,
COL_POS,
- COL_PROTONAME,
COL_RDEV,
COL_SIZE,
COL_SOCK_LISTENING,
COL_SOCK_NETNS,
+ COL_SOCK_PROTONAME,
COL_SOCK_STATE,
COL_SOCK_TYPE,
COL_SOURCE,
- PACKET
-PROTONAME: 0
+ PACKET
+SOCK.PROTONAME: 0
- 3 rw- SOCK sockfs UNIX
- 4 rw- SOCK sockfs UNIX
-ASSOC,MODE,STTYPE,SOURCE,PROTONAME: 0
+ 3 rw- SOCK sockfs UNIX
+ 4 rw- SOCK sockfs UNIX
+ASSOC,MODE,STTYPE,SOURCE,SOCK.PROTONAME: 0
coproc MKFDS { "$TS_HELPER_MKFDS" mapped-packet-socket $FD interface=${INTERFACE}; }
if read -u ${MKFDS[0]} PID; then
EXPR='(ASSOC == "shm") and (STTYPE == "SOCK") and (MODE == "-w-")'
- ${TS_CMD_LSFD} -p "$PID" -n -o PROTONAME -Q "${EXPR}"
- echo 'PROTONAME': $?
+ ${TS_CMD_LSFD} -p "$PID" -n -o SOCK.PROTONAME -Q "${EXPR}"
+ echo 'SOCK.PROTONAME': $?
fi
kill -CONT ${PID}
coproc MKFDS { "$TS_HELPER_MKFDS" socketpair $FD0 $FD1 socktype=DGRAM; }
if read -u ${MKFDS[0]} PID; then
EXPR='(PID == '"${PID}"') and ((FD == '"$FD0"') or (FD == '"$FD1"'))'
- ${TS_CMD_LSFD} -n -o ASSOC,MODE,STTYPE,SOURCE,PROTONAME -Q "${EXPR}" | sed -e 's/UNIX-DGRAM/UNIX/'
- echo 'ASSOC,MODE,STTYPE,SOURCE,PROTONAME': $?
+ ${TS_CMD_LSFD} -n -o ASSOC,MODE,STTYPE,SOURCE,SOCK.PROTONAME -Q "${EXPR}" | sed -e 's/UNIX-DGRAM/UNIX/'
+ echo 'ASSOC,MODE,STTYPE,SOURCE,SOCK.PROTONAME': $?
kill -CONT ${PID}
wait ${MKFDS_PID}