(2006/06/15)
ありません。
(2006/06/06)
SSL を有効にし SOC_Connect 関数により TCP の接続を試みた場合、内部で暗号鍵の交換を行います。
今までこの鍵交換処理にタイムアウトがありませんでしたが、タイムアウトするようにしました。
この変更により DWC の認証中に、ユーザが Wi-Fi USB コネクタへの接続を禁止した場合に禁止された DS の認証処理が終わらなくなる現象が解消されます。
受信バッファに空きがない状態から空きができた際に、window update が送出されない場合がありましたが、これを送出されるように変更しました。
ソケットの生成と破棄を高い頻度で繰り返した場合に、不正なメモリアクセスが発生する場合がありましたので、これを修正しました。
また、TCP の受信処理中に停止する場合がありましたので、これを修正しました。
ありません。
(2006/03/13)
Note 05-01 で追加した CRYPT ライブラリを NitroCrypto パッケージとして NitroWiFi から切り出しました。
ライブラリおよびサンプルデモのソースコード全体で、インデントや改行に関する構文上の書式を統一しました。
リファレンスマニュアルにサンプルデモに関する説明を追加しました。
WCM ライブラリを使用して 一般的な無線アクセスポイントを検索してリストアップし、接続するサンプル wcm-list を追加しました。
ありません。
(2006/02/02)
ソケットのコマンドキューのサイズを8から32に変更しました。
X.509 の DER 形式のルート証明書ファイルを SOCCaInfo 型のソースファイルに変換する certconv ツールとそのリファレンスを追加しました。
CRYPT_RC4* 関数で取り扱える RC4 アルゴリズムによる暗号化データを作成するコマンドラインツール rc4conv とそのリファレンスを追加しました。
ありません。
(2006/01/16)
$NitroWiFi/build/demos/soc 以下にサンプルデモを追加しました。
追加されたのは以下のサンプルデモです。
Note 05-04 で行った修正内容が完全でなかったため、これを再び修正しました。
ありません。
(2005/12/28)
電子署名の検証・共通鍵暗号の機能を持つ CRYPT ライブラリを追加しました。
ENV ライブラリ の存在しない NITRO-SDK 3.0 PR4 以前 の SDK に対応するために、WEAK_SYMBOL 化した ENV ライブラリを追加しました。
NITRO-WiFi 側の ENV ライブラリは当初から入っており、NITRO-SDK 3.0 RC と同様の修正が NITRO-WiFi 1.0 PR3 で行われていましたが、どちらも changelog から漏れていました。
SOC ライブラリで SSL 機能を使用する SOC_EnableSsl 関数を追加しました。
小さいデータを多数 TCP の同期モードで送信したときにおいて、処理キューが一杯になったときの処理に誤りがあり、同期モードであるにもかかわらず、送信を行なわずに返値 SOC_EWOULDBLOCK で即時に終了していました。
この不具合を修正しました。
$NITROWIFI_ROOT/build/demos/soc 以下の既存のサンプルデモを整理し、いくつかの新規サンプルデモとして再構成しました。
以下のサンプルデモが削除されました。
SVC_WaitVBlankIntr 関数が低優先度のスレッドにリソースを開放しないという問題に対処するため、
NITRO-SDK 3.0 RC2 において SVC_WaitVBlankIntr 関数呼び出しが自動的に OS_WaitVBlankIntr 呼び出しに置換されるように修正が行われました。
これに伴い、「Note 04-09: (その他) Vブランク待ち関数の改良」に記載のあります注意点には取り立てて留意して頂く必要はなくなりました。
また、この変更に伴い本バージョン以降の NITRO-SDK WiFi ライブラリは弊社窓口より配布された既存の製品版システムコールライブラリと共に問題なく使用できるようになりますので、
改めて弊社窓口に再申請して頂く必要はありません。
(2005/11/10)
CPS ライブラリのリファレンスを追加しました。
CPS_Resolve 関数の引数の型に const 修飾子を追加しました。
DNSサーバに対して問い合わせ、IPアドレスを名前に変える CPS_RevResolve 関数を追加しました。
SSL を有効にしたソケットを使って同時に接続した場合、問題が起きる場合がありました。
これを修正しました。この修正によりSSLConnection構造体の互換性がなくなったため、SOCLを使わずにCPSからSSLを直接利用している場合は再ビルドが必要です。
ノイズのために通信状態が非常に悪い場合における、SOC_Write 関数のエラー処理に問題があったため、関数内部でスリープしたまま復帰しなくなるという不具合がありました。
これを修正しました。
TCP 通信におけるデータ送信の転送速度を向上させるための最適化を行いました。
送信用バッファサイズのデフォルト値の最適化のほか、MSS や RWIN サイズから最適な転送サイズを動的に変更するように改良しました。
SSL では、接続時の公開鍵暗号の処理に多くの CPU 時間を消費しますが、この計算中のみ、スレッド優先度を変更することができる CPS_SetSslHandshakePriority 関数を追加しました。
また、この関数を SOCL 層から呼び出すための SOCL_SetSslHandshakePriority 関数を追加しました。
NITRO-SDK 3.0 RC での WM の仕様変更に対応しました。
NITRO-SDK Wi-Fi ライブラリはスレッドシステムにより動作しますが、ライブラリを使用するアプリケーションが Vブランク待ちのために SVC_WaitVBlankIntr システムコールを用いるとスレッドシステムが想定通りには動作せず、結果として上手く通信できない場合があります。
この問題の発生を避けるために、アプリケーションではこのシステムコールを使用しないように注意して頂く必要があります。
弊社窓口より配布された既存の製品版システムコールライブラリは本バージョン以降の NITRO-WiFiとともにご使用になれませんので、お手数ですが新たに再申請いただけますようお願いいたします。
(2005/10/17)
ARP cache にエントリのない機器から icmp が投げられたときに、全体のパケット受信処理が停止するという不具合がありました。
これを修正しました。
一般的にアクセスポイントはニンテンドーDSよりも強い電波強度であることが多いですが、電波強度取得 API(WCM_GetLinkLevel 関数)ではニンテンドーDSの基準を元に計算を行っていました。
このため、アクセスポイントからの電波は受信できるがニンテンドーDSからの電波送信は届かないような環境においても、電波強度が最高と判定される場合がありました。
この現象への対策として、WCM_GetLinkLevel 関数では一般的なアクセスポイントの基準を元に計算を行うように改良しました。
Cleanup 処理後に外部から DCF パケットが届いたときに問題が起きる場合がありました。この問題により、低確率ながらもデバッグ版ライブラリを使用時に ASSERT メッセージが出力されることや、また CPS ライブラリをオーバーレイブロック上に置いている場合には同一エリアに設置されているコードなどの動作がおかしくなるといった不具合が発生することが考えられます。
これを修正しました。
電波状態が悪く、パケットの通信の成功率が異常に低いときにソケットの Close 処理を行なうとたまにハングアップする場合がありました。
これを修正しました。
ありません。
(2005/10/06)
TCP 通信において、通信相手から接続を切断された(FIN を受信した)場合に、既に受信していたデータをどのように扱うかについての処理が同期読み込みと非同期読み込みにおいて統一されていませんでした。
非同期読み込みで使用される SOC_Poll 呼び出しにおいて、接続を切断された場合、その時点でソケットがクローズされていたため、既に受信していたデータを読み取ることができませんでした。同期読み込み処理においては受信バッファのデータが残っている場合、それを読み込むことができるという仕様であるため、これに統一し、同期読み込み処理と同様に、相手から切断されても受信バッファにデータがあるならば SOC_Poll で読み込み可能ステートを返すようにしました。
ありません。
(2005/09/30)
NITRO-SDK Wi-Fi Library を作成し、初版パッケージをリリースしました。
NINTENDO Technical Support Center