Yahoo Groups archive

Milter-greylist

Index last updated: 2026-04-28 23:32 UTC

Thread

Compiling milter-greylist 4.3.4 with DKIM ?

Compiling milter-greylist 4.3.4 with DKIM ?

2010-02-25 by Michael Mansour

Hi,

I have libdkim installed:

# rpm -ql libdkim
/usr/include/dkim.h
/usr/lib/libdkim.a
/usr/share/doc/libdkim-1.0.19
/usr/share/doc/libdkim-1.0.19/LICENSE
/usr/share/doc/libdkim-1.0.19/README

and also have dkim-milter:

# rpm -ql dkim-milter
/etc/mail/dkim-milter
/etc/mail/dkim-milter/dkim-filter.conf
/etc/mail/dkim-milter/keys
/etc/mail/dkim-milter/keys/keylist
/etc/rc.d/init.d/dkim-milter
/etc/sysconfig/dkim-milter
/usr/sbin/dkim-filter
/usr/sbin/dkim-genkey
/usr/sbin/dkim-testkey
/usr/sbin/dkim-testssp
/usr/share/doc/dkim-milter-2.8.3
/usr/share/doc/dkim-milter-2.8.3/FEATURES
/usr/share/doc/dkim-milter-2.8.3/INSTALL
/usr/share/doc/dkim-milter-2.8.3/KNOWNBUGS
/usr/share/doc/dkim-milter-2.8.3/LICENSE
/usr/share/doc/dkim-milter-2.8.3/README
/usr/share/doc/dkim-milter-2.8.3/RELEASE_NOTES
/usr/share/man/man5/dkim-filter.conf.5.gz
/usr/share/man/man8/dkim-filter.8.gz
/usr/share/man/man8/dkim-genkey.8.gz
/usr/share/man/man8/dkim-stats.8.gz
/usr/share/man/man8/dkim-testkey.8.gz
/usr/share/man/man8/dkim-testssp.8.gz
/var/run/dkim-milter
/var/run/dkim-milter/dkim-milter.sock

When I try to compiled milter-greylist with:

        --with-libdkim

I get:

checking for SPF_server_new in -lspf2... yes
checking for dkim_init in -ldkim -lsm -lcrypto... no
libdkim not found, check config.log for details
Remove --with-dkim to build without DKIM support
error: Bad exit status from /var/tmp/rpm-tmp.92732 (%build)

Any ideas what's wrong?

Thanks.

Michael.

Re: [milter-greylist] Compiling milter-greylist 4.3.4 with DKIM ?

2010-02-25 by manu@netbsd.org

Michael Mansour <mic@...> wrote:

> Any ideas what's wrong?

You need to look at config.log to see why the dkim_init test failed.
Search for dkim_init, and you'll find a compliation attempts that fails,
with an error message.

-- 
Emmanuel Dreyfus
http://hcpnet.free.fr/pubz
manu@...

Re: [milter-greylist] Compiling milter-greylist 4.3.4 with DKIM ?

2010-02-26 by Michael Mansour

Hi Emmanuel,

> Michael Mansour <mic@...> wrote:
> 
> > Any ideas what's wrong?
> 
> You need to look at config.log to see why the dkim_init test failed.
> Search for dkim_init, and you'll find a compliation attempts that 
> fails, with an error message.

I checked this but it didn't make much sense to me. What do you think?

configure:7173: checking for dkim_init in -ldkim -lsm -lcrypto
configure:7208: gcc -o conftest -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2
-fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386
-mtune=generic -fasynchronous-unwind-tables -Wall -Iyes/include -DUSE_GEOIP
-Iyes/include -Iyes/include   -Lyes/lib -Wl,--rpath=yes/lib -Lyes/lib
-Wl,--rpath=yes/lib -Lyes/lib -Wl,--rpath=yes/lib conftest.c -ldkim -lsm
-lcrypto  -lGeoIP  -lpthread -lspf2 >&5
/tmp/ccfEv56s.o: In function `main':
/usr/src/redhat/BUILD/milter-greylist-4.3.4/conftest.c:68: undefined reference
to `dkim_init'
collect2: ld returned 1 exit status
configure:7215: $? = 1
configure: failed program was:
| /* confdefs.h.  */
| #define PACKAGE_NAME "milter-greylist"
| #define PACKAGE_TARNAME "milter-greylist"
| #define PACKAGE_VERSION "4.3.4"
| #define PACKAGE_STRING "milter-greylist 4.3.4"
| #define PACKAGE_BUGREPORT "manu@..."
| #define YYTEXT_POINTER 1
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_ARPA_INET_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_NETINET_IN_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_SOCKET_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYSLOG_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_NETDB_H 1
| #define HAVE_GETOPT_H 1
| #define HAVE_SYS_CDEFS_H 1
| #define HAVE_ARPA_NAMESER_H 1
| #define HAVE_STDBOOL_H 1
| #define TIME_WITH_SYS_TIME 1
| #define HAVE_FORK 1
| #define HAVE_VFORK 1
| #define HAVE_WORKING_VFORK 1
| #define HAVE_WORKING_FORK 1
| #define HAVE_STRFTIME 1
| #define HAVE_SYS_SELECT_H 1
| #define HAVE_SYS_SOCKET_H 1
| #define SELECT_TYPE_ARG1 int
| #define SELECT_TYPE_ARG234 (fd_set *)
| #define SELECT_TYPE_ARG5 (struct timeval *)
| #define LSTAT_FOLLOWS_SLASHED_SYMLINK 1
| #define HAVE_BZERO 1
| #define HAVE_GETTIMEOFDAY 1
| #define HAVE_MALLOC 1
| #define HAVE_INET_NTOA 1
| #define HAVE_STRERROR 1
| #define HAVE_SELECT 1
| #define HAVE_SOCKET 1
| #define HAVE_INITGROUPS 1
| #define HAVE_VSYSLOG 1
| #define HAVE_SPF2 /**/
| /* end confdefs.h.  */
|
| /* Override any GCC internal prototype to avoid an error.
|    Use char because int might match the return type of a GCC
|    builtin and then its argument prototype would still apply.  */
| #ifdef __cplusplus
| extern "C"
| #endif
| char dkim_init ();
| int
| main ()
| {
| return dkim_init ();
|   ;
|   return 0;
| }
configure:7236: result: no

I can email you the full config.log file if you can make sense of it?

Thanks.

