14 #define NPFS_BUGCHECK_FILE_ID (NPFS_BUGCHECK_READSUP) 37 if (ReadOverflowOperation)
Peek =
TRUE;
56 while ((&DataEntry->
QueueEntry != &DataQueue->Queue) && (RemainingSize))
64 DataBuffer = DataEntry->
Irp->AssociatedIrp.SystemBuffer;
68 DataBuffer = &DataEntry[1];
76 Offset -= DataQueue->ByteOffset;
104 CompleteWrites =
TRUE;
109 if ((
Offset) || (ReadOverflowOperation && !TotalBytesCopied))
119 if (!
Peek || ReadOverflowOperation)
121 if (ReadOverflowOperation)
126 ASSERT(TempDataEntry == DataEntry);
144 ASSERT(!ReadOverflowOperation);
162 IoStatus.Information = TotalBytesCopied;
PLIST_ENTRY NTAPI NpGetNextRealDataQueueEntry(IN PNP_DATA_QUEUE DataQueue, IN PLIST_ENTRY List)
static VOID Peek(IN PUCHAR ReadDataPort, IN OUT PVOID Buffer, IN ULONG Length)
#define InsertTailList(ListHead, Entry)
VOID NTAPI NpCopyClientContext(IN PNP_CCB Ccb, IN PNP_DATA_QUEUE_ENTRY DataQueueEntry)
NTSTATUS(* NTAPI)(IN PFILE_FULL_EA_INFORMATION EaBuffer, IN ULONG EaLength, OUT PULONG ErrorOffset)
#define EXCEPTION_EXECUTE_HANDLER
_In_ ULONG _In_opt_ WDFREQUEST _In_opt_ PVOID _In_ size_t _In_ PVOID _In_ size_t _Out_ size_t * DataLength
PFLT_MESSAGE_WAITER_QUEUE CONTAINING_RECORD(Csq, DEVICE_EXTENSION, IrpQueue)) -> WaiterQ.mLock) _IRQL_raises_(DISPATCH_LEVEL) VOID NTAPI FltpAcquireMessageWaiterLock(_In_ PIO_CSQ Csq, _Out_ PKIRQL Irql)
struct _LIST_ENTRY * Flink
PIRP NTAPI NpRemoveDataQueueEntry(IN PNP_DATA_QUEUE DataQueue, IN BOOLEAN Flag, IN PLIST_ENTRY List)
IO_STATUS_BLOCK NTAPI NpReadDataQueue(IN PNP_DATA_QUEUE DataQueue, IN BOOLEAN Peek, IN BOOLEAN ReadOverflowOperation, IN PVOID Buffer, IN ULONG BufferSize, IN ULONG Mode, IN PNP_CCB Ccb, IN PLIST_ENTRY List)
VOID NTAPI NpCompleteStalledWrites(IN PNP_DATA_QUEUE DataQueue, IN PLIST_ENTRY List)
_Must_inspect_result_ _In_ WDFCMRESLIST List
_Inout_ PFILE_OBJECT _In_ TYPE_OF_OPEN PFCB _In_opt_ PCCB Ccb
_In_ ULONG _In_ ULONG Offset
#define STATUS_BUFFER_OVERFLOW
#define FILE_PIPE_MESSAGE_MODE
__in UCHAR __in POWER_STATE __in_opt PVOID __in PIO_STATUS_BLOCK IoStatus
#define RtlCopyMemory(Destination, Source, Length)
#define _SEH2_EXCEPT(...)
_In_ NDIS_STATUS _In_ ULONG _In_ USHORT _In_opt_ PVOID _In_ ULONG DataSize
_In_ WDFMEMORY _Out_opt_ size_t * BufferSize