23#ifndef NAMED_PIPE_INCLUDED
24#define NAMED_PIPE_INCLUDED
30 FILE_READ_ATTRIBUTES | FILE_READ_DATA | FILE_WRITE_ATTRIBUTES |
31 FILE_WRITE_DATA | SYNCHRONIZE | READ_CONTROL;
33 GENERIC_READ | GENERIC_WRITE;
37 char *name_buf,
size_t buflen,
38 const char *full_access_group_name =
nullptr);
42 const char *group_name,
44#define DEFAULT_NAMED_PIPE_FULL_ACCESS_GROUP ""
45#define NAMED_PIPE_FULL_ACCESS_GROUP_EVERYONE "*everyone*"
const DWORD NAMED_PIPE_FULL_ACCESS_GROUP_PERMISSIONS
Definition: named_pipe.h:32
HANDLE create_server_named_pipe(SECURITY_ATTRIBUTES **ppsec_attr, DWORD buffer_size, const char *name, char *name_buf, size_t buflen, const char *full_access_group_name=nullptr)
Creates an instance of a named pipe and returns a handle.
Definition: named_pipe.cc:280
bool is_valid_named_pipe_full_access_group(const char *group_name)
Definition: named_pipe.cc:107
const DWORD NAMED_PIPE_OWNER_PERMISSIONS
Definition: named_pipe.h:28
const DWORD NAMED_PIPE_EVERYONE_PERMISSIONS
Definition: named_pipe.h:29
bool my_security_attr_add_rights_to_group(SECURITY_ATTRIBUTES *psa, const char *group_name, DWORD group_rights)
Definition: named_pipe.cc:125
size_t buffer_size(const ConstBufferSequence &buffers) noexcept
Definition: buffer.h:313
case opt name
Definition: sslopt-case.h:32
#define HANDLE
Definition: violite.h:158