On Sat, Jul 22, 2006, Paul J Stevens <[EMAIL PROTECTED]> said:

> Aaron Stone wrote:
>> On Fri, Jul 21, 2006, Paul J Stevens <[EMAIL PROTECTED]> said:
>> 
>>> Aaron Stone wrote:
>>>> On Fri, 2006-07-21 at 16:59 +0200, Paul J Stevens wrote:
>>>>> I'm sorry Aaron, but I'm rejecting your patch. It starts breaking stuff
>>>>> (sig11) all over the place, I don't have time to fix them all, and I
>>>>> don't want to leave the tree in a non-functional state.  I'm leaving the
>>>>> country next week, and I would like to get 2.1.7 out before then.
>>>> Bah, crap. I'll see about un-segfaulting in the next 24 hours.
>> 
>> Paul, I don't know what segfaults you're seeing, but I'm not seeing them.
>> Please point me in the direction of the problems you're getting so that I
>> can fix them!
> 
> static build, --with-mysql --with-auth-ldap --with-sieve
> using libsieve-2.1.11
> 
> ==9317== Process terminating with default action of signal 11 (SIGSEGV)
> ==9317==  Access not within mapped region at address 0xDEA44
> ==9317==    at 0x419C0F9: vasnprintf (in /usr/lib/libsieve.so.1.0.5)
> ==9317==    by 0x419B662: vasprintf (in /usr/lib/libsieve.so.1.0.5)
> ==9317==    by 0x42E579A: g_vasprintf (in /usr/lib/libglib-2.0.so.0.1000.2)
> ==9317==    by 0x42D8673: (within /usr/lib/libglib-2.0.so.0.1000.2)
> ==9317==    by 0x42D86C1: g_string_printf (in
> /usr/lib/libglib-2.0.so.0.1000.2)
> ==9317==    by 0x8050A95: _header_cache (dbmail-message.c:947)
> ==9317==    by 0x42DC63B: g_tree_foreach (in
> /usr/lib/libglib-2.0.so.0.1000.2)
> ==9317==    by 0x805072B: dbmail_message_headers_cache
> (dbmail-message.c:857)
> ==9317==    by 0x805043F: dbmail_message_store (dbmail-message.c:778)
> ==9317==    by 0x8063427: insert_messages (pipe.c:581)
> ==9317==    by 0x804C6A9: test_insert_messages (check_dbmail_deliver.c:109)
> ==9317==    by 0x806DB81: srunner_run_all (in
> /home/paul/git/dbmail-2.1/check_dbmail_deliver)
> ==9317==
> 
> It took me a while to realize that the vasnprintf call are being handled
> by libsieve. Now why are you providing gnu libc functions in sieve?

It's from gnulib, so that I get a consistent (read: doesn't crash on null
pointers) vasnprintf for debugging purposes. I'm surprised that the
libraries linked like this; the glibc symbol for vasnprintf must be weaker
than the libSieve symbol. I'll push out a fixed libSieve tomorrow that
moves this into the libsieve_ prefixed namespace.

Aaron

Reply via email to