Subject: Re: [PATCH] git-imap-send: Strip smtp From_ header from imap message.

From: Markus Amsler <[email-masked]>
Date: Wed, 18 Oct 2006 10:53:45 +0200

Junio C Hamano wrote:
> Markus Amsler <[email-masked]> writes:
> 
>> Cyrus imap refuses messages with a 'From ' Header.
>>
>> Signed-off-by: Markus Amsler <[email-masked]>
> 
> Do you know if this change does not upset other implementations
> of imap servers?
I only tested it with cyrus 2.1.18 on debian. I did some research: The 
From_ header field was introduced in rfc976 which only affects UUCP(Unix 
to Unix CoPy). I assume it's an invalid header field in SMTP/IMAP, and 
most implementation ignores it.
I'm no mail header guru, so I could be wrong

Markus
> 
> Mike, are you Ok with this change?
> 
> ---
>   imap-send.c |    8 ++++++++
>   1 files changed, 8 insertions(+), 0 deletions(-)
> 
> diff --git a/imap-send.c b/imap-send.c
> index 362e474..16804ab 100644
> --- a/imap-send.c
> +++ b/imap-send.c
> @@ -1226,6 +1226,14 @@ split_msg( msg_data_t *all_msgs, msg_dat
>  	if (msg->len < 5 || strncmp( data, "From ", 5 ))
>  		return 0;
> 
> +	p = strchr( data, '\n' );
> +	if (p) {
> +		p = &p[1];
> +		msg->len -= p-data;
> +		*ofs += p-data;
> +		data = p;
> +	}
> +
>  	p = strstr( data, "\nFrom " );
>  	if (p)
>  		msg->len = &p[1] - data;
> 
>