#ifndef _NTEXAPI_H
#if (PHNT_MODE != PHNT_MODE_KERNEL)
/**
* Sets the value of the specified firmware environment variable and the attributes that indicate how this variable is stored and maintained.
* The user account that the app is running under must have the SE_SYSTEM_ENVIRONMENT_NAME privilege.
*
* @param VariableName The name of the firmware environment variable. The pointer must not be NULL.
* @param VendorGuid The GUID that represents the namespace of the firmware environment variable.
* @param Buffer A pointer to the new value for the firmware environment variable.
* @param BufferLength The size of the pValue buffer, in bytes.
* Unless the VARIABLE_ATTRIBUTE_APPEND_WRITE, VARIABLE_ATTRIBUTE_AUTHENTICATED_WRITE_ACCESS,
* or VARIABLE_ATTRIBUTE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS variable attribute is set via dwAttributes,
* setting this value to zero will result in the deletion of this variable.
* @param Attributes Bitmask to set UEFI variable attributes associated with the variable.
* @return NTSTATUS Successful or errant status.
*/
NTSYSCALLAPI
NTSTATUS
NTAPI
NtSetSystemEnvironmentValueEx(
_In_ PUNICODE_STRING VariableName,
_In_ PCGUID VendorGuid,
_In_reads_bytes_opt_(BufferLength) PVOID Buffer,
_In_ ULONG BufferLength, // 0 = delete variable
_In_ ULONG Attributes // EFI_VARIABLE_*
);
View code on GitHub
#ifndef _NTZWAPI_H
NTSYSCALLAPI
NTSTATUS
NTAPI
ZwSetSystemEnvironmentValueEx(
_In_ PUNICODE_STRING VariableName,
_In_ PCGUID VendorGuid,
_In_reads_bytes_opt_(BufferLength) PVOID Buffer,
_In_ ULONG BufferLength, // 0 = delete variable
_In_ ULONG Attributes // EFI_VARIABLE_*
);
View code on GitHub
No description available.