CTR NEX API Reference
nn::nex::Network クラス

ネットワークオブジェクトをカプセル化するクラスです。 [詳解]

#include <OnlineCore/src/Transport/Interface/Network.h>

+ nn::nex::Network の継承関係図

公開メンバ関数

RefCountedObjectAcquireRef ()
 参照カウントを 1 増加させます。
 
void ClearP2PDataPacketSessionSignatureKey ()
 P2P 通信で使用するセッションごとの署名計算に用いる鍵データをクリアします。 [詳解]
 
size_t GetP2PDataPacketSessionSignatureKeyLength ()
 P2P 通信で使用するセッションごとの署名計算に用いる鍵データのサイズを取得します。 [詳解]
 
const void * GetP2PDataPacketSessionSignatureKeyPaylod ()
 P2P 通信で使用するセッションごとの署名計算に用いる鍵データを取得します。 [詳解]
 
void ReleaseRef ()
 参照カウントを 1 減少させます。0 になるときに自分自身を delete します。
 
void SetP2PDataPacketSessionSignatureKey (const qVector< qByte > &sessionKey)
 P2P 通信で使用するセッションごとの署名計算に用いる鍵データをセットします。 [詳解]
 

静的公開メンバ関数

static NetworkGetInstance ()
 Networkのインスタンスを取得します。 [詳解]
 
static void SetP2PDataPacketDefaultSignatureKey (const qByte *pKeyData, size_t uiKeyLen)
 P2P 通信で使用するデフォルトの署名計算に用いる鍵データをセットします。 [詳解]
 

静的公開変数類

static const size_t MAX_P2P_DEFAULT_SIGNATURE_KEY_LEN = 32
 ローカル通信用データパケットの署名に用いる鍵データ長の最大値です。
 
static const size_t MAX_P2P_SIGNATURE_KEY_LEN = 32
 インターネット通信用データパケットの署名に用いる鍵データ長の最大値です。
 
static const size_t MIN_P2P_DEFAULT_SIGNATURE_KEY_LEN = 8
 ローカル通信用データパケットの署名に用いる鍵データ長の最小値です。
 
static const size_t MIN_P2P_SIGNATURE_KEY_LEN = 20
 インターネット通信用データパケットの署名に用いる鍵データ長の最小値です。
 

詳解

ネットワークオブジェクトをカプセル化するクラスです。

関数詳解

static Network* nn::nex::Network::GetInstance ( )
static

Networkのインスタンスを取得します。

戻り値
Networkのインスタンス
static void nn::nex::Network::SetP2PDataPacketDefaultSignatureKey ( const qByte pKeyData,
size_t  uiKeyLen 
)
static

P2P 通信で使用するデフォルトの署名計算に用いる鍵データをセットします。

デフォルトでは、NEXライブラリの P2P 通信には署名によるデータチェックがなされます。 このAPIを呼び出すと、アプリケーションが設定した鍵データを用いた署名計算が 行われるようになりますので、通信の安全性を多少高めることができます。 本関数はローカル通信向けです。 インターネット通信を行う際は SetP2PDataPacketSessionSignatureKey() を使用してください。

セットできる鍵データ長は、MIN_P2P_DEFAULT_SIGNATURE_KEY_LEN から MAX_P2P_DEFAULT_SIGNATURE_KEY_LEN までの長さです。

NgsFacadeNetZ クラスのオブジェクトが生成される前に、本関数を実行してください。

引数
[in]pKeyData鍵データの先頭を指すポインタ
[in]uiKeyLen鍵データの長さ(単位はバイト)。0をセットすると、 規定の鍵データが使用されます。
void nn::nex::Network::SetP2PDataPacketSessionSignatureKey ( const qVector< qByte > &  sessionKey)

P2P 通信で使用するセッションごとの署名計算に用いる鍵データをセットします。

MatchmakeSession::GetSessionKey()MatchmakeExtensionClient::CreateMatchmakeSession()MatchmakeExtensionClient::JoinMatchmakeSession()で取得できる P2P 通信用の署名鍵を設定します。 MatchmakeSession::GetSessionKey()の取得方法は、マニュアルのセキュリティの章を参考にしてください。 Network::GetInstance()->SetP2PDataPacketSessionSignatureKey()で設定できます。

設定された場合には、 Network::SetP2PDataPacketDefaultSignatureKey()で設定されたキーの代わり に利用します。 セットできる鍵データ長は、MIN_P2P_SIGNATURE_KEY_LEN から MAX_P2P_SIGNATURE_KEY_LEN までの長さです。

Session::CreateSession()Session::JoinSession()実行前に、本関数を実行してください。 ConnectivityManager::StartNATSession()がコールされているのに、本関数で鍵が設定されていない場合は、 Session::CreateSession()Session::JoinSession()実行時にエラーとなります。

LANSessionDiscovery が有効になった場合 や、 VirtualSocketDriver が設定されており Session::CreateSession()Session::JoinSession() の実行時 には、クリアされます。

引数
[in]sessionKey署名のキーです。
参照
ClearP2PDataPacketSessionSignatureKey(), GetP2PDataPacketSessionSignatureKeyPaylod()
GetP2PDataPacketSessionSignatureKeyLength()
void nn::nex::Network::ClearP2PDataPacketSessionSignatureKey ( )

P2P 通信で使用するセッションごとの署名計算に用いる鍵データをクリアします。

LANSessionDiscovery が有効になった場合 や、 VirtualSocketDriver が設定されており Session::CreateSession()Session::JoinSession() の実行時 に、内部で実行されます。

Session::CreateSession()Session::JoinSession()実行後は、NetZが破棄されるまで実行しないでください。

参照
SetP2PDataPacketSessionSignatureKey()
const void* nn::nex::Network::GetP2PDataPacketSessionSignatureKeyPaylod ( )

P2P 通信で使用するセッションごとの署名計算に用いる鍵データを取得します。

戻り値
署名キーの先頭ポインタ。設定されていない場合は、NULLが返ります。
参照
SetP2PDataPacketSessionSignatureKey()
GetP2PDataPacketSessionSignatureKeyLength()
size_t nn::nex::Network::GetP2PDataPacketSessionSignatureKeyLength ( )

P2P 通信で使用するセッションごとの署名計算に用いる鍵データのサイズを取得します。

戻り値
署名キーのサイズ。設定されていない場合は、0が返ります。
参照
SetP2PDataPacketSessionSignatureKey()
GetP2PDataPacketSessionSignatureKeyPaylod()