case letters can be used in file names and as args to programs.
SCCS-vsn: usr.sbin/sendmail/src/savemail.c 4.4
SCCS-vsn: usr.sbin/sendmail/src/recipient.c 4.3
SCCS-vsn: usr.sbin/sendmail/src/version.c 4.26
SCCS-vsn: usr.sbin/sendmail/src/envelope.c 4.4
SCCS-vsn: usr.sbin/sendmail/src/parseaddr.c 4.5
#include "sendmail.h"
#include <sys/stat.h>
#include "sendmail.h"
#include <sys/stat.h>
-SCCSID(@(#)envelope.c 4.3 %G%);
+SCCSID(@(#)envelope.c 4.4 %G%);
/*
** NEWENVELOPE -- allocate a new envelope
/*
** NEWENVELOPE -- allocate a new envelope
else
FromFlag = TRUE;
CurEnv->e_from.q_flags |= QDONTSEND;
else
FromFlag = TRUE;
CurEnv->e_from.q_flags |= QDONTSEND;
+ loweraddr(&CurEnv->e_from);
SuprErrs = FALSE;
if (pw == NULL && CurEnv->e_from.q_mailer == LocalMailer)
SuprErrs = FALSE;
if (pw == NULL && CurEnv->e_from.q_mailer == LocalMailer)
-SCCSID(@(#)parseaddr.c 4.4 %G%);
+SCCSID(@(#)parseaddr.c 4.5 %G%);
/*
** PARSEADDR -- Parse an address
/*
** PARSEADDR -- Parse an address
a->q_user = newstr(a->q_user);
}
a->q_user = newstr(a->q_user);
}
- /*
- ** Do UPPER->lower case mapping unless inhibited.
- */
-
- if (!bitnset(M_HST_UPPER, m->m_flags))
- makelower(a->q_host);
- if (!bitnset(M_USR_UPPER, m->m_flags))
- makelower(a->q_user);
-
/*
** Compute return value.
*/
/*
** Compute return value.
*/
+** LOWERADDR -- map UPPER->lower case on addresses as requested.
+**
+** Parameters:
+** a -- address to be mapped.
+**
+** Returns:
+** none.
+**
+** Side Effects:
+** none.
+*/
+
+loweraddr(a)
+ register ADDRESS *a;
+{
+ register MAILER *m = a->q_mailer;
+
+ if (!bitnset(M_HST_UPPER, m->m_flags))
+ makelower(a->q_host);
+ if (!bitnset(M_USR_UPPER, m->m_flags))
+ makelower(a->q_user);
+}
+\f/*
** PRESCAN -- Prescan name and make it canonical
**
** Scans a name and turns it into a set of tokens. This process
** PRESCAN -- Prescan name and make it canonical
**
** Scans a name and turns it into a set of tokens. This process
# include "sendmail.h"
# include <sys/stat.h>
# include "sendmail.h"
# include <sys/stat.h>
-SCCSID(@(#)recipient.c 4.2 %G%);
+SCCSID(@(#)recipient.c 4.3 %G%);
/*
** SENDTOLIST -- Designate a send list.
/*
** SENDTOLIST -- Designate a send list.
** Finish setting up address structure.
*/
** Finish setting up address structure.
*/
+ /* set the queue timeout */
+ /* map user & host to lower case if requested on non-aliases */
+ if (a->q_alias == NULL)
+ loweraddr(a);
+
+ /* get unquoted user for file, program or user.name check */
(void) strcpy(buf, a->q_user);
for (p = buf; *p != '\0' && !quoted; p++)
{
(void) strcpy(buf, a->q_user);
for (p = buf; *p != '\0' && !quoted; p++)
{
# include <pwd.h>
# include "sendmail.h"
# include <pwd.h>
# include "sendmail.h"
-SCCSID(@(#)savemail.c 4.3 %G%);
+SCCSID(@(#)savemail.c 4.4 %G%);
/*
** SAVEMAIL -- Save mail on error
/*
** SAVEMAIL -- Save mail on error
returndepth--;
return (-1);
}
returndepth--;
return (-1);
}
+ loweraddr(&ee->e_from);
/* push state into submessage */
CurEnv = ee;
/* push state into submessage */
CurEnv = ee;
-static char SccsId[] = "@(#)SendMail version 4.25 of %G%";
+static char SccsId[] = "@(#)SendMail version 4.26 of %G%";
-char Version[] = "4.25";
+char Version[] = "4.26";