Re: [exim] Exim development

Top Page
Delete this message
Reply to this message
Author: W B Hacker
Date:  
To: exim users
CC: Dennis Davis
Subject: Re: [exim] Exim development
Dennis Davis wrote:
> On Mon, 5 Oct 2009, W B Hacker wrote:
>
>> From: W B Hacker <wbh@???>
>> To: exim users <exim-users@???>
>> Cc: Ian Eiloart <iane@???>
>> Date: Mon, 5 Oct 2009 13:59:32
>> Subject: Re: [exim] Exim development
>
> ...
>
>> There is still a domainkeys lib in ports for that also - same
>> maintainer, sky@???
>>
>> I haven't checked NetBSD, OpenBSD, DragonFlyBSD, but 'pkgsrc' may
>> well have the DKIM option also.
>
> There's no port of libdkim in the ports system for OpenBSD4.5.
> A recent ports snapshot doesn't include it, so it looks like it
> won't be in OpenBSD4.6. Obviously there'll be no libdkim-flavoured
> version of exim in OpenBSD4.5/6.
>
> The above's not a problem. libdkim-1.0.17 won't compile out of the
> box on OpenBSD4.5. It fails with the error:
>
> dkimverify.cpp: In member function `int SelectorInfo::Parse(char*)':
> dkimverify.cpp:1199: error: invalid conversion from `const unsigned char**' to 
>    `unsigned char**'
> gmake: *** [dkimverify.o] Error 1

>
> (The above is with gcc (GCC) 3.3.5 (propolice), later versions of
> gcc may be more lenient.)
>
> The fix is simple:
>
> --- dkimverify.cpp.orig    Wed Apr  2 12:42:08 2008
> +++ dkimverify.cpp    Tue Oct  6 09:49:47 2009
> @@ -1196,7 +1196,7 @@
>    else
>    {
>      unsigned char *PublicKeyData = (unsigned char *)values[4];
> -    EVP_PKEY *pkey = d2i_PUBKEY(NULL, ((const unsigned char **)(&PublicKeyData)), PublicKeyLen);
> +    EVP_PKEY *pkey = d2i_PUBKEY(NULL, ((unsigned char **)(&PublicKeyData)), PublicKeyLen);

>
>      if (pkey == NULL)
>        return DKIM_SELECTOR_PUBLIC_KEY_INVALID;

>
> so it should be straightforward to build a libdkim-flavoured version
> of exim from source.


.... and/or contribute your patch so that it *could* be placed into the OpenBSD
ports tree.

.. bu wait. Time has marched on...

I intended to try building and/or diff'ing libdkim-1.0.17_1 from the FreeBSD
ports on OpenBSD 4.6 and NetBSD 5.X snapshots to see if the same or similar fix
you made has already been applied to that later rev.

However .. the copy on FreeBSD ports is a pre-built package ONLY (no sources)
so I decided to go ogle .. only to find Gentoo and Debian and such like working
with not only older, but also much newer (1.0.19_4) libdkim versions.

So...

A) Your fix (and others) may already be in place.

B) *Some* Linux already/long since have the requisites available for building
Exim 4.69 with DKIM. The alleged lack of same being what spawned this thread in
the first place.

Now that it seems to be resolvable by more than one route, I'm going back to sleep.

I didn't personally need DKIM in the first place ...

;-)

Bill



Bill

[1] Raher odd if it is
I'll have to track down a copy of that newer tarball...