summaryrefslogtreecommitdiffstats
path: root/vendor/ntapi/src/ntmisc.rs
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/ntapi/src/ntmisc.rs')
-rw-r--r--vendor/ntapi/src/ntmisc.rs42
1 files changed, 42 insertions, 0 deletions
diff --git a/vendor/ntapi/src/ntmisc.rs b/vendor/ntapi/src/ntmisc.rs
new file mode 100644
index 000000000..7f579999e
--- /dev/null
+++ b/vendor/ntapi/src/ntmisc.rs
@@ -0,0 +1,42 @@
+use winapi::shared::ntdef::{HANDLE, NTSTATUS, PULONG, PVOID, ULONG};
+use winapi::um::winnt::STANDARD_RIGHTS_ALL;
+pub const FLT_PORT_CONNECT: u32 = 0x0001;
+pub const FLT_PORT_ALL_ACCESS: u32 = FLT_PORT_CONNECT | STANDARD_RIGHTS_ALL;
+ENUM!{enum VDMSERVICECLASS {
+ VdmStartExecution = 0,
+ VdmQueueInterrupt = 1,
+ VdmDelayInterrupt = 2,
+ VdmInitialize = 3,
+ VdmFeatures = 4,
+ VdmSetInt21Handler = 5,
+ VdmQueryDir = 6,
+ VdmPrinterDirectIoOpen = 7,
+ VdmPrinterDirectIoClose = 8,
+ VdmPrinterInitialize = 9,
+ VdmSetLdtEntries = 10,
+ VdmSetProcessLdtInfo = 11,
+ VdmAdlibEmulation = 12,
+ VdmPMCliControl = 13,
+ VdmQueryVdmProcess = 14,
+}}
+pub type PVDMSERVICECLASS = *mut VDMSERVICECLASS;
+EXTERN!{extern "system" {
+ fn NtVdmControl(
+ Service: VDMSERVICECLASS,
+ ServiceData: PVOID,
+ ) -> NTSTATUS;
+ fn NtTraceEvent(
+ TraceHandle: HANDLE,
+ Flags: ULONG,
+ FieldSize: ULONG,
+ Fields: PVOID,
+ ) -> NTSTATUS;
+ fn NtTraceControl(
+ FunctionCode: ULONG,
+ InBuffer: PVOID,
+ InBufferLen: ULONG,
+ OutBuffer: PVOID,
+ OutBufferLen: ULONG,
+ ReturnLength: PULONG,
+ ) -> NTSTATUS;
+}}