From a3266193deaf5e76210124359e92dc99137162ea Mon Sep 17 00:00:00 2001 From: "Eric S. Raymond" Date: Mon, 1 Dec 1997 08:40:47 +0000 Subject: Give up in GIGO. svn path=/trunk/; revision=1554 --- NEWS | 3 --- rfc822.c | 8 ++++++++ 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/NEWS b/NEWS index e29fe2df..9595e541 100644 --- a/NEWS +++ b/NEWS @@ -5,9 +5,6 @@ * More log levels? * Allow an explicit "append" option to specify what rewrite appends? (For when user's pop3 host isn't the same as his SMTP host.) -* Rewrite maps "From: John Smith (Systems) " to - "From: John Smith@my.pop.server (Systems) ". Is this - just GIGO, or should we try to cope? Other TO-DO items: diff --git a/rfc822.c b/rfc822.c index 0081cff2..92692745 100644 --- a/rfc822.c +++ b/rfc822.c @@ -46,6 +46,14 @@ const char *host; /* server hostname */ buf = (char *)xrealloc(buf, strlen(buf) + addresscount * strlen(host) + 1); #endif /* TESTMAIN */ + /* + * This is going to foo up on some ill-formed addresses. For example, + * "From: John Smith (Systems) " will get rewritten as + * "From: John Smith@my.pop.server (Systems) " because + * the state machine can't look ahead to the <> part past the comment + * and instead treats `John Smith' as a bareword address. + */ + parendepth = state = 0; has_host_part = has_bare_name_part = FALSE; for (from = buf; *from; from++) -- cgit v1.2.3