Michael.
Show quoted textHide quoted text
> -- 
> Emmanuel Dreyfus
> http://hcpnet.free.fr/pubz
> manu@...
> 
> ------------------------------------
> 
> Yahoo! Groups Links
> 
> 
>

Re: [milter-greylist] Compiling milter-greylist 4.3.4 with DKIM ?

2010-02-26 by manu@netbsd.org

Michael Mansour <mic@...> wrote:

> I checked this but it didn't make much sense to me. What do you think?
> 
> configure:7173: checking for dkim_init in -ldkim -lsm -lcrypto
> configure:7208: gcc -o conftest -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2
> -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386
> -mtune=generic -fasynchronous-unwind-tables -Wall -Iyes/include -DUSE_GEOIP
> -Iyes/include -Iyes/include   -Lyes/lib -Wl,--rpath=yes/lib -Lyes/lib
> -Wl,--rpath=yes/lib -Lyes/lib -Wl,--rpath=yes/lib conftest.c -ldkim -lsm
> -lcrypto  -lGeoIP  -lpthread -lspf2 >&5
> /tmp/ccfEv56s.o: In function `main':
> /usr/src/redhat/BUILD/milter-greylist-4.3.4/conftest.c:68: undefined reference
> to `dkim_init'


Now the question is: where is it? Please run this:

for i in /usr/lib/libdkim* ; do echo $i; nm $i|grep dkim_init ; done

-- 
Emmanuel Dreyfus
http://hcpnet.free.fr/pubz
manu@...

Re: [milter-greylist] Compiling milter-greylist 4.3.4 with DKIM ?

2010-02-26 by Michael Mansour

Hi Emmanuel,

> Michael Mansour <mic@...> wrote:
> 
> > I checked this but it didn't make much sense to me. What do you think?
> > 
> > configure:7173: checking for dkim_init in -ldkim -lsm -lcrypto
> > configure:7208: gcc -o conftest -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2
> > -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386
> > -mtune=generic -fasynchronous-unwind-tables -Wall -Iyes/include -DUSE_GEOIP
> > -Iyes/include -Iyes/include   -Lyes/lib -Wl,--rpath=yes/lib -Lyes/lib
> > -Wl,--rpath=yes/lib -Lyes/lib -Wl,--rpath=yes/lib conftest.c -ldkim -lsm
> > -lcrypto  -lGeoIP  -lpthread -lspf2 >&5
> > /tmp/ccfEv56s.o: In function `main':
> > /usr/src/redhat/BUILD/milter-greylist-4.3.4/conftest.c:68: undefined reference
> > to `dkim_init'
> 
> Now the question is: where is it? Please run this:
> 
> for i in /usr/lib/libdkim* ; do echo $i; nm $i|grep dkim_init ; done

# for i in /usr/lib/libdkim* ; do echo $i; nm $i|grep dkim_init ; done
/usr/lib/libdkim.a

Some other info:

# file /usr/lib/libdkim.a
/usr/lib/libdkim.a: current ar archive

# rpm -qf /usr/lib/libdkim.a
libdkim-1.0.19-2.el5.i386

# rpm -qil libdkim
Name        : libdkim                      Relocations: (not relocatable)
Version     : 1.0.19                            Vendor: ATrpms.net
Release     : 2.el5                         Build Date: Tue 19 Aug 2008
06:00:54 AM EST
Install Date: Fri 26 Feb 2010 12:35:12 AM EST      Build Host: junior.atrpms.net
Group       : System Environment/Libraries   Source RPM:
libdkim-1.0.19-2.el5.src.rpm
Size        : 125344                           License: Apache Software License
Signature   : DSA/SHA1, Tue 19 Aug 2008 06:00:54 AM EST, Key ID 508ce5e666534c2b
Packager    : ATrpms <http://ATrpms.net/>
URL         : http://libdkim.sourceforge.net/
Summary     : Alt-N Technologies DKIM Project
Description :
This project is a C++ library which allows incorporating DKIM into an
existing MTA or other application. It provides full support for
signing, verifying, and SSP. It is compliant with the allman-01 set of
base and ssp drafts.
/usr/include/dkim.h
/usr/lib/libdkim.a
/usr/share/doc/libdkim-1.0.19
/usr/share/doc/libdkim-1.0.19/LICENSE
/usr/share/doc/libdkim-1.0.19/README

After I installed the libdkim RPM from ATrpms.net, I ran "ldconfig" and then
tried the compile on milter-greylist.

Thanks for your assistance with this.

Michael.

Re: [milter-greylist] Compiling milter-greylist 4.3.4 with DKIM ?

2010-02-26 by manu@netbsd.org

Michael Mansour <mic@...> wrote:

> 
> # for i in /usr/lib/libdkim* ; do echo $i; nm $i|grep dkim_init ; done
> /usr/lib/libdkim.a

run this, do you have anything in it? Do you find something about
dkim_init? (eg: unexpected captalization?)
nm /usr/lib/libdkim.a
nm -D /usr/lib/libdkim.a
-- 
Emmanuel Dreyfus
http://hcpnet.free.fr/pubz
manu@...

Re: [milter-greylist] Compiling milter-greylist 4.3.4 with DKIM ?

2010-02-26 by Michael Mansour

Hi Emmanuel,

> Michael Mansour <mic@...> wrote:
> 
> > 
> > # for i in /usr/lib/libdkim* ; do echo $i; nm $i|grep dkim_init ; done
> > /usr/lib/libdkim.a
> 
> run this, do you have anything in it? Do you find something about
> dkim_init? (eg: unexpected captalization?)
> nm /usr/lib/libdkim.a

# nm /usr/lib/libdkim.a

dkim.o:
00000000 r DKIMErrorStrings
00000050 T DKIMGetErrorString
00000270 T DKIMSignFree
00000300 T DKIMSignGetSig
000002c0 T DKIMSignGetSig2
00000350 T DKIMSignInit
000001a0 T DKIMSignProcess
00000070 T DKIMVerifyFree
000000b0 T DKIMVerifyGetDetails
000001e0 T DKIMVerifyInit
00000160 T DKIMVerifyProcess
00000130 T DKIMVerifyResults
00000040 T DKIMVersion
         U _Unwind_Resume
