diff options
author | Andrey A. Chernov <ache@FreeBSD.org> | 1998-06-28 21:11:55 +0000 |
---|---|---|
committer | Andrey A. Chernov <ache@FreeBSD.org> | 1998-06-28 21:11:55 +0000 |
commit | 198779dfaef765a24fdbb903421e873b9a57cd10 (patch) | |
tree | 5e61f7e575ce72b88ae0c87cc3386af762170d96 | |
parent | Activate jcode-pl. (diff) |
Reject too long X-UIDL
Notes
Notes:
svn path=/head/; revision=11588
-rw-r--r-- | mail/popper/files/patch-ai | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/mail/popper/files/patch-ai b/mail/popper/files/patch-ai new file mode 100644 index 000000000000..8e3af1eb297f --- /dev/null +++ b/mail/popper/files/patch-ai @@ -0,0 +1,31 @@ +*** pop_dropcopy.c.orig Sun Jun 28 21:46:27 1998 +--- pop_dropcopy.c Mon Jun 29 01:05:25 1998 +*************** +*** 484,495 **** + } else if (!strncasecmp("X-UIDL:", buffer, 7)) { + if (!uidl_found) { + char *cp; + + uidl_found++; + /* Skip over header string */ + cp = &buffer[7]; + while (*cp && (*cp == ' ' || *cp == '\t')) cp++; +! if(strlen(cp) < DIG_SIZE) /* To account for the empty UIDL string */ + { + uidl_found--; /*roll over as though it hasn't seen anything*/ + continue; +--- 484,497 ---- + } else if (!strncasecmp("X-UIDL:", buffer, 7)) { + if (!uidl_found) { + char *cp; ++ int l; + + uidl_found++; + /* Skip over header string */ + cp = &buffer[7]; + while (*cp && (*cp == ' ' || *cp == '\t')) cp++; +! l = strlen(cp); +! if(l < DIG_SIZE || l > DIG_SIZE * 3) /* To account for the empty UIDL string */ + { + uidl_found--; /*roll over as though it hasn't seen anything*/ + continue; |