NDK_FN_GET_CONNECTION_DATAコールバック関数 (ndkpi.h)
NdkGetConnectionData (NDK_FN_GET_CONNECTION_DATA) 関数は、読み取り制限値とピアによって送信されるプライベート データを取得します。
構文
NDK_FN_GET_CONNECTION_DATA NdkFnGetConnectionData;
NTSTATUS NdkFnGetConnectionData(
[in] NDK_CONNECTOR *pNdkConnector,
[out, optional] ULONG *pInboundReadLimit,
[out, optional] ULONG *pOutboundReadLimit,
PVOID pPrivateData,
ULONG *pPrivateDataLength
)
{...}
パラメーター
[in] pNdkConnector
NDK コネクタ オブジェクト (NDK_CONNECTOR) へのポインター。
[out, optional] pInboundReadLimit
この場所では、QP で許可する受信進行中の読み取り操作の最大数が返されます。
[out, optional] pOutboundReadLimit
この場所では、QP で許可する送信進行中の読み取り操作の最大数が返されます。
pPrivateData
返されるプライベート データへのポインター。
pPrivateDataLength
pPrivateData パラメーターで提供されるプライベート データの長さ (バイト単位)。
戻り値
NdkGetConnectionData 関数は、次の NTSTATUS コードのいずれかを返します。
リターン コード | 説明 |
---|---|
|
操作は正常に完了しました。 |
|
*pPrivateDataLength パラメーターの値は、接続プライベート データを保持するには小さすぎるバッファー サイズを指定しました。 *pPrivateDataLength は、必要なサイズで更新されます。 |
|
エラーが発生しました。 |
解説
NdkGetConnectionData 関数は、接続要求、受け入れ要求、拒否要求、および有効な受信および送信読み取り制限値を使用して、ピアによって送信されるプライベート データを取得します。 これらの値は、ローカル ピアとリモート ピアの要求された値とプロバイダーの最大制限から派生します。
プライベート データと、アクティブ側からの有効な受信読み取り制限 (IRD) 値と送信読み取り制限 (ORD) 値にアクセスするために、NDK コンシューマーは、NDK_FN_CONNECT_EVENT_CALLBACK関数に渡されたコネクタ オブジェクトに対して NdkGetConnectionData を呼び出すことができます。
パッシブ側からプライベート データと有効な IRD 値と ORD 値にアクセスするために、コンシューマーは、NDK_FN_CONNECTまたはNDK_FN_CONNECT_WITH_SHARED_ENDPOINTが正常に完了したコネクタ オブジェクトに対して NdkGetConnectionData を呼び出すことができます。NDK コンシューマーは、パッシブ側のNDK_FN_ACCEPT関数またはアクティブ側のNDK_FN_COMPLETE_CONNECT関数を呼び出した後、この関数を呼び出しません。
pPrivateData パラメーターが NULL で、*pPrivateDataLength が 0 の場合、NDK プロバイダーは STATUS_SUCCESSを返し、必要なプライベート データ バッファー サイズ (RDS) を *pPrivateDataLength に格納する必要があります。
pPrivateData が NULL でない場合、プロバイダーは、バイト単位で *pPrivateDataLength または RDS の小さい方まで、pPrivateData のバッファーにプライベート データをコピーする必要があります。
*pPrivateDataLength が RDS 以上の場合、プロバイダーは STATUS_SUCCESSを返す必要があります。 それ以外の場合、プロバイダーはSTATUS_BUFFER_TOO_SMALLを返す必要があります。 どちらの場合も、プロバイダーは RDS を*pPrivateDataLength に格納してから、返す必要があります。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | サポートされていません。NDIS 6.30 以降でサポートされています。 |
サポートされている最小のサーバー | Windows Server 2012 |
対象プラットフォーム | Windows |
ヘッダー | ndkpi.h (Ndkpi.h を含む) |
IRQL | <=DISPATCH_LEVEL |