Install latest Cygwin config files.
authorPhilip Hazel <ph10@hermes.cam.ac.uk>
Tue, 2 Aug 2005 09:09:27 +0000 (09:09 +0000)
committerPhilip Hazel <ph10@hermes.cam.ac.uk>
Tue, 2 Aug 2005 09:09:27 +0000 (09:09 +0000)
doc/doc-txt/ChangeLog
src/OS/Makefile-CYGWIN
src/OS/os.c-cygwin
src/OS/os.h-cygwin

index b39c70a2cd1babcb3cec386dd076ec4aed61f006..dfaa2aa75b9dbcb506fb64fe9ba239f41a1e4b64 100644 (file)
@@ -1,4 +1,4 @@
-$Cambridge: exim/doc/doc-txt/ChangeLog,v 1.190 2005/08/02 09:01:44 ph10 Exp $
+$Cambridge: exim/doc/doc-txt/ChangeLog,v 1.191 2005/08/02 09:09:27 ph10 Exp $
 
 Change log file for Exim from version 4.21
 -------------------------------------------
 
 Change log file for Exim from version 4.21
 -------------------------------------------
@@ -35,6 +35,8 @@ PH/08 Arrange for USE_INET_NTOA_FIX to be set in config.h for AIX systems as
       well as for IRIX systems, when gcc is being used. See the host.c source
       file for comments.
 
       well as for IRIX systems, when gcc is being used. See the host.c source
       file for comments.
 
+PH/09 Installed latest Cygwin configuration files from the Cygwin maintainer.
+
 
 Exim version 4.52
 -----------------
 
 Exim version 4.52
 -----------------
index 8bf51216c87b984c1172277c44aeb7f8b2b2ac2f..cbd50b085561681c28b39f772a784103fde25647 100644 (file)
@@ -1,4 +1,4 @@
-# $Cambridge: exim/src/OS/Makefile-CYGWIN,v 1.3 2005/05/23 16:58:55 fanf2 Exp $
+# $Cambridge: exim/src/OS/Makefile-CYGWIN,v 1.4 2005/08/02 09:09:27 ph10 Exp $
 
 # OS-specific file for Cygwin.
 
 
 # OS-specific file for Cygwin.
 
@@ -6,7 +6,7 @@
 
 HAVE_ICONV = yes
 CFLAGS= -g -Wall -O2
 
 HAVE_ICONV = yes
 CFLAGS= -g -Wall -O2
-LIBS= -lcrypt -lresolv -lm
+LIBS= -lcrypt -lresolv
 LIBS_EXIM= -liconv
 EXIWHAT_PS_ARG=-as
 EXIWHAT_KILL_SIGNAL=-USR1
 LIBS_EXIM= -liconv
 EXIWHAT_PS_ARG=-as
 EXIWHAT_KILL_SIGNAL=-USR1
@@ -65,9 +65,6 @@ SUPPORT_MBX=yes
 LOOKUP_DBM=yes
 LOOKUP_LSEARCH=yes
 
 LOOKUP_DBM=yes
 LOOKUP_LSEARCH=yes
 
-LDAP_LIB_TYPE=OPENLDAP2
-LIBS_EXIM +=-lldap
-
 # LOOKUP_CDB=yes
 LOOKUP_DNSDB=yes
 LOOKUP_DSEARCH=yes
 # LOOKUP_CDB=yes
 LOOKUP_DNSDB=yes
 LOOKUP_DSEARCH=yes
@@ -80,8 +77,15 @@ LOOKUP_PASSWD=yes
 # LOOKUP_PGSQL=yes
 # LOOKUP_WHOSON=yes
 
 # LOOKUP_PGSQL=yes
 # LOOKUP_WHOSON=yes
 
