spamass-milt-list
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

latest spam-milter


From: Mike Tancsa
Subject: latest spam-milter
Date: Sun, 17 Nov 2002 10:16:24 -0500

Hi,
I have been playing around with the cvs version of your milter (nice little program BTW!) and so far so good. However, I noticed that it occasionally core dumps with a sig 6. I recompiled things with debugging code and found the following.

(gdb) where
#0  0x2811f4a8 in kill () from /usr/lib/libc_r.so.4
#1  0x2816f0e1 in abort () from /usr/lib/libc_r.so.4
#2  0x280bdae7 in __default_terminate () from /usr/lib/libstdc++.so.3
#3  0x280bdaf5 in __terminate () from /usr/lib/libstdc++.so.3
#4  0x280bddf7 in __sjthrow () from /usr/lib/libstdc++.so.3
#5  0x804dbc9 in mlfi_eom (ctx=0x8089000) at spamass-milter.cpp:575
#6  0x28076d4f in mi_clr_macros () from /usr/lib/libmilter.so.2
#7  0x280761c0 in mi_engine () from /usr/lib/libmilter.so.2
#8  0x28075e25 in mi_handle_session () from /usr/lib/libmilter.so.2
#9  0x28075622 in mi_thread_handle_wrapper () from /usr/lib/libmilter.so.2
#10 0x280f9100 in _thread_start () from /usr/lib/libc_r.so.4
#11 0xbfa65ffc in ?? ()
(gdb) (gdb) up
#1  0x2816f0e1 in abort () from /usr/lib/libc_r.so.4
(gdb) up
#2  0x280bdae7 in __default_terminate () from /usr/lib/libstdc++.so.3
(gdb) up
#3  0x280bdaf5 in __terminate () from /usr/lib/libstdc++.so.3
(gdb) up
#4  0x280bddf7 in __sjthrow () from /usr/lib/libstdc++.so.3
(gdb) up
#5  0x804dbc9 in mlfi_eom (ctx=0x8089000) at spamass-milter.cpp:575
575           return SMFIS_CONTINUE;
(gdb)

sfsistat
mlfi_eom(SMFICTX* ctx)
{
  SpamAssassin* assassin = static_cast<SpamAssassin*>(smfi_getpriv(ctx));

  debug(1, "mlfi_eom: enter");
  try {

    // close output pipe to signal EOF to SpamAssassin
    assassin->close_output();

    // read what the Assassin is telling us
    assassin->input();

    // It makes no sense to modify the mail if it already rated
    // Spam. Otherwise this is our chance to modify the mail
    // accordingly to what the SpamAssassin told us.
    //
    if (assassin->spam_flag().size()==0)
      assassinate(ctx, assassin);

    // now cleanup the element.
    smfi_setpriv(ctx, static_cast<void*>(0));
    delete assassin;

  } catch (string& problem)
    {
      throw_error(problem);
      smfi_setpriv(ctx, static_cast<void*>(0));
      delete assassin;
      debug(1, "mlfi_eom: exit this was causing an abort");
      return SMFIS_TEMPFAIL;
    };


is SMFIS_TEMPFAIL supposed to make the program terminate and dump core (sig 6) like that ?

Also, any chance to integrate patch 405 ?

        ---Mike
--------------------------------------------------------------------
Mike Tancsa,                                      tel +1 519 651 3400
Sentex Communications,                            address@hidden
Providing Internet since 1994                    www.sentex.net
Cambridge, Ontario Canada                         www.sentex.net/mike





reply via email to

[Prev in Thread] Current Thread [Next in Thread]