aboutsummaryrefslogtreecommitdiffstats
path: root/rfc822.c
diff options
context:
space:
mode:
authorEric S. Raymond <esr@thyrsus.com>1997-12-01 08:40:47 +0000
committerEric S. Raymond <esr@thyrsus.com>1997-12-01 08:40:47 +0000
commita3266193deaf5e76210124359e92dc99137162ea (patch)
tree05eb197f67edbf3ec1cf1578af76be5decc291a1 /rfc822.c
parentc20d6ead2c246bb77ce62663de29e1db875fd2f3 (diff)
downloadfetchmail-a3266193deaf5e76210124359e92dc99137162ea.tar.gz
fetchmail-a3266193deaf5e76210124359e92dc99137162ea.tar.bz2
fetchmail-a3266193deaf5e76210124359e92dc99137162ea.zip
Give up in GIGO.
svn path=/trunk/; revision=1554
Diffstat (limited to 'rfc822.c')
-rw-r--r--rfc822.c8
1 files changed, 8 insertions, 0 deletions
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) <jsmith@domain>" will get rewritten as
+ * "From: John Smith@my.pop.server (Systems) <jsmith@domain>" 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++)