Subject: Re: [TEST] bridge tests (was: net-next is OPEN)

From: Jakub Kicinski <[email-masked]>
Date: Thu, 1 Feb 2024 07:30:25 -0800

On Thu, 1 Feb 2024 15:46:23 +0200 Ido Schimmel wrote:
> > selftests-net/test-bridge-neigh-suppress-sh
> >  - fails across all, so must be the OS rather than the "speed"  
> 
> Yes, it's something related to the OS. From the log below:
> 
> ```
>  COMMAND: ip netns exec h1-n8Aaip ndisc6 -q -r 1 -s 2001:db8:1::1 -w 5000 2001:db8:1::2 eth0.10
>  Raw IPv6 socket: Operation not permitted
>  TEST: ndisc6                                                        [FAIL]
>      rc=1, expected 0
> ```
> 
> The test is supposed to be run as root so I'm not sure what this error
> is about. Do you have something like AppArmor or SELinux running? The
> program creates an IPv6 raw socket and requires CAP_NET_RAW.

Ah, ugh, sorry for the misdirection, you're right.

Looks like the binaries have SUID set:

# find tools/fs/ -perm -4000
tools/fs/usr/bin/ndisc6
tools/fs/usr/bin/rdisc6
tools/fs/usr/bin/rltraceroute6

But I install them as a normal user:

# ll tools/fs/usr/bin/ndisc6
-rwsr-xr-x. 1 virtme virtme 53840 Jan 29 14:36 tools/fs/usr/bin/ndisc6

so I guess they intend to SUID themselves into privileges but end up
SUIDing out to a lowly user :(

I cleared the SUID bits out, let's see the next run.