public EndPointListener(HttpListener listener, IPAddress addr, int port, bool secure) { Listener = listener; if (secure) { #if SSL this.secure = secure; cert = listener.LoadCertificateAndKey(addr, port); #else throw new Exception("SSL is not supported"); #endif } _endpoint = new IPEndPoint(addr, port); _sock = new Socket(addr.AddressFamily, SocketType.Stream, ProtocolType.Tcp); _sock.Bind(_endpoint); _sock.Listen(500); var args = new SocketAsyncEventArgs { UserToken = this }; args.Completed += OnAccept; Socket dummy = null; Accept(_sock, args, ref dummy); _prefixes = new Hashtable(); _unregistered = new Dictionary <HttpConnection, HttpConnection>(); }
public EndPointListener (HttpListener listener, IPAddress addr, int port, bool secure) { this.listener = listener; if (secure) { this.secure = secure; cert = listener.LoadCertificateAndKey (addr, port); } endpoint = new IPEndPoint (addr, port); sock = new Socket (addr.AddressFamily, SocketType.Stream, ProtocolType.Tcp); sock.Bind (endpoint); sock.Listen (500); SocketAsyncEventArgs args = new SocketAsyncEventArgs (); args.UserToken = this; args.Completed += OnAccept; sock.AcceptAsync (args); prefixes = new Hashtable (); unregistered = new Dictionary<HttpConnection, HttpConnection> (); }
public EndPointListener(HttpListener listener, IPAddress addr, int port, bool secure) { this.listener = listener; if (secure) { this.secure = secure; cert = listener.LoadCertificateAndKey(addr, port); } endpoint = new IPEndPoint(addr, port); sock = new Socket(addr.AddressFamily, SocketType.Stream, ProtocolType.Tcp); sock.Bind(endpoint); sock.Listen(500); SocketAsyncEventArgs args = new SocketAsyncEventArgs(); args.UserToken = this; args.Completed += OnAccept; sock.AcceptAsync(args); prefixes = new Hashtable(); unregistered = new Dictionary <HttpConnection, HttpConnection> (); }
public HttpEndPointListener(HttpListener listener, IPAddress addr, int port, bool secure) { _listener = listener; if (secure) { _secure = secure; _cert = _listener.LoadCertificateAndKey(addr, port); } _endpoint = new IPEndPoint(addr, port); _socket = new Socket(addr.AddressFamily, SocketType.Stream, ProtocolType.Tcp); _socket.Bind(_endpoint); _socket.Listen(500); SocketAsyncEventArgs args = new SocketAsyncEventArgs(); args.UserToken = this; args.Completed += OnAccept; Accept(args); _prefixes = new Dictionary <ListenerPrefix, HttpListener>(); _unregisteredConnections = new Dictionary <HttpConnection, HttpConnection>(); }