Index: trunk/BNC/src/upload/bncuploadcaster.cpp
===================================================================
--- trunk/BNC/src/upload/bncuploadcaster.cpp	(revision 9713)
+++ trunk/BNC/src/upload/bncuploadcaster.cpp	(revision 9714)
@@ -36,6 +36,4 @@
   _casterOutPort = outPort;
   _ntripVersion  = ntripVersion;
-  (_ntripVersion == "2s") ?  _secure = true : _secure = false;
-  _postExtension = "";
   _userName      = userName;
   _password      = password;
@@ -53,29 +51,4 @@
   _isToBeDeleted = false;
 
-  if (!QSslSocket::supportsSsl()) {
-    BNC_CORE->slotMessage("No SSL support, install OpenSSL run-time libraries", true);
-    deleteSafely();
-  }
-
-  if (_ntripVersion != "1") {
-    bncSettings settings;
-
-    _sslIgnoreErrors = (Qt::CheckState(settings.value("sslIgnoreErrors").toInt()) == Qt::Checked);
-
-    _proxyHost = settings.value("proxyHost").toString();
-    _proxyPort = settings.value("proxyPort").toInt();
-    if (_secure) {
-      _casterOutPort = 443;
-      if (!_proxyHost.isEmpty()) {
-        _postExtension = QString("https://%1:%2").arg(_casterOutHost).arg(_casterOutPort);
-      }
-    }
-    else {
-      if (!_proxyHost.isEmpty()) {
-        _postExtension = QString("http://%1:%2").arg(_casterOutHost).arg(_casterOutPort);
-      }
-    }
-  }
-
   connect(this, SIGNAL(newMessage(QByteArray,bool)),
           BNC_CORE, SLOT(slotMessage(const QByteArray,bool)));
@@ -91,4 +64,30 @@
             SLOT(slotNewBytes(const QByteArray,double)));
   }
+
+  bncSettings settings;
+  _sslIgnoreErrors = (Qt::CheckState(settings.value("sslIgnoreErrors").toInt()) == Qt::Checked);
+  _proxyHost = settings.value("proxyHost").toString();
+  _proxyPort = settings.value("proxyPort").toInt();
+  (_proxyHost.isEmpty()) ? _proxy = false : _proxy = true;
+
+  if (_ntripVersion == "2s") {
+    _secure = true;
+    if (!QSslSocket::supportsSsl()) {
+      emit(newMessage("For SSL support please install OpenSSL run-time libraries: Ntrip Version 2 is tried", true));
+      _secure = false;
+      _ntripVersion == "2";
+    }
+  } else {
+    _secure = false;
+  }
+
+  if (_secure) {
+    _casterOutPort = 443;
+    (_proxy) ? _postExtension = QString("https://%1:%2").arg(_casterOutHost).arg(_casterOutPort) : _postExtension = "";
+  }
+  else {
+    (_proxy) ? _postExtension = QString("http://%1:%2").arg(_casterOutHost).arg(_casterOutPort) : _postExtension = "";
+  }
+
 }
 
@@ -109,6 +108,4 @@
   }
   if (_outSocket) {
-    disconnect(_outSocket, SIGNAL(proxyAuthenticationRequired(const QNetworkProxy&, QAuthenticator*)),
-               this, SLOT(slotProxyAuthenticationRequired(const QNetworkProxy&, QAuthenticator*)));
     delete _outSocket;
   }
@@ -228,19 +225,22 @@
 
   _outSocket = new QSslSocket();
+  const int timeOut = 5000;  // 5 seconds
   if (_sslIgnoreErrors) {
     _outSocket->ignoreSslErrors();
   }
-  _outSocket->setProxy(QNetworkProxy::NoProxy); // to prevent the usage of system entries
+  _outSocket->setProxy(QNetworkProxy::NoProxy);
   _outHost = _casterOutHost;
   _outPort = _casterOutPort;
-  if (!_proxyHost.isEmpty()) {
+  if (_proxy) {
     _outHost = _proxyHost;
     _outPort = _proxyPort;
-    connect(_outSocket, SIGNAL(proxyAuthenticationRequired(const QNetworkProxy&, QAuthenticator*)),
+      connect(_outSocket, SIGNAL(proxyAuthenticationRequired(const QNetworkProxy&, QAuthenticator*)),
             this, SLOT(slotProxyAuthenticationRequired(const QNetworkProxy&, QAuthenticator*)));
-  }
-
-  const int timeOut = 5000;  // 5 seconds
-  if (!_secure) {
+      if (_ntripVersion == "1") {
+        emit(newMessage("No proxy support in Ntrip Version 1 upload!",true));
+      }
+  }
+
+  if (!_secure  || _proxy) {
     _outSocket->connectToHost(_outHost, _outPort);
     if (!_outSocket->waitForConnected(timeOut)) {
Index: trunk/BNC/src/upload/bncuploadcaster.h
===================================================================
--- trunk/BNC/src/upload/bncuploadcaster.h	(revision 9713)
+++ trunk/BNC/src/upload/bncuploadcaster.h	(revision 9714)
@@ -55,4 +55,5 @@
   bool        _secure;
   bool        _sslIgnoreErrors;
+  bool        _proxy;
   QSslSocket* _outSocket;
   int         _sOpenTrial;