00000000 t _Z11InitContextP13DKIMContext_tbPv
00000020 t _Z15ValidateContextP13DKIMContext_tb
         U _ZN11CDKIMVerify10GetDetailsEPiPP19DKIMVerifyDetails_t
         U _ZN11CDKIMVerify10GetResultsEv
         U _ZN11CDKIMVerify4InitEP19DKIMVerifyOptions_t
         U _ZN11CDKIMVerifyC1Ev
         U _ZN11CDKIMVerifyD1Ev
         U _ZN9CDKIMBase7ProcessEPcib
         U _ZN9CDKIMSign4InitEP17DKIMSignOptions_t
         U _ZN9CDKIMSign6GetSigEPcS0_i
         U _ZN9CDKIMSign7GetSig2EPcPS0_
         U _ZN9CDKIMSignC1Ev
         U _ZN9CDKIMSignD1Ev
         U _ZdlPv
         U _Znwj
         U __gxx_personality_v0
         U strcpy

dns.o:
00000000 T _Z10_DNSGetTXTPKcPci
000002c0 T _Z9DNSGetTXTPKcPci
         U __dn_expand
         U __gxx_personality_v0
         U __h_errno_location
         U __res_query
         U __stack_chk_fail
         U memcpy
         U strlen

dkimbase.o:
         U _Unwind_Resume
00000070 T _ZN9CDKIMBase10RemoveSWSPEPc
00000030 T _ZN9CDKIMBase10RemoveSWSPEPcRi
000002d0 T _ZN9CDKIMBase10RemoveSWSPERSs
00000020 T _ZN9CDKIMBase11ProcessBodyEPcib
000008a0 T _ZN9CDKIMBase11RelaxHeaderERKSs
00000230 T _ZN9CDKIMBase12CompressSWSPEPcRi
00000760 T _ZN9CDKIMBase12CompressSWSPERSs
00000610 T _ZN9CDKIMBase12ProcessFinalEv
00000010 T _ZN9CDKIMBase14ProcessHeadersEv
000000a0 T _ZN9CDKIMBase4FreeEPc
00000000 T _ZN9CDKIMBase4InitEv
000000c0 T _ZN9CDKIMBase5AllocERPci
00000390 T _ZN9CDKIMBase7ProcessEPcib
000000e0 T _ZN9CDKIMBase7ReAllocERPcRii
000001d0 T _ZN9CDKIMBaseC1Ev
00000170 T _ZN9CDKIMBaseC2Ev
00000680 T _ZN9CDKIMBaseD1Ev
000006f0 T _ZN9CDKIMBaseD2Ev
         U _ZN9__gnu_cxx18__exchange_and_addEPVii
         U _ZNKSs4findEcj
         U _ZNSs12_M_leak_hardEv
         U _ZNSs4_Rep10_M_destroyERKSaIcE
         U _ZNSs4_Rep20_S_empty_rep_storageE
         U _ZNSs6appendEPKcj
         U _ZNSs9_M_mutateEjjj
         U _ZNSsC1EPKcjRKSaIcE
         U _ZNSsC1ERKSs
00000000 W _ZNSt10_List_baseISsSaISsEE8_M_clearEv
         U _ZNSt15_List_node_base4hookEPS_
00000000 W
_ZSt14remove_copy_ifIN9__gnu_cxx17__normal_iteratorIPcSsEES3_6isswspET0_T_S6_S5_T1_
00000000 W _ZSt14remove_copy_ifIPcS0_6isswspET0_T_S3_S2_T1_
         U _ZSt20__throw_out_of_rangePKc
00000000 W
_ZSt9__find_ifIN9__gnu_cxx17__normal_iteratorIPcSsEE6isswspET_S5_S5_T0_St26random_access_iterator_tag
00000000 W _ZSt9__find_ifIPc6isswspET_S2_S2_T0_St26random_access_iterator_tag
00000000 W _ZSt9remove_ifIN9__gnu_cxx17__normal_iteratorIPcSsEE6isswspET_S5_S5_T0_
00000000 W _ZSt9remove_ifIPc6isswspET_S2_S2_T0_
00000000 V _ZTI9CDKIMBase
00000000 V _ZTS9CDKIMBase
00000000 V _ZTV9CDKIMBase
         U _ZTVN10__cxxabiv117__class_type_infoE
         U _ZdaPv
         U _ZdlPv
         U _Znaj
         U _Znwj
         U __cxa_begin_catch
         U __cxa_end_catch
         U __cxa_rethrow
         U __gxx_personality_v0
         U memcpy
         U strlen

dkimsign.o:
         U BIO_ctrl
         U BIO_f_base64
         U BIO_free
         U BIO_free_all
         U BIO_new
         U BIO_new_mem_buf
         U BIO_push
         U BIO_read
         U BIO_s_mem
         U BIO_write
         U CRYPTO_free
         U CRYPTO_malloc
         U EVP_DigestFinal
         U EVP_DigestInit
         U EVP_DigestUpdate
         U EVP_MD_CTX_cleanup
         U EVP_PKEY_free
         U EVP_PKEY_size
         U EVP_SignFinal
         U EVP_sha1
         U EVP_sha256
         U PEM_read_bio_PrivateKey
         U _Unwind_Resume
00000000 T _Z30ConvertHeaderToQuotedPrintablePKcPc
         U _ZN9CDKIMBase10RemoveSWSPEPcRi
         U _ZN9CDKIMBase10RemoveSWSPERSs
         U _ZN9CDKIMBase11RelaxHeaderERKSs
         U _ZN9CDKIMBase12CompressSWSPEPcRi
         U _ZN9CDKIMBase12ProcessFinalEv
         U _ZN9CDKIMBase4InitEv
         U _ZN9CDKIMBaseC2Ev
         U _ZN9CDKIMBaseD2Ev
