Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mumble-voip/mumble.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBenjamin Jemlich <pcgod@users.sourceforge.net>2012-01-15 01:41:33 +0400
committerBenjamin Jemlich <pcgod@users.sourceforge.net>2012-01-15 01:48:45 +0400
commit7300338ca09025b499a88ae684298ccc43dad429 (patch)
treeb32f0e6c378c897f73939dda7991de3c46dd0880 /src/murmur/UnixMurmur.cpp
parent62899319943c56c0fccf62365829f8b7d193fb33 (diff)
Try to read system-wide ini files first if running as root
Diffstat (limited to 'src/murmur/UnixMurmur.cpp')
-rw-r--r--src/murmur/UnixMurmur.cpp26
1 files changed, 26 insertions, 0 deletions
diff --git a/src/murmur/UnixMurmur.cpp b/src/murmur/UnixMurmur.cpp
index adc24f308..799f0cce8 100644
--- a/src/murmur/UnixMurmur.cpp
+++ b/src/murmur/UnixMurmur.cpp
@@ -320,3 +320,29 @@ void UnixMurmur::finalcap() {
cap_free(c);
#endif
}
+
+const QString UnixMurmur::trySystemIniFiles(const QString& fname) {
+ QString file = fname;
+ if (!file.isEmpty())
+ return file;
+#if defined(Q_OS_LINUX)
+ if (!bRoot)
+ return file;
+
+ QStringList inipaths;
+
+ inipaths << QLatin1String("/usr/local/etc/mumble-server.ini");
+ inipaths << QLatin1String("/usr/local/etc/murmur.ini");
+ inipaths << QLatin1String("/etc/mumble-server.ini");
+ inipaths << QLatin1String("/etc/murmur.ini");
+
+ foreach(const QString &f, inipaths) {
+ QFileInfo fi(f);
+ if (fi.exists() && fi.isReadable()) {
+ file = fi.absoluteFilePath();
+ break;
+ }
+ }
+#endif
+ return file;
+}