more on elimination of frozen config files
authorEric Allman <eric@ucbvax.Berkeley.EDU>
Sat, 21 Aug 1993 02:52:05 +0000 (18:52 -0800)
committerEric Allman <eric@ucbvax.Berkeley.EDU>
Sat, 21 Aug 1993 02:52:05 +0000 (18:52 -0800)
SCCS-vsn: usr.sbin/sendmail/src/READ_ME 8.18
SCCS-vsn: usr.sbin/sendmail/src/main.c 8.23
SCCS-vsn: usr.sbin/sendmail/src/pathnames.h 8.2
SCCS-vsn: usr.sbin/sendmail/src/conf.h 8.24
SCCS-vsn: usr.sbin/sendmail/src/sendmail.h 8.15
SCCS-vsn: usr.sbin/sendmail/src/sendmail.8 8.3
SCCS-vsn: usr.sbin/sendmail/src/conf.c 8.21

usr/src/usr.sbin/sendmail/src/READ_ME
usr/src/usr.sbin/sendmail/src/conf.c
usr/src/usr.sbin/sendmail/src/conf.h
usr/src/usr.sbin/sendmail/src/main.c
usr/src/usr.sbin/sendmail/src/pathnames.h
usr/src/usr.sbin/sendmail/src/sendmail.8
usr/src/usr.sbin/sendmail/src/sendmail.h

index 71a1e0f..3fefa9e 100644 (file)
@@ -4,7 +4,7 @@
 #
 # %sccs.include.redist.sh%
 #
 #
 # %sccs.include.redist.sh%
 #
-#      @(#)READ_ME     8.17 (Berkeley) %G%
+#      @(#)READ_ME     8.18 (Berkeley) %G%
 #
 
 This directory contains the source files for sendmail.
 #
 
 This directory contains the source files for sendmail.
@@ -216,11 +216,6 @@ SETPROCTITLE       Try to set the string printed by "ps" to something
 +-------------------------------------+
 
 SunOS
 +-------------------------------------+
 
 SunOS
-       If you are compiling on SunOS and want to use frozen configuration
-       files, you must use -Bstatic -- if you do not, frozen
-       configuration files fail in bizarre ways and you will open up
-       several security holes.
-
        You may have to use -lresolv on SunOS.
 
 OSF/1
        You may have to use -lresolv on SunOS.
 
 OSF/1
@@ -310,4 +305,4 @@ version.c   The version number and information about this
 
 Eric Allman
 
 
 Eric Allman
 
-(Version 8.17, last update %G% 08:17:06)
+(Version 8.18, last update %G% 11:51:54)
index 7af09e1..9566309 100644 (file)
@@ -7,7 +7,7 @@
  */
 
 #ifndef lint
  */
 
 #ifndef lint
-static char sccsid[] = "@(#)conf.c     8.20 (Berkeley) %G%";
+static char sccsid[] = "@(#)conf.c     8.21 (Berkeley) %G%";
 #endif /* not lint */
 
 # include "sendmail.h"
 #endif /* not lint */
 
 # include "sendmail.h"
@@ -102,7 +102,6 @@ struct hdrinfo      HdrInfo[] =
 */
 
 char   *ConfFile =     _PATH_SENDMAILCF;       /* runtime configuration */
 */
 
 char   *ConfFile =     _PATH_SENDMAILCF;       /* runtime configuration */
-char   *FreezeFile =   _PATH_SENDMAILFC;       /* frozen version of above */
 char   *PidFile =      _PATH_SENDMAILPID;      /* stores daemon proc id */
 
 
 char   *PidFile =      _PATH_SENDMAILPID;      /* stores daemon proc id */
 
 
index 417a1ba..2911e52 100644 (file)
@@ -5,7 +5,7 @@
  *
  * %sccs.include.redist.c%
  *
  *
  * %sccs.include.redist.c%
  *
