NDK_FN_LISTEN コールバック関数 (ndkpi.h)

NdkListen (NDK_FN_LISTEN) 関数は、NDK リスナー オブジェクトをリッスン モードにします。

構文

NDK_FN_LISTEN NdkFnListen;

NTSTATUS NdkFnListen(
  [in]           NDK_LISTENER *pNdkListener,
                 const PSOCKADDR pAddress,
  [in]           ULONG AddressLength,
  [in]           NDK_FN_REQUEST_COMPLETION RequestCompletion,
  [in, optional] PVOID RequestContext
)
{...}

パラメーター

[in] pNdkListener

NDK リスナー オブジェクトへのポインター (NDK_LISTENER)。

pAddress

リッスンするローカル アドレス。 AF_INETまたはAF_INET6 pAddress には、ローカル IP アドレスとローカル ND ポートが含まれます。

[in] AddressLength

pAddress パラメーターのローカル アドレス データのサイズ (バイト単位)。

[in] RequestCompletion

要求完了コールバック ルーチン NdkRequestCompletion (NDK_FN_REQUEST_COMPLETION) へのポインター。

[in, optional] RequestContext

RequestCompletion パラメーターで指定されたコールバック関数の Context パラメーターに渡すコンテキスト値。

戻り値

NdkListen 関数は、次のいずれかの NTSTATUS コードを返します。

リターン コード 説明
STATUS_SUCCESS
リッスン要求が成功しました。
STATUS_PENDING
操作は保留中であり、後で完了します。 ドライバーは、保留中の操作を完了するために、指定した RequestCompletion (NDK_FN_REQUEST_COMPLETION) 関数を呼び出します。
STATUS_INSUFFICIENT_RESOURCES
リソースが不足しているため、要求は失敗しました。
大事な 要求はインラインで失敗し、この状態コードを使用して非同期的に失敗する可能性があります。
 
STATUS_SHARING_VIOLATION
指定されたローカル アドレスが既に使用されているため、要求は失敗しました。
大事な 要求はインラインで失敗し、この状態コードを使用して非同期的に失敗する可能性があります。
 
STATUS_INVALID_ADDRESS
指定したローカル アドレスがアダプターの有効なアドレスでないため、要求は失敗しました。
大事な 要求はインラインで失敗し、この状態コードを使用して非同期的に失敗する可能性があります。
 
STATUS_TOO_MANY_ADDRESSES
コンシューマーがローカル ポート番号 0 を指定し、ネットワーク ダイレクト プロバイダーがエフェメラル ポート空間 (ポート 49152 から 65535) からポートを割り当てられなかったため、要求は失敗しました。
その他の状態コード
エラーが発生しました。

解説

NdkListen は、指定されたローカル アドレスでリスナー オブジェクトをリッスン モードにします。

要件

要件
サポートされている最小のクライアント サポートされていません。NDIS 6.30 以降でサポートされています。
サポートされている最小のサーバー Windows Server 2012
対象プラットフォーム Windows
ヘッダー ndkpi.h (Ndkpi.h を含む)
IRQL <=DISPATCH_LEVEL

こちらもご覧ください

NDKPI オブジェクト有効期間要件

NDK_FN_REQUEST_COMPLETION

NDK_LISTENER