-# It is important to define this variable but its value is always overridden
-CONFIGURE_OWNER=544
+LDAP_LIB_TYPE=OPENLDAP2
+LIBS_EXIM +=-lldap
+
+# WITH_OLD_DEMIME=yes
+WITH_CONTENT_SCAN=yes
+
+# It is important to define these variables but the values are always overridden
+CONFIGURE_OWNER=18
+CONFIGURE_GROUP=544
 
 EXICYCLOG_MAX=10
 
 
 EXICYCLOG_MAX=10
 
@@ -109,8 +113,4 @@ MSGLOG_DIRECTORY_MODE = 0777
 SPOOL_DIRECTORY_MODE  = 0777
 SPOOL_MODE            = 0666
 
 SPOOL_DIRECTORY_MODE  = 0777
 SPOOL_MODE            = 0666
 
-# PERL_CC=gcc -g -O2 -I ../minires
-# PERL_CCOPTS= -dD -save-temps -I ../minires
-# PERL_LIBS = /usr/lib/perl5/5.6.1/cygwin-multi/auto/DynaLoader/DynaLoader.a -L/usr/lib/perl5/5.6.1/cygwin-multi/CORE -llibperl5_6_1
-
 # End
 # End
index 5459044e528fbf4dd1c7cffa632b4c12e61ebc8c..a3b4c643f922d8e66cb7afb561c97c99b793ae0c 100644 (file)
@@ -1,4 +1,4 @@
-/* $Cambridge: exim/src/OS/os.c-cygwin,v 1.2 2005/03/29 11:01:32 ph10 Exp $ */
+/* $Cambridge: exim/src/OS/os.c-cygwin,v 1.3 2005/08/02 09:09:27 ph10 Exp $
 
 /*************************************************
 *     Exim - an Internet mail transport agent    *
 
 /*************************************************
 *     Exim - an Internet mail transport agent    *
@@ -84,7 +84,7 @@ int cygwin_setgid(gid_t gid )
 }
 
 /* Background processes run at lower priority */
 }
 
 /* Background processes run at lower priority */
-static void setpriority()
+static void cygwin_setpriority()
 {
   if (!SetPriorityClass(GetCurrentProcess(), BELOW_NORMAL_PRIORITY_CLASS))
     SetPriorityClass(GetCurrentProcess(), IDLE_PRIORITY_CLASS);
 {
   if (!SetPriorityClass(GetCurrentProcess(), BELOW_NORMAL_PRIORITY_CLASS))
     SetPriorityClass(GetCurrentProcess(), IDLE_PRIORITY_CLASS);
@@ -152,7 +152,7 @@ static DWORD get_privileges ()
     cygwin_init is called from the OS_INIT macro in main(). */
 
 void cygwin_init(int argc, char ** argv, void * rup,
     cygwin_init is called from the OS_INIT macro in main(). */
 
 void cygwin_init(int argc, char ** argv, void * rup,
-                 void * eup, void * egp, void * cup)
+                 void * eup, void * egp, void * cup, void * cgp)
 {
   int i;
   uid_t myuid, systemuid;
 {
   int i;
   uid_t myuid, systemuid;
@@ -181,7 +181,7 @@ void cygwin_init(int argc, char ** argv, void * rup,
         fprintf(stderr, " Root / mapped to %s.\n", win32_path);
       }
       else if (argv[i][1] == 'b' && argv[i][2] == 'd')
         fprintf(stderr, " Root / mapped to %s.\n", win32_path);
       }
       else if (argv[i][1] == 'b' && argv[i][2] == 'd')
-        setpriority();
+        cygwin_setpriority();
     }
   }
   if (VERSION_IS_58M(cygwin_WinVersion)) {
     }
   }
   if (VERSION_IS_58M(cygwin_WinVersion)) {
@@ -220,9 +220,10 @@ void cygwin_init(int argc, char ** argv, void * rup,
     * (gid_t *) egp = adminsgid;
   }
 
     * (gid_t *) egp = adminsgid;
   }
 