00001f90 T _ZN9CDKIMSign11AddTagToSigEPcRKSscb
000020f0 T _ZN9CDKIMSign11AddTagToSigEPcm
00000180 T _ZN9CDKIMSign11ProcessBodyEPcib
000003b0 T _ZN9CDKIMSign11SignThisTagERKSs
00003a30 T _ZN9CDKIMSign13ProcessHeaderERKSs
00004130 T _ZN9CDKIMSign14ProcessHeadersEv
00003cb0 T _ZN9CDKIMSign15GetHeaderParamsERKSs
00000630 T _ZN9CDKIMSign16AddInterTagSpaceEi
00001af0 T _ZN9CDKIMSign16IsRequiredHeaderERKSs
000033a0 T _ZN9CDKIMSign16ParseFromAddressEv
00002200 T _ZN9CDKIMSign18ConstructSignatureEPcbb
00001c90 T _ZN9CDKIMSign19AddFoldedValueToSigERKSsc
00003590 T _ZN9CDKIMSign19AssembleReturnedSigEPc
00000090 T _ZN9CDKIMSign4HashEPKcibb
00000470 T _ZN9CDKIMSign4InitEP17DKIMSignOptions_t
000039c0 T _ZN9CDKIMSign6GetSigEPcS0_i
00003970 T _ZN9CDKIMSign7GetSig2EPcPS0_
00000410 T _ZN9CDKIMSign7InitSigEv
00000b10 T _ZN9CDKIMSignC1Ev
000006b0 T _ZN9CDKIMSignC2Ev
00000f70 T _ZN9CDKIMSignD1Ev
00001530 T _ZN9CDKIMSignD2Ev
         U _ZN9__gnu_cxx18__exchange_and_addEPVii
         U _ZNKSs4findEcj
         U _ZNKSs5rfindEcj
         U _ZNSs12_M_leak_hardEv
         U _ZNSs4_Rep10_M_destroyERKSaIcE
         U _ZNSs4_Rep20_S_empty_rep_storageE
         U _ZNSs6appendEPKcj
         U _ZNSs6appendERKSs
         U _ZNSs6assignEPKcj
         U _ZNSs6assignERKSs
         U _ZNSs7reserveEj
         U _ZNSs9_M_mutateEjjj
         U _ZNSsC1EPKcRKSaIcE
         U _ZNSsC1ERKSs
         U _ZNSsC1ERKSsjj
00000000 W
_ZNSt8_Rb_treeISsSt4pairIKSsSt16reverse_iteratorISt14_List_iteratorISsEEESt10_Select1stIS6_ESt4lessISsESaIS6_EE11lower_boundERS1_
00000000 W
_ZNSt8_Rb_treeISsSt4pairIKSsSt16reverse_iteratorISt14_List_iteratorISsEEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13insert_uniqueERKS6_
00000000 W
_ZNSt8_Rb_treeISsSt4pairIKSsSt16reverse_iteratorISt14_List_iteratorISsEEESt10_Select1stIS6_ESt4lessISsESaIS6_EE13insert_uniqueESt17_Rb_tree_iteratorIS6_ERKS6_
00000000 W
_ZNSt8_Rb_treeISsSt4pairIKSsSt16reverse_iteratorISt14_List_iteratorISsEEESt10_Select1stIS6_ESt4lessISsESaIS6_EE4findERS1_
00000000 W
_ZNSt8_Rb_treeISsSt4pairIKSsSt16reverse_iteratorISt14_List_iteratorISsEEESt10_Select1stIS6_ESt4lessISsESaIS6_EE8_M_eraseEPSt13_Rb_tree_nodeIS6_E
00000000 W
_ZNSt8_Rb_treeISsSt4pairIKSsSt16reverse_iteratorISt14_List_iteratorISsEEESt10_Select1stIS6_ESt4lessISsESaIS6_EE9_M_insertEPSt18_Rb_tree_node_baseSE_RKS6_
         U _ZSt18_Rb_tree_decrementPSt18_Rb_tree_node_base
         U _ZSt18_Rb_tree_incrementPSt18_Rb_tree_node_base
         U _ZSt20__throw_out_of_rangePKc
         U _ZSt29_Rb_tree_insert_and_rebalancebPSt18_Rb_tree_node_baseS0_RS_
         U _ZTI9CDKIMBase
00000000 V _ZTI9CDKIMSign
00000000 V _ZTS9CDKIMSign
00000000 V _ZTV9CDKIMSign
         U _ZTVN10__cxxabiv120__si_class_type_infoE
00000000 r _ZZ30ConvertHeaderToQuotedPrintablePKcPcE8hexchars
         U _ZdaPv
         U _ZdlPv
         U _Znaj
         U _Znwj
         U __cxa_begin_catch
         U __cxa_end_catch
         U __cxa_rethrow
         U __gxx_personality_v0
         U __stack_chk_fail
         U sprintf
         U strcasecmp
         U strcpy
         U strlen
         U strncasecmp
         U time

dkimverify.o:
         U EVP_DigestFinal
         U EVP_DigestInit
         U EVP_DigestUpdate
         U EVP_MD_CTX_cleanup
         U EVP_MD_CTX_init
         U EVP_PKEY_free
         U EVP_VerifyFinal
         U EVP_sha1
         U EVP_sha256
         U _Unwind_Resume
00000000 T _Z12DecodeBase64Pc
00000050 T _Z13ParseUnsignedPKcPj
00000240 T _Z13WildcardMatchPKcS0_
00001ca0 T _Z14ParseAddressesSsRSt6vectorISsSaISsEE
000003f0 T _Z17ParseTagValueListPcPPKcPS_
00000310 T _Z21DecodeQuotedPrintablePc
00000180 T _Z5tohexc
         U _Z9DNSGetTXTPKcPci
000007e0 T _ZN11CDKIMVerify10GetDetailsEPiPP19DKIMVerifyDetails_t
00003b40 T _ZN11CDKIMVerify10GetResultsEv
00001440 T _ZN11CDKIMVerify11GetSelectorERKSsS1_
000005e0 T _ZN11CDKIMVerify11ProcessBodyEPcib
000033e0 T _ZN11CDKIMVerify14ProcessHeadersEv
00001f80 T _ZN11CDKIMVerify18ParseDKIMSignatureERKSsR13SignatureInfo
000001e0 T _ZN11CDKIMVerify4InitEP19DKIMVerifyOptions_t
00000bc0 T _ZN11CDKIMVerify6GetSSPERKSsRiRb
00002d80 T _ZN11CDKIMVerifyC1Ev
00002fa0 T _ZN11CDKIMVerifyC2Ev
00002e00 T _ZN11CDKIMVerifyD1Ev
00002ed0 T _ZN11CDKIMVerifyD2Ev
00000880 T _ZN12SelectorInfo5ParseEPc
00001390 T _ZN12SelectorInfoC1ERKSsS1_
00001830 T _ZN12SelectorInfoC2ERKSsS1_
00001070 T _ZN12SelectorInfoD1Ev
00001200 T _ZN12SelectorInfoD2Ev
000000b0 T _ZN13SignatureInfo4HashEPKcjb
00000000 W _ZN13SignatureInfoC1ERKS_
00003020 T _ZN13SignatureInfoC1Eb
000018e0 T _ZN13SignatureInfoC2Eb
000027f0 T _ZN13SignatureInfoD1Ev
000046e0 T _ZN13SignatureInfoD2Ev
         U _ZN9CDKIMBase10RemoveSWSPEPc
         U _ZN9CDKIMBase10RemoveSWSPEPcRi
         U _ZN9CDKIMBase10RemoveSWSPERSs
         U _ZN9CDKIMBase11RelaxHeaderERKSs
         U _ZN9CDKIMBase12CompressSWSPEPcRi
         U _ZN9CDKIMBase12ProcessFinalEv
         U _ZN9CDKIMBase4InitEv
         U _ZN9CDKIMBaseC2Ev
         U _ZN9CDKIMBaseD2Ev
         U _ZN9__gnu_cxx18__exchange_and_addEPVii
         U _ZNKSs4findEcj
         U _ZNSs4_Rep10_M_destroyERKSaIcE
         U _ZNSs4_Rep20_S_empty_rep_storageE
         U _ZNSs6appendEPKcj
         U _ZNSs6appendERKSs
         U _ZNSs6assignEPKcj
         U _ZNSs6assignERKSs
         U _ZNSs7replaceEjjPKcj
         U _ZNSs9_M_mutateEjjj
         U _ZNSsC1EPKcRKSaIcE
         U _ZNSsC1ERKSs
         U _ZNSsC1ERKSsjj
