Hi, Murray S. Kucherawy --> dkim-milter-discuss (2007-08-08 11:52:39 -0700): > On Wed, 8 Aug 2007, Murray S. Kucherawy wrote: > > One problem remains though, which is the "msglen != canonlen" test. > > "msglen" contains the total number of body bytes seen; however, > > "canonlen" could be short even if "l=" is not in use because trailing > > CRLFs are not canonicalized. I'll have to look into a different test > > for that case. > > I've amended dkim_sig_getcanonlen() to return this information more > accurately. The next beta will contain the fix if you want to try it out.
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? 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
