]> git.ipfire.org Git - thirdparty/public-inbox.git/commitdiff
t/netd: skip Linux-only test in some cases
authorEric Wong <e@80x24.org>
Fri, 2 May 2025 11:11:11 +0000 (11:11 +0000)
committerEric Wong <e@80x24.org>
Sat, 3 May 2025 19:09:23 +0000 (19:09 +0000)
Apparently, some ss(8) on some older Linux kernels don't seem to
report Send-Q properly for Unix stream socket listeners.

t/netd.t

index 71f6f69e0cbb8afc3579143f8325ee6cd3b2b7b0..ee567a63d99131cf6e3a8612d9c1214829c6a13c 100644 (file)
--- a/t/netd.t
+++ b/t/netd.t
@@ -116,8 +116,13 @@ SKIP: {
        my @ss_u = grep /^u_str\s+LISTEN\s+\d+\s+\d+\s+\Q$usock\E\s+/, @ss_after;
        xbail("multiple (or zero) `$usock' matches", \@ss_u) if @ss_u != 1;
        @ss_u = split /\s+/, $ss_u[0];
-       is $ss_u[3], $nr, 'newly bound listener has expected backlog in Send-Q' or
-               diag explain(\@ss_after);
+       SKIP: {
+               $ss_u[3] == 0 and skip 'Send-Q column is 0 for Unix socket '.
+                               '(try upgrading your kernel)', 1;
+               is $ss_u[3], $nr,
+                       'newly bound listener has expected backlog in Send-Q'
+                       or diag explain([\@ss_u, \@ss_after]);
+       }
        do {
                my ($scheme, $addr_port, $exp_backlog) = splice @exp, 0, 3;
                my @l = grep /^tcp\s+LISTEN\s+\d+\s+\d+\s+\Q$addr_port\E\s+/, @ss_after;