After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 88100 - Pan generates invalid Message-IDs
Pan generates invalid Message-IDs
Status: RESOLVED FIXED
Product: Pan
Classification: Other
Component: general
pre-0.13.0 betas
Other Linux
: High critical
: 0.13.0
Assigned To: Charles Kerr
Charles Kerr
Depends on:
Blocks:
 
 
Reported: 2002-07-13 12:51 UTC by Christophe Lambin
Modified: 2006-06-18 04:55 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Christophe Lambin 2002-07-13 12:51:15 UTC
0.12.90 can generate Message-IDs which are rejected by the newsserver:

From: "Christophe Lambin" <clambin@die.spammer.die.easynet.be>
Subject: test
Date: Sat, 13 Jul 2002 14:37:37 +0200
User-Agent: Pan/0.12.90 (By the surly beard of Mrifk, Grignr kneels to no
        man!)
Message-Id:
        <pan.2002.07.13.12.37.37.254295.2249@die.spammer.die.easynet.be>
Newsgroups: easynet.test


First guess: it's wrapped into two lines because the long fqdn.
Comment 1 Charles Kerr 2002-07-14 16:54:10 UTC
Fejj, is there any simple way to turn of header wrapping for cases
like this?
Comment 2 Jeffrey Stedfast 2002-07-14 19:37:14 UTC
Unfortunately no :\

maybe I can special-case the wrapping of a few headers.

*sigh* that's a perfectly valid message-id header :-)
Comment 3 Charles Kerr 2002-07-14 20:16:10 UTC
Chris, could you stub out the wrapping code in GMime to make sure
that's the problem?
Comment 4 Christophe Lambin 2002-07-14 22:15:07 UTC
That appears to be the problem: I disabled the wrapping and was able
to post an article.

With the wrapping in place, the newsserver rejects the article:

        441 435 Bad Message-ID


Comment 5 Charles Kerr 2002-07-18 23:59:30 UTC
fejj: I think GMime is making invalid headers.

rfc 2822's index contains a list of diffs between itself and
earlier versions of the spec.

   8. Folding white space is not allowed between every token.
  13. Folding continuation lines cannot contain only white space.*
  19. CFWS within local-parts and domains not allowed.*
  21. Folding white space between field name and colon not allowed.*
  24. CFWS within msg-id not allowed.*

This bug ticket is related to diff #24; the others are just FYI:
I don't know if GMime handles them correctly or not.

http://rfc.sunsite.dk/rfc/rfc2822.html
Comment 6 Charles Kerr 2002-07-19 00:09:40 UTC
Hmm, maybe I spoke too soon.
The definition for Message-Id certainly does look it it can wrap:

message-id      =       "Message-ID:" msg-id CRLF
in-reply-to     =       "In-Reply-To:" 1*msg-id CRLF
references      =       "References:" 1*msg-id CRLF
msg-id          =       [CFWS] "<" id-left "@" id-right ">" [CFWS]
id-left         =       dot-atom-text / no-fold-quote / obs-id-left
id-right        =       dot-atom-text / no-fold-literal / obs-id-right
no-fold-quote   =       DQUOTE *(qtext / quoted-pair) DQUOTE

"CFWS" means comment or folding whitespace.

fejj: do you read 2822 the same way?
Comment 7 Jeffrey Stedfast 2002-07-19 03:55:28 UTC
yea, I read it as I can legally fold before the msg-id

13: this shouldn't be a problem afaik
19: gmime only folder on whole addresses so this should be ok
21: definetely not something to worry about, folding doesn't get
applied  to this part of the header ever.
24: I think by msg-id they mean the <blah@domain>, which I don't do.

anyways, all that being said... I can work on a way to make it not
ever fold the Message-Id header.
Comment 8 Jeffrey Stedfast 2002-07-19 03:56:04 UTC
s/folder/folds

I have folder on the brain :-)
Comment 9 Jeffrey Stedfast 2002-07-30 01:29:55 UTC
I've got at least a partial fix for this in CVS GMime now.

I've added an API to allow changing the fold/write function for
specific headers, but I can't decide if GMimeMessage should override
it or if Pan should.

We can talk about this on IRC I guess
Comment 10 Charles Kerr 2002-08-02 21:06:59 UTC
Fixed in cvs head;  Fejj did most of the heavy lifting in GMime.