[ libetpan-Bugs-1909672 ] Date fields parsed as optional field on 64 bit OS

"SourceForge.net" <[email protected]> Tue, 27 May 2008 02:49:35 -0700
Newsgroups gmane.mail.libetpan.user
Message-ID <[email protected]>
Bugs item #1909672, was opened at 2008-03-07 08:32
Message generated for change (Comment added) made by nobody
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=429696&aid=1909672&group_id=41064

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: None
Group: None
Status: Closed
Resolution: None
Priority: 5
Private: No
Submitted By: James Smith (kowshak)
Assigned to: Nobody/Anonymous (nobody)
Summary: Date fields parsed as optional field on 64 bit OS

Initial Comment:
Dates in email headers don't parse correctly on 64bit OS.

The cause is down to "sizeof(char*) - 1" being used where a "strlen(char*)" call should have been used. sizeof(char *) - 1 comes out conveniently as 3 on 32bit platforms but inconveniently as 7 on 64bit platforms.


Line in mailimf.h 


#define mailimf_token_case_insensitive_parse(message, length, indx, token) \
    mailimf_token_case_insensitive_len_parse(message, length, indx, token, \
					     sizeof(token) - 1)


Should read...


#define mailimf_token_case_insensitive_parse(message, length, indx, token) \
    mailimf_token_case_insensitive_len_parse(message, length, indx, token, \
					     strlen(token))


End

----------------------------------------------------------------------

Comment By: Nobody/Anonymous (nobody)
Date: 2008-05-27 02:49

Message:
Logged In: NO 

I've pulled the latest code out of CVS and there is still a problem with
it...

The line that had the problem has been modified (i.e. sizeof() replaced
with strlen(), but still needs the ' - 1' removing.

#define mailimf_token_case_insensitive_parse(message, length, indx, token)
\
    mailimf_token_case_insensitive_len_parse(message, length, indx, token,
\
					     strlen(token) - 1)

Should read

#define mailimf_token_case_insensitive_parse(message, length, indx, token)
\
    mailimf_token_case_insensitive_len_parse(message, length, indx, token,
\
					     strlen(token))


----------------------------------------------------------------------

Comment By: DINH V. Hoa (hoa)
Date: 2008-05-22 14:55

Message:
Logged In: YES 
user_id=201468
Originator: NO

this is committed.



----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=429696&aid=1909672&group_id=41064

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/