hello, I use a 3Com ADSL Modem HomeConnect. 3Com made something really stupid, the modem do not comply with PPPoE RFC standards in discovery packet. Under FreeBSD, there is an option to tell the system that we use this modem, but under OpenBSD I can't find this feature.
So I tried to bypass pppoe included in OpenBSD and install rp-pppoe (since it also exists an option in rp-pppoe to deal with 3Com ADSL modems) but it doesn't work since it needs pppd 2.3.7 at least, and OpenBSD 3.7 provides 2.3.5. What I try to do now, is to modify OpenBSD pppoe behaviour to work fine with this modem. Do you know how I can modify (and where) the discovery packet value in source code under OpenBSD ? Thx, http://www.free.bsd.com.br/noticia.php3?CAD=1&NOT=82 --- ng_pppoe.h.orig Wed Jun 27 23:19:34 2001 +++ ng_pppoe.h Thu Jun 28 06:57:20 2001 @@ -148,8 +148,8 @@ #define PTT_SYS_ERR (0x0202) #define PTT_GEN_ERR (0x0203) -#define ETHERTYPE_PPPOE_DISC 0x8863 /* pppoe discovery packets */ -#define ETHERTYPE_PPPOE_SESS 0x8864 /* pppoe session packets */ +#define ETHERTYPE_PPPOE_DISC 0x3c12 /* pppoe discovery packets */ +#define ETHERTYPE_PPPOE_SESS 0x3c13 /* pppoe session packets */ #else #define PTT_EOL (0x0000) #define PTT_SRV_NAME (0x0101) @@ -162,8 +162,8 @@ #define PTT_SYS_ERR (0x0202) #define PTT_GEN_ERR (0x0302) -#define ETHERTYPE_PPPOE_DISC 0x6388 /* pppoe discovery packets */ -#define ETHERTYPE_PPPOE_SESS 0x6488 /* pppoe session packets */ +#define ETHERTYPE_PPPOE_DISC 0x123c /* pppoe discovery packets */ +#define ETHERTYPE_PPPOE_SESS 0x133c /* pppoe session packets */ #endif struct pppoe_tag {