From: Koji Arai Date: 2001-08-21T23:14:24+09:00 Subject: [ruby-list:31057] Re: sockaddr_in 構造体の pack 新井です。 In message "[ruby-list:31056] Re: sockaddr_in構造体の pack" on 21 Aug 2001 22:55:17 +0900, Takahiro Kambe wrote: > In message <200108211347.WAA01111@smtp2.nifty.ne.jp> > on Tue, 21 Aug 2001 22:47:02 +0900, > Koji Arai wrote: > > しかし,pack("vnC4x8")とするとうまくいきます。 > > sin_family だけ little endian なのは変な話ですよね? > sin_familyって、host orderじゃなかったかな。 そうか、ネットワーク用の変数だからnetwork byteorderじゃな きゃいかんと思い込んでたのが間違いだったわけですね。 そういや、C のコードでも sin_family = AF_INET って書いてる。 (「変な話ですよね?」というセリフが変だったのかあ^^;) pack("snC4x8") が正解ですか。 > > 4.3BSD reno で追加された(らしい)メンバ sin_len > これは4.3BSD renoでの今は亡き(嘘)OSIサポート、可変のネットワーク・アド (略) > 以上、問題とされているrubyの実装の正誤には直接答えない(答えられない)、 > 周辺の説明です。 とても役に立ちました。貴重な情報ありがとうございます。 (きっと神戸さんが答えてくれるだろうと期待してました^^) 長いことドキュメントに嘘を書いててごめんなさい。 -- 新井康司 (Koji Arai)