Skip to content
Permalink
Browse files

Merge PR #3009: Add option to hide OS information from server ("priva…

…cy mode")
  • Loading branch information...
mkrautz committed Apr 9, 2017
2 parents d4c8abd + d0e2cdc commit 65909b89cf634ac9ec76e4d57ab7e6874acf985b
Showing with 40 additions and 2 deletions.
  1. +2 −0 src/mumble/NetworkConfig.cpp
  2. +23 −0 src/mumble/NetworkConfig.ui
  3. +5 −2 src/mumble/ServerHandler.cpp
  4. +7 −0 src/mumble/Settings.cpp
  5. +3 −0 src/mumble/Settings.h
@@ -55,6 +55,7 @@ void NetworkConfig::load(const Settings &r) {
qlePassword->setText(r.qsProxyPassword);

loadCheckBox(qcbImageDownload, r.iMaxImageSize <= 0);
loadCheckBox(qcbHideOS, s.bHideOS);

loadCheckBox(qcbAutoUpdate, r.bUpdateCheck);
loadCheckBox(qcbPluginUpdate, r.bPluginCheck);
@@ -72,6 +73,7 @@ void NetworkConfig::save() const {
s.bReconnect = qcbAutoReconnect->isChecked();
s.bAutoConnect = qcbAutoConnect->isChecked();
s.bSuppressIdentity = qcbSuppressIdentity->isChecked();
s.bHideOS = qcbHideOS->isChecked();

s.ptProxyType = static_cast<Settings::ProxyType>(qcbType->currentIndex());
s.qsProxyHost = qleHostname->text();
@@ -295,6 +295,29 @@ Prevents the client from downloading images embedded into chat messages with the
</layout>
</widget>
</item>
<item>
<widget class="QGroupBox" name="qgbPrivacy">
<property name="title">
<string>Privacy</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout_4">
<item>
<widget class="QCheckBox" name="qcbHideOS">
<property name="toolTip">
<string>Prevent OS information being sent to the server</string>
</property>
<property name="whatsThis">
<string>&lt;b&gt;Don't send OS information to the server&lt;/b&gt;&lt;br/&gt;
Prevents the client from sending potentially identifying information about the operating system to the server.</string>
</property>
<property name="text">
<string>Do not send OS information to Mumble servers</string>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item>
<widget class="QGroupBox" name="qgbServices">
<property name="title">
@@ -577,8 +577,11 @@ void ServerHandler::serverConnectionConnected() {
mpv.set_version(version);
}

mpv.set_os(u8(OSInfo::getOS()));
mpv.set_os_version(u8(OSInfo::getOSDisplayableVersion()));
if (!g.s.bHideOS) {
mpv.set_os(u8(OSInfo::getOS()));
mpv.set_os_version(u8(OSInfo::getOSDisplayableVersion()));
}

sendMessage(mpv);

MumbleProto::Authenticate mpa;
@@ -354,6 +354,7 @@ Settings::Settings() {
iMaxImageHeight = 1024;
bSuppressIdentity = false;
qsSslCiphers = MumbleSSL::defaultOpenSSLCipherString();
bHideOS = false;

bShowTransmitModeComboBox = false;

@@ -684,6 +685,9 @@ void Settings::load(QSettings* settings_ptr) {
// Network settings - SSL
SAVELOAD(qsSslCiphers, "net/sslciphers");

// Privacy settings
SAVELOAD(bHideOS, "privacy/hideos");

SAVELOAD(bExpert, "ui/expert");
SAVELOAD(qsLanguage, "ui/language");
SAVELOAD(themeName, "ui/theme");
@@ -1007,6 +1011,9 @@ void Settings::save() {
// Network settings - SSL
SAVELOAD(qsSslCiphers, "net/sslciphers");

// Privacy settings
SAVELOAD(bHideOS, "privacy/hideos");

SAVELOAD(bExpert, "ui/expert");
SAVELOAD(qsLanguage, "ui/language");
SAVELOAD(themeName, "ui/theme");
@@ -333,6 +333,9 @@ struct Settings {
// Network settings - SSL
QString qsSslCiphers;

// Privacy settings
bool bHideOS;

static const int ciDefaultMaxImageSize = 50 * 1024; // Restrict to 50KiB as a default
int iMaxImageSize;
int iMaxImageWidth;

0 comments on commit 65909b8

Please sign in to comment.
You can’t perform that action at this time.