Rutina MRxQueryEaInfo

RDBSS llama a la rutina MRxQueryEaInfo para solicitar que un minidirector de red consulte información de atributo extendido en un objeto del sistema de archivos.

Sintaxis

PMRX_CALLDOWN MRxQueryEaInfo;

NTSTATUS MRxQueryEaInfo(
  _Inout_ PRX_CONTEXT RxContext
)
{ ... }

Parámetros

RxContext [in, out]
Puntero a la estructura RX_CONTEXT. Este parámetro contiene el IRP que solicita la operación.

Valor devuelto

MRxQueryEaInfo devuelve STATUS_SUCCESS si se ejecuta correctamente o un valor NTSTATUS adecuado, como uno de los siguientes:

Código devuelto Descripción
STATUS_ACCESS_DENIED

El autor de la llamada no tiene la seguridad adecuada para esta operación.

STATUS_BUFFER_OVERFLOW

El búfer para recibir la información del atributo extendido era demasiado pequeño.

Este valor devuelto debe considerarse correcto y se deben devolver tantos datos válidos como sea posible en el miembro Info.Buffer de la estructura RX_CONTEXT a la que apunta el parámetro RxContext .

STATUS_BUFFER_TOO_SMALL

El búfer es demasiado pequeño para recibir los datos solicitados.

Si se devuelve este valor, el miembro InformationToReturn de la estructura RX_CONTEXT a la que apunta el parámetro RxContext debe establecerse en el tamaño mínimo del búfer esperado para que la llamada se realice correctamente.

STATUS_CONNECTION_DISCONNECTED

La conexión se desconecta.

STATUS_EA_CORRUPT_ERROR

Se recibió información de atributos extendidos no válida del servidor remoto.

STATUS_INSUFFICIENT_RESOURCES

No había recursos suficientes para completar la consulta.

STATUS_INVALID_PARAMETER

Se especificó un parámetro no válido.

STATUS_NONEXISTENT_EA_ENTRY

No hay atributos extendidos en el objeto de archivo y el usuario proporcionó un índice de atributo extendido.

STATUS_NOT_SUPPORTED

No se admiten atributos extendidos.

STATUS_ONLY_IF_CONNECTED

La estructura SRV_OPEN no está conectada.

STATUS_REQUEST_ABORTED

Se anuló la solicitud de red.

Comentarios

RDBSS emite una llamada a MRxQueryEaInfo en respuesta a la recepción de una solicitud de IRP_MJ_QUERY_EA .

Antes de llamar a MRxQueryEaInfo, RDBSS modifica los siguientes miembros de la estructura RX_CONTEXT a la que apunta el parámetro RxContext :

El miembro Info.Buffer se establece en el búfer de usuario del paquete de solicitud de E/S. Este búfer ya está bloqueado por RDBSS si es necesario.

El miembro Info.LengthRemaining se establece en IrpSp-Parameters.QueryEa.Length>.

El miembro QueryEa.UserEaList se establece en IrpSp-Parameters.QueryEa.EaList>.

El miembro QueryEa.UserEaListLength se establece en IrpSp-Parameters.QueryEa.EaListLength>.

El miembro QueryEa.UserEaIndex se establece en IrpSp-Parameters.QueryEa.EaIndex>.

El miembro QueryEa.RestartScan se establece en distinto de cero si IrpSp-Flags> tiene el bit SL_RESTART_SCAN activado.

El miembro QueryEa.ReturnSingleEntry se establece en distinto de cero si IrpSp-Flags> tiene el bit de SL_RETURN_SINGLE_ENTRY.

El miembro QueryEa.IndexSpecified se establece en distinto de cero si IrpSp-Flags> tiene el bit de SL_INDEX_SPECIFIED.

Si se ejecuta correctamente, MRxQueryEaInfo debe establecer el miembro Info.LengthRemaininging de la estructura de RX_CONTEXT en la longitud de la información de atributo extendida devuelta y también actualizar el miembro Fobx-OffsetOfNextEaToReturn>. Si la llamada a MRxQueryEaInfo se realizó correctamente, RDBSS establece el miembro IoStatus.Information del IRP en IrpSp-Parameters.QueryEa.Length> menos el miembro Info.LengthRemaining de RX_CONTEXT.

Requisitos

Plataforma de destino

Escritorio

Encabezado

Mrx.h (incluya Mrx.h)

Consulte también

MRxIsValidDirectory

MRxQueryDirectory

MRxQueryFileInfo

MRxQueryQuotaInfo

MRxQuerySdInfo

MRxQueryVolumeInfo

MRxSetEaInfo

MRxSetFileInfo

MRxSetFileInfoAtCleanup

MRxSetQuotaInfo

MRxSetSdInfo

MRxSetVolumeInfo