00000000 W _ZNSt10_List_baseI12SelectorInfoSaIS0_EE8_M_clearEv
00000000 W _ZNSt10_List_baseI13SignatureInfoSaIS0_EE8_M_clearEv
00000000 W _ZNSt10_List_baseISsSaISsEE8_M_clearEv
         U _ZNSt15_List_node_base4hookEPS_
00000000 W
_ZNSt6vectorI19DKIMVerifyDetails_tSaIS0_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS0_S2_EERKS0_
00000000 W
_ZNSt6vectorISsSaISsEE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPSsS1_EERKSs
00000000 W
_ZNSt6vectorISt16reverse_iteratorISt14_List_iteratorISsEESaIS3_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_
         U _ZSt17__throw_bad_allocv
         U _ZSt20__throw_length_errorPKc
         U _ZSt20__throw_out_of_rangePKc
00000000 W
_ZSt6__findIN9__gnu_cxx17__normal_iteratorIPSt16reverse_iteratorISt14_List_iteratorISsEESt6vectorIS5_SaIS5_EEEES5_ET_SB_SB_RKT0_St26random_access_iterator_tag
00000000 V _ZTI11CDKIMVerify
         U _ZTI9CDKIMBase
00000000 V _ZTS11CDKIMVerify
00000000 V _ZTV11CDKIMVerify
         U _ZTVN10__cxxabiv120__si_class_type_infoE
00000020 r _ZZ12DecodeBase64PcE12base64_table
00000120 r _ZZ5tohexcE19__PRETTY_FUNCTION__
00000000 r _ZZN11CDKIMVerify10GetResultsEvE19__PRETTY_FUNCTION__
00000098 d _ZZN11CDKIMVerify10GetResultsEvE4tags
00000060 d _ZZN11CDKIMVerify18ParseDKIMSignatureERKSsR13SignatureInfoE4tags
00000000 d _ZZN11CDKIMVerify6GetSSPERKSsRiRbE4tags
00000020 d _ZZN12SelectorInfo5ParseEPcE4tags
         U _ZdlPv
         U _Znwj
         U __assert_fail
         U __cxa_begin_catch
         U __cxa_end_catch
         U __cxa_rethrow
         U __gxx_personality_v0
         U __stack_chk_fail
         U d2i_PUBKEY
         U isalnum
         U isalpha
         U isxdigit
         U strcasecmp
         U strchr
         U strcmp
         U strlen
         U strncasecmp
         U strncmp
         U strtok
         U time

I done some grep's on that output and couldn't find any matches for
"unexpected" or "capitalization".

For:

> nm -D /usr/lib/libdkim.a

# nm -D /usr/lib/libdkim.a

dkim.o:
nm: dkim.o: No symbols

?

Michael.

Re: [milter-greylist] Compiling milter-greylist 4.3.4 with DKIM ?

2010-02-26 by manu@netbsd.org

Michael Mansour <mic@...> wrote:

> # nm /usr/lib/libdkim.a

The closest thing is DKIMSignInit/DKIMVerifyInit. What about in the
header files? Perhaps dkim_init is supposed to be a macro?

-- 
Emmanuel Dreyfus
http://hcpnet.free.fr/pubz
manu@...

Re: [milter-greylist] Compiling milter-greylist 4.3.4 with DKIM ?

2010-02-26 by Michael Mansour

Hi Emmanuel,

> Michael Mansour <mic@...> wrote:
> 
> > # nm /usr/lib/libdkim.a
> 
> The closest thing is DKIMSignInit/DKIMVerifyInit. What about in the
> header files? Perhaps dkim_init is supposed to be a macro?

The dkim.h that comes with the libdkim 1.0.19 RPM has this:

# cat /usr/include/dkim.h
/*****************************************************************************
*  Copyright 2005 Alt-N Technologies, Ltd.
*
*  Licensed under the Apache License, Version 2.0 (the "License");
*  you may not use this file except in compliance with the License.
*  You may obtain a copy of the License at
*
*      http://www.apache.org/licenses/LICENSE-2.0
*
*  This code incorporates intellectual property owned by Yahoo! and licensed
*  pursuant to the Yahoo! DomainKeys Patent License Agreement.
*
*  Unless required by applicable law or agreed to in writing, software
*  distributed under the License is distributed on an "AS IS" BASIS,
*  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
*  See the License for the specific language governing permissions and
*  limitations under the License.
*
*****************************************************************************/

#ifdef WIN32
#define DKIM_CALL       WINAPI
#else
#define DKIM_CALL
#define MAKELONG(a,b) ((long)(((unsigned)(a) & 0xffff) | (((unsigned)(b) &
0xffff) << 16)))
#endif


