def CreateAnonymousPipeServer(pipeDirection, handleInheritability=None): handleInheritability = handleInheritability if handleInheritability is not None else HandleInheritability.None outputPipeServer = Pipes.AnonymousPipeServerStream( pipeDirection, handleInheritability, PIPE_IO_BUFFER_SIZE ) return outputPipeServer
def CreateNamedPipeServer(pipeName): worldsid = Principal.SecurityIdentifier(Principal.WellKnownSidType.WorldSid, None) localsid = Principal.SecurityIdentifier(Principal.WellKnownSidType.LocalSid, None) worldpr = Pipes.PipeAccessRule(worldsid, Pipes.PipeAccessRights.ReadWrite, AccessControl.AccessControlType.Allow) localpr = Pipes.PipeAccessRule(localsid, Pipes.PipeAccessRights.FullControl, AccessControl.AccessControlType.Allow) ps = Pipes.PipeSecurity() ps.AddAccessRule(worldpr) ps.AddAccessRule(localpr) return Pipes.NamedPipeServerStream( pipeName, Pipes.PipeDirection.InOut, MAX_NUMBER_OF_INSTANCES, Pipes.PipeTransmissionMode.Byte, Pipes.PipeOptions.Asynchronous, PIPE_IO_BUFFER_SIZE, PIPE_IO_BUFFER_SIZE, ps )
def CreateAnonymousPipeClient(pipeDirection, pipeHandleString): pipeClient = Pipes.AnonymousPipeClientStream(pipeDirection, pipeHandleString) return pipeClient
def CreateNamedPipeClient(node, pipeName): return Pipes.NamedPipeClientStream(node, pipeName, Pipes.PipeDirection.InOut, Pipes.PipeOptions.Asynchronous)