Re: Can Not Send Netlink Messages with Unshare(CLONE_NEWNET)

From: Ozgur
Date: Thu Nov 17 2022 - 03:35:12 EST


On Thu, Nov 17, 2022 at 11:55 AM Hang An <anhang610@xxxxxxxxx> wrote:
>
> Hi,
> A process can not send netlink messages(errno is ECONNREFUSED) after
> running unshare(CLONE_NEWNET).
>
> Part of the call stack when process failed:
> netlink_sendmsg
> netlink_unicast
> netlink_getsockbyportid
> netlink_lookup(return NULL)
>
> The corresponding pseudocode is shown below:
> unshare(CLONE_NEWNET) ;
> res_socket = syscall(__NR_socket, 0x10ul, 3ul, 8);
> syscall(__NR_sendmsg, res_socket, msghdr, 0ul);
>
> I can't understand this situation. Is this a bug or special design?

Hello,

you have emailed a public linux-kernel list, so this list mainly focus
for development. maybe you should use bugzilla(1) to get answers to
your questions or you should ask question mentioned own kernel
subsystem (2).

1. https://bugzilla.kernel.org/
2. Network Subsystem | netdev@xxxxxxxxxxxxxxx

Regards

>
> Thanks.