2 * COPYRIGHT: See COPYING in the top level directory
3 * PROJECT: ReactOS kernel
4 * FILE: ntoskrnl/io/npipe.c
5 * PURPOSE: Named pipe helper function
6 * PROGRAMMER: David Welch (welch@mcmail.com)
11 /* INCLUDES *****************************************************************/
13 #include <ddk/ntddk.h>
16 #include <internal/debug.h>
18 /* FUNCTIONS *****************************************************************/
21 NtCreateNamedPipeFile(PHANDLE FileHandle,
22 ACCESS_MASK DesiredAccess,
23 POBJECT_ATTRIBUTES ObjectAttributes,
24 PIO_STATUS_BLOCK IoStatusBlock,
26 ULONG CreateDisposition,
28 BOOLEAN WriteModeMessage,
29 BOOLEAN ReadModeMessage,
34 PLARGE_INTEGER TimeOut)
36 IO_PIPE_CREATE_BUFFER Buffer;
38 DPRINT("NtCreateNamedPipeFile(FileHandle %x, DesiredAccess %x, "
39 "ObjectAttributes %x ObjectAttributes->ObjectName->Buffer %S)\n",
40 FileHandle,DesiredAccess,ObjectAttributes,
41 ObjectAttributes->ObjectName->Buffer);
43 assert_irql(PASSIVE_LEVEL);
47 Buffer.TimeOut.QuadPart = TimeOut->QuadPart;
51 Buffer.TimeOut.QuadPart = 0;
53 Buffer.WriteModeMessage = WriteModeMessage;
54 Buffer.ReadModeMessage = ReadModeMessage;
55 Buffer.NonBlocking = NonBlocking;
56 Buffer.MaxInstances = MaxInstances;
57 Buffer.InBufferSize = InBufferSize;
58 Buffer.OutBufferSize = OutBufferSize;
60 return IoCreateFile(FileHandle,
65 FILE_ATTRIBUTE_NORMAL,
71 CreateFileTypeNamedPipe,