NDSでFTPクライアント また問題が(汗) - 大人の自由研究

大人の自由研究 ホーム » NDS » NDSでFTPクライアント また問題が(汗)

NDSでFTPクライアント また問題が(汗)

 ようやくFTPサーバとの接続が出来て、ユーザ認証もクリアした。
 次はデータ転送用のコネクション。
 これが、なかなか繋がらない。

 最初はアクティブモードで試したのですが、accept関数が完了しないんですよ。
 FTPサーバから接続が来ないのかぁ?
 とりあえず、アクティブモードでは無く、パッシブモードで再チャレンジ!

 パッシブモードに切り替えると、FTPサーバより、IPアドレスと、ポート番号が返ってくる。
このIPアドレスとポートにコネクションを貼るだけなので、アクティブモードより手順が少なくて済みそうだ。

 繋がらない(涙)
 繋がらない(涙)
 繋がらない(涙)
 繋がらない(涙)

 色々試した。

 で、気づいた。

 最大のミスを!!
 ポート番号の指定が間違ってたのよ
 struct sockaddr_in って構造体の.sin_port にポート番号を指定するんだけど、htons って関数を使わないとダメだった(汗)
 正)
 dt_addr.sin_port = htons( ポート番号);
 誤)
 dt_addr.sin_port = ポート番号;
 確かにサンプルコードは、htons関数が入っていた。

 ポート番号が「6666」だとすると、「2586」という値が入るようだ。
 これは「6666」を16進数で表し「0x1A0A」、バイトを入れ替える「0x0A1A」となり「2586」という事のようだ。

 同様にIPアドレスの指定もおかしかったようで、
 結局は「変なIPアドレスに変なポートで接続をしていた」ようでした(汗)

 という事で、デバッグ文が沢山入ったモジュールで、8MBytesのセーブデータをFTP経由でアップロードする事に成功しました!!
 ソースを綺麗にしてから、研究発表をしますかねぇ
関連記事
スポンサーサイト
コメント(管理者承認後に公開します)

※未入力可能。メールアドレスは公開されますので、ご注意ください。
非公開コメント

netcatは…

なかなかnetcatでは上手くいかないのでしょうかね(汗)

FTPサーバ対応版をアップしたので、お試し下さい。

2008-10-09 12:34 │ from うっきぃHGURL

それは楽しみです。
自分はnetcatの方は上手くいかずだったので…

また今度立ち寄らせていただきます。

2008-10-08 17:48 │ from jack_tonURL Edit

トラックバック

http://ukkey3.blog33.fc2.com/tb.php/101-17b4746e