terminal/src/server/DeviceHandle.h

41 lines
910 B
C++

/*++
Copyright (c) Microsoft Corporation
Licensed under the MIT license.
Module Name:
- DeviceHandle.h
Abstract:
- This module helps create client and server handles for interprocess communication via the driver.
Author:
- Michael Niksa (MiNiksa) 14-Sept-2016
Revision History:
--*/
#pragma once
namespace DeviceHandle
{
[[nodiscard]] NTSTATUS
CreateServerHandle(
_Out_ PHANDLE Handle,
_In_ BOOLEAN Inheritable);
[[nodiscard]] NTSTATUS
CreateClientHandle(
_Out_ PHANDLE Handle,
_In_ HANDLE ServerHandle,
_In_ PCWSTR Name,
_In_ BOOLEAN Inheritable);
[[nodiscard]] NTSTATUS
_CreateHandle(
_Out_ PHANDLE Handle,
_In_ PCWSTR DeviceName,
_In_ ACCESS_MASK DesiredAccess,
_In_opt_ HANDLE Parent,
_In_ BOOLEAN Inheritable,
_In_ ULONG OpenOptions);
};