]> git.ipfire.org Git - thirdparty/util-linux.git/commitdiff
tests: (lsfd) add a case for testing SOCK.SHUTDOWN column
authorMasatake YAMATO <yamato@redhat.com>
Mon, 2 Oct 2023 14:35:46 +0000 (23:35 +0900)
committerMasatake YAMATO <yamato@redhat.com>
Mon, 9 Oct 2023 06:42:34 +0000 (15:42 +0900)
Signed-off-by: Masatake YAMATO <yamato@redhat.com>
tests/expected/lsfd/mkfds-socketpair-STREAM-SHUTDOWN-STATE [new file with mode: 0644]
tests/ts/lsfd/mkfds-socketpair

diff --git a/tests/expected/lsfd/mkfds-socketpair-STREAM-SHUTDOWN-STATE b/tests/expected/lsfd/mkfds-socketpair-STREAM-SHUTDOWN-STATE
new file mode 100644 (file)
index 0000000..a7a285c
--- /dev/null
@@ -0,0 +1,3 @@
+3 rw- SOCK sockfs -w
+4 rw- SOCK sockfs r-
+ASSOC,MODE,STTYPE,SOURCE,SOCK.SHUTDOWN: 0
index 9883f0ac98b015311d28725373d9a3d4c62c8161..ef354526bf4a19fbab5f6cd3ed535ca523320b12 100755 (executable)
@@ -85,6 +85,29 @@ mkfds_socketpair_stream_endpoint()
     ts_finalize_subtest
 }
 
+mkfds_socketpair_stream_shutdown_state()
+{
+    ts_init_subtest "STREAM-SHUTDOWN-STATE"
+    if [ "$QEMU_USER" == "1" ]; then
+       ts_skip_subtest "running under qemu-user emulation"
+       return
+    fi
+    {
+       coproc MKFDS { "$TS_HELPER_MKFDS" socketpair $FD0 $FD1 socktype=STREAM halfclose=1; }
+       if read -u ${MKFDS[0]} PID; then
+           EXPR='(FD == '"$FD0"') or (FD == '"$FD1"')'
+           ${TS_CMD_LSFD} -p "${PID}" -n -o ASSOC,MODE,STTYPE,SOURCE,SOCK.SHUTDOWN -Q "${EXPR}"
+           echo 'ASSOC,MODE,STTYPE,SOURCE,SOCK.SHUTDOWN': ${PIPESTATUS[0]}
+
+           echo DONE >&"${MKFDS[1]}"
+       fi
+    } > "$TS_OUTPUT" 2>&1
+
+    wait ${MKFDS_PID}
+    ts_finalize_subtest
+}
+
 mkfds_socketpair_stream_endpoint
+mkfds_socketpair_stream_shutdown_state
 
 ts_finalize