Age | Commit message (Collapse) | Author |
|
This implements #3319 by allowing users to "listen" to a channel they
have not joined. Doing so will place a "listener proxy" (in other
software this is sometimes known as a "phantom") in that channel which
will look like a normal user except that it'll have the same name as the
user listening to that channel and an ear-icon instead of the normal
avatar-icon. It will also always show a muted-icon next to it.
If a listener proxy is in a channel, the server will route all audio
packets from that channel to the user the proxy belongs to (as if that
user was in the channel). Note though that the opposite of this is not
true: The users in the channel will not hear audio from the listening
user unless that user decides to join the channel.
Furthermore it is possible to set a local volume adjustment for each
individual proxy that will be applied to all audio that is received
through it.
|
|
|
|
As requested in #2481, this commit introduces the option to print
changes of ACLs and/or groups to the server-log. These logs then contain
the ALCs/groups before the change and after it and should thereby grant
all information necessary to debug what is going on with them.
|
|
|
|
ChannelState message in order for the protocol to be able to tell clients about which channels they will be able to enter
|
|
|
|
|
|
|
|
|
|
|
|
Qt 5.14 and higher
Qt 5.14 introduces a bunch of range-based constructors for the various
collection-classes that are now to be preferred over the generic
toList(), toSet(), toXY() functions
|
|
higher
|
|
|
|
|
|
access tokens
|
|
|
|
This commit fixes a warning encountered today on FreeBSD, probably because Clang was updated and now `-Wdangling-else` is enabled by default.
Messages.cpp:1330:5: error: add explicit braces to avoid dangling else [-Werror,-Wdangling-else]
foreach(int id, pg->members()) {
^
|
|
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."
|
|
|
|
The vulnerability was kindly reported by the "zom.bi" (https://zom.bi) community, who also provided a patch, which is applied in this commit.
Thank you very much for your support!
|
|
This patch adds a rate limiting to selected patches. The underlying rate limiter
used is the Leaky-Bucket algorithm. It allows for a burst of messages, but
limits them after a specified amount of messages within a time frame.
|
|
Those now only say permission denied without a proper
reason.
|
|
|
|
Having to many channels on a server can impact performance to the point
of making the instance unusably slow. This can be a problem for hosters
that allow their users unlimited channel creation.
This patch introduces a new per-server configuration parameter
channelcountlimit which can be used to configure a maximum number of
channels that may be created on each of the virtual servers. Once the
limit is reached channel creation will be rejected with permission
denied.
To allow a translated error message we have to bump the client version
to 1.3.1 to be able to use a fallback message for older clients.
As usual dbus, ice and grpc can ignore this limit. It is only enforced
against clients.
|
|
|
|
This change modifies CryptState to use AES_KEY_SIZE_BYTES and
AES_KEY_SIZE_BITS constants instead of using AES_BLOCK_SIZE.
This cleans up the code, making it easier to read and understand.
The key size is a distinct concept from the block size, even though
Mumble only offiiclaly supports OCB-AES128.
This also allows users of custom builds to bump their key size to
256-bit, if they desire. Of course, such builds will not be compatible
with any existing Mumble server, because neither Mumble nor Murmur
currently supports negotiating the crypto mode used for voice packets.
|
|
|
|
The server has a regular expression setting for channel names.
The additional restriction of having a word character is probably
reasonable for most users.
However, it is an arbitrary limitation that users may want to circumvent.
For example: A channel could not be named with hyphens only "---".
As this is an arbitrary and invisible limitation, whichs use case is
covered by the channelname setting (with a default, and adjustable by the
user) remove it.
We still prevent 0-length channel names as a special case, as they could
lead to issues in existing code paths (even when they should not with
consistently correct implementation).
|
|
|
|
ssContext.
|
|
|
|
|
|
|
|
|
|
|
|
Fixes mumble-voip/mumble#1996
|
|
|
|
|
|
|
|
The database query for looking up users in ServerDB has always been
case insensitive.
This commit makes the "duplicate user"-check in Messages.cpp case
insensitive as well.
Furthermore, this commit updates the documentation for the authenticate()
callback in Murmur.ice to document that authenticators should strive to
make usernames case insensitive.
Fixes mumble-voip/mumble#1078
|
|
Fixes mumble-voip/mumble#1930
|
|
Fixes mumble-voip/mumble#1920
|
|
Fixes mumble-voip/mumble#1913
|
|
|
|
|
|
|
|
Fixes remaining unused function, shadow and cast warnings
in murmur code.
|
|
This commit adds a user friendly UserRemove message
when a username is reused from the same IP-address.
|
|
* Show the IP address of the rejected connection in the mumble-server log.
** Allows use in ban-software which scans logs (requested for fail2ban).
*** Note that the address format will differ with activated IP obfuscation.
* Applied patch from https://sourceforge.net/p/mumble/bugs/861/
which implements the FR #1303 and fixes debian bug 627139 [1]
* This patch was already automatically applied to our Ubuntu PPA builds [2]
[1] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=627139
[2] https://github.com/mumble-voip/mumble-ubuntu-ppa/blob/master/patches/02-reject-with-ip-in-log.diff
|