summaryrefslogtreecommitdiff
path: root/debian/patches/8.12/8.12.3/security.parsaddr
diff options
context:
space:
mode:
Diffstat (limited to 'debian/patches/8.12/8.12.3/security.parsaddr')
-rw-r--r--debian/patches/8.12/8.12.3/security.parsaddr58
1 files changed, 0 insertions, 58 deletions
diff --git a/debian/patches/8.12/8.12.3/security.parsaddr b/debian/patches/8.12/8.12.3/security.parsaddr
deleted file mode 100644
index 90daf45..0000000
--- a/debian/patches/8.12/8.12.3/security.parsaddr
+++ /dev/null
@@ -1,58 +0,0 @@
-diff -u -Nur --exclude CVS sendmail-8.12.3.orig/sendmail/parseaddr.c sendmail-8.12.3/sendmail/parseaddr.c
---- sendmail-8.12.3.orig/sendmail/parseaddr.c 2003-04-01 20:52:13.000000000 +0200
-+++ sendmail-8.12.3/sendmail/parseaddr.c 2003-04-04 15:59:07.000000000 +0200
-@@ -608,7 +608,7 @@
- };
-
-
--#define NOCHAR -1 /* signal nothing in lookahead token */
-+#define NOCHAR (-1) /* signal nothing in lookahead token */
-
- char **
- prescan(addr, delim, pvpbuf, pvpbsize, delimptr, toktab)
-@@ -694,6 +694,7 @@
- /* see if there is room */
- if (q >= &pvpbuf[pvpbsize - 5])
- {
-+ addrtoolong:
- usrerr("553 5.1.1 Address too long");
- if (strlen(addr) > MAXNAME)
- addr[MAXNAME] = '\0';
-@@ -705,11 +706,15 @@
- }
-
- /* squirrel it away */
-+#if !ALLOW_255
-+ if ((char) c == (char) -1 && !tTd(82, 101))
-+ c &= 0x7f;
-+#endif /* !ALLOW_255 */
- *q++ = c;
- }
-
- /* read a new input character */
-- c = *p++;
-+ c = (unsigned char)*p++;
- if (c == '\0')
- {
- /* diagnose and patch up bad syntax */
-@@ -764,6 +769,9 @@
- }
- else if (c != '!' || state == QST)
- {
-+ /* see if there is room */
-+ if (q >= &pvpbuf[pvpbsize - 5])
-+ goto addrtoolong;
- *q++ = '\\';
- continue;
- }
-@@ -849,6 +857,10 @@
- /* new token */
- if (tok != q)
- {
-+ /* see if there is room */
-+ if (q >= &pvpbuf[pvpbsize - 5])
-+ goto addrtoolong;
-+
- *q++ = '\0';
- if (tTd(22, 36))
- {