diff --git a/src/lib/deskflow/ArgParser.cpp b/src/lib/deskflow/ArgParser.cpp index f55905f90..3ee2365a3 100644 --- a/src/lib/deskflow/ArgParser.cpp +++ b/src/lib/deskflow/ArgParser.cpp @@ -9,7 +9,6 @@ #include "base/Log.h" #include "deskflow/App.h" #include "deskflow/ArgsBase.h" -#include "deskflow/ClientArgs.h" #ifdef WINAPI_MSWINDOWS #include @@ -24,38 +23,6 @@ ArgParser::ArgParser(App *app) : m_app(app) { } -bool ArgParser::parseClientArgs(deskflow::ClientArgs &args, int argc, const char *const *argv) const -{ - setArgsBase(args); - - int i{1}; - while (i < argc) { - if (parseGenericArgs(argc, argv, i) || parseDeprecatedArgs(argc, argv, i) || - isArg(i, argc, argv, nullptr, "client")) { - ++i; - continue; - } else if (isArg(i, argc, argv, nullptr, "--camp") || isArg(i, argc, argv, nullptr, "--no-camp")) { - // ignore -- included for backwards compatibility - } else { - LOG_CRIT("%s: unrecognized option `%s'" BYE, "deskflow-core", argv[i], "deskflow-core"); - return false; - } - ++i; - } - - // exactly one non-option argument (server-address) - if (i == argc && !args.m_shouldExitFail && !args.m_shouldExitOk) { - LOG_CRIT("%s: a server address or name is required" BYE, "deskflow-core", "deskflow-core"); - return false; - } - - if (checkUnexpectedArgs()) { - return false; - } - - return true; -} - bool ArgParser::parseGenericArgs(int argc, const char *const *argv, int &i) const { if (isArg(i, argc, argv, "-h", "--help")) { diff --git a/src/lib/deskflow/ArgParser.h b/src/lib/deskflow/ArgParser.h index 84cfc0253..61bacfc84 100644 --- a/src/lib/deskflow/ArgParser.h +++ b/src/lib/deskflow/ArgParser.h @@ -12,7 +12,6 @@ namespace deskflow { class ArgsBase; class ServerArgs; -class ClientArgs; } // namespace deskflow class App; @@ -23,7 +22,6 @@ class ArgParser public: explicit ArgParser(App *app); - bool parseClientArgs(deskflow::ClientArgs &args, int argc, const char *const *argv) const; bool parseGenericArgs(int argc, const char *const *argv, int &i) const; bool parseDeprecatedArgs(int argc, const char *const *argv, int &i) const; void setArgsBase(deskflow::ArgsBase &argsBase) const diff --git a/src/lib/deskflow/CMakeLists.txt b/src/lib/deskflow/CMakeLists.txt index 755856651..064db26d5 100644 --- a/src/lib/deskflow/CMakeLists.txt +++ b/src/lib/deskflow/CMakeLists.txt @@ -74,8 +74,6 @@ add_library(${lib_name} STATIC ${PLATFORM_CODE} Chunk.h ClientApp.cpp ClientApp.h - ClientArgs.cpp - ClientArgs.h ClipboardTypes.h Clipboard.cpp Clipboard.h diff --git a/src/lib/deskflow/ClientApp.cpp b/src/lib/deskflow/ClientApp.cpp index 758be6908..0962046c2 100644 --- a/src/lib/deskflow/ClientApp.cpp +++ b/src/lib/deskflow/ClientApp.cpp @@ -17,7 +17,7 @@ #include "common/ExitCodes.h" #include "common/Settings.h" #include "deskflow/ArgParser.h" -#include "deskflow/ClientArgs.h" +#include "deskflow/ArgsBase.h" #include "deskflow/ProtocolTypes.h" #include "deskflow/Screen.h" #include "deskflow/ScreenException.h" @@ -63,39 +63,28 @@ constexpr static auto s_retryTime = 1.0; ClientApp::ClientApp(IEventQueue *events, const QString &processName) - : App(events, processName, new deskflow::ClientArgs()) + : App(events, processName, new deskflow::ArgsBase()) { // do nothing } -void ClientApp::parseArgs(int argc, const char *const *argv) +void ClientApp::parseArgs(int, const char *const *) { - ArgParser argParser(this); - bool result = argParser.parseClientArgs(args(), argc, argv); - - if (!result || args().m_shouldExitOk || args().m_shouldExitFail) { - if (args().m_shouldExitOk) { - bye(s_exitSuccess); - } else { - bye(s_exitArgs); - } - } else { - // save server address - if (!Settings::value(Settings::Client::RemoteHost).isNull()) { - try { - *m_serverAddress = - NetworkAddress(Settings::value(Settings::Client::RemoteHost).toString().toStdString(), kDefaultPort); - m_serverAddress->resolve(); - } catch (SocketAddressException &e) { - // allow an address that we can't look up if we're restartable. - // we'll try to resolve the address each time we connect to the - // server. a bad port will never get better. patch by Brent - // Priddy. - if (!Settings::value(Settings::Core::RestartOnFailure).toBool() || - e.getError() == SocketAddressException::SocketError::BadPort) { - LOG_CRIT("%s: %s" BYE, qPrintable(processName()), e.what(), qPrintable(processName())); - bye(s_exitFailed); - } + // save server address + if (!Settings::value(Settings::Client::RemoteHost).isNull()) { + try { + *m_serverAddress = + NetworkAddress(Settings::value(Settings::Client::RemoteHost).toString().toStdString(), kDefaultPort); + m_serverAddress->resolve(); + } catch (SocketAddressException &e) { + // allow an address that we can't look up if we're restartable. + // we'll try to resolve the address each time we connect to the + // server. a bad port will never get better. patch by Brent + // Priddy. + if (!Settings::value(Settings::Core::RestartOnFailure).toBool() || + e.getError() == SocketAddressException::SocketError::BadPort) { + LOG_CRIT("%s: %s" BYE, qPrintable(processName()), e.what(), qPrintable(processName())); + bye(s_exitFailed); } } } diff --git a/src/lib/deskflow/ClientApp.h b/src/lib/deskflow/ClientApp.h index 43034e9c2..e910782d0 100644 --- a/src/lib/deskflow/ClientApp.h +++ b/src/lib/deskflow/ClientApp.h @@ -31,7 +31,7 @@ public: // IApp overrides // - void parseArgs(int argc, const char *const *argv) override; + void parseArgs(int, const char *const *) override; void help() override; const char *daemonName() const override; const char *daemonInfo() const override; @@ -78,11 +78,6 @@ public: return m_client; } - deskflow::ClientArgs &args() const - { - return (deskflow::ClientArgs &)argsBase(); - } - // // Static functions // diff --git a/src/lib/deskflow/ClientArgs.cpp b/src/lib/deskflow/ClientArgs.cpp deleted file mode 100644 index 3fe302717..000000000 --- a/src/lib/deskflow/ClientArgs.cpp +++ /dev/null @@ -1,15 +0,0 @@ -/* - * Deskflow -- mouse and keyboard sharing utility - * SPDX-FileCopyrightText: (C) 2014 - 2016 Symless Ltd. - * SPDX-License-Identifier: GPL-2.0-only WITH LicenseRef-OpenSSL-Exception - */ - -#include "ClientArgs.h" - -namespace deskflow { - -ClientArgs::ClientArgs() -{ - m_classType = ClassType::Client; -} -} // namespace deskflow diff --git a/src/lib/deskflow/ClientArgs.h b/src/lib/deskflow/ClientArgs.h deleted file mode 100644 index c24571bdf..000000000 --- a/src/lib/deskflow/ClientArgs.h +++ /dev/null @@ -1,21 +0,0 @@ -/* - * Deskflow -- mouse and keyboard sharing utility - * SPDX-FileCopyrightText: (C) 2014 - 2016 Symless Ltd. - * SPDX-License-Identifier: GPL-2.0-only WITH LicenseRef-OpenSSL-Exception - */ - -#pragma once - -#include "ArgsBase.h" - -namespace deskflow { -class ClientArgs : public ArgsBase -{ - - /// Public functions -public: - ClientArgs(); - - ~ClientArgs() override = default; -}; -} // namespace deskflow diff --git a/src/lib/deskflow/KeyState.cpp b/src/lib/deskflow/KeyState.cpp index 99b0be5af..69d1fe7d3 100644 --- a/src/lib/deskflow/KeyState.cpp +++ b/src/lib/deskflow/KeyState.cpp @@ -7,8 +7,6 @@ #include "deskflow/KeyState.h" #include "base/Log.h" -#include "deskflow/ClientApp.h" -#include "deskflow/ClientArgs.h" #include #include diff --git a/src/lib/deskflow/PlatformScreen.h b/src/lib/deskflow/PlatformScreen.h index a4e912fee..1b7998169 100644 --- a/src/lib/deskflow/PlatformScreen.h +++ b/src/lib/deskflow/PlatformScreen.h @@ -8,7 +8,6 @@ #pragma once #include "common/Settings.h" -#include "deskflow/ClientArgs.h" #include "deskflow/IPlatformScreen.h" #include diff --git a/src/lib/deskflow/ServerApp.cpp b/src/lib/deskflow/ServerApp.cpp index 8b80e5bc3..28e851f34 100644 --- a/src/lib/deskflow/ServerApp.cpp +++ b/src/lib/deskflow/ServerApp.cpp @@ -16,6 +16,7 @@ #include "common/Settings.h" #include "deskflow/App.h" #include "deskflow/ArgParser.h" +#include "deskflow/ArgsBase.h" #include "deskflow/Screen.h" #include "deskflow/ScreenException.h" #include "net/SocketException.h" diff --git a/src/lib/platform/MSWindowsScreen.h b/src/lib/platform/MSWindowsScreen.h index 2ad858c73..c740f9aad 100644 --- a/src/lib/platform/MSWindowsScreen.h +++ b/src/lib/platform/MSWindowsScreen.h @@ -8,7 +8,6 @@ #pragma once -#include "deskflow/ClientArgs.h" #include "deskflow/PlatformScreen.h" #include "platform/MSWindowsHook.h" #include "platform/MSWindowsPowerManager.h" diff --git a/src/lib/platform/XWindowsScreen.cpp b/src/lib/platform/XWindowsScreen.cpp index 578bfdb14..36ac3627d 100644 --- a/src/lib/platform/XWindowsScreen.cpp +++ b/src/lib/platform/XWindowsScreen.cpp @@ -18,7 +18,6 @@ #include "deskflow/App.h" #include "deskflow/ArgsBase.h" #include "deskflow/ClientApp.h" -#include "deskflow/ClientArgs.h" #include "deskflow/Clipboard.h" #include "deskflow/KeyMap.h" #include "deskflow/ScreenException.h" diff --git a/src/lib/platform/XWindowsScreen.h b/src/lib/platform/XWindowsScreen.h index 83341dbb8..ced24c707 100644 --- a/src/lib/platform/XWindowsScreen.h +++ b/src/lib/platform/XWindowsScreen.h @@ -9,7 +9,6 @@ #pragma once #include "arch/Arch.h" -#include "deskflow/ClientArgs.h" #include "deskflow/KeyMap.h" #include "deskflow/PlatformScreen.h" #include "platform/XDGPowerManager.h" diff --git a/src/unittests/deskflow/ArgParserTests.cpp b/src/unittests/deskflow/ArgParserTests.cpp index a64e511ba..1172487eb 100644 --- a/src/unittests/deskflow/ArgParserTests.cpp +++ b/src/unittests/deskflow/ArgParserTests.cpp @@ -8,7 +8,6 @@ #include "ArgParserTests.h" #include "deskflow/ArgsBase.h" -#include "deskflow/ClientArgs.h" // This file is generated at build time #include @@ -161,27 +160,6 @@ void ArgParserTests::assembleCommand() QCOMPARE(command, "\"stub1 space\" stub2 \"stub3 space\""); } -void ArgParserTests::clientArgs() -{ - deskflow::ClientArgs args; - char const *argv[] = {kAppId, "--help", "--res-w", "888"}; - - QVERIFY(m_parser.parseClientArgs(args, sizeof(argv) / sizeof(argv[0]), argv)); - QVERIFY(args.m_shouldExitOk); -} - -void ArgParserTests::client_badArgs() -{ - deskflow::ClientArgs clientArgs; - const int argc = 1; - const char *kNoAddressCmd[argc] = {"stub"}; - QVERIFY(!m_parser.parseClientArgs(clientArgs, argc, kNoAddressCmd)); - - const int argc2 = 3; - const char *kUnrecognizedCmd[argc2] = {"stub", "mock_arg", "mock_address"}; - QVERIFY(!m_parser.parseClientArgs(clientArgs, argc2, kUnrecognizedCmd)); -} - void ArgParserTests::deprecatedArg_crypoPass_true() { int i = 1; diff --git a/src/unittests/deskflow/ArgParserTests.h b/src/unittests/deskflow/ArgParserTests.h index 6cef8cdb6..f02d60a56 100644 --- a/src/unittests/deskflow/ArgParserTests.h +++ b/src/unittests/deskflow/ArgParserTests.h @@ -21,8 +21,6 @@ private Q_SLOTS: void splitCommand(); void getArgv(); void assembleCommand(); - void clientArgs(); - void client_badArgs(); void deprecatedArg_crypoPass_true(); void deprecatedArg_crypoPass_false();