[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[debian-users:22788] Re: kernel 2.4 and potato



吉藤英明%Linux IPv6 Users JP@東北大学情報科学 です。


In article <20000613103230H.matsuda@xxxxxxxxxxxx> (at Tue, 13 Jun 2000 10:32:38 +0900), MATSUDA Yoh-ichi / 松田陽一 <matsuda@xxxxxxxxxxxx> says:

> 夏から秋頃には 2.4 系カーネルがリリースされるそうで、もしそうなる
> と、 potato ではどのような変更を必要とするのかが知りたいです。

手元では大きな問題は起きていないのですが、IPv6 ソケットアドレス
構造体に新しいメンバ sin6_scope_id が追加される(RFC2553対応)関係で、
IPv6 に対応した、次のようなものには注意が必要です。なお、これは例であり、
これに限られるものではありません。

 0. glibc <- 重要
 1. サーバアプリケーション, UDPアプリケーション (bind するもの)
 2. ICMPv6 を使うもの
 2. getpeername(), getsockname() を使うもの
 4. struct sockaddr_storage{} でなく、struct sockaddr_in6{} を
    使っているもの。

/usr/local/include/netinet/in.h にパッチをあて、再コンパイルすれば
よい場合も多いかと思われますが、実際にはやってみないとわかりません。

なお、アプリケーションが本当に頑健に作られていれば大丈夫なのですが、
もし glibc を変更したら、条件がかなり厳しくなりますので、
上記にかかわらず、すべての(IPv6)アプリケーションは再コンパイル
するべきと思います。

--- /usr/include/netinet/in.h	Tue Jun 13 11:47:33 2000
+++ /usr/include/netinet/in.h.new	Tue Jun 13 11:48:12 2000
@@ -209,6 +209,7 @@
     uint16_t sin6_port;		/* Transport layer port # */
     uint32_t sin6_flowinfo;	/* IPv6 flow information */
     struct in6_addr sin6_addr;	/* IPv6 address */
+    uint32_t sin6_scope_id;	/* IPv6 scope-id (new in RFC2553) */
   };
 
 /* IPv6 multicast request.  */


-- 
吉藤英明 (YOSHIFUJI,Hideaki)    <yoshfuji@xxxxxxxxxxxxxxxxx>
Web Page: http://www.ecei.tohoku.ac.jp/%7Eyoshfuji/
PGP5i FP: F731 6599 5EB2 BBA7 1515  1323 1806 A96F 5700 6B25