NDK_FN_GET_CONNECTION_DATA fonction de rappel (ndkpi.h)
La fonction NdkGetConnectionData (NDK_FN_GET_CONNECTION_DATA) obtient des valeurs de limite de lecture et les données privées envoyées par l’homologue.
Syntaxe
NDK_FN_GET_CONNECTION_DATA NdkFnGetConnectionData;
NTSTATUS NdkFnGetConnectionData(
[in] NDK_CONNECTOR *pNdkConnector,
[out, optional] ULONG *pInboundReadLimit,
[out, optional] ULONG *pOutboundReadLimit,
PVOID pPrivateData,
ULONG *pPrivateDataLength
)
{...}
Paramètres
[in] pNdkConnector
Pointeur vers un objet connecteur NDK (NDK_CONNECTOR).
[out, optional] pInboundReadLimit
Le nombre maximal d’opérations de lecture entrantes en cours à autoriser sur le QP est retourné à cet emplacement.
[out, optional] pOutboundReadLimit
Le nombre maximal d’opérations de lecture sortantes en cours à autoriser sur le QP est retourné à cet emplacement.
pPrivateData
Pointeur vers des données privées retournées.
pPrivateDataLength
Longueur, en octets, des données privées fournies dans le paramètre pPrivateData.
Valeur de retour
La fonction NdkGetConnectionData retourne l’un des codes NTSTATUS suivants.
Retourner le code | Description |
---|---|
|
L’opération s’est terminée avec succès. |
|
La valeur du paramètre *pPrivateDataLength a spécifié une taille de mémoire tampon trop petite pour contenir les données privées de connexion. *pPrivateDataLength est mis à jour avec la taille requise. |
|
Une erreur s’est produite. |
Remarques
La fonction NdkGetConnectionData obtient les données privées envoyées par l’homologue avec les demandes de connexion, d’acceptation ou de rejet et les valeurs de limite de lecture entrantes et sortantes effectives. Ces valeurs sont dérivées des valeurs demandées des homologues locaux et distants et des limites maximales du fournisseur.
Pour accéder aux données privées et aux valeurs de limite de lecture entrante effectives (IRD) et de limite de lecture sortante (ORD) du côté actif, un consommateur NDK peut appeler NdkGetConnectionData pour un objet connecteur passé à la fonction NDK_FN_CONNECT_EVENT_CALLBACK.
Pour accéder aux données privées et aux valeurs IRD et ORD effectives du côté passif, le consommateur peut appeler NdkGetConnectionData pour un objet connecteur pour lequel NDK_FN_CONNECT ou NDK_FN_CONNECT_WITH_SHARED_ENDPOINT terminé avec succès un consommateur NDK n’appelle pas cette fonction après qu’il appelle la fonction NDK_FN_ACCEPT côté passif ou la fonction NDK_FN_COMPLETE_CONNECT côté actif.
Si le paramètre pPrivateData a la valeur NULL et *pPrivateDataLength est égal à zéro, un fournisseur NDK doit retourner STATUS_SUCCESS et stocker la taille de mémoire tampon de données privée requise (RDS) dans *pPrivateDataLength.
Si pPrivateData n’est pas NULL, le fournisseur doit copier les données privées dans la mémoire tampon à pPrivateData jusqu’à la plus petite *pPrivateDataLength ou RDS en octets.
Si *pPrivateDataLength est supérieur ou égal à RDS, le fournisseur doit retourner STATUS_SUCCESS. Sinon, le fournisseur doit retourner STATUS_BUFFER_TOO_SMALL. Dans les deux cas, le fournisseur doit stocker le RDS dans *pPrivateDataLength avant de retourner.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Aucune prise en charge, prise en charge dans NDIS 6.30 et versions ultérieures. |
serveur minimum pris en charge | Windows Server 2012 |
plateforme cible | Windows |
d’en-tête | ndkpi.h (include Ndkpi.h) |
IRQL | <=DISPATCH_LEVEL |