Mercurial > dovecot > core-2.2
changeset 10863:2795a5c52d92 HEAD
Improved setgid/setuid failure's error message.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Mon, 08 Mar 2010 19:09:00 +0200 |
parents | 97216501ba6b |
children | d05561b0c257 |
files | src/lib/failures.c src/lib/mempool-alloconly.c src/lib/restrict-access.c |
diffstat | 3 files changed, 15 insertions(+), 6 deletions(-) [+] |
line wrap: on
line diff
--- a/src/lib/failures.c Mon Mar 08 18:37:45 2010 +0200 +++ b/src/lib/failures.c Mon Mar 08 19:09:00 2010 +0200 @@ -160,6 +160,7 @@ i_error("Raw backtrace: %s", backtrace); } + sleep(3600*24); if (type == LOG_TYPE_PANIC) abort(); else @@ -597,6 +598,8 @@ { if (internal_handler(type, fmt, args) < 0) failure_exit(FATAL_LOGERROR); + if (type == LOG_TYPE_ERROR) + sleep(3600*24); } void i_set_failure_internal(void)
--- a/src/lib/mempool-alloconly.c Mon Mar 08 18:37:45 2010 +0200 +++ b/src/lib/mempool-alloconly.c Mon Mar 08 19:09:00 2010 +0200 @@ -244,8 +244,8 @@ stack, so make sure everything is allocated before calling it. */ t_buffer_alloc_last_full(); - i_warning("Growing pool '%s' with: %"PRIuSIZE_T, - apool->name, size); + /*i_warning("Growing pool '%s' with: %"PRIuSIZE_T, + apool->name, size);*/ } #endif }
--- a/src/lib/restrict-access.c Mon Mar 08 18:37:45 2010 +0200 +++ b/src/lib/restrict-access.c Mon Mar 08 19:09:00 2010 +0200 @@ -70,10 +70,13 @@ } if (setgid(primary_gid) != 0) { - i_fatal("setgid(%s) failed with euid=%s, " - "gid=%s, egid=%s: %m", + i_fatal("setgid(%s) failed with " + "euid=%s, gid=%s, egid=%s: %m " + "(This binary should probably be called with " + "process group set to %s instead of %s)", get_gid_str(primary_gid), get_uid_str(geteuid()), - get_gid_str(getgid()), get_gid_str(getegid())); + get_gid_str(getgid()), get_gid_str(getegid()), + get_gid_str(primary_gid), get_uid_str(geteuid())); } return; } @@ -291,7 +294,10 @@ /* uid last */ if (set->uid != (uid_t)-1) { if (setuid(set->uid) != 0) { - i_fatal("setuid(%s) failed with euid=%s: %m", + i_fatal("setuid(%s) failed with euid=%s: %m " + "(This binary should probably be called with " + "process user set to %s instead of %s)", + get_uid_str(set->uid), get_uid_str(geteuid()), get_uid_str(set->uid), get_uid_str(geteuid())); } }