On Tue, Jan 31, 2023 at 01:40:19PM +0900, YASUOKA Masahiko wrote:
> Hi,
> 
> On Sun, 29 Jan 2023 14:35:05 +0300
> Vitaliy Makkoveev <m...@openbsd.org> wrote:
> > While switchind pppx(4) and pppac(4) from selwakeup() to KNOTE(9), I
> > found npppd(8) doesn't create pppx interface with "pipex no" in
> > npppd.conf, but successfully connects the client. So packets don't flow.
> > However, the pppac(4) has no this problem, because corresponding pppac
> > interface always created when npppd(8) opened device node.
> > 
> > In fact, npppd(8) will not work with pppx(4) interfaces without pipex(4)
> > support. Otherwise npppd(8) should create pppx(4) sessions with not
> > pipex(4) specific PIPEXASESSION ioctl(2) command.
> > 
> > I propose to remove "pipex" option from npppd(8). We already have
> > "net.pipex.enable" sysctl MIB to control pipex behaviour. In the case
> > then "net.pipex.enable" is set to 0, pipex(4) sessions will be always
> > created, but the traffic will go outside pipex(4) layer.
> > 
> > The "ifdef USE_NPPPD_PIPEX" left as is. If we decide to remove them, I
> > will do this with the next diffs.
> 
> Will the next diff remove the networking part (MPPE, IP) as well?
> 
> > Please note, we never have complains about the problem described above,
> > so I doubt someone uses npppd(8) with "pipex no" in the npppd.conf(5).
> 
> I don't know why you configured "pipex no", I suppose it was for
> debug.  I also actually use "pipex no" when debug or development.

I used this option to test my/visa@ diff which replaced selwakeup() by
KNOTE(9) and found that pppx(4) case is broken if this option is set to
"no". Since we have the ability of enable/disable pipex(4) globally, I
propose to remove this option.

in fact, for the pppx(4) case npppd(8) is absolutely useless without
pipex(4) support, so I don't see any reasons to build it without
pipex(4). I don't propose to remove the whole "ifdef USE_NPPPD_PIPEX"
blocks, only preprocessor directives. Sorry, if my suggestion was not
clear.

> 
> If having "pipex yes/no" configuration is misleading, we can improve
> the man page or the configuration itself.

     pipex yes | no
             Specify whether npppd(8) uses pipex(4).  The default is
             “yes”. The sysctl(8) variable net.pipex.enable should
             also be enabled to use pipex(4).

There is no misleading. But with "pipex no" npppd(8) is usable with
pppac(4), but with pppx(4) it is not. Also, I don't like that it
successfully creates connection. Guess, it better to deny "pipex no"
for pppx(4).

Reply via email to