#ifdef __cplusplus
extern "C" {
#endif

// DKIM Body hash versions
#define DKIM_BODYHASH_ALLMAN_1  1
#define DKIM_BODYHASH_IETF_1    2
#define DKIM_BODYHASH_BOTH              DKIM_BODYHASH_ALLMAN_1 |
DKIM_BODYHASH_IETF_1

// DKIM hash algorithms
#define DKIM_HASH_SHA1                  1
#define DKIM_HASH_SHA256                2
#define DKIM_HASH_SHA1_AND_256  DKIM_HASH_SHA1 | DKIM_HASH_SHA256

// DKIM canonicalization methods
#define DKIM_CANON_SIMPLE               1
#define DKIM_CANON_NOWSP                2
#define DKIM_CANON_RELAXED              3

#define DKIM_SIGN_SIMPLE                       
MAKELONG(DKIM_CANON_SIMPLE,DKIM_CANON_SIMPLE)
#define DKIM_SIGN_SIMPLE_RELAXED       
MAKELONG(DKIM_CANON_RELAXED,DKIM_CANON_SIMPLE)
#define DKIM_SIGN_RELAXED                      
MAKELONG(DKIM_CANON_RELAXED,DKIM_CANON_RELAXED)
#define DKIM_SIGN_RELAXED_SIMPLE       
MAKELONG(DKIM_CANON_SIMPLE,DKIM_CANON_RELAXED)

// DKIM Error codes
#define DKIM_SUCCESS                    0       // operation successful
#define DKIM_OUT_OF_MEMORY              1       // memory allocation failed
#define DKIM_INVALID_CONTEXT    2       // DKIMContext structure invalid for
this operation
#define DKIM_NO_SENDER                  3       // Could not find From: or
Sender: header in message
#define DKIM_BAD_PRIVATE_KEY    4       // Could not parse private key
#define DKIM_BUFFER_TOO_SMALL   5       // Buffer passed in is not large enough

// DKIM Verification Error codes
#define DKIM_FAIL                                                       -1   
          // verify error: message is suspicious
#define DKIM_BAD_SYNTAX                                         -2           
  // signature error: DKIM-Signature could not parse or has bad tags/values
#define DKIM_SIGNATURE_BAD                                      -3           
  // signature error: RSA verify failed
#define DKIM_SIGNATURE_BAD_BUT_TESTING          -4              // signature
error: RSA verify failed but testing
#define DKIM_SIGNATURE_EXPIRED                          -5              //
signature error: x= is old
#define DKIM_SELECTOR_INVALID                           -6              //
signature error: selector doesn't parse or contains invalid values
#define DKIM_SELECTOR_GRANULARITY_MISMATCH      -7              // signature
error: selector g= doesn't match i=
#define DKIM_SELECTOR_KEY_REVOKED                       -8              //
signature error: selector p= empty
#define DKIM_SELECTOR_DOMAIN_NAME_TOO_LONG      -9              // signature
error: selector domain name too long to request
#define DKIM_SELECTOR_DNS_TEMP_FAILURE          -10             // signature
error: temporary dns failure requesting selector
#define DKIM_SELECTOR_DNS_PERM_FAILURE          -11             // signature
error: permanent dns failure requesting selector
#define DKIM_SELECTOR_PUBLIC_KEY_INVALID        -12             // signature
error: selector p= value invalid or wrong format
#define DKIM_NO_SIGNATURES                                      -13          
  // process error, no sigs
#define DKIM_NO_VALID_SIGNATURES                        -14             //
process error, no valid sigs
#define DKIM_BODY_HASH_MISMATCH                         -15             //
sigature verify error: message body does not hash to bh value
#define DKIM_SELECTOR_ALGORITHM_MISMATCH        -16             // signature
error: selector h= doesn't match signature a=
#define DKIM_STAT_INCOMPAT                                      -17          
  // signature error: incompatible v=
#define DKIM_MAX_ERROR                                          -18          
  // set this to 1 greater than the highest error code (but negative)

// DKIM_SUCCESS                                                              
  // verify result: all signatures verified
                                                                             
                  // signature result: signature verified
#define DKIM_FINISHED_BODY                                      1       //
process result: no more message body is needed
#define DKIM_PARTIAL_SUCCESS                            2       // verify
result: at least one but not all signatures verified
#define DKIM_NEUTRAL                                            3       //
verify result: no signatures verified but message is not suspicous
#define DKIM_SUCCESS_BUT_EXTRA                          4       // signature
result: signature verified but it did not include all of the body



// This function is called once for each header in the message
// return 1 to include this header in the signature and 0 to exclude.
typedef int (DKIM_CALL *DKIMHEADERCALLBACK)(const char* szHeader);

// This function is called to retrieve a TXT record from DNS
typedef int (DKIM_CALL *DKIMDNSCALLBACK)(const char* szFQDN, char* szBuffer,
int nBufLen );

#ifdef _WIN32
#include <pshpack1.h>
#endif

typedef struct DKIMContext_t
{
        unsigned int reserved1;
        unsigned int reserved2;
        void*            reserved3;
} DKIMContext;

typedef struct DKIMSignOptions_t
{
        int nCanon;                                                          
  // canonization
        int nIncludeBodyLengthTag;                              // 0 = don't
include l= tag, 1 = include l= tag
        int nIncludeTimeStamp;                                  // 0 = don't
include t= tag, 1 = include t= tag
        int nIncludeQueryMethod;                                // 0 = don't
include q= tag, 1 = include q= tag
        char szSelector[80];                                    // selector -
required
        char szDomain[256];                                             //
domain - optional - if empty, domain is computed from sender
        char szIdentity[256];                                   // for i= tag,
if empty tag will not be included in sig
        unsigned long expireTime;                               // for x= tag,
if 0 tag will not be included in sig
        DKIMHEADERCALLBACK pfnHeaderCallback;   // header callback
        char szRequiredHeaders[256];                    // colon-separated
list of headers that must be signed
        int nHash;                                                           
  // use one of the DKIM_HASH_xx constants here
                                                                             
          // even if not present in the message
        int nIncludeCopiedHeaders;                              // 0 = don't
include z= tag, 1 = include z= tag
        int nIncludeBodyHash;                                   // use one of
the DKIM_BODYHASH_xx constants here
} DKIMSignOptions;

typedef struct DKIMVerifyOptions_t
{
        DKIMDNSCALLBACK pfnSelectorCallback;    // selector record callback
        DKIMDNSCALLBACK pfnPracticesCallback;   // SSP record callback
        int nHonorBodyLengthTag;                                // 0 = ignore
l= tag, 1 = use l= tag to limit the amount of body verified
        int nCheckPractices;                                    // 0 = use
default (unknown) practices, 1 = request and use sender's signing practices
        int nSubjectRequired;                                   // 0 = subject
is required to be signed, 1 = not required
        int nSaveCanonicalizedData;             // 0 = canonicalized data is
not saved, 1 = canonicalized data is saved
} DKIMVerifyOptions;

typedef struct DKIMVerifyDetails_t
{
        char *szSignature;
        char *DNS;
        char *szCanonicalizedData;
        int nResult;
} DKIMVerifyDetails;


#ifdef _WIN32
#include <poppack.h>
#endif

int DKIM_CALL DKIMSignInit( DKIMContext* pSignContext, DKIMSignOptions*
pOptions );
int DKIM_CALL DKIMSignProcess( DKIMContext* pSignContext, char* szBuffer, int
nBufLength );
int DKIM_CALL DKIMSignGetSig( DKIMContext* pSignContext, char* szPrivKey,
char* szSignature, int nSigLength );
int DKIM_CALL DKIMSignGetSig2( DKIMContext* pSignContext, char* szPrivKey,
char** pszSignature );
void DKIM_CALL DKIMSignFree( DKIMContext* pSignContext );

int DKIM_CALL DKIMVerifyInit( DKIMContext* pVerifyContext, DKIMVerifyOptions*
pOptions );
int DKIM_CALL DKIMVerifyProcess( DKIMContext* pVerifyContext, char* szBuffer,
int nBufLength );
int DKIM_CALL DKIMVerifyResults( DKIMContext* pVerifyContext );
int DKIM_CALL DKIMVerifyGetDetails( DKIMContext* pVerifyContext, int*
nSigCount, DKIMVerifyDetails** pDetails, char* szPractices );
void DKIM_CALL DKIMVerifyFree( DKIMContext* pVerifyContext );

char *DKIM_CALL DKIMVersion();

char *DKIM_CALL DKIMGetErrorString( int ErrorCode );

#ifdef __cplusplus
}
#endif


