From: Masatake YAMATO Date: Mon, 2 Oct 2023 12:52:00 +0000 (+0900) Subject: tests: (lsfd) extend the mkfds-socketpair case to test ENDPOINTS with SOCK.SHUTDOWN... X-Git-Tag: v2.40-rc1~210^2~1 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=b0dbcec023e7108171c5b6f44556529c82bc1812;p=thirdparty%2Futil-linux.git tests: (lsfd) extend the mkfds-socketpair case to test ENDPOINTS with SOCK.SHUTDOWN info Signed-off-by: Masatake YAMATO --- diff --git a/tests/expected/lsfd/mkfds-socketpair-STREAM-ENDPOINT-halfclose b/tests/expected/lsfd/mkfds-socketpair-STREAM-ENDPOINT-halfclose new file mode 100644 index 0000000000..72fa052576 --- /dev/null +++ b/tests/expected/lsfd/mkfds-socketpair-STREAM-ENDPOINT-halfclose @@ -0,0 +1,3 @@ +3 rw- SOCK sockfs 1,test_mkfds,4r- +4 rw- SOCK sockfs 1,test_mkfds,3-w +ASSOC,MODE,STTYPE,SOURCE,ENDPOINTS: 0 diff --git a/tests/ts/lsfd/mkfds-socketpair b/tests/ts/lsfd/mkfds-socketpair index ef354526bf..38f9279ceb 100755 --- a/tests/ts/lsfd/mkfds-socketpair +++ b/tests/ts/lsfd/mkfds-socketpair @@ -107,7 +107,30 @@ mkfds_socketpair_stream_shutdown_state() ts_finalize_subtest } +mkfds_socketpair_stream_endpoint_halfclose() +{ + ts_init_subtest "STREAM-ENDPOINT-halfclose" + 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,ENDPOINTS -Q "${EXPR}" | sed -e "s/${PID}/1/g" + echo 'ASSOC,MODE,STTYPE,SOURCE,ENDPOINTS': ${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 +mkfds_socketpair_stream_endpoint_halfclose ts_finalize