Compiler masochism compliance.
[exim.git] / src / src / directory.c
index db7f68c363f1651fa9ec3256ac9d791ad92dcaaa..d6cac2cb8096d6dce6042890f6203054bee17bba 100644 (file)
@@ -1,10 +1,10 @@
-/* $Cambridge: exim/src/src/directory.c,v 1.1 2004/10/07 10:39:01 ph10 Exp $ */
+/* $Cambridge: exim/src/src/directory.c,v 1.6 2009/11/16 19:50:36 nm4 Exp $ */
 
 /*************************************************
 *     Exim - an Internet mail transport agent    *
 *************************************************/
 
-/* Copyright (c) University of Cambridge 1995 - 2004 */
+/* Copyright (c) University of Cambridge 1995 - 2009 */
 /* See the file NOTICE for conditions of use and distribution. */
 
 #include "exim.h"
@@ -36,10 +36,12 @@ Returns:    panic on failure if panic is set; otherwise return FALSE;
 */
 
 BOOL
-directory_make(uschar *parent, uschar *name, int mode, BOOL panic)
+directory_make(const uschar *parent, const uschar *name,
+               int mode, BOOL panic)
 {
 BOOL use_chown = parent == spool_directory && geteuid() == root_uid;
-uschar *p, *slash;
+uschar *p;
+const uschar *slash;
 int c = 1;
 struct stat statbuf;
 uschar buffer[256];
@@ -47,7 +49,7 @@ uschar buffer[256];
 if (parent == NULL)
   {
   p = buffer + 1;
-  slash = parent = US"";
+  slash = parent = CUS"";
   }
 else
   {
@@ -74,13 +76,13 @@ while (c != 0 && *p != 0)
 
     /* Set the ownership if necessary. */
 
-    if (use_chown) Uchown(buffer, exim_uid, exim_gid);
+    if (use_chown) (void)Uchown(buffer, exim_uid, exim_gid);
 
     /* It appears that any mode bits greater than 0777 are ignored by
     mkdir(), at least on some operating systems. Therefore, if the mode
     contains any such bits, do an explicit mode setting. */
 
-    if ((mode & 0777000) != 0) Uchmod(buffer, mode);
+    if ((mode & 0777000) != 0) (void)Uchmod(buffer, mode);
     }
   *p++ = c;
   }