Merge branch 'v0.18.x'
This commit is contained in:
commit
92a4bf4441
6
NEWS
6
NEWS
@ -8,6 +8,12 @@ ver 0.19 (not yet released)
|
|||||||
- volume: improved software volume dithering
|
- volume: improved software volume dithering
|
||||||
* new resampler option using libsoxr
|
* new resampler option using libsoxr
|
||||||
|
|
||||||
|
ver 0.18.7 (not yet released)
|
||||||
|
* playlist
|
||||||
|
- soundcloud: fix build failure with libyajl 2.0.1
|
||||||
|
* daemon: don't initialize supplementary groups when already running
|
||||||
|
as the configured user
|
||||||
|
|
||||||
ver 0.18.6 (2013/12/24)
|
ver 0.18.6 (2013/12/24)
|
||||||
* input
|
* input
|
||||||
- cdio_paranoia: support libcdio-paranoia 0.90
|
- cdio_paranoia: support libcdio-paranoia 0.90
|
||||||
|
@ -852,7 +852,7 @@ dnl --------------------------------- Soundcloud ------------------------------
|
|||||||
if test x$enable_soundcloud != xno; then
|
if test x$enable_soundcloud != xno; then
|
||||||
PKG_CHECK_MODULES([YAJL], [yajl >= 2.0],
|
PKG_CHECK_MODULES([YAJL], [yajl >= 2.0],
|
||||||
[found_soundcloud=yes],
|
[found_soundcloud=yes],
|
||||||
AC_CHECK_LIB([yajl], [yajl_alloc],
|
AC_CHECK_LIB([yajl], [yajl_parse_complete],
|
||||||
[found_soundcloud=yes YAJL_CFLAGS=-DHAVE_YAJL1 YAJL_LIBS=-lyajl],
|
[found_soundcloud=yes YAJL_CFLAGS=-DHAVE_YAJL1 YAJL_LIBS=-lyajl],
|
||||||
[found_soundcloud=no]))
|
[found_soundcloud=no]))
|
||||||
fi
|
fi
|
||||||
|
@ -47,7 +47,7 @@ static char *user_name;
|
|||||||
static uid_t user_uid = (uid_t)-1;
|
static uid_t user_uid = (uid_t)-1;
|
||||||
|
|
||||||
/** the Unix group id which MPD runs as */
|
/** the Unix group id which MPD runs as */
|
||||||
static gid_t user_gid = (pid_t)-1;
|
static gid_t user_gid = (gid_t)-1;
|
||||||
|
|
||||||
/** the absolute path of the pidfile */
|
/** the absolute path of the pidfile */
|
||||||
static AllocatedPath pidfile = AllocatedPath::Null();
|
static AllocatedPath pidfile = AllocatedPath::Null();
|
||||||
@ -101,18 +101,21 @@ daemonize_set_user(void)
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
/* set gid */
|
/* set gid */
|
||||||
if (user_gid != (gid_t)-1 && user_gid != getgid()) {
|
if (user_gid != (gid_t)-1 && user_gid != getgid() &&
|
||||||
if (setgid(user_gid) == -1) {
|
setgid(user_gid) == -1) {
|
||||||
FormatFatalSystemError("Failed to set group %d",
|
FormatFatalSystemError("Failed to set group %d",
|
||||||
(int)user_gid);
|
(int)user_gid);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
#ifdef _BSD_SOURCE
|
#ifdef _BSD_SOURCE
|
||||||
/* init suplementary groups
|
/* init supplementary groups
|
||||||
* (must be done before we change our uid)
|
* (must be done before we change our uid)
|
||||||
*/
|
*/
|
||||||
if (!had_group && initgroups(user_name, user_gid) == -1) {
|
if (!had_group &&
|
||||||
|
/* no need to set the new user's supplementary groups if
|
||||||
|
we are already this user */
|
||||||
|
user_uid != getuid() &&
|
||||||
|
initgroups(user_name, user_gid) == -1) {
|
||||||
FormatFatalSystemError("Failed to set supplementary groups "
|
FormatFatalSystemError("Failed to set supplementary groups "
|
||||||
"of user \"%s\"",
|
"of user \"%s\"",
|
||||||
user_name);
|
user_name);
|
||||||
|
Loading…
Reference in New Issue
Block a user