vine-users ML アーカイブ



[vine-users:061698] Re: カーネルモード PPPoE

  • From: MIYAHARA Takehiro <tanmay@xxxxxxxxxxxxxxxx>
  • Subject: [vine-users:061698] Re: カーネルモード PPPoE
  • Date: Tue, 05 Aug 2003 16:03:42 +0900
宮原です

On Tue, 05 Aug 2003 00:45:54 +0900
"K.Iwamoto" <burn@xxxxxxxxxxxxxxxx> wrote:

> 確認したところ確かにversion 3.3でした。
> しかしうちでは接続の問題は起きていません。

こちらでも「接続の問題」というほどのことはありません。
version 3.5 の方が少し接続に要する時間が短いかな,という程度のものです。

> ところでそのrp-pppoe3.5ですが、どのようにしてmakeされたのでしょう
> か?ppp-2.4.2b3を普通にmakeしても/etc/ppp/plugins/には何も出来な
> かった気がするんですが。

/etc/ppp/plugins/rp-pppoe.so は ppp-2.4.2b3 を make したものではなく,
rp-pppoe-3.5 を make したものです。

申し訳ないのですが,こちらは kernel 2.4.21 で Iwamotoさんの環境には合わ
ないかと思いますが,紹介いたします。

私のところでは rp-pppoe-3.5 の make 時に byteorder.h あたりで parse error
が発生していましたので,/usr/include/asm/byteorder.h 
(/usr/src/linux/include/asm/byteorder.h) を改編して rp-pppoe-3.5 を make 
しました。

(以前は kernel 2.4.20 の byteorder.h を上書きしていたのですが,kernel を 
  makeする度に差し替えるのが面倒でしたので,byteorder.h を書き換えてみまし
  た。)

asm/byteorder.h
    行
------------------------------------------------------------------------
     37 #if defined(__GNUC__) && !defined(__STRICT_ANSI__)
     38 static inline __u64 ___arch__swab64(__u64 val)

     55 }
     56 #endif

     58 #if defined(__GNUC__) && !defined(__STRICT_ANSI__)
     59 #define __arch__swab64(x) ___arch__swab64(x)
     60 #endif

     64 #if defined(__GNUC__) && !defined(__STRICT_ANSI__)
     65 #define __BYTEORDER_HAS_U64__
     66 #endif
------------------------------------------------------------------------
*「行」は目安として下さい。

asm/byteorder.h で include されている asm/types.h を見ると,
	#if defined(__GNUC__) && !defined(__STRICT_ANSI__)
	typedef __signed__ long long __s64;
	typedef unsigned long long __u64;
	#endif
となっていますので,byteorder.h でも同様に書き加えました。

これで,rp-pppoe-3.5 を ./configure --enable-plugin=$PPPDIR ; make ; 
make install しました。

--------------------------------------------------
宮原 武裕 (MIYAHARA Takehiro)
E-mail: tanmay@xxxxxxxxxxxxxxxx