Exemple #1
0
        /// <summary>
        /// http://www.starksoft.com/prod_proxy.html
        /// </summary>
        /// <param name="proxy"></param>
        /// <param name="hostname"></param>
        /// <param name="port"></param>
        /// <param name="ssl"></param>
        /// <param name="validateCertificate"></param>
        public void Connect(ProxyInfo proxy, string hostname, int port, bool ssl, System.Net.Security.RemoteCertificateValidationCallback validateCertificate)
        {
            try
            {
                Host = hostname;
                Port = port;
                Ssl = ssl;
                ProxyInfo = proxy;
            
                    _Connection = ConnectViaHTTPProxy();
                _Stream = _Connection.GetStream();
                if (ssl)
                {
                    System.Net.Security.SslStream sslStream;
                    if (validateCertificate != null)
                        sslStream = new System.Net.Security.SslStream(_Stream, false, validateCertificate);
                    else
                        sslStream = new System.Net.Security.SslStream(_Stream, false);
                    _Stream = sslStream;
                    sslStream.AuthenticateAsClient(hostname);
                }

                OnConnected(GetResponse());

                IsConnected = true;
                Host = hostname;
            }
            catch (Exception ex)
            {
                IsConnected = false;
                Utilities.TryDispose(ref _Stream);
                throw ex;
            }
        }
Exemple #2
0
 public void Connect(ProxyInfo proxy, string hostname, int port, bool ssl, bool skipSslValidation)
 {
     System.Net.Security.RemoteCertificateValidationCallback validateCertificate = null;
     if (skipSslValidation)
         validateCertificate = (sender, cert, chain, err) => true;
     Connect(proxy, hostname, port, ssl, validateCertificate);
 }
Exemple #3
0
 public void Connect(ProxyInfo proxy, string hostname, int port, bool ssl, bool skipSslValidation)
 {
     System.Net.Security.RemoteCertificateValidationCallback validateCertificate = null;
     if (skipSslValidation)
     {
         validateCertificate = (sender, cert, chain, err) => true;
     }
     Connect(proxy, hostname, port, ssl, validateCertificate);
 }
Exemple #4
0
        /// <summary>
        /// http://www.starksoft.com/prod_proxy.html
        /// </summary>
        /// <param name="proxy"></param>
        /// <param name="hostname"></param>
        /// <param name="port"></param>
        /// <param name="ssl"></param>
        /// <param name="validateCertificate"></param>
        public void Connect(ProxyInfo proxy, string hostname, int port, bool ssl, System.Net.Security.RemoteCertificateValidationCallback validateCertificate)
        {
            try
            {
                Host      = hostname;
                Port      = port;
                Ssl       = ssl;
                ProxyInfo = proxy;

                _Connection = ConnectViaHTTPProxy();
                _Stream     = _Connection.GetStream();
                if (ssl)
                {
                    System.Net.Security.SslStream sslStream;
                    if (validateCertificate != null)
                    {
                        sslStream = new System.Net.Security.SslStream(_Stream, false, validateCertificate);
                    }
                    else
                    {
                        sslStream = new System.Net.Security.SslStream(_Stream, false);
                    }
                    _Stream = sslStream;
                    sslStream.AuthenticateAsClient(hostname);
                }

                OnConnected(GetResponse());

                IsConnected = true;
                Host        = hostname;
            }
            catch (Exception ex)
            {
                IsConnected = false;
                Utilities.TryDispose(ref _Stream);
                throw ex;
            }
        }
Exemple #5
0
 /// <summary>
 /// http://www.starksoft.com/prod_proxy.html
 /// </summary>
 /// <param name="proxy"></param>
 /// <param name="host"></param>
 /// <param name="username"></param>
 /// <param name="password"></param>
 /// <param name="port"></param>
 /// <param name="secure"></param>
 /// <param name="skipSslValidation"></param>
 public Pop3Client(ProxyInfo proxy, string host, string username, string password, int port = 110, bool secure = false, bool skipSslValidation = false)
 {
     base.Connect(proxy, host, port, secure, skipSslValidation);
     Login(username, password);
 }
Exemple #6
0
 /// <summary>
 /// http://www.starksoft.com/prod_proxy.html
 /// </summary>
 /// <param name="proxy"></param>
 /// <param name="host"></param>
 /// <param name="username"></param>
 /// <param name="password"></param>
 /// <param name="port"></param>
 /// <param name="secure"></param>
 /// <param name="skipSslValidation"></param>
 public Pop3Client(ProxyInfo proxy,string host, string username, string password, int port = 110, bool secure = false, bool skipSslValidation = false)
 {
     base.Connect(proxy,host, port, secure, skipSslValidation);
     Login(username, password);
 }