summaryrefslogtreecommitdiff
path: root/usr.sbin/sendmail/src/macro.c
diff options
context:
space:
mode:
authorglass <glass@NetBSD.org>1994-03-16 02:11:31 +0000
committerglass <glass@NetBSD.org>1994-03-16 02:11:31 +0000
commit3fb497653d34cde8706b0e446e52182df5bc4ae7 (patch)
tree378207336652cf6132b6412b0e6c3f105621d985 /usr.sbin/sendmail/src/macro.c
parentc0ae496079e5f8f6af13afb704a68b285f4d14b4 (diff)
sendmail 8.6.7. fixes recently discovered security hole
Diffstat (limited to 'usr.sbin/sendmail/src/macro.c')
-rw-r--r--usr.sbin/sendmail/src/macro.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/usr.sbin/sendmail/src/macro.c b/usr.sbin/sendmail/src/macro.c
index 8beb5a7e375..8a8a90b4f0f 100644
--- a/usr.sbin/sendmail/src/macro.c
+++ b/usr.sbin/sendmail/src/macro.c
@@ -33,7 +33,7 @@
*/
#ifndef lint
-static char sccsid[] = "@(#)macro.c 8.2 (Berkeley) 7/29/93";
+static char sccsid[] = "@(#)macro.c 8.3 (Berkeley) 2/7/94";
#endif /* not lint */
# include "sendmail.h"
@@ -115,8 +115,14 @@ expand(s, buf, buflim, e)
continue;
case MACROEXPAND: /* macro interpolation */
- c = *++s;
- q = macvalue(c & 0177, e);
+ c = *++s & 0177;
+ if (c != '\0')
+ q = macvalue(c, e);
+ else
+ {
+ s--;
+ q = NULL;
+ }
if (q == NULL)
continue;
break;