Jukka Salmi --> dkim-milter-discuss (2007-08-11 18:26:08 +0200):
> Your fix seems not to work; checking `signlen' after
> dkim_sig_getcanonlen() returns in dkim-filter/dkim-filter.c:mlfi_eom()
> I see it's always 4294967295 aka (2^32)-1, but since off_t is a signed
> 64 bit int (at least here on NetBSD) this is _not_ (off_t)-1, thus
> tmp_lengths is still always TRUE.
> 
> IIUC that's because the `length' parameter passed to dkim_add_canon()
> is zero or an off_t (unsigned) for all callers, but the function
> declares it as a size_t (signed!). This should probably be an off_t
> as well, or at least a ssize_t, shouldn't it?

The solution seems not to be as easy as changing that size_t to an
off_t: when doing this, dkimf_stats_record() is called correctly (with
tmp_lengths == FALSE for messages without a l= tag) as expected, but
correctly signed messages suddenly fail verification because of
DKIM_SIGBH_MISMATCH. Hmm, I don't see why ATM... Any hints?


Regards, Jukka

-- 
bashian roulette:
$ ((RANDOM%6)) || rm -rf ~

-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >>  http://get.splunk.com/
_______________________________________________
dkim-milter-discuss mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/dkim-milter-discuss

Reply via email to