Age | Commit message (Collapse) | Author |
|
|
|
|
|
The fields of the rlimit struct were assumed to be of type long int when
printing via the qWarning function. This assumption is correct for glibc
(used by e.g. Ubuntu) but it is not true for musl (used by e.g. Alpine
Linux).
In that case the wrong format specifiers are being used for printing
these values, which causes undefined behavior.
The fix is to always copy the values into variables of type long long
unsigned int and then printing these. The code also adds an assertion
making sure that within this copy operation the values won't overflow
the variable's size.
Fixes #4897
|
|
This was done by running scripts/updateLicenseHeaders.py and then
manually editing the LICENSE file.
|
|
|
|
With the old qmake buildsystem we used to set QT_NO_CAST_FROM_ASCII (for
the Mumble client) in order to avoid problems with character encodings
in our Strings. This was not done in the new cmake system yet.
Instead of the aforementioned macro, this commit sets (for all targets)
QT_RESTRICTED_CAST_FROM_ASCII instead in order to be able to
automatically convert direct String literals to QString as these usually
don't contain any problematic characters (non-ASCII) in the first place.
And this allows to e.g. compare a QString against a String literal or do
something like
QString myString = "This is a test";
which we know to be unproblematic.
Note however that (quote from Qt's docs)
"Using this macro together with source strings outside the 7-bit range,
non-literals, or literals with embedded NUL characters is undefined."
|
|
This changes all occurances of NULL in the murmur source
dir to nullptr. Additionally explicit comparisons with NULL were
removed.
|
|
|
|
This commit adds all the missing includes when the PCH header is not used.
Also, some includes are reordered and/or made consistent (e.g. "#include <QtEndian>" -> "#include <QtCore/QtEndian>").
|
|
According to Qt's documentation the PCH header doesn't need to be included.
From https://doc.qt.io/qt-5/qmake-precompiledheaders.html:
"To make your project use precompiled headers, you only need to define the PRECOMPILED_HEADER variable in your project file."
"qmake will handle the rest, to ensure the creation and use of the precompiled header file. You do not need to include the precompiled header file in HEADERS, as qmake will do this if the configuration supports precompiled headers."
|
|
|
|
|
|
|
|
This moves the SSL loading code from MetaParams::read() into a separate
method, loadSSLSettings(). It also hooks up the SIGUSR1 signal handler
to reload SSL settings and apply the setings to each suitable virtual
server.
A follow-up commit will change MetaParams::read() to also use loadSSLSettings(),
however it was left out of this commit to aid in reviewability.
|
|
Hot certificate reloading will use the USR1 signal.
This adds the meat of the implementation to UnixMurmur, such that
the PR for live-reloading SSL settings via the SIGUSR1 signal is
more easily digestable.
|
|
|
|
|
|
|
|
Simply set the logfile path to "syslog" and Murmur will log to syslog.
This should be stable, it has approximately 4 user-months of testing.
|
|
|
|
|
|
* uninitialized membervars,
* AudioOutput.cpp: fix delete on array to delete[]
* OSS.cpp: close file descriptor in false data case
* OverlayEditorScene.cpp: rm duplicate logic
* fix ifndef to match usage of declared variable
* member var initializations
* check for null (ds in d3d9 as some lines above),
* lower scope of var decl.,
* swap bufsize check and array dereference so check is before! deref,
* initialize member vars in constr.
|
|
QoS settings do not need CAP_NET_ADMIN anymore
|
|
|
|
|
|
http://article.gmane.org/gmane.comp.security.oss.general/4404
|
|
- don't keep saved uid 0. That's bad as an attacker that manages to
execute code could switch back to uid 0
- set $HOME as Qt doesn't look at passwd information
- initialize supplementary groups
- use "mumble-server" as fallback if no user is specified
|
|
|
|
|
|
|
|
|
|
|
|
|
|
SCHED_OTHER
|
|
|
|
so always warn the user
git-svn-id: https://mumble.svn.sourceforge.net/svnroot/mumble/trunk@1601 05730e5d-ab1b-0410-a4ac-84af385074fa
|
|
to use privileged capabilities
git-svn-id: https://mumble.svn.sourceforge.net/svnroot/mumble/trunk@1600 05730e5d-ab1b-0410-a4ac-84af385074fa
|
|
git-svn-id: https://mumble.svn.sourceforge.net/svnroot/mumble/trunk@1593 05730e5d-ab1b-0410-a4ac-84af385074fa
|
|
git-svn-id: https://mumble.svn.sourceforge.net/svnroot/mumble/trunk@1592 05730e5d-ab1b-0410-a4ac-84af385074fa
|
|
update the limits test
git-svn-id: https://mumble.svn.sourceforge.net/svnroot/mumble/trunk@1589 05730e5d-ab1b-0410-a4ac-84af385074fa
|
|
murmurd as root without a username to drop to.
git-svn-id: https://mumble.svn.sourceforge.net/svnroot/mumble/trunk@1588 05730e5d-ab1b-0410-a4ac-84af385074fa
|
|
git-svn-id: https://mumble.svn.sourceforge.net/svnroot/mumble/trunk@1587 05730e5d-ab1b-0410-a4ac-84af385074fa
|
|
git-svn-id: https://mumble.svn.sourceforge.net/svnroot/mumble/trunk@1574 05730e5d-ab1b-0410-a4ac-84af385074fa
|
|
git-svn-id: https://mumble.svn.sourceforge.net/svnroot/mumble/trunk@1545 05730e5d-ab1b-0410-a4ac-84af385074fa
|
|
git-svn-id: https://mumble.svn.sourceforge.net/svnroot/mumble/trunk@1541 05730e5d-ab1b-0410-a4ac-84af385074fa
|
|
git-svn-id: https://mumble.svn.sourceforge.net/svnroot/mumble/trunk@1400 05730e5d-ab1b-0410-a4ac-84af385074fa
|
|
git-svn-id: https://mumble.svn.sourceforge.net/svnroot/mumble/trunk@1380 05730e5d-ab1b-0410-a4ac-84af385074fa
|
|
git-svn-id: https://mumble.svn.sourceforge.net/svnroot/mumble/trunk@1019 05730e5d-ab1b-0410-a4ac-84af385074fa
|
|
git-svn-id: https://mumble.svn.sourceforge.net/svnroot/mumble/trunk@908 05730e5d-ab1b-0410-a4ac-84af385074fa
|
|
git-svn-id: https://mumble.svn.sourceforge.net/svnroot/mumble/trunk@906 05730e5d-ab1b-0410-a4ac-84af385074fa
|