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

[freewnn:00714] Re: cpp patch + v6 patch



濱嶋です。

Wed, 15 Aug 2001 16:56:15 +0900 に
Hiroo ONO (小野寛生) <hiroo@oikumene.gcd.org> さんが書かれた
<20010815165615L.hiroo@oikumene.gcd.org> を引用しています

> 最初の、謎の *.1111 がそれかもしれません。
> 少なくとも期待される 22276 はないです。

こちらはわかりました。
小野さんはlittle endian(i386)だからバグって、私はbig endian(macppcと
sparc)だからバグらなかったということです。もしやと思ってNetBSD/hpcmips
で実行したら再現しました。

1111 = 0x0457 だから byte swapすると 0x5704 = 22273 + 3 で一致します。

ということで、v6の場合は文字列(本来はサービス名)を使うので、
  sprintf(sport, "%d", ntohs(port));
が正解ということになります。

jlibではsin_portに代入するときにhtons()をしているので、この問題は発生
しません。修正方法はこちらに合わせようと思います。

Permission deniedの方もここに原因があるような気がしますけど、眠いので
続きはまた今度にします。


http://www.freewnn.org/ FreeWnn Project