PPPoE buglet...
Gleb Smirnoff
glebius at cell.sick.ru
Wed Mar 17 04:41:38 PST 2004
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
More information about the freebsd-net
mailing list