accountmanager.cpp
accountsettings.cpp
application.cpp
- clientproxy.cpp
connectionvalidator.cpp
folder.cpp
folderman.cpp
+++ /dev/null
-/*
- * Copyright (C) by Klaas Freitag <freitag@owncloud.com>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
- * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * for more details.
- */
-
-#include "clientproxy.h"
-
-#include "configfile.h"
-#include <QLoggingCategory>
-#include <QUrl>
-#include <QThreadPool>
-
-namespace OCC {
-
-Q_LOGGING_CATEGORY(lcClientProxy, "nextcloud.sync.clientproxy", QtInfoMsg)
-
-ClientProxy::ClientProxy(QObject *parent)
- : QObject(parent)
-{
-}
-
-static QNetworkProxy proxyFromConfig(const ConfigFile &cfg)
-{
- QNetworkProxy proxy;
-
- if (cfg.proxyHostName().isEmpty())
- return QNetworkProxy();
-
- proxy.setHostName(cfg.proxyHostName());
- proxy.setPort(cfg.proxyPort());
- if (cfg.proxyNeedsAuth()) {
- proxy.setUser(cfg.proxyUser());
- proxy.setPassword(cfg.proxyPassword());
- }
- return proxy;
-}
-
-bool ClientProxy::isUsingSystemDefault()
-{
- OCC::ConfigFile cfg;
-
- // if there is no config file, default to system proxy.
- if (cfg.exists()) {
- return cfg.proxyType() == QNetworkProxy::DefaultProxy;
- }
-
- return true;
-}
-
-QString printQNetworkProxy(const QNetworkProxy &proxy)
-{
- return QString("%1://%2:%3").arg(proxy.type()).arg(proxy.hostName()).arg(proxy.port());
-}
-
-void ClientProxy::setupQtProxyFromConfig()
-{
- OCC::ConfigFile cfg;
- int proxyType = QNetworkProxy::DefaultProxy;
- QNetworkProxy proxy;
-
- // if there is no config file, default to system proxy.
- if (cfg.exists()) {
- proxyType = cfg.proxyType();
- proxy = proxyFromConfig(cfg);
- }
-
- switch (proxyType) {
- case QNetworkProxy::NoProxy:
- qCInfo(lcClientProxy) << "Set proxy configuration to use NO proxy";
- QNetworkProxyFactory::setUseSystemConfiguration(false);
- QNetworkProxy::setApplicationProxy(QNetworkProxy::NoProxy);
- break;
- case QNetworkProxy::DefaultProxy:
- qCInfo(lcClientProxy) << "Set proxy configuration to use the preferred system proxy for http tcp connections";
- {
- QNetworkProxyQuery query;
- query.setProtocolTag("http");
- query.setQueryType(QNetworkProxyQuery::TcpSocket);
- auto proxies = QNetworkProxyFactory::proxyForQuery(query);
- proxy = proxies.first();
- }
- QNetworkProxyFactory::setUseSystemConfiguration(false);
- QNetworkProxy::setApplicationProxy(proxy);
- break;
- case QNetworkProxy::Socks5Proxy:
- proxy.setType(QNetworkProxy::Socks5Proxy);
- qCInfo(lcClientProxy) << "Set proxy configuration to SOCKS5" << printQNetworkProxy(proxy);
- QNetworkProxyFactory::setUseSystemConfiguration(false);
- QNetworkProxy::setApplicationProxy(proxy);
- break;
- case QNetworkProxy::HttpProxy:
- proxy.setType(QNetworkProxy::HttpProxy);
- qCInfo(lcClientProxy) << "Set proxy configuration to HTTP" << printQNetworkProxy(proxy);
- QNetworkProxyFactory::setUseSystemConfiguration(false);
- QNetworkProxy::setApplicationProxy(proxy);
- break;
- default:
- break;
- }
-}
-
-const char *ClientProxy::proxyTypeToCStr(QNetworkProxy::ProxyType type)
-{
- switch (type) {
- case QNetworkProxy::NoProxy:
- return "NoProxy";
- case QNetworkProxy::DefaultProxy:
- return "DefaultProxy";
- case QNetworkProxy::Socks5Proxy:
- return "Socks5Proxy";
- case QNetworkProxy::HttpProxy:
- return "HttpProxy";
- case QNetworkProxy::HttpCachingProxy:
- return "HttpCachingProxy";
- case QNetworkProxy::FtpCachingProxy:
- return "FtpCachingProxy";
- default:
- return "NoProxy";
- }
-}
-
-void ClientProxy::lookupSystemProxyAsync(const QUrl &url, QObject *dst, const char *slot)
-{
- auto *runnable = new SystemProxyRunnable(url);
- QObject::connect(runnable, SIGNAL(systemProxyLookedUp(QNetworkProxy)), dst, slot);
- QThreadPool::globalInstance()->start(runnable); // takes ownership and deletes
-}
-
-SystemProxyRunnable::SystemProxyRunnable(const QUrl &url)
- : QObject()
- , QRunnable()
- , _url(url)
-{
-}
-
-void SystemProxyRunnable::run()
-{
- qRegisterMetaType<QNetworkProxy>("QNetworkProxy");
- QList<QNetworkProxy> proxies = QNetworkProxyFactory::systemProxyForQuery(QNetworkProxyQuery(_url));
-
- if (proxies.isEmpty()) {
- emit systemProxyLookedUp(QNetworkProxy(QNetworkProxy::NoProxy));
- } else {
- emit systemProxyLookedUp(proxies.first());
- // FIXME Would we really ever return more?
- }
-}
-}
+++ /dev/null
-/*
- * Copyright (C) by Klaas Freitag <freitag@owncloud.com>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
- * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * for more details.
- */
-
-#ifndef CLIENTPROXY_H
-#define CLIENTPROXY_H
-
-#include <QObject>
-#include <QNetworkProxy>
-#include <QRunnable>
-#include <QUrl>
-
-#include <csync.h>
-#include "common/utility.h"
-#include "owncloudlib.h"
-
-namespace OCC {
-
-class ConfigFile;
-
-/**
- * @brief The ClientProxy class
- * @ingroup libsync
- */
-class ClientProxy : public QObject
-{
- Q_OBJECT
-public:
- explicit ClientProxy(QObject *parent = nullptr);
-
- static bool isUsingSystemDefault();
- static void lookupSystemProxyAsync(const QUrl &url, QObject *dst, const char *slot);
-
-public slots:
- void setupQtProxyFromConfig();
-
-private:
- const char *proxyTypeToCStr(QNetworkProxy::ProxyType type);
-};
-
-class SystemProxyRunnable : public QObject, public QRunnable
-{
- Q_OBJECT
-public:
- SystemProxyRunnable(const QUrl &url);
- void run() override;
-signals:
- void systemProxyLookedUp(const QNetworkProxy &url);
-
-private:
- QUrl _url;
-};
-
-QString printQNetworkProxy(const QNetworkProxy &proxy);
-}
-
-#endif // CLIENTPROXY_H
wordlist.cpp
bandwidthmanager.cpp
capabilities.cpp
+ clientproxy.cpp
cookiejar.cpp
discoveryphase.cpp
filesystem.cpp
--- /dev/null
+/*
+ * Copyright (C) by Klaas Freitag <freitag@owncloud.com>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+ * for more details.
+ */
+
+#include "clientproxy.h"
+
+#include "configfile.h"
+#include <QLoggingCategory>
+#include <QUrl>
+#include <QThreadPool>
+
+namespace OCC {
+
+Q_LOGGING_CATEGORY(lcClientProxy, "nextcloud.sync.clientproxy", QtInfoMsg)
+
+ClientProxy::ClientProxy(QObject *parent)
+ : QObject(parent)
+{
+}
+
+static QNetworkProxy proxyFromConfig(const ConfigFile &cfg)
+{
+ QNetworkProxy proxy;
+
+ if (cfg.proxyHostName().isEmpty())
+ return QNetworkProxy();
+
+ proxy.setHostName(cfg.proxyHostName());
+ proxy.setPort(cfg.proxyPort());
+ if (cfg.proxyNeedsAuth()) {
+ proxy.setUser(cfg.proxyUser());
+ proxy.setPassword(cfg.proxyPassword());
+ }
+ return proxy;
+}
+
+bool ClientProxy::isUsingSystemDefault()
+{
+ OCC::ConfigFile cfg;
+
+ // if there is no config file, default to system proxy.
+ if (cfg.exists()) {
+ return cfg.proxyType() == QNetworkProxy::DefaultProxy;
+ }
+
+ return true;
+}
+
+QString printQNetworkProxy(const QNetworkProxy &proxy)
+{
+ return QString("%1://%2:%3").arg(proxy.type()).arg(proxy.hostName()).arg(proxy.port());
+}
+
+void ClientProxy::setupQtProxyFromConfig()
+{
+ OCC::ConfigFile cfg;
+ int proxyType = QNetworkProxy::DefaultProxy;
+ QNetworkProxy proxy;
+
+ // if there is no config file, default to system proxy.
+ if (cfg.exists()) {
+ proxyType = cfg.proxyType();
+ proxy = proxyFromConfig(cfg);
+ }
+
+ switch (proxyType) {
+ case QNetworkProxy::NoProxy:
+ qCInfo(lcClientProxy) << "Set proxy configuration to use NO proxy";
+ QNetworkProxyFactory::setUseSystemConfiguration(false);
+ QNetworkProxy::setApplicationProxy(QNetworkProxy::NoProxy);
+ break;
+ case QNetworkProxy::DefaultProxy:
+ qCInfo(lcClientProxy) << "Set proxy configuration to use the preferred system proxy for http tcp connections";
+ {
+ QNetworkProxyQuery query;
+ query.setProtocolTag("http");
+ query.setQueryType(QNetworkProxyQuery::TcpSocket);
+ auto proxies = QNetworkProxyFactory::proxyForQuery(query);
+ proxy = proxies.first();
+ }
+ QNetworkProxyFactory::setUseSystemConfiguration(false);
+ QNetworkProxy::setApplicationProxy(proxy);
+ break;
+ case QNetworkProxy::Socks5Proxy:
+ proxy.setType(QNetworkProxy::Socks5Proxy);
+ qCInfo(lcClientProxy) << "Set proxy configuration to SOCKS5" << printQNetworkProxy(proxy);
+ QNetworkProxyFactory::setUseSystemConfiguration(false);
+ QNetworkProxy::setApplicationProxy(proxy);
+ break;
+ case QNetworkProxy::HttpProxy:
+ proxy.setType(QNetworkProxy::HttpProxy);
+ qCInfo(lcClientProxy) << "Set proxy configuration to HTTP" << printQNetworkProxy(proxy);
+ QNetworkProxyFactory::setUseSystemConfiguration(false);
+ QNetworkProxy::setApplicationProxy(proxy);
+ break;
+ default:
+ break;
+ }
+}
+
+void ClientProxy::lookupSystemProxyAsync(const QUrl &url, QObject *dst, const char *slot)
+{
+ auto *runnable = new SystemProxyRunnable(url);
+ QObject::connect(runnable, SIGNAL(systemProxyLookedUp(QNetworkProxy)), dst, slot);
+ QThreadPool::globalInstance()->start(runnable); // takes ownership and deletes
+}
+
+SystemProxyRunnable::SystemProxyRunnable(const QUrl &url)
+ : QObject()
+ , QRunnable()
+ , _url(url)
+{
+}
+
+void SystemProxyRunnable::run()
+{
+ qRegisterMetaType<QNetworkProxy>("QNetworkProxy");
+ QList<QNetworkProxy> proxies = QNetworkProxyFactory::systemProxyForQuery(QNetworkProxyQuery(_url));
+
+ if (proxies.isEmpty()) {
+ emit systemProxyLookedUp(QNetworkProxy(QNetworkProxy::NoProxy));
+ } else {
+ emit systemProxyLookedUp(proxies.first());
+ // FIXME Would we really ever return more?
+ }
+}
+}
--- /dev/null
+/*
+ * Copyright (C) by Klaas Freitag <freitag@owncloud.com>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+ * for more details.
+ */
+
+#ifndef CLIENTPROXY_H
+#define CLIENTPROXY_H
+
+#include <QObject>
+#include <QNetworkProxy>
+#include <QRunnable>
+#include <QUrl>
+
+#include <csync.h>
+#include "common/utility.h"
+#include "owncloudlib.h"
+
+namespace OCC {
+
+class ConfigFile;
+
+/**
+ * @brief The ClientProxy class
+ * @ingroup libsync
+ */
+class OWNCLOUDSYNC_EXPORT ClientProxy : public QObject
+{
+ Q_OBJECT
+public:
+ explicit ClientProxy(QObject *parent = nullptr);
+
+ static bool isUsingSystemDefault();
+ static void lookupSystemProxyAsync(const QUrl &url, QObject *dst, const char *slot);
+
+public slots:
+ void setupQtProxyFromConfig();
+};
+
+class OWNCLOUDSYNC_EXPORT SystemProxyRunnable : public QObject, public QRunnable
+{
+ Q_OBJECT
+public:
+ SystemProxyRunnable(const QUrl &url);
+ void run() override;
+signals:
+ void systemProxyLookedUp(const QNetworkProxy &url);
+
+private:
+ QUrl _url;
+};
+
+QString printQNetworkProxy(const QNetworkProxy &proxy);
+}
+
+#endif // CLIENTPROXY_H
list(APPEND FolderMan_SRC ../src/gui/navigationpanehelper.cpp )
list(APPEND FolderMan_SRC ../src/gui/userinfo.cpp )
list(APPEND FolderMan_SRC ../src/gui/connectionvalidator.cpp )
-list(APPEND FolderMan_SRC ../src/gui/clientproxy.cpp )
list(APPEND FolderMan_SRC ../src/gui/ocsjob.cpp )
list(APPEND FolderMan_SRC ../src/gui/ocsnavigationappsjob.cpp )
list(APPEND FolderMan_SRC ../src/gui/accountstate.cpp )
nextcloud_add_test(FolderMan "${FolderMan_SRC}")
SET(RemoteWipe_SRC ../src/gui/remotewipe.cpp)
-list(APPEND RemoteWipe_SRC ../src/gui/clientproxy.cpp )
list(APPEND RemoteWipe_SRC ../src/gui/guiutility.cpp )
list(APPEND RemoteWipe_SRC ../src/gui/userinfo.cpp )
list(APPEND RemoteWipe_SRC ../src/gui/connectionvalidator.cpp )