- *     @(#)conf.h      8.23 (Berkeley) %G%
+ *     @(#)conf.h      8.24 (Berkeley) %G%
  */
 
 /*
  */
 
 /*
 #  ifndef _PATH_SENDMAILCF
 #   define _PATH_SENDMAILCF    "/etc/mail/sendmail.cf"
 #  endif
 #  ifndef _PATH_SENDMAILCF
 #   define _PATH_SENDMAILCF    "/etc/mail/sendmail.cf"
 #  endif
-#  ifndef _PATH_SENDMAILFC
-#   define _PATH_SENDMAILFC    "/etc/mail/sendmail.fc"
-#  endif
 #  ifndef _PATH_SENDMAILPID
 #   define _PATH_SENDMAILPID   "/etc/mail/sendmail.pid"
 #  endif
 #  ifndef _PATH_SENDMAILPID
 #   define _PATH_SENDMAILPID   "/etc/mail/sendmail.pid"
 #  endif
@@ -207,9 +204,6 @@ typedef int         pid_t;
 # ifndef _PATH_SENDMAILCF
 #  define _PATH_SENDMAILCF     "/etc/sendmail/sendmail.cf"
 # endif
 # ifndef _PATH_SENDMAILCF
 #  define _PATH_SENDMAILCF     "/etc/sendmail/sendmail.cf"
 # endif
-# ifndef _PATH_SENDMAILFC
-#  define _PATH_SENDMAILFC     "/etc/sendmail/sendmail.fc"
-# endif
 # ifndef _PATH_SENDMAILPID
 #  define _PATH_SENDMAILPID    "/etc/sendmail/sendmail.pid"
 # endif
 # ifndef _PATH_SENDMAILPID
 #  define _PATH_SENDMAILPID    "/etc/sendmail/sendmail.pid"
 # endif
@@ -246,9 +240,6 @@ typedef int         pid_t;
 # ifndef _PATH_SENDMAILCF
 #  define _PATH_SENDMAILCF     "/usr/lib/sendmail.cf"
 # endif
 # ifndef _PATH_SENDMAILCF
 #  define _PATH_SENDMAILCF     "/usr/lib/sendmail.cf"
 # endif
-# ifndef _PATH_SENDMAILFC
-#  define _PATH_SENDMAILFC     "/usr/lib/sendmail.fc"
-# endif
 #endif
 
 /*
 #endif
 
 /*
index 235d796..74efce1 100644 (file)
@@ -13,7 +13,7 @@ static char copyright[] =
 #endif /* not lint */
 
 #ifndef lint
 #endif /* not lint */
 
 #ifndef lint
-static char sccsid[] = "@(#)main.c     8.22 (Berkeley) %G%";
+static char sccsid[] = "@(#)main.c     8.23 (Berkeley) %G%";
 #endif /* not lint */
 
 #define        _DEFINE
 #endif /* not lint */
 
 #define        _DEFINE
@@ -77,8 +77,6 @@ char          *CommandLineArgs;       /* command line args for pid file */
 /*
 **  Pointers for setproctitle.
 **     This allows "ps" listings to give more useful information.
 /*
 **  Pointers for setproctitle.
 **     This allows "ps" listings to give more useful information.
-**     These must be kept out of BSS for frozen configuration files
-**             to work.
 */
 
 # ifdef SETPROCTITLE
 */
 
 # ifdef SETPROCTITLE
@@ -112,7 +110,6 @@ main(argc, argv, envp)
        register int i;
        int j;
        bool queuemode = FALSE;         /* process queue requests */
        register int i;
        int j;
        bool queuemode = FALSE;         /* process queue requests */
-       bool nothaw;
        bool safecf = TRUE;
        static bool reenter = FALSE;
        char *argv0 = argv[0];
        bool safecf = TRUE;
        static bool reenter = FALSE;
        char *argv0 = argv[0];
@@ -221,12 +218,8 @@ main(argc, argv, envp)
 
        /*
        **  Do a quick prescan of the argument list.
 
        /*
        **  Do a quick prescan of the argument list.
-       **      We do this to find out if we can potentially thaw the
-       **      configuration file.  If not, we do the thaw now so that
-       **      the argument processing applies to this run rather than
-       **      to the run that froze the configuration.
        */
        */
-       nothaw = FALSE;
+
 #if defined(__osf__) || defined(_AIX3)
 # define OPTIONS       "B:b:C:cd:e:F:f:h:Iimno:p:q:r:sTtvX:x"
 #else
 #if defined(__osf__) || defined(_AIX3)
 # define OPTIONS       "B:b:C:cd:e:F:f:h:Iimno:p:q:r:sTtvX:x"
 #else
@@ -240,19 +233,6 @@ main(argc, argv, envp)
        {
                switch (j)
                {
        {
                switch (j)
                {
-                 case 'b':
-                       if (optarg[0] == 'z' && optarg[1] == '\0')
-                               nothaw = TRUE;
-                       break;
-
-                 case 'C':
-                       ConfFile = optarg;
-                       (void) setgid(RealGid);
-                       (void) setuid(RealUid);
-                       safecf = FALSE;
-                       nothaw = TRUE;
-                       break;
-
                  case 'd':
                        tTsetup(tTdvect, sizeof tTdvect, "0-99.1");
                        tTflag(optarg);
                  case 'd':
                        tTsetup(tTdvect, sizeof tTdvect, "0-99.1");
                        tTflag(optarg);
@@ -437,12 +417,13 @@ main(argc, argv, envp)
                                auth_warning(CurEnv,
                                        "Processed by %s with -C %s",
                                        RealUserName, optarg);
                                auth_warning(CurEnv,
                                        "Processed by %s with -C %s",
                                        RealUserName, optarg);
+                       ConfFile = optarg;
+                       (void) setgid(RealGid);
+                       (void) setuid(RealUid);
+                       safecf = FALSE;
                        break;
 
                        break;
 
-                 case 'd':     /* debugging -- redo in case frozen */
-                       tTsetup(tTdvect, sizeof tTdvect, "0-99.1");
-                       tTflag(optarg);
-                       setbuf(stdout, (char *) NULL);
+                 case 'd':     /* debugging -- already done */
                        break;
 
                  case 'f':     /* from address */
                        break;
 
                  case 'f':     /* from address */
index 2c50a77..2e0ac10 100644 (file)
@@ -4,17 +4,13 @@
  *
  * %sccs.include.redist.c%
  *
  *
  * %sccs.include.redist.c%
  *
- *     @(#)pathnames.h 8.1 (Berkeley) %G%
+ *     @(#)pathnames.h 8.2 (Berkeley) %G%
  */
 
 #ifndef _PATH_SENDMAILCF
 # define _PATH_SENDMAILCF      "/etc/sendmail.cf"
 #endif
 
  */
 
 #ifndef _PATH_SENDMAILCF
 # define _PATH_SENDMAILCF      "/etc/sendmail.cf"
 #endif
 
-#ifndef _PATH_SENDMAILFC
-# define _PATH_SENDMAILFC      "/etc/sendmail.fc"
-#endif
-
 #ifndef _PATH_SENDMAILPID
 # ifdef BSD4_4
 #  define _PATH_SENDMAILPID    "/var/run/sendmail.pid"
 #ifndef _PATH_SENDMAILPID
 # ifdef BSD4_4
 #  define _PATH_SENDMAILPID    "/var/run/sendmail.pid"
index 9560bf5..fc5c107 100644 (file)
@@ -3,7 +3,7 @@
 .\"
 .\" %sccs.include.redist.man%
 .\"
 .\"
 .\" %sccs.include.redist.man%
 .\"
-.\"     @(#)sendmail.8 8.2 (Berkeley) %G%
+.\"     @(#)sendmail.8 8.3 (Berkeley) %G%
 .\"
 .Dd 
 .Dt SENDMAIL 8
 .\"
 .Dd 
 .Dt SENDMAIL 8
@@ -106,13 +106,10 @@ it is used for debugging configuration tables.
 Verify names only \- do not try to collect or deliver a message.
 Verify mode is normally used for validating
 users or mailing lists.
 Verify names only \- do not try to collect or deliver a message.
 Verify mode is normally used for validating
 users or mailing lists.
-.It Fl bz
-Create the configuration freeze file.
 .It Fl C Ns Ar file
 Use alternate configuration file.
 .Nm Sendmail
 refuses to run as root if an alternate configuration file is specified.
 .It Fl C Ns Ar file
 Use alternate configuration file.
 .Nm Sendmail
 refuses to run as root if an alternate configuration file is specified.
-The frozen configuration file is bypassed.
 .It Fl d Ns Ar X
 Set debugging value to
 .Ar X .
 .It Fl d Ns Ar X
 Set debugging value to
 .Ar X .
@@ -437,8 +434,6 @@ raw data for alias names
 data base of alias names
 .It Pa /etc/sendmail.cf
 configuration file
 data base of alias names
 .It Pa /etc/sendmail.cf
 configuration file
-.It Pa /etc/sendmail.fc
-frozen configuration
 .It Pa /etc/sendmail.hf
 help file
 .It Pa /var/log/sendmail.st
 .It Pa /etc/sendmail.hf
 help file
 .It Pa /var/log/sendmail.st
index 79b78a1..da2c8a1 100644 (file)
@@ -5,7 +5,7 @@
  *
  * %sccs.include.redist.c%
  *
  *
  * %sccs.include.redist.c%
  *
- *     @(#)sendmail.h  8.14 (Berkeley) %G%
+ *     @(#)sendmail.h  8.15 (Berkeley) %G%
  */
 
 /*
  */
 
 /*
@@ -15,7 +15,7 @@
 # ifdef _DEFINE
 # define EXTERN
 # ifndef lint
 # ifdef _DEFINE
 # define EXTERN
 # ifndef lint
-static char SmailSccsId[] =    "@(#)sendmail.h 8.14            %G%";
+static char SmailSccsId[] =    "@(#)sendmail.h 8.15            %G%";
 # endif
 # else /*  _DEFINE */
 # define EXTERN extern
 # endif
 # else /*  _DEFINE */
 # define EXTERN extern
@@ -790,7 +790,6 @@ EXTERN bool TryNullMXList;  /* if we are the best MX, try host directly */
 EXTERN char    SpaceSub;       /* substitution for <lwsp> */
 EXTERN int     PrivacyFlags;   /* privacy flags */
 extern char    *ConfFile;      /* location of configuration file [conf.c] */
 EXTERN char    SpaceSub;       /* substitution for <lwsp> */
 EXTERN int     PrivacyFlags;   /* privacy flags */
 extern char    *ConfFile;      /* location of configuration file [conf.c] */
-extern char    *FreezeFile;    /* location of frozen memory image [conf.c] */
 extern char    *PidFile;       /* location of proc id file [conf.c] */
 extern ADDRESS NullAddress;    /* a null (template) address [main.c] */
 EXTERN long    WkClassFact;    /* multiplier for message class -> priority */
 extern char    *PidFile;       /* location of proc id file [conf.c] */
 extern ADDRESS NullAddress;    /* a null (template) address [main.c] */
 EXTERN long    WkClassFact;    /* multiplier for message class -> priority */