Grep'ing through that I couldn't find anything related to dkim_init?

Should I try compiling the library from the latest 1.0.21 source?

http://sourceforge.net/projects/libdkim/

ATrpms.net are usually very good with providing the right RPM's for the job,
so I doubt compiling the libdkim from source will make a difference, but I'm
willing to try if we're out of ideas above?

Michael.

Re: [milter-greylist] Compiling milter-greylist 4.3.4 with DKIM ?

2010-02-26 by manu@netbsd.org

Michael Mansour <mic@...> wrote:

> Grep'ing through that I couldn't find anything related to dkim_init?

Yes, nothing. Obviously the API changed. Your best bet is to try a
previous version.

Someone intereted by DKIM support will have to upgrade milter-greylist
support for that library...

-- 
Emmanuel Dreyfus
http://hcpnet.free.fr/pubz
manu@...

Re: [milter-greylist] Compiling milter-greylist 4.3.4 with DKIM ?

2010-02-27 by Michael Mansour

Hi Emmanuel,

> Michael Mansour <mic@...> wrote:
> 
> > Grep'ing through that I couldn't find anything related to dkim_init?
> 
> Yes, nothing. Obviously the API changed. Your best bet is to try a
> previous version.

Which version should I try? 

The list on http://sourceforge.net/projects/libdkim/files/ shows:

1.0.21
1.0.19
1.0.17
1.0.14
1.0.13
etc?

Thanks.

Michael.
Show quoted textHide quoted text
> Someone intereted by DKIM support will have to upgrade milter-
> greylist support for that library...
> 
> -- 
> Emmanuel Dreyfus
> http://hcpnet.free.fr/pubz
> manu@...
> 
> ------------------------------------
> 
> Yahoo! Groups Links
> 
> 
>

Re: [milter-greylist] Compiling milter-greylist 4.3.4 with DKIM ?

2010-02-27 by Michael Mansour

Hi Emmanuel,

> Michael Mansour <mic@...> wrote:
> 
> > Which version should I try?
> 
> THe one that has dkim_init in its sources!

I've gone through every single release:

-rw-r--r-- 1 root root 45536 Feb 22  2006 libdkim-1.0.10.zip
-rw-r--r-- 1 root root 47250 Sep 11  2006 libdkim-1.0.12.zip
-rw-r--r-- 1 root root 49495 Feb 23  2007 libdkim-1.0.13.zip
-rw-r--r-- 1 root root 49581 Apr 25  2007 libdkim-1.0.14.zip
-rw-r--r-- 1 root root 49755 Oct 31  2007 libdkim-1.0.17.zip
-rw-r--r-- 1 root root 55049 Jan  7 03:09 libdkim-1.0.21.zip
-rw-r--r-- 1 root root 41899 Jul 15  2005 libdkim-1.0.6.zip
-rw-r--r-- 1 root root 42264 Jul 29  2005 libdkim-1.0.8.zip
-rw-r--r-- 1 root root 44330 Nov 24  2005 libdkim-1.0.9.zip

Grep'ed through all their sources for dkim_init, couldn't find any of them
that had it?

Am I doing something wrong?

I've just joined the libdkim-discuss mailing list:

http://sourceforge.net/projects/libdkim/support

to ask about dkim_init.

Michael.
Show quoted textHide quoted text
> -- 
> Emmanuel Dreyfus
> http://hcpnet.free.fr/pubz
> manu@...
> 
> ------------------------------------
> 
> Yahoo! Groups Links
> 
> 
>

Re: [milter-greylist] Compiling milter-greylist 4.3.4 with DKIM ?

2010-02-27 by manu@netbsd.org

Michael Mansour <mic@...> wrote:

> Grep'ed through all their sources for dkim_init, couldn't find any of them
> that had it?

That suggests there have been different dkim packages?

-- 
Emmanuel Dreyfus
http://hcpnet.free.fr/pubz
manu@...

Re: [milter-greylist] Compiling milter-greylist 4.3.4 with DKIM ?

2010-02-28 by Michael Mansour

Hi Emmanuel,

> Michael Mansour <mic@...> wrote:
> 
> > Grep'ed through all their sources for dkim_init, couldn't find any of them
> > that had it?
> 
> That suggests there have been different dkim packages?

I've spent about half a day working through this problem and finally have it
compiling into milter-greylist.

To compile milter-greylist with DKIM support, I need the libdkim library.
ATrpms supplies this package (1.0.19) however as we discovered over the past
few days, it doesn't contain the dkim_init within the libdkim.a file or the
dkim.h header files:

# nm /usr/lib/libdkim.a|grep -i dkim_init
#

and:

# grep -i dkim_init /usr/include/dkim.h
#

What I did was download the dkim-milter tarball, ran through a build (read the
INSTALL docs), and then pulled those files out directly:

/root/test/dkim-milter-2.8.3/obj.Linux.2.6.18-164.11.1.el5xen.i686/libdkim/dkim.h

