On Mon, 2 Mar 2009, Timo Sirainen wrote:
I tried using a pristine 1.1.11 source build with a core_pattern directory that was owned by root, or by dovecot, or by the user, but I still didn't see a core there.
In my setups it core dumps to the user's home directory just fine.
Can you make any program dump core? For example:
sleep 5 & kill -SEGV %1
Yes, that dumps a core, even as this user. I had to change core_pattern back to 'core' though, using /tmp didn't work, even though I can dump the core in /tmp. Well, a core pattern of '/tmp/core.%p' does work for sleep/kill, but still not for the test user with the dovecot failure.
Could it be that dovecot uses setuid to change permissions? Application would need 'prctl(PR_SET_DUMPABLE, 1);'
Interesting. I hadn't known about this before. I'll definitely look into this and enable it if it appears to work.
Done, also improved logging:
Nope. Applied this to a pristine source. Still nothing.
I don't have time to work on this anymore. I have learned that fighting malfunctioning systems like this is a waste of time/money. Thanks for fixing the actual problem, though! I look forward to 1.1.12.
Mark