Mailinglist Archive: opensuse-commit (1792 mails)
| < Previous | Next > |
commit mumble for openSUSE:Factory
- From: root@xxxxxxxxxxxxxxx (h_root)
- Date: Mon, 21 Feb 2011 18:27:54 +0100
- Message-id: <20110221172754.38DBA202A8@hilbert.suse.de>
Hello community,
here is the log from the commit of package mumble for openSUSE:Factory
checked in at Mon Feb 21 18:27:54 CET 2011.
--------
--- mumble/mumble.changes 2011-01-27 09:36:39.000000000 +0100
+++ mumble/mumble.changes 2011-02-21 15:46:08.000000000 +0100
@@ -1,0 +2,15 @@
+Mon Feb 21 13:19:50 UTC 2011 - lnussel@xxxxxxx
+
+- avoid duplicate libcelt libs
+
+-------------------------------------------------------------------
+Mon Feb 21 10:07:20 UTC 2011 - lnussel@xxxxxxx
+
+- new version 1.2.3
+ - Improved Voice Activity Detection
+ - Customizable Overlay with FPS counter
+ - Recording
+ - Priority speaker
+ - Updated CELT Codec to version 0.11.0
+
+-------------------------------------------------------------------
@@ -93 +108 @@
-Tue Feb 24 14:22:24 CET 2009 - lnussel@xxxxxxxxxxxxxx
+Tue Feb 24 14:22:24 CET 2009 - lnussel@xxxxxxx
calling whatdependson for head-i586
Old:
----
0003-fix-long-username-query.patch
0004-fix-username-validation.patch
celt-0.10.0.tar.gz
celt-0.7.0.tar.gz
celt-0.9.0.tar.gz
mumble-1.2.1-wizardpageorder.diff
mumble-1.2.2.tar.gz
mumble-1.2.2.tar.gz.sig
mumble-unstable-1.2.2.tar.bz2
New:
----
0001-fix-user-switching.diff
mumble-1.2.3.tar.gz
mumble-1.2.3.tar.gz.sig
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ mumble.spec ++++++
--- /var/tmp/diff_new_pack.EzIBsk/_old 2011-02-21 18:24:09.000000000 +0100
+++ /var/tmp/diff_new_pack.EzIBsk/_new 2011-02-21 18:24:09.000000000 +0100
@@ -36,6 +36,10 @@
%bcond_without mumble11x
%bcond_without bonjour
+# mumble must be able to talk to other clients which may use
+# differnt versions of celt. Since each celt release is
+# incompatible to each other mumble bundles some specific
+# versions.
%bcond_with system_celt
%bcond_without system_speex
@@ -82,21 +86,17 @@
%if %{with pulseaudio}
BuildRequires: pulseaudio-devel
%endif
-Version: 1.2.2%{?snapshot:_%snapshot}
+Version: 1.2.3%{?snapshot:_%snapshot}
Release: 1
License: BSD3c
Group: Productivity/Multimedia/Sound/Utilities
-%if 0%{?snapshot:1}
-Source: mumble-unstable-%{version}.tar.bz2
-%else
+%if 0%{!?snapshot:1}
Source:
http://downloads.sourceforge.net/project/mumble/Mumble/%{version}/mumble-%{version}.tar.gz
Source1:
http://downloads.sourceforge.net/project/mumble/Mumble/%{version}/mumble-%{version}.tar.gz.sig
%endif
Source2: mumble-server.init
-Patch0: mumble-1.2.1-wizardpageorder.diff
-Patch1: 0003-fix-long-username-query.patch
-Patch2: 0004-fix-username-validation.patch
-Patch3: 0001-fix-build-error-with-capability.h.diff
+Patch0: 0001-fix-build-error-with-capability.h.diff
+Patch1: 0001-fix-user-switching.diff
Patch50: mumble-1.2.2-buildcompare.diff
# hack, no clue about glx so no idea to fix this properly
Patch99: mumble-1.1.4-sle10glx.diff
@@ -132,12 +132,8 @@
Conflicts: mumble < %version
Provides: mumble = %version
#
-%if !%{with system_celt}
-Source50: http://downloads.xiph.org/releases/celt/celt-0.7.0.tar.gz
-Source51: http://downloads.xiph.org/releases/celt/celt-0.9.0.tar.gz
-Source52: http://downloads.xiph.org/releases/celt/celt-0.10.0.tar.gz
-%endif
%endif
+#
%description
Low-latency, high-quality voice communication for gamers. Includes game
@@ -166,22 +162,16 @@
%setup -q
%patch0 -p1
%patch1 -p1
-%patch2 -p1
-%patch3 -p1
#
%patch50 -p1
%if 0%{?suse_version} && 0%{?suse_version} < 1020
%patch99 -p1
%endif
-%if %{with system_celt}
-# XXX celt 0.6 vs celt 0.7
-#sed -i -e 's/celt_int32/celt_int32_t/g' src/mumble/Audio.*
-#sed -i -e 's/celt_int16/celt_int16_t/g' src/mumble/Audio.*
-%else
+%if !%{with system_celt}
%if 0%{?snapshot:1}
tar -xzf %SOURCE50
-sed -i -e 's/celt-0.6.1-build//;s/celt-0.6.2-build//' main.pro
-for v in 0.7.0 0.9.0 0.10.0; do
+tar -xzf %SOURCE51
+for v in 0.7.0 0.11.0; do
rmdir celt-$v-src
mv celt-$v celt-$v-src
done
@@ -223,8 +213,8 @@
# temporary hack, remove!
sed -i -e '/QMAKE_CFLAGS/s/-Woverloaded-virtual -Wold-style-cast//'
compiler.pri
qmake \
- QMAKE_CFLAGS_RELEASE="%{optflags} -Wall" \
- QMAKE_CXXFLAGS_RELEASE="%{optflags} -Wall" \
+ QMAKE_CFLAGS_RELEASE="%{optflags} -Wall -fno-strict-aliasing" \
+ QMAKE_CXXFLAGS_RELEASE="%{optflags} -Wall -fno-strict-aliasing" \
DEFINES*=NO_UPDATE_CHECK \
DEFINES*=MUMBLE_VERSION=%version \
DEFINES*=PLUGIN_PATH=%{_libdir}/mumble \
@@ -288,9 +278,6 @@
install -D -m 0755 release/mumble %{buildroot}%{_bindir}/mumble
install -d -m 0755 "%{buildroot}%{_libdir}/mumble/plugins"
install -m 0755 release/plugins/*.so "%{buildroot}%{_libdir}/mumble/plugins"
-%if !%{with system_celt}
-cp -a release/libcelt0.so.* "%{buildroot}%{_libdir}/mumble"
-%endif
install -m 755 scripts/mumble-overlay "%{buildroot}%{_bindir}/mumble-overlay"
install -d -m 0755 "%{buildroot}%{_mandir}/man1"
install -m 0644 man/*.1 "%{buildroot}%{_mandir}/man1"
@@ -305,6 +292,11 @@
install -d -m0755 "%{buildroot}%{_libdir}/mumble"
install -m0755 release/libmumble.so.*.*.* "%{buildroot}%{_libdir}/mumble"
/sbin/ldconfig -n "%{buildroot}%{_libdir}/mumble"
+# do this after ldconfig as we don't need the links
+%if !%{with system_celt}
+install -m 644 release/libcelt0.so.0.*.* "%{buildroot}%{_libdir}/mumble"
+%endif
+
#
%if %{with mumble11x}
install -D -m 0755 release/mumble11x %{buildroot}%{_bindir}/mumble11x
@@ -425,5 +417,4 @@
%endif
%config /etc/tmpfiles.d/mumble-server.conf
%endif
-
%changelog
++++++ 0001-fix-build-error-with-capability.h.diff ++++++
--- /var/tmp/diff_new_pack.EzIBsk/_old 2011-02-21 18:24:09.000000000 +0100
+++ /var/tmp/diff_new_pack.EzIBsk/_new 2011-02-21 18:24:09.000000000 +0100
@@ -1,7 +1,7 @@
-From 18b8b6d42c9e8ed2964a312a8134adb482585e03 Mon Sep 17 00:00:00 2001
+From 72d7a63286539dee07d962c8f2abf2867efa7d6a Mon Sep 17 00:00:00 2001
From: Ludwig Nussel <ludwig.nussel@xxxxxxx>
Date: Thu, 23 Dec 2010 14:03:56 +0100
-Subject: [PATCH] fix build error with capability.h
+Subject: [PATCH 1/2] fix build error with capability.h
---
src/murmur/murmur_pch.h | 1 +
++++++ 0001-fix-user-switching.diff ++++++
From 41006c79225199fb6faaed3bc0228a35e9e51514 Mon Sep 17 00:00:00 2001From: Ludwig Nussel <ludwig.nussel@xxxxxxx>
Date: Fri, 24 Dec 2010 18:20:34 +0100
Subject: [PATCH 2/2] fix user switching
- 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
---
src/murmur/Meta.cpp | 19 +++++++++++++------
src/murmur/Meta.h | 4 ++++
src/murmur/UnixMurmur.cpp | 12 ++++++++++--
src/murmur/main.cpp | 4 +++-
src/murmur/murmur_pch.h | 1 +
5 files changed, 31 insertions(+), 9 deletions(-)
diff --git a/src/murmur/Meta.cpp b/src/murmur/Meta.cpp
index 05cd03e..5efc52a 100644
--- a/src/murmur/Meta.cpp
+++ b/src/murmur/Meta.cpp
@@ -264,15 +264,22 @@ void MetaParams::read(QString fname) {
iBanTime = qsSettings->value("autobanTime", iBanTime).toInt();
#ifdef Q_OS_UNIX
- const QString uname = qsSettings->value("uname").toString();
- if (! uname.isEmpty() && (geteuid() == 0)) {
- struct passwd *pw = getpwnam(qPrintable(uname));
+ qsName = qsSettings->value("uname").toString();
+ if (geteuid() == 0) {
+ // TODO: remove this silent fallback to enforce running as
non-root
+ bool requested = true;
+ if (qsName.isEmpty()) {
+ // default server user name
+ qsName = "mumble-server";
+ requested = false;
+ }
+ struct passwd *pw = getpwnam(qPrintable(qsName));
if (pw) {
uiUid = pw->pw_uid;
uiGid = pw->pw_gid;
- }
- if (uiUid == 0) {
- qFatal("Cannot find username %s", qPrintable(uname));
+ qsHome = pw->pw_dir;
+ } else if (requested) {
+ qFatal("Cannot find username %s", qPrintable(qsName));
}
endpwent();
}
diff --git a/src/murmur/Meta.h b/src/murmur/Meta.h
index 7924640..1ec2d2b 100644
--- a/src/murmur/Meta.h
+++ b/src/murmur/Meta.h
@@ -96,7 +96,11 @@ struct MetaParams {
QMap<QString, QString> qmConfig;
+#ifdef Q_OS_UNIX
unsigned int uiUid, uiGid;
+ QString qsHome;
+ QString qsName;
+#endif
QSettings *qsSettings;
diff --git a/src/murmur/UnixMurmur.cpp b/src/murmur/UnixMurmur.cpp
index eeeb67c..773701c 100644
--- a/src/murmur/UnixMurmur.cpp
+++ b/src/murmur/UnixMurmur.cpp
@@ -231,14 +231,22 @@ void UnixMurmur::setuid() {
} else
qFatal("Couldn't switch uid/gid.");
#else
- if (setregid(Meta::mp.uiGid, Meta::mp.uiGid) != 0)
+ if (::initgroups(qPrintable(Meta::mp.qsName), Meta::mp.uiGid)
!= 0)
+ qCritical("Can't initialize supplementary groups");
+ if (::setgid(Meta::mp.uiGid) != 0)
qCritical("Failed to switch to gid %d", Meta::mp.uiGid);
- if (setresuid(Meta::mp.uiUid, Meta::mp.uiUid, 0) != 0) {
+ if (::setuid(Meta::mp.uiUid) != 0) {
qFatal("Failed to become uid %d", Meta::mp.uiUid);
} else {
qCritical("Successfully switched to uid %d",
Meta::mp.uiUid);
initialcap();
}
+ if (!Meta::mp.qsHome.isEmpty()) {
+ // QDir::homePath is broken. It only looks at $HOME
+ // instead of getpwuid() so we have to set our home
+ // ourselves
+ ::setenv("HOME", qPrintable(Meta::mp.qsHome), 1);
+ }
#endif
} else if (bRoot) {
qCritical("WARNING: You are running murmurd as root, without
setting a uname in the ini file. This might be a security risk.");
diff --git a/src/murmur/main.cpp b/src/murmur/main.cpp
index 7a11250..5a4810d 100644
--- a/src/murmur/main.cpp
+++ b/src/murmur/main.cpp
@@ -272,11 +272,13 @@ int main(int argc, char **argv) {
Meta::mp.read(inifile);
- MumbleSSL::addSystemCA();
#ifdef Q_OS_UNIX
unixhandler.setuid();
#endif
+
+ MumbleSSL::addSystemCA();
+
ServerDB db;
meta = new Meta();
diff --git a/src/murmur/murmur_pch.h b/src/murmur/murmur_pch.h
index 27c38a1..c36d5ae 100644
--- a/src/murmur/murmur_pch.h
+++ b/src/murmur/murmur_pch.h
@@ -61,6 +61,7 @@ extern "C" {
#include <sys/prctl.h>
#endif
#include <pwd.h>
+#include <grp.h>
#ifdef __FreeBSD__
#include <netinet/in_systm.h>
#endif
--
1.7.1
++++++ mumble-1.2.2.tar.gz -> mumble-1.2.3.tar.gz ++++++
++++ 143352 lines of diff (skipped)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe@xxxxxxxxxxxx
For additional commands, e-mail: opensuse-commit+help@xxxxxxxxxxxx
| < Previous | Next > |