On 04/13/2015 03:33 AM, Tuxicoman wrote:
> Thanks, this works !
Thank goodness. ;-)
Not quite done with this bug yet though; you'll see why below.
> Maybe having "host=0.0.0.0" as default value in the mumble-server.ini
> example file would be a good solution to fix this bug in the meanwhile?
Well yes but I realize there's a catch; this specific setting is IPv4
only, and mumble-server can work on IPv6. Try the following and see
what happens:
host=::
That's supposed to be the "Any" address for IPv6 (but the communication
works for IPv4 too). Then (as root) run 'netstat -tpln' and if it
starts correctly you should see something like this (with a different
PID for murmurd):
tcp6 0 0 :::64738 :::* LISTEN 806/murmurd
but if it doesn't start correctly then the result will be that murmurd
is running but not listening, like it has been before using host=0.0.0.0.
The thing is that "host=" (i.e. empty setting, which is supposedly the
default if the setting isn't specified or commented out) is supposed to
mean "all interfaces". I've looked in the code for murmur and I think
it's setting it here (note the QHostAddress lines):
src/murmur/Meta.cpp:234:
---------------------------------------------------------------------
if (hasipv6) {
qlBind << QHostAddress(QHostAddress::AnyIPv6);
#ifdef Q_OS_UNIX
if (hasipv4) {
int s = ::socket(AF_INET6, SOCK_STREAM, 0);
if (s != -1) {
int ipv6only = 0;
socklen_t optlen = sizeof(ipv6only);
if (getsockopt(s, IPPROTO_IPV6, IPV6_V6ONLY,
&ipv6only, &optlen) == 0) {
if (ipv6only == 0)
hasipv4 = false;
}
close(s);
}
}
#endif
}
if (hasipv4)
qlBind << QHostAddress(QHostAddress::Any);
}
---------------------------------------------------------------------
The "Any" and "AnyIPv6" addresses are supposed to mean "0.0.0.0" and
"::" like one would expect:
http://doc.qt.io/qt-4.8/qhostaddress.html#SpecialAddress-enum
Right now I'm thinking there might be a subtle bug in the way murmur is
setting the "AnyIPv6" address, perhaps in that section of code above.
> # systemctl status mumble-server
> ● mumble-server.service - Mumble VoIP server
> Loaded: loaded (/lib/systemd/system/mumble-server.service; enabled)
> Active: active (running) since lun 2015-04-13 09:25:19 CEST; 1min 16s
> ago
> Docs: man:murmurd(1)
> file:///usr/share/doc/mumble-server/README
> http://wiki.mumble.info/wiki/Running_Murmur
> Process: 852 ExecStart=/usr/sbin/murmurd -ini /etc/mumble-server.ini
> (code=exited, status=0/SUCCESS)
> Process: 784 ExecStartPre=/usr/bin/install -o mumble-server -g adm
> -d /var/run/mumble-server (code=exited, status=0/SUCCESS)
> Main PID: 1346 (murmurd)
> CGroup: /system.slice/mumble-server.service
> └─1346 /usr/sbin/murmurd -ini /etc/mumble-server.ini
>
> # cat /var/log/mumble-server/mumble-server.log
> <W>2015-04-13 09:25:19.345 Initializing settings
> from /etc/mumble-server.ini (basepath /etc)
> <W>2015-04-13 09:25:19.346 Binding to address 0.0.0.0
> <C>2015-04-13 09:25:19.348 Adding 1 CA certificates from certificate
> file.
> <W>2015-04-13 09:25:19.348 OpenSSL: OpenSSL 1.0.1k 8 Jan 2015
> <C>2015-04-13 09:25:19.349 Successfully switched to uid 126
> <W>2015-04-13 09:25:19.512 ServerDB: Opened SQLite
> database /var/lib/mumble-server/mumble-server.sqlite
> <W>2015-04-13 09:25:19.514 Resource limits were 0 0
> <W>2015-04-13 09:25:19.514 Successfully dropped capabilities
> <W>2015-04-13 09:25:19.554 Murmur 1.2.8 (1.2.8-2) running on X11: Debian
> GNU/Linux 8.0 (jessie): Booting servers
> <W>2015-04-13 09:25:19.602 1 => Server listening on 0.0.0.0:64738
> <W>2015-04-13 09:25:19.690 1 => Failed to set IPV6_RECVPKTINFO for
> 0.0.0.0:64738
> <W>2015-04-13 09:25:19.719 1 => Announcing server via bonjour
> <W>2015-04-13 09:25:19.741 1 => Registration needs nonempty
> 'registername', 'registerpassword' and 'registerurl', must have an empty
> 'password' and allowed pings.
> <W>2015-04-13 09:25:19.741 Object::connect: No such slot
> MurmurDBus::userTextMessage(const User *, const TextMessage &)
Thanks for including the log output, because it helps verify the
warnings that aren't directly related to this bug.
After we get to understand the full behavior concerning host=0.0.0.0 vs
host=:: I'll need to report the results to the Ubuntu bug concerning
mumble-server startup with upstart, and discuss this issue with Mumble
upstream.
Thanks!
-- Chris
--
Chris Knadle
[email protected]
--
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]