Re: [RFC net-next] pppoe: remove session socket receive support

Qingfang Deng <[email protected]>
Newsgroups gmane.linux.kernel,gmane.linux.network
Message-ID <[email protected]>
Hi Pali,

On 8/9/2026 10:58 PM, Pali Rohár wrote:
> Hello, I would like to point out that "no know open source
> userspace implementation" does not have to mean that there cannot be
> some closed source or not publicly available. But I agree that
> probability is too low.
> 
> Anyway, could you describe what is this functionality (which is being
> removed) doing? Or how to use it? From the code and description I have
> not figure out how it is suppose to be used or for what kind of scenario
> or use case can be it hypothetically used.
> 
> Would be nice to know what exactly is being removing and what userspace
> applications cannot do after applying this change.

pppoe_recvmsg()/sendmsg() can be used to receive/send PPPoE session 
packets without the generic layer. I just found out that the RP-PPPoE 
package, maintained by Dianne Skoll, actually provides a standalone 
PPPoE client that does not depend on pppd and instead uses these 
syscalls. So long as the package is still being maintained, these 
syscalls should not be removed.

The state transition still needs to be fixed, though. It's done by the 
PPPIOCGCHAN ioctl. Note that despite the "Getter" semantic, it actually 
alters a socket's internal state by setting the PPPOX_BOUND bit, to 
indicate that the socket is now "bound" to the generic PPP layer. The 
code is carried over from the very first version of the PPPoX driver and 
the intention of this behavior was not known. A fix may move the 
transition to a non-getter ioctl and drain the socket receive queue once 
a socket is bound.

Best regards,
Qingfang
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.