Remove confusing #ifndef environ
[users/jgh/exim.git] / src / OS / os.h-cygwin
index 740300af6758d50612b05b6f75fe20fd97ff56a2..6ef59e0ccb10907a0a92e359848637b6d6bc598e 100644 (file)
@@ -1,19 +1,7 @@
 /* Exim: OS-specific C header file for Cygwin */
 
-/* This code was supplied by Pierre A. Humblet <Pierre.Humblet@ieee.org> */
-
-/* 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 *);
-#define OS_INIT\
-  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 // */
-#include <sys/stat.h> /* Do not redefine mkdir in sys/stat.h */
-int cygwin_mkdir( const char *_path, mode_t __mode );
-#define mkdir cygwin_mkdir /* redefine mkdir elsewhere */
+/* This code was supplied by Pierre A. Humblet <Pierre.Humblet@ieee.org>
+   December 2002. Updated Jan 2015. */
 
 /* Redefine the set*id calls to run when faking root */
 #include <unistd.h>   /* Do not redefine in unitsd.h */
@@ -22,8 +10,8 @@ int cygwin_setgid(gid_t gid );
 #define setuid cygwin_setuid
 #define setgid cygwin_setgid
 
-extern unsigned int cygwin_WinVersion;
-
+#define os_strsignal strsignal
+#define OS_STRSIGNAL
 #define BASE_62 36  /* Windows aliases lower and upper cases in filenames.
                        Consider reducing MAX_LOCALHOST_NUMBER */
 #define CRYPT_H
@@ -31,7 +19,6 @@ extern unsigned int cygwin_WinVersion;
 #define HAVE_SYS_VFS_H
 #define NO_IP_VAR_H
 #define NO_IP_OPTIONS
-#define F_FREESP     O_TRUNC
 /* Defining LOAD_AVG_NEEDS_ROOT causes an initial
    call to os_getloadavg. In our case this is beneficial
    because it initializes the counts */
@@ -48,4 +35,7 @@ struct  { \
   DWORD SubAuthority[n]; \
 } name = { SID_REVISION, n, {SECURITY_NT_AUTHORITY}, {sid}}
 
+/* default is non-const */
+#define ICONV_ARG2_TYPE const char **
+
 /* End */