[SDK:NT] More status values and list helpers.

Added STATUS_NOT_IMPLEMENTED.
Added RemoveEntryList().
This commit is contained in:
Quinn Stephens 2024-08-26 12:27:59 -04:00
parent 1581638c26
commit caec9bc42e
2 changed files with 37 additions and 2 deletions

View File

@ -229,10 +229,44 @@ typedef union ULARGE_INTEGER {
// Doubly-linked list entry. // Doubly-linked list entry.
// //
typedef struct _LIST_ENTRY { typedef struct _LIST_ENTRY {
struct _LIST_ENTRY *ForwardLink; struct _LIST_ENTRY *Flink;
struct _LIST_ENTRY *BackLink; struct _LIST_ENTRY *Blink;
} LIST_ENTRY, *PLIST_ENTRY; } LIST_ENTRY, *PLIST_ENTRY;
FORCEINLINE
BOOLEAN
RemoveEntryList (
IN PLIST_ENTRY Entry
)
/*++
Routine Description:
Removes a list entry from a list.
Arguments:
Entry - the entry to remove.
Return Value:
True if the list is now empty,
False if the list still has at least one entry.
--*/
{
PLIST_ENTRY Blink, Flink;
Blink = Entry->Blink;
Flink = Entry->Flink;
Blink->Flink = Flink;
Flink->Blink = Blink;
return (BOOLEAN)(Flink == Blink);
}
// //
// Unicode string. // Unicode string.
// //

View File

@ -23,6 +23,7 @@ Abstract:
// //
#define STATUS_MEDIA_CHANGED ((NTSTATUS) 0x8000001CL) #define STATUS_MEDIA_CHANGED ((NTSTATUS) 0x8000001CL)
#define STATUS_UNSUCCESSFUL ((NTSTATUS) 0xC0000001L) #define STATUS_UNSUCCESSFUL ((NTSTATUS) 0xC0000001L)
#define STATUS_NOT_IMPLEMENTED ((NTSTATUS) 0xC0000002L)
#define STATUS_INVALID_PARAMETER ((NTSTATUS) 0xC000000DL) #define STATUS_INVALID_PARAMETER ((NTSTATUS) 0xC000000DL)
#define STATUS_ACCESS_DENIED ((NTSTATUS) 0xC0000022L) #define STATUS_ACCESS_DENIED ((NTSTATUS) 0xC0000022L)
#define STATUS_BUFFER_TOO_SMALL ((NTSTATUS) 0xC0000023L) #define STATUS_BUFFER_TOO_SMALL ((NTSTATUS) 0xC0000023L)