/root/test/dkim-milter-2.8.3/obj.Linux.2.6.18-164.11.1.el5xen.i686/libdkim/libdkim.a

Copied them over the ones contained in the libdkim RPM, so I now have:

# nm /usr/lib/libdkim.a|grep -i dkim_init
00003bb0 T dkim_init

# grep -i dkim_init /usr/include/dkim.h
**  DKIM_INIT -- initialize the DKIM package
extern DKIM_LIB *dkim_init __P((void *(*mallocf)(void *closure, size_t nbytes),
**      libhandle -- library handle, returned by dkim_init()
**      libhandle -- library handle, returned by dkim_init()

I then was able to successfully compile the milter-greylist RPM with DKIM support.

I've now installed the updated milter-greylist 4.3.4 on my mail servers, with
the following rules in place:

dacl whitelist dkim pass
dacl blacklist dkim fail

I'm monitoring this and so far it's run this way for some hours and I'm yet to
see the rules hit.

I'm now trying to block emails from gmail.com that don't have DIM signatures
(since all legitimate emails from gmail.com do). Would the following rule work?

dacl blacklist from /.*@...$/ dkim none

Thanks.

Michael.
Show quoted textHide quoted text
> -- 
> Emmanuel Dreyfus
> http://hcpnet.free.fr/pubz
> manu@...
> 
> ------------------------------------
> 
> Yahoo! Groups Links
> 
> 
>

Re: [milter-greylist] Compiling milter-greylist 4.3.4 with DKIM ?

2010-02-28 by Michael Mansour

Hi Emmanuel,

> Michael Mansour <mic@...> wrote:
> 
> > dacl blacklist from /.*@...$/ dkim none
> Looks fine.

It actually comes back with:

config error at line 2097: syntax error

Reading the man page again on it:

       dkim   DKIM status (if build with DKIM support). Possible values are
pass, fail, unknown, error, and none,

ie. "DKIM status", it doesn't actually say a ruleset like the above would work?

Michael.
Show quoted textHide quoted text
> -- 
> Emmanuel Dreyfus
> http://hcpnet.free.fr/pubz
> manu@...
> 
> ------------------------------------
> 
> Yahoo! Groups Links
> 
> 
>

Re: [milter-greylist] Compiling milter-greylist 4.3.4 with DKIM ?

2010-02-28 by manu@netbsd.org

Michael Mansour <mic@...> wrote:

>        dkim   DKIM status (if build with DKIM support). Possible values are
> pass, fail, unknown, error, and none,
> 
> ie. "DKIM status", it doesn't actually say a ruleset like the above would
> work?

We told you nobody tested it :-)

Please try this patch:
--- conf_lex.l.orig     2010-02-28 14:53:05.000000000 +0100
+++ conf_lex.l  2010-02-28 14:53:07.000000000 +0100
@@ -240,8 +240,12 @@
 <S_SPF>{self}  { BEGIN(0); 
                  yylval.spf_status = MGSPF_SELF; return SPF_STATUS; }
 <S_SPF>{none}  { BEGIN(0); 
                  yylval.spf_status = MGSPF_NONE; return SPF_STATUS; }
+<S_DKIM>{self} { BEGIN(0); 
+                 yylval.spf_status = MGSPF_SELF; return SPF_STATUS; }
+<S_DKIM>{none} { BEGIN(0); 
+                 yylval.spf_status = MGSPF_NONE; return SPF_STATUS; }
 {quiet}                { return QUIET; }
 {testmode}     { return TESTMODE; }
 {verbose}      { return VERBOSE; }
 {dump_no_time_translation}     { return DUMP_NO_TIME_TRANSLATION; }


-- 
Emmanuel Dreyfus
http://hcpnet.free.fr/pubz
manu@...

Re: [milter-greylist] Compiling milter-greylist 4.3.4 with DKIM ?

2010-02-28 by Michael Mansour

Hi Emmanuel,

> Michael Mansour <mic@...> wrote:
> 
> >        dkim   DKIM status (if build with DKIM support). Possible values are
> > pass, fail, unknown, error, and none,
> > 
> > ie. "DKIM status", it doesn't actually say a ruleset like the above would
> > work?
> 
> We told you nobody tested it :-)

:) thanks for the below, the patch made it work. I also tried:

dacl blacklist from /.*@gmail\.com$/ dkim none msg "Unverified, forged or
non-existent DomainKeys/DKIM signature"

and that worked too.

Do you know if the dkim check also checks for DomainKeys? not just DKIM keys?

paypal.com signs with DomainKeys.

paypal.com.au signs with DomainKeys _and_ DKIM (two sigs shown in the header
of each message).

ebay.com signs with DomainKeys.

ebay.com.au signs with DomainKeys.

yahoo.com signs with DKIM.

yahoo.com.au signs with DomainKeys and DKIM.

If the libdkim library, which milter-greylist uses, also checks "DomainKeys"
signed emails then I can block the emails from ebay, paypal, etc which are
either unsigned or forged. Stops all those phishing emails coming through or
being processed by spam filters.

I'll be monitoring the rule hits over the next few days, hopefully it will work.

Thanks.

Michael.
Show quoted textHide quoted text
> Please try this patch:
> --- conf_lex.l.orig     2010-02-28 14:53:05.000000000 +0100
> +++ conf_lex.l  2010-02-28 14:53:07.000000000 +0100
> @@ -240,8 +240,12 @@
>  <S_SPF>{self}  { BEGIN(0); 
>                   yylval.spf_status = MGSPF_SELF; return SPF_STATUS; 
> } <S_SPF>{none}  { BEGIN(0);                   yylval.spf_status = 
> MGSPF_NONE; return SPF_STATUS; } +<S_DKIM>{self} { BEGIN(0); +       
>           yylval.spf_status = MGSPF_SELF; return SPF_STATUS; } 
> +<S_DKIM>{none} { BEGIN(0); +                 yylval.spf_status = 
> MGSPF_NONE; return SPF_STATUS; } {quiet}                { return 
> QUIET; } {testmode}     { return TESTMODE; } {verbose}      { return 
> VERBOSE; } {dump_no_time_translation}     { return 
> DUMP_NO_TIME_TRANSLATION; }
> 
> -- 
> Emmanuel Dreyfus
> http://hcpnet.free.fr/pubz
> manu@...
> 
> ------------------------------------
> 
> Yahoo! Groups Links
> 
> 
>

Move to quarantaine

This moves the raw source file on disk only. The archive index is not changed automatically, so you still need to run a manual refresh afterward.