Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 17 Mar 2004 15:41:34 +0300
From:      Gleb Smirnoff <glebius@cell.sick.ru>
To:        David Malone <dwmalone@maths.tcd.ie>
Cc:        freebsd-net@freebsd.org
Subject:   Re: PPPoE buglet...
Message-ID:  <20040317124134.GC23881@cell.sick.ru>
In-Reply-To: <200403171152.aa43952@salmon.maths.tcd.ie>
References:  <200403171152.aa43952@salmon.maths.tcd.ie>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Mar 17, 2004 at 11:52:53AM +0000, David Malone wrote:
D> I spent a while trying to get PPPoE going through a Netopia smart
D> modem last night. To cut a long story short, the values for
D> PTT_RELAY_SID in src/sys/netgraph/ng_pppoe.h are wrong (at least
D> when compared with tcpdump, linux and the RFC). We have:
D> 
D> #if BYTE_ORDER == BIG_ENDIAN
D> #define PTT_RELAY_SID   (0x0106)
D> #else
D> #define PTT_RELAY_SID   (0x0601)
D> #endif
D> 
D> but we should have:
D> 
D> #if BYTE_ORDER == BIG_ENDIAN
D> #define PTT_RELAY_SID   (0x0110)
D> #else
D> #define PTT_RELAY_SID   (0x1001)
D> #endif

Yes. This was noticed more than a year ago in kern/44936.

D> Anyone object to my fixing it? The only thing I can think of that
D> it might break would be people using ng_pppoe as a PPPoE relay with
D> only ng_pppoe PPPoE clients.

AFAIK, ng_pppoe is not able to act as a relay. Consequently, it never
inserts incorrect tag. Thus no one uses incorrect tag and ng_pppoe
never inserts it, the statement "case PTT_RELAY_SID" never returns true.
Therefore, currently PTT_RELAY_SID is not used at all.

So, fixing it won't break anything. And ng_pppoe based ACs will be able
to work with relay agents, which is good.

-- 
Totus tuus, Glebius.
GLEBIUS-RIPN GLEB-RIPE



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040317124134.GC23881>