aboutsummaryrefslogtreecommitdiff
path: root/net/krdc/files
diff options
context:
space:
mode:
Diffstat (limited to 'net/krdc/files')
-rw-r--r--net/krdc/files/patch-git8436cc62317
1 files changed, 0 insertions, 317 deletions
diff --git a/net/krdc/files/patch-git8436cc62 b/net/krdc/files/patch-git8436cc62
deleted file mode 100644
index d568be962d4a..000000000000
--- a/net/krdc/files/patch-git8436cc62
+++ /dev/null
@@ -1,317 +0,0 @@
---- rdp/rdpview.cpp
-+++ rdp/rdpview.cpp
-@@ -146,102 +146,205 @@ bool RdpView::start()
- }
- }
-
-+ // Check the version of FreeRDP so we can use pre-1.1 switches if needed
-+ QProcess *xfreeRDPVersionCheck = new QProcess(this);
-+ xfreeRDPVersionCheck->start("xfreerdp", QStringList("--version"));
-+ xfreeRDPVersionCheck->waitForFinished();
-+ QString versionOutput = xfreeRDPVersionCheck->readAllStandardOutput();
-+ xfreeRDPVersionCheck->deleteLater();
-+
- m_process = new QProcess(m_container);
-
- QStringList arguments;
-
-- int width, height;
-- if (m_hostPreferences->width() > 0) {
-- width = m_hostPreferences->width();
-- height = m_hostPreferences->height();
-- } else {
-- width = this->parentWidget()->size().width();
-- height = this->parentWidget()->size().height();
-- }
-- arguments << "-g" << QString::number(width) + 'x' + QString::number(height);
--
-- arguments << "-k" << keymapToXfreerdp(m_hostPreferences->keyboardLayout());
-+ if (versionOutput.contains(QLatin1String(" 1.0"))) {
-+ kDebug(5012) << "Use FreeRDP 1.0 compatible arguments";
-
-- if (!m_url.userName().isEmpty()) {
-- // if username contains a domain, it needs to be set with another parameter
-- if (m_url.userName().contains('\\')) {
-- const QStringList splittedName = m_url.userName().split('\\');
-- arguments << "-d" << splittedName.at(0);
-- arguments << "-u" << splittedName.at(1);
-+ int width, height;
-+ if (m_hostPreferences->width() > 0) {
-+ width = m_hostPreferences->width();
-+ height = m_hostPreferences->height();
- } else {
-- arguments << "-u" << m_url.userName();
-+ width = this->parentWidget()->size().width();
-+ height = this->parentWidget()->size().height();
- }
-+ arguments << "-g" << QString::number(width) + 'x' + QString::number(height);
-+
-+ arguments << "-k" << keymapToXfreerdp(m_hostPreferences->keyboardLayout());
-+
-+ if (!m_url.userName().isEmpty()) {
-+ // if username contains a domain, it needs to be set with another parameter
-+ if (m_url.userName().contains('\\')) {
-+ const QStringList splittedName = m_url.userName().split('\\');
-+ arguments << "-d" << splittedName.at(0);
-+ arguments << "-u" << splittedName.at(1);
-+ } else {
-+ arguments << "-u" << m_url.userName();
-+ }
-+ } else {
-+ arguments << "-u" << "";
-+ }
-+
-+ arguments << "-D"; // request the window has no decorations
-+ arguments << "-X" << QString::number(m_container->winId());
-+ arguments << "-a" << QString::number((m_hostPreferences->colorDepth() + 1) * 8);
-+
-+ switch (m_hostPreferences->sound()) {
-+ case 1:
-+ arguments << "-o";
-+ break;
-+ case 0:
-+ arguments << "--plugin" << "rdpsnd";
-+ break;
-+ case 2:
-+ default:
-+ break;
-+ }
-+
-+ if (!m_hostPreferences->shareMedia().isEmpty()) {
-+ QStringList shareMedia;
-+ shareMedia << "--plugin" << "rdpdr" << "--data" << "disk:media:" + m_hostPreferences->shareMedia() << "--";
-+ arguments += shareMedia;
-+ }
-+
-+ QString performance;
-+ switch (m_hostPreferences->performance()) {
-+ case 0:
-+ performance = 'm';
-+ break;
-+ case 1:
-+ performance = 'b';
-+ break;
-+ case 2:
-+ performance = 'l';
-+ break;
-+ default:
-+ break;
-+ }
-+
-+ arguments << "-x" << performance;
-+
-+ if (m_hostPreferences->console()) {
-+ arguments << "-0";
-+ }
-+
-+ if (m_hostPreferences->remoteFX()) {
-+ arguments << "--rfx";
-+ }
-+
-+ if (!m_hostPreferences->extraOptions().isEmpty()) {
-+ const QStringList additionalArguments = KShell::splitArgs(m_hostPreferences->extraOptions());
-+ arguments += additionalArguments;
-+ }
-+
-+ // krdc has no support for certificate management yet; it would not be possbile to connect to any host:
-+ // "The host key for example.com has changed" ...
-+ // "Add correct host key in ~/.freerdp/known_hosts to get rid of this message."
-+ arguments << "--ignore-certificate";
-+
-+ // clipboard sharing is activated in KRDC; user can disable it at runtime
-+ arguments << "--plugin" << "cliprdr";
-+
-+ arguments << "-t" << QString::number(m_port);
-+ arguments << m_host;
-+
-+ kDebug(5012) << "Starting xfreerdp with arguments: " << arguments.join(" ");
-+
-+ arguments.removeLast(); // host must be last, remove and re-add it after the password
-+ if (!m_url.password().isNull())
-+ arguments << "-p" << m_url.password();
-+ arguments << m_host;
-+
- } else {
-- arguments << "-u" << "";
-- }
-+ kDebug(5012) << "Use FreeRDP 1.1+ compatible arguments";
-
-- if (!m_url.password().isNull())
-- arguments << "-p" << m_url.password();
--
-- arguments << "-D"; // request the window has no decorations
-- arguments << "-X" << QString::number(m_container->winId());
-- arguments << "-a" << QString::number((m_hostPreferences->colorDepth() + 1) * 8);
--
-- switch (m_hostPreferences->sound()) {
-- case 1:
-- arguments << "-o";
-- break;
-- case 0:
-- arguments << "--plugin" << "rdpsnd";
-- break;
-- case 2:
-- default:
-- break;
-- }
-+ int width, height;
-+ if (m_hostPreferences->width() > 0) {
-+ width = m_hostPreferences->width();
-+ height = m_hostPreferences->height();
-+ } else {
-+ width = this->parentWidget()->size().width();
-+ height = this->parentWidget()->size().height();
-+ }
-+ arguments << "-decorations";
-+ arguments << "/w:" + QString::number(width);
-+ arguments << "/h:" + QString::number(height);
-+
-+ arguments << "/kbd:" + keymapToXfreerdp(m_hostPreferences->keyboardLayout());
-+
-+ if (!m_url.userName().isEmpty()) {
-+ // if username contains a domain, it needs to be set with another parameter
-+ if (m_url.userName().contains('\\')) {
-+ const QStringList splittedName = m_url.userName().split('\\');
-+ arguments << "/d:" + splittedName.at(0);
-+ arguments << "/u:" + splittedName.at(1);
-+ } else {
-+ arguments << "/u:" + m_url.userName();
-+ }
-+ } else {
-+ arguments << "/u:";
-+ }
-
-- if (!m_hostPreferences->shareMedia().isEmpty()) {
-- QStringList shareMedia;
-- shareMedia << "--plugin" << "rdpdr" << "--data" << "disk:media:" + m_hostPreferences->shareMedia() << "--";
-- arguments += shareMedia;
-- }
-+ arguments << "/parent-window:" + QString::number(m_container->winId());
-+ arguments << "/bpp:" + QString::number((m_hostPreferences->colorDepth() + 1) * 8);
-+ arguments << "/audio-mode:" + QString::number(m_hostPreferences->sound());
-
-- QString performance;
-- switch (m_hostPreferences->performance()) {
-- case 0:
-- performance = 'm';
-- break;
-- case 1:
-- performance = 'b';
-- break;
-- case 2:
-- performance = 'l';
-- break;
-- default:
-- break;
-- }
-+ if (!m_hostPreferences->shareMedia().isEmpty()) {
-+ QStringList shareMedia;
-+ shareMedia << "/drive:media," + m_hostPreferences->shareMedia();
-+ arguments += shareMedia;
-+ }
-
-- arguments << "-x" << performance;
-+ QString performance;
-+ switch (m_hostPreferences->performance()) {
-+ case 0:
-+ performance = "modem";
-+ break;
-+ case 1:
-+ performance = "broadband";
-+ break;
-+ case 2:
-+ performance = "lan";
-+ break;
-+ default:
-+ break;
-+ }
-
-- if (m_hostPreferences->console()) {
-- arguments << "-0";
-- }
-+ arguments << "/network:" + performance;
-
-- if (m_hostPreferences->remoteFX()) {
-- arguments << "--rfx";
-- }
-+ if (m_hostPreferences->console()) {
-+ arguments << "/admin";
-+ }
-
-- if (!m_hostPreferences->extraOptions().isEmpty()) {
-- const QStringList additionalArguments = KShell::splitArgs(m_hostPreferences->extraOptions());
-- arguments += additionalArguments;
-- }
-+ if (m_hostPreferences->remoteFX()) {
-+ arguments << "/rfx";
-+ }
-+
-+ if (!m_hostPreferences->extraOptions().isEmpty()) {
-+ const QStringList additionalArguments = KShell::splitArgs(m_hostPreferences->extraOptions());
-+ arguments += additionalArguments;
-+ }
-+
-+ // krdc has no support for certificate management yet; it would not be possbile to connect to any host:
-+ // "The host key for example.com has changed" ...
-+ // "Add correct host key in ~/.freerdp/known_hosts to get rid of this message."
-+ arguments << "/cert-ignore";
-+
-+ // clipboard sharing is activated in KRDC; user can disable it at runtime
-+ arguments << "+clipboard";
-
-- // krdc has no support for certificate management yet; it would not be possbile to connect to any host:
-- // "The host key for example.com has changed" ...
-- // "Add correct host key in ~/.freerdp/known_hosts to get rid of this message."
-- arguments << "--ignore-certificate";
-+ arguments << "/port:" + QString::number(m_port);
-+ arguments << "/v:" + m_host;
-
-- // clipboard sharing is activated in KRDC; user can disable it at runtime
-- arguments << "--plugin" << "cliprdr";
-+ kDebug(5012) << "Starting xfreerdp with arguments: " << arguments.join(" ");
-
-- arguments << "-t" << QString::number(m_port);
-- arguments << m_host;
-+ //avoid printing the password in debug
-+ if (!m_url.password().isNull()) {
-+ arguments << "/p:" + m_url.password();
-+ }
-+ kDebug(5012) << "Starting xfreerdp with arguments: " << arguments.join(" ");
-
-- kDebug(5012) << "Starting xfreerdp with arguments:" << arguments;
-+ }
-
- setStatus(Connecting);
-
-@@ -302,7 +405,7 @@ void RdpView::connectionError()
-
- void RdpView::processError(QProcess::ProcessError error)
- {
-- kDebug(5012) << "processError:" << error;
-+ kDebug(5012) << error;
- if (m_quitFlag) // do not try to show error messages while quitting (prevent crashes)
- return;
-
-@@ -319,11 +422,11 @@ void RdpView::processError(QProcess::ProcessError error)
- void RdpView::receivedStandardError()
- {
- const QString output(m_process->readAllStandardError());
-- kDebug(5012) << "receivedStandardError:" << output;
-+ kDebug(5012) << output;
- QString line;
- int i = 0;
- while (!(line = output.section('\n', i, i)).isEmpty()) {
--
-+
- // the following error is issued by freerdp because of a bug in freerdp 1.0.1 and below;
- // see: https://github.com/FreeRDP/FreeRDP/pull/576
- //"X Error of failed request: BadWindow (invalid Window parameter)
-@@ -345,7 +448,7 @@ void RdpView::receivedStandardError()
- void RdpView::receivedStandardOutput()
- {
- const QString output(m_process->readAllStandardOutput());
-- kDebug(5012) << "receivedStandardOutput:" << output;
-+ kDebug(5012) << output;
- QString line;
- int i = 0;
- while (!(line = output.section('\n', i, i)).isEmpty()) {