public static void CreatePairWithSocketToHost(IPEndPoint endpoint, out NSInputStream readStream, out NSOutputStream writeStream) { using (var host = CFHost.Create(endpoint)) { IntPtr read, write; CFStream.CFStreamCreatePairWithSocketToCFHost(IntPtr.Zero, host.Handle, endpoint.Port, out read, out write); AssignStreams(read, write, out readStream, out writeStream); } }
public static void CreatePairWithSocketToHost(IPEndPoint endpoint, out CFReadStream?readStream, out CFWriteStream?writeStream) { using (var host = CFHost.Create(endpoint)) { IntPtr read, write; CFStreamCreatePairWithSocketToCFHost(IntPtr.Zero, host.Handle, endpoint.Port, out read, out write); // API can return null streams readStream = read == IntPtr.Zero ? null : new CFReadStream(read, true); writeStream = write == IntPtr.Zero ? null : new CFWriteStream(write, true); } }
public static void CreatePairWithSocketToHost(IPEndPoint endpoint, out CFReadStream readStream, out CFWriteStream writeStream) { using (var host = CFHost.Create(endpoint)) { IntPtr read, write; CFStreamCreatePairWithSocketToCFHost( IntPtr.Zero, host.Handle, endpoint.Port, out read, out write); readStream = new CFReadStream(read); writeStream = new CFWriteStream(write); } }