-  /* Set the configuration uid to the system uid.
+  /* Set the configuration uid and gid to the system uid and admins gid.
      Note that exim uid is also accepted as owner of exim.conf. */
   * (uid_t *) cup = systemuid;
      Note that exim uid is also accepted as owner of exim.conf. */
   * (uid_t *) cup = systemuid;
+  * (gid_t *) cgp = adminsgid;
 
   if (privileged) {             /* Can setuid */
     if (cygwin_setgid(* (gid_t *) egp) /* Setuid to exim */
 
   if (privileged) {             /* Can setuid */
     if (cygwin_setgid(* (gid_t *) egp) /* Setuid to exim */
@@ -242,8 +243,8 @@ void cygwin_init(int argc, char ** argv, void * rup,
   if (cygwin_debug) {
     fprintf(stderr, "Starting uid %ld, gid %ld, ntsec %lu, privileged %d.\n",
             myuid, mygid, cygwin_internal(CW_CHECK_NTSEC, NULL), privileged);
   if (cygwin_debug) {
     fprintf(stderr, "Starting uid %ld, gid %ld, ntsec %lu, privileged %d.\n",
             myuid, mygid, cygwin_internal(CW_CHECK_NTSEC, NULL), privileged);
-    fprintf(stderr, "root_uid %ld, exim_uid %ld, exim_gid %ld, config_uid %ld.\n",
-            * (uid_t *) rup, * (uid_t *) eup, * (gid_t *) egp, * (uid_t *) cup);
+    fprintf(stderr, "root_uid %ld, exim_uid %ld, exim_gid %ld, config_uid %ld, config_gid %ld.\n",
+            * (uid_t *) rup, * (uid_t *) eup, * (gid_t *) egp, * (uid_t *) cup, * (gid_t *) cgp);
   }
   return;
 }
   }
   return;
 }
index 591f0965ed648dd803e267b289ac0df1b71b56ca..2f0de1d3f4af571c2e38a206b5bec51ee9274544 100644 (file)
@@ -1,4 +1,4 @@
-/* $Cambridge: exim/src/OS/os.h-cygwin,v 1.2 2005/05/24 08:15:01 tom Exp $ */
+/* $Cambridge: exim/src/OS/os.h-cygwin,v 1.3 2005/08/02 09:09:27 ph10 Exp $
 
 /* Exim: OS-specific C header file for Cygwin */
 
 
 /* Exim: OS-specific C header file for Cygwin */
 
@@ -7,9 +7,9 @@
 /* Define the OS_INIT macro that we insert in exim.c:main()
    to set the root and exim uid depending on the system */
 /* We use a special routine to initialize */
 /* Define the OS_INIT macro that we insert in exim.c:main()
    to set the root and exim uid depending on the system */
 /* We use a special routine to initialize */
-void cygwin_init(int, char **, void *, void *, void *, void *);
+void cygwin_init(int, char **, void *, void *, void *, void *, void *);
 #define OS_INIT\
 #define OS_INIT\
-  cygwin_init(argc, (char **) argv, &root_uid, &exim_uid, &exim_gid, &config_uid);
+  cygwin_init(argc, (char **) argv, &root_uid, &exim_uid, &exim_gid, &config_uid, &config_gid);
 
 /* We need a special mkdir that
    allows names starting with // */
 
 /* We need a special mkdir that
    allows names starting with // */
@@ -27,7 +27,7 @@ int cygwin_setgid(gid_t gid );
 extern unsigned int cygwin_WinVersion;
 
 #define BASE_62 36  /* Windows aliases lower and upper cases in filenames.
 extern unsigned int cygwin_WinVersion;
 
 #define BASE_62 36  /* Windows aliases lower and upper cases in filenames.
-           Consider reducing MAX_LOCALHOST_NUMBER */
+                       Consider reducing MAX_LOCALHOST_NUMBER */
 #define CRYPT_H
 #define HAVE_MMAP
 #define HAVE_SYS_VFS_H
 #define CRYPT_H
 #define HAVE_MMAP
 #define HAVE_SYS_VFS_H