Date: 2005-05-03 09:37:00 -0400
Subject: Re: Problem compiling libsnert & milter-sender on SuSE 9.3 (db related)
More information..: http://www.milter.info/#Support
>From: firstname.lastname@example.org [mailto:email@example.com] On
>Behalf Of Anthony Howe
>This is because the 4.3.27 db.h was found instead of the 4.2 db.h. The
>source does not account for future versions. You need to change in
>every file that #defines DBTXN:
Ok, I changed smdb.h and Cache.h, but the changes have the same effect as my temporary fix
(define DBTXN (DB_TXN *) 0,), so I had the same segfault.
>You linked with 4.2, but I bet your default /usr/include/db.h is for 4.3
Idd, which triggered me to the solution. The default db4 on SuSE 9.3 is idd 4.3. The db.h
for 4.2 is installed in /usr/include/db42/db.h. The file /usr/include/db.h only includes
<db4/db.h>, which is the 4.3 version.
So, even with your and my fixes, the DBTXN is defined properly and libsnert and
milter-sender compiles just fine, but milter-sender still segfaults.
It turns out that the 4.3 header is used, but with 4.2 library. I therefore made some
changes to the configure scripts (see attachments) to include 4.3 in the search. It now
compiles fine and no more segfaults! Milter-sender now syslogs:
milter-sender: Sleepycat Software: Berkeley DB 4.3.27: (March 19, 2005)
So, it now uses the proper library /and/ header. I included two diffs, which I made
against the original .tgz files of libsnert-1.40 and milter-sender-0.62. If someone has
the same problem, before libsnert 1.41 is released, these two patches should fix the
problem and they can find them in the mailinglist archive.
>Please note, my milters are NOT open source, they're free and come with
>source, but I guard copyright and distribution rights. I suggest you
>look at the license, its not GPL, BSD, Mozilla, Apache, or anything like
Ok, my bad. I regard all software that is free (as in beer) and comes with source as Open
Source, regardless of the copyright/distribution rights. :-)
Anyway, kudos for this excellent piece of software!
Thanks for the fast response.
BTW: the reason I wanted to compile it on SuSE 9.3 (while having a working binary compiled
under SuSE 9.2), is that I made some additions to the HELO checks. I do not accept HELOs
which are identical to a domain for which mail is received. At the moment this is a
statement for each domain in milter-sender.c. This could better be put into a .db file,
but I have no experience doing that, so changing the code directly and compile it is
>Anthony C Howe +33 6 11 89 73 78
Copyright 2009, 2012 by SnertSoft. All rights reserved.