diff options
author | Simon McVittie <simon.mcvittie@collabora.co.uk> | 2007-10-09 14:06:54 +0100 |
---|---|---|
committer | Simon McVittie <simon.mcvittie@collabora.co.uk> | 2007-10-09 14:06:54 +0100 |
commit | 3212c450bbb16199e02c3470fccf593727c567e7 (patch) | |
tree | c315e83117eb63477fd1fffb7867fdab8a4928ac /dbus | |
parent | bf7c65f5218d07734bcc7be373ebc33278806824 (diff) | |
parent | 79aafc193176253454dd455a4cfc45a1a2e36c00 (diff) |
Merge branch 'master' of ssh://git.freedesktop.org/git/dbus/dbus
Diffstat (limited to 'dbus')
-rw-r--r-- | dbus/Makefile.am | 4 | ||||
-rw-r--r-- | dbus/dbus-internals.h | 2 | ||||
-rw-r--r-- | dbus/dbus-sysdeps-util-unix.c | 5 | ||||
-rw-r--r-- | dbus/dbus-sysdeps.c | 14 |
4 files changed, 19 insertions, 6 deletions
diff --git a/dbus/Makefile.am b/dbus/Makefile.am index 81f90b9b..e966a438 100644 --- a/dbus/Makefile.am +++ b/dbus/Makefile.am @@ -1,7 +1,7 @@ configdir=$(sysconfdir)/dbus-1 -INCLUDES=-I$(top_builddir) -I$(top_srcdir) $(DBUS_CLIENT_CFLAGS) -DDBUS_COMPILATION \ +INCLUDES=-I$(top_builddir) -I$(top_srcdir) $(DBUS_CLIENT_CFLAGS) @PIC_CFLAGS@ -DDBUS_COMPILATION \ -DDBUS_MACHINE_UUID_FILE=\""$(localstatedir)/lib/dbus/machine-id"\" \ -DDBUS_SYSTEM_CONFIG_FILE=\""$(configdir)/system.conf"\" \ -DDBUS_SESSION_CONFIG_FILE=\""$(configdir)/session.conf"\" @@ -173,7 +173,7 @@ noinst_LTLIBRARIES=libdbus-convenience.la libdbus_1_la_LIBADD= $(DBUS_CLIENT_LIBS) ## don't export symbols that start with "_" (we use this ## convention for internal symbols) -libdbus_1_la_LDFLAGS= -export-symbols-regex "^[^_].*" -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) -no-undefined @R_DYNAMIC_LDFLAG@ +libdbus_1_la_LDFLAGS= -export-symbols-regex "^[^_].*" -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) -no-undefined @R_DYNAMIC_LDFLAG@ @PIC_LDFLAGS@ libdbus_convenience_la_LDFLAGS=@R_DYNAMIC_LDFLAG@ diff --git a/dbus/dbus-internals.h b/dbus/dbus-internals.h index 43a46b83..3e5f989d 100644 --- a/dbus/dbus-internals.h +++ b/dbus/dbus-internals.h @@ -97,7 +97,7 @@ dbus_bool_t _dbus_is_verbose_real (void); # elif defined (HAVE_GNUC_VARARGS) # define _dbus_verbose(format...) # else -# error "This compiler does not support varargs macros and thus verbose mode can't be disabled meaningfully" +static void _dbus_verbose(const char * x,...) {;} # endif # define _dbus_verbose_reset() # define _dbus_is_verbose() FALSE diff --git a/dbus/dbus-sysdeps-util-unix.c b/dbus/dbus-sysdeps-util-unix.c index df967a38..e03e0b76 100644 --- a/dbus/dbus-sysdeps-util-unix.c +++ b/dbus/dbus-sysdeps-util-unix.c @@ -338,7 +338,7 @@ _dbus_change_to_daemon_user (const char *user, * run as ... doesn't really help. But keeps people happy. */ - if (!we_were_root) + if (we_were_root) { cap_value_t new_cap_list[] = { CAP_AUDIT_WRITE }; cap_value_t tmp_cap_list[] = { CAP_AUDIT_WRITE, CAP_SETUID, CAP_SETGID }; @@ -414,7 +414,7 @@ _dbus_change_to_daemon_user (const char *user, } #ifdef HAVE_LIBAUDIT - if (!we_were_root) + if (we_were_root) { if (cap_set_proc (new_caps)) { @@ -433,6 +433,7 @@ _dbus_change_to_daemon_user (const char *user, _dbus_strerror (errno)); return FALSE; } + audit_init(); } #endif diff --git a/dbus/dbus-sysdeps.c b/dbus/dbus-sysdeps.c index c76603a8..1a736e42 100644 --- a/dbus/dbus-sysdeps.c +++ b/dbus/dbus-sysdeps.c @@ -185,7 +185,19 @@ _dbus_getenv (const char *varname) dbus_bool_t _dbus_clearenv (void) { - return (clearenv () == 0); + dbus_bool_t rc = TRUE; + +#ifdef HAVE_CLEARENV + if (clearenv () != 0) + rc = FALSE; +#else + extern char **environ; + + if (environ != NULL) + environ[0] = NULL; +#endif + + return rc; } /* |