WM_SetWEPKey

構文

#include <nitro/wm.h>

WMErrCode WM_SetWEPKey(
        WMCallbackFunc  callback ,
        u16             wepmode ,
        const u16*      wepkey
);

引数

callback 非同期処理が完了した時に呼び出されるコールバック関数を指定します。
このコールバックは割り込みハンドラ内から呼び出されます。
wepmode 暗号通信機能の動作モードを指定します。以下の 0 〜 3 のモードから指定して下さい。
  • 0 : 暗号機能なし
  • 1 : RC4( 40 ビット )暗号モード
  • 2 : RC4( 104 ビット )暗号モード
  • 3 : RC4( 128 ビット )暗号モード
wepkey 暗号キーデータ( 80バイト )へのポインタを指定します。
キーデータは4つのデータで構成され、それぞれ20バイトです。各20バイトのうち、
  • 40 ビットモードでは 5 バイト
  • 104 ビットモードでは 13 バイト
  • 128 ビットモードでは 16 バイト
のデータが使用されます。
また、このデータの実体は強制的にキャッシュストアされる点に注意して下さい。

返り値

WMErrCode列挙型の処理結果を返します。

説明

暗号機能、暗号キーを設定します。WMがIDLEステートの場合に実行可能です。 関数の戻り値がWM_ERRCODE_OPERATINGであった場合、暗号機能設定処理が完了した後にコールバックが発生します。

当関数は、WM_SetWEPKeyEx( )wepkeyid が 0 である場合と同等の処理を行います。 WEPキーによる暗号化は、接続時の認証処理、及びインフラストラクチャモードでのデータ送受信に適用されます。 wepmodeは通信相手と同じ設定にしておく必要があります。
当関数によってWEP暗号設定が行われた親機に子機として接続する際には、当関数によりWEP設定を行った上で WM_StartConnectEx( )authModeに共通鍵認証( WM_AUTHMODE_SHARED_KEY )であることを指定する必要がある点に注意して下さい。

注意

引数に渡したデータ(wepkey) は内部で強制的にキャッシュストアされます。キャッシュのトラブルを回避するには、32バイト境界に揃ったデータを渡す必要があります。
注意点などの詳細は「ワイヤレス通信ライブラリ解説 (AboutWirelessManager.pdf)」を参照してください。

参照

WM_SetWEPKeyEx, WM_StartConnectEx

履歴

2008/12/17 引数に渡したデータが内部で強制的にキャッシュストアされる点について注意を追記
2005/06/08 コールバックが割り込みハンドラから呼び出される旨を補足
2005/03/07 説明追記
2005/03/02 wepmode引数について指定可能範囲を追記
2004/10/22 返り値の型を変更
2004/08/02 構造体名の統一
2004/07/29 説明の追加等
2004/07/23 初版