From: Masatake YAMATO Date: Wed, 22 Feb 2023 16:46:15 +0000 (+0900) Subject: tests: (lsfd) add a case for UDP-Lite sockets X-Git-Tag: v2.39-rc1~52^2~13 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=54c9055b029b96e947f6a7664d4c5a2f76550f3f;p=thirdparty%2Futil-linux.git tests: (lsfd) add a case for UDP-Lite sockets Signed-off-by: Masatake YAMATO --- diff --git a/tests/expected/lsfd/mkfds-udp b/tests/expected/lsfd/mkfds-udp index 9eb7a1e526..58ce260dfe 100644 --- a/tests/expected/lsfd/mkfds-udp +++ b/tests/expected/lsfd/mkfds-udp @@ -9,4 +9,16 @@ ASSOC,TYPE,STTYPE,SOCK.STATE,SOCK.TYPE,SOCK.LISTENING,INET.LADDR,INET.RADDR,UDP. LADDR/LPORT pattern match: OK 3 UDP SOCK state=close laddr=127.0.0.1:34567 close dgram 0 127.0.0.1 0.0.0.0 127.0.0.1:34567 34567 0.0.0.0:0 0 4 UDP SOCK state=close laddr=127.0.0.1:23456 close dgram 0 127.0.0.1 0.0.0.0 127.0.0.1:23456 23456 0.0.0.0:0 0 +ASSOC,TYPE,STTYPE,NAME,SOCK.STATE,SOCK.TYPE,SOCK.LISTENING,INET.LADDR,INET.RADDR,UDP.LADDR,UDP.LPORT,UDP.RADDR,UDP.RPORT: 0 + 3 UDP-Lite SOCK state=close laddr=127.0.0.1:34567 close dgram 0 127.0.0.1 0.0.0.0 127.0.0.1:34567 34567 0.0.0.0:0 0 + 4 UDP-Lite SOCK state=established laddr=127.0.0.1:23456 raddr=127.0.0.1:34567 established dgram 0 127.0.0.1 127.0.0.1 127.0.0.1:23456 23456 127.0.0.1:34567 34567 +ASSOC,TYPE,STTYPE,NAME,SOCK.STATE,SOCK.TYPE,SOCK.LISTENING,INET.LADDR,INET.RADDR,UDPLite.LADDR,UDPLite.LPORT,UDPLite.RADDR,UDPLite.RPORT: 0 + 3 UDP-Lite SOCK 0 +ASSOC,TYPE,STTYPE,SOCK.STATE,SOCK.TYPE,SOCK.LISTENING,INET.LADDR,INET.RADDR,UDPLite.LADDR,UDPLite.LPORT,UDPLite.RADDR,UDPLite.RPORT: 0 +NAME pattern match: OK + 4 UDP-Lite SOCK established dgram 0 127.0.0.1 127.0.0.1 127.0.0.1:34567 34567 +ASSOC,TYPE,STTYPE,SOCK.STATE,SOCK.TYPE,SOCK.LISTENING,INET.LADDR,INET.RADDR,UDPLite.RADDR,UDPLite.RPORT: 0 +LADDR/LPORT pattern match: OK + 3 UDP-Lite SOCK state=close laddr=127.0.0.1:34567 close dgram 0 127.0.0.1 0.0.0.0 + 4 UDP-Lite SOCK state=close laddr=127.0.0.1:23456 close dgram 0 127.0.0.1 0.0.0.0 ASSOC,TYPE,STTYPE,NAME,SOCK.STATE,SOCK.TYPE,SOCK.LISTENING,INET.LADDR,INET.RADDR,UDP.LADDR,UDP.LPORT,UDP.RADDR,UDP.RPORT: 0 diff --git a/tests/ts/lsfd/mkfds-udp b/tests/ts/lsfd/mkfds-udp index cbf8fa65c5..9261771d82 100755 --- a/tests/ts/lsfd/mkfds-udp +++ b/tests/ts/lsfd/mkfds-udp @@ -15,7 +15,7 @@ # GNU General Public License for more details. # TS_TOPDIR="${0%/*}/../.." -TS_DESC="UDP sockets" +TS_DESC="UDP and UDP-Lite sockets" . "$TS_TOPDIR"/functions.sh ts_init "$*" @@ -29,22 +29,36 @@ ts_cd "$TS_OUTDIR" PID= FDS=3 FDC=4 -EXPR='(TYPE == "UDP") and (FD >= 3) and (FD <= 4)' -EXPR_server='(TYPE == "UDP") and (FD == 3)' -EXPR_client='(TYPE == "UDP") and (FD == 4)' +EXPR=( + '(TYPE == "UDP") and (FD >= 3) and (FD <= 4)' + '(TYPE == "UDP-Lite") and (FD >= 3) and (FD <= 4)' +) +EXPR_server=( + '(TYPE == "UDP") and (FD == 3)' + '(TYPE == "UDP-Lite") and (FD == 3)' +) +EXPR_client=( + '(TYPE == "UDP") and (FD == 4)' + '(TYPE == "UDP-Lite") and (FD == 4)' +) +COLNS=( + 'UDP' + 'UDPLite' +) NAME= LADDR= LPORT= -{ +for lite in 0 1; do coproc MKFDS { "$TS_HELPER_MKFDS" udp $FDS $FDC \ server-port=34567 \ - client-port=23456 ; } + client-port=23456 \ + lite=$lite; } if read -r -u "${MKFDS[0]}" PID; then ${TS_CMD_LSFD} -n \ - -o ASSOC,TYPE,STTYPE,NAME,SOCK.STATE,SOCK.TYPE,SOCK.LISTENING,INET.LADDR,INET.RADDR,UDP.LADDR,UDP.LPORT,UDP.RADDR,UDP.RPORT \ - -p "${PID}" -Q "${EXPR}" - echo 'ASSOC,TYPE,STTYPE,NAME,SOCK.STATE,SOCK.TYPE,SOCK.LISTENING,INET.LADDR,INET.RADDR,UDP.LADDR,UDP.LPORT,UDP.RADDR,UDP.RPORT': $? + -o ASSOC,TYPE,STTYPE,NAME,SOCK.STATE,SOCK.TYPE,SOCK.LISTENING,INET.LADDR,INET.RADDR,${COLNS[$lite]}.LADDR,${COLNS[$lite]}.LPORT,${COLNS[$lite]}.RADDR,${COLNS[$lite]}.RPORT \ + -p "${PID}" -Q "${EXPR[$lite]}" + echo "ASSOC,TYPE,STTYPE,NAME,SOCK.STATE,SOCK.TYPE,SOCK.LISTENING,INET.LADDR,INET.RADDR,${COLNS[$lite]}.LADDR,${COLNS[$lite]}.LPORT,${COLNS[$lite]}.RADDR,${COLNS[$lite]}.RPORT": $? kill -CONT "${PID}" wait "${MKFDS_PID}" @@ -53,17 +67,18 @@ LPORT= coproc MKFDS { "$TS_HELPER_MKFDS" udp $FDS $FDC \ server-port=34567 \ client-port=23456 \ - server-do-bind=no; } + server-do-bind=no \ + lite=$lite; } if read -r -u "${MKFDS[0]}" PID; then ${TS_CMD_LSFD} -n \ - -o ASSOC,TYPE,STTYPE,SOCK.STATE,SOCK.TYPE,SOCK.LISTENING,INET.LADDR,INET.RADDR,UDP.LADDR,UDP.LPORT,UDP.RADDR,UDP.RPORT \ - -p "${PID}" -Q "${EXPR_server}" - echo 'ASSOC,TYPE,STTYPE,SOCK.STATE,SOCK.TYPE,SOCK.LISTENING,INET.LADDR,INET.RADDR,UDP.LADDR,UDP.LPORT,UDP.RADDR,UDP.RPORT': $? + -o ASSOC,TYPE,STTYPE,SOCK.STATE,SOCK.TYPE,SOCK.LISTENING,INET.LADDR,INET.RADDR,${COLNS[$lite]}.LADDR,${COLNS[$lite]}.LPORT,${COLNS[$lite]}.RADDR,${COLNS[$lite]}.RPORT \ + -p "${PID}" -Q "${EXPR_server[$lite]}" + echo "ASSOC,TYPE,STTYPE,SOCK.STATE,SOCK.TYPE,SOCK.LISTENING,INET.LADDR,INET.RADDR,${COLNS[$lite]}.LADDR,${COLNS[$lite]}.LPORT,${COLNS[$lite]}.RADDR,${COLNS[$lite]}.RPORT": $? NAME=$(${TS_CMD_LSFD} -n \ - --raw \ + --raw \ -o NAME \ - -p "${PID}" -Q "${EXPR_server}") + -p "${PID}" -Q "${EXPR_server[$lite]}") if [[ "$NAME" =~ ^socket:\[[[:digit:]]+\]$ ]]; then echo "NAME pattern match: OK" else @@ -77,28 +92,29 @@ LPORT= coproc MKFDS { "$TS_HELPER_MKFDS" udp $FDS $FDC \ server-port=34567 \ client-port=23456 \ - client-do-bind=no; } + client-do-bind=no \ + lite=$lite; } if read -r -u "${MKFDS[0]}" PID; then ${TS_CMD_LSFD} -n \ - -o ASSOC,TYPE,STTYPE,SOCK.STATE,SOCK.TYPE,SOCK.LISTENING,INET.LADDR,INET.RADDR,UDP.RADDR,UDP.RPORT \ - -p "${PID}" -Q "${EXPR_client}" - echo 'ASSOC,TYPE,STTYPE,SOCK.STATE,SOCK.TYPE,SOCK.LISTENING,INET.LADDR,INET.RADDR,UDP.RADDR,UDP.RPORT': $? + -o ASSOC,TYPE,STTYPE,SOCK.STATE,SOCK.TYPE,SOCK.LISTENING,INET.LADDR,INET.RADDR,${COLNS[$lite]}.RADDR,${COLNS[$lite]}.RPORT \ + -p "${PID}" -Q "${EXPR_client[$lite]}" + echo "ASSOC,TYPE,STTYPE,SOCK.STATE,SOCK.TYPE,SOCK.LISTENING,INET.LADDR,INET.RADDR,${COLNS[$lite]}.RADDR,${COLNS[$lite]}.RPORT": $? LADDR=$(${TS_CMD_LSFD} -n \ --raw \ - -o UDP.LADDR \ - -p "${PID}" -Q "${EXPR_client}") + -o ${COLNS[$lite]}.LADDR \ + -p "${PID}" -Q "${EXPR_client[$lite]}") LPORT=$(${TS_CMD_LSFD} -n \ --raw \ - -o UDP.LPORT \ - -p "${PID}" -Q "${EXPR_client}") + -o ${COLNS[$lite]}.LPORT \ + -p "${PID}" -Q "${EXPR_client[$lite]}") if [[ 127.0.0.1:$LPORT == ${LADDR} ]]; then echo "LADDR/LPORT pattern match: OK" else echo "LADDR/LPORT pattern match: FAILED (LADDR=$LADDR, LPORT=$LPORT)" fi - + kill -CONT "${PID}" wait "${MKFDS_PID}" fi @@ -106,16 +122,17 @@ LPORT= coproc MKFDS { "$TS_HELPER_MKFDS" udp $FDS $FDC \ server-port=34567 \ client-port=23456 \ - client-do-connect=no; } + client-do-connect=no \ + lite=$lite; } if read -r -u "${MKFDS[0]}" PID; then ${TS_CMD_LSFD} -n \ -o ASSOC,TYPE,STTYPE,NAME,SOCK.STATE,SOCK.TYPE,SOCK.LISTENING,INET.LADDR,INET.RADDR,UDP.LADDR,UDP.LPORT,UDP.RADDR,UDP.RPORT \ - -p "${PID}" -Q "${EXPR}" + -p "${PID}" -Q "${EXPR[$lite]}" echo 'ASSOC,TYPE,STTYPE,NAME,SOCK.STATE,SOCK.TYPE,SOCK.LISTENING,INET.LADDR,INET.RADDR,UDP.LADDR,UDP.LPORT,UDP.RADDR,UDP.RPORT': $? kill -CONT "${PID}" wait "${MKFDS_PID}" fi -} > "$TS_OUTPUT" 2>&1 +done > "$TS_OUTPUT" 2>&1 ts_finalize