[SDK] Big update

Signed-off-by: Quinn Stephens <quinn@osmora.org>
This commit is contained in:
2025-06-11 20:00:34 -04:00
parent e3f81a4c08
commit 5c52adf492
26 changed files with 3278 additions and 106 deletions

View File

@@ -1,6 +1,6 @@
/*++
Copyright (c) 2024, Quinn Stephens.
Copyright (c) 2024-2025, Quinn Stephens.
Provided under the BSD 3-Clause license.
Module Name:
@@ -19,7 +19,7 @@ Abstract:
int
ScanHexFormat (
IN PCWSTR Buffer,
IN ULONG MaximumLength,
IN ULONG MaximumLength,
IN PCWSTR Format,
...
)
@@ -28,13 +28,17 @@ ScanHexFormat (
Routine Description:
Turns a text representation of a GUID into the binary format.
Parses a formatted hex string.
Arguments:
String - A GUID string in the format {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}.
Buffer - The source string to parse.
Guid - The GUID structure which is to recieve the data.
MaximumLength - The length of the source string.
Format - The format of the source string.
... - Pointers to data destinations.
Return Value:
@@ -93,10 +97,10 @@ Return Value:
if (*Buffer >= '0' && *Buffer <= '9') {
Number += *Buffer - '0';
} else if (*Buffer >= 'a' && *Buffer <= 'f') {
Number += *Buffer - 'a' + 0xa;
} else if (*Buffer >= 'A' && *Buffer <= 'F') {
Number += *Buffer - 'A' + 0xA;
} else if (*Buffer >= 'a' && *Buffer <= 'f') {
Number += *Buffer - 'a' + 0xa;
} else {
return -1;
}
@@ -125,8 +129,8 @@ Return Value:
NTSTATUS
NTAPI
RtlGUIDFromString (
IN PUNICODE_STRING String,
OUT GUID *Guid
IN PUNICODE_STRING String,
OUT GUID *Guid
)
/*++
@@ -155,9 +159,9 @@ Return Value:
// Convert string to GUID data.
//
if (ScanHexFormat(
String->Buffer, String->Length / sizeof(WCHAR),
L"{%08lx-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x}",
&Guid->Data1, &Guid->Data2, &Guid->Data3, &Data4[0], &Data4[1], &Data4[2], &Data4[3], &Data4[4], &Data4[5], &Data4[6], &Data4[7]
String->Buffer, String->Length / sizeof(WCHAR),
L"{%08lx-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x}",
&Guid->Data1, &Guid->Data2, &Guid->Data3, &Data4[0], &Data4[1], &Data4[2], &Data4[3], &Data4[4], &Data4[5], &Data4[6], &Data4[7]
) == -1) {
return STATUS_INVALID_PARAMETER;
}

View File

@@ -1,6 +1,6 @@
/*++
Copyright (c) 2024, Quinn Stephens.
Copyright (c) 2024-2025, Quinn Stephens.
Provided under the BSD 3-Clause license.
Module Name:
@@ -20,7 +20,7 @@ VOID
NTAPI
RtlInitUnicodeString (
OUT PUNICODE_STRING Destination,
IN PCWSTR Source
IN PCWSTR Source
)
/*++