[Pkg-owncloud-maintainers] Bug#730210: owncloud-client: Connection wizard doesn't proceed beyong server discovery

Olivier Berger olivier.berger at telecom-sudparis.eu
Mon Nov 25 16:45:17 UTC 2013


On Fri, Nov 22, 2013 at 06:00:58PM +0100, Olivier Berger wrote:
> On Fri, Nov 22, 2013 at 05:54:47PM +0100, Olivier Berger wrote:
> > The turning wheel keeps turning and nothing more happens.
> > 
> > FYI, the server at https://our.owncloud.server/status.php (address changed) reports :
> > {"installed":"true","version":"5.0.17","versionstring":"5.0.10","edition":""}
> > 
> 
> Oh, it seems I hadn't waited long enough, as I finally received the following message :
> Failed to connect to ownCloud:
> Connection closed
> 
> The logs contain :
> 
> 11-22 17:53:41:958 ownCloudInfo Network Error 2 : "Connection closed" 
> 11-22 17:53:41:961 status.php returns:  ""   2  Reply:  QNetworkReplyImpl(0xb849dc70) 
> 11-22 17:53:41:961 No proper answer on  "https://our.owncloud.server/status.php" 
> 11-22 17:53:41:962 Object::disconnect: No such slot Mirall::OwncloudSetupWizard::slotOwnCloudFound(QString,QString,QString,QString)
> 11-22 17:53:41:962 Object::disconnect: No such slot Mirall::OwncloudSetupWizard::slotNoOwnCloudFound(QNetworkReply*)
> 11-22 17:53:41:972 QString Mirall::MirallConfigFile::configFile() const   OO Custom config file in use:  "/home/olivier/.local/share/data//ownCloud/owncloud.cfg_112213175041" 
> 

I think I managed to find the problem.

It seems that our server only supports SSLv3... but AFAICT, using curl, only curl -3 would succesfully access https://our.owncloud.server/status.php

So I figured out that the same was true for the owncloud code.

Investigating a bit, it seems that I managed to patch it to work with SSLv3 :

--- owncloud-client-1.4.2+dfsg.orig/src/creds/httpcredentials.cpp
+++ owncloud-client-1.4.2+dfsg/src/creds/httpcredentials.cpp
@@ -76,6 +76,11 @@ protected:
         QByteArray credHash = QByteArray(_cred->user().toUtf8()+":"+_cred->password().toUtf8()).toBase64();
         QNetworkRequest req(request);
         req.setRawHeader(QByteArray("Authorization"), QByteArray("Basic ") + credHash);
+
+	QSslConfiguration sslConfig = req.sslConfiguration();
+	sslConfig.setProtocol(QSsl::SslV3);
+	req.setSslConfiguration(sslConfig);
+
         return MirallAccessManager::createRequest(op, req, outgoingData);\
     }
 private:


Hope this helps.

Best regards,
-- 
Olivier BERGER 
http://www-public.telecom-sudparis.eu/~berger_o/ - OpenPGP-Id: 2048R/5819D7E8
Ingenieur Recherche - Dept INF
Institut Mines-Telecom, Telecom SudParis, Evry (France)



More information about the Pkg-owncloud-maintainers mailing list