]> git.ipfire.org Git - thirdparty/coreutils.git/commitdiff
(small_open, large_open): New macros.
authorPaul Eggert <eggert@cs.ucla.edu>
Thu, 25 May 2006 21:57:22 +0000 (21:57 +0000)
committerPaul Eggert <eggert@cs.ucla.edu>
Thu, 25 May 2006 21:57:22 +0000 (21:57 +0000)
(__open, __open64) [!_LIBC]: Remove.
(__gen_tempname): Use small_open and large_open instead of __open
and __open64.  This fixes a portability bug on HP-UX 11.11i
reported by Simon Wing-Tang in
<http://lists.gnu.org/archive/html/bug-coreutils/2006-05/msg00114.html>.

lib/ChangeLog
lib/tempname.c

index a34f5988fb372f5c8a29619b38b7d9c17f976391..b0a50952ec3e146ceaf4318e736257e89b1a549b 100644 (file)
@@ -1,3 +1,12 @@
+2006-05-25  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * tempname.c (small_open, large_open): New macros.
+       (__open, __open64) [!_LIBC]: Remove.
+       (__gen_tempname): Use small_open and large_open instead of __open
+       and __open64.  This fixes a portability bug on HP-UX 11.11i
+       reported by Simon Wing-Tang in
+       <http://lists.gnu.org/archive/html/bug-coreutils/2006-05/msg00114.html>.
+
 2006-05-23  Paul Eggert  <eggert@cs.ucla.edu>
 
        * filemode.c: Don't include <string.h>; this include was
index 3c9f59b32fd0ea5453a248996c64f74c72344d17..a25beb2059a10b329eedf6bf9460d404ec4004e9 100644 (file)
@@ -1,7 +1,7 @@
 /* tempname.c - generate the name of a temporary file.
 
    Copyright (C) 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-   2000, 2001, 2002, 2003, 2005 Free Software Foundation, Inc.
+   2000, 2001, 2002, 2003, 2005, 2006 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
 
 #if _LIBC
 # define struct_stat64 struct stat64
+# define small_open __open
+# define large_open __open64
 #else
 # include "stat-macros.h"
 # define struct_stat64 struct stat
+# define small_open open
+# define large_open open
 # define __getpid getpid
 # define __gettimeofday gettimeofday
 # define __mkdir mkdir
-# define __open open
-# define __open64 open
 # define __lxstat64(version, file, buf) lstat (file, buf)
 # define __xstat64(version, file, buf) stat (file, buf)
 #endif
@@ -269,11 +271,11 @@ __gen_tempname (char *tmpl, int kind)
       switch (kind)
        {
        case __GT_FILE:
-         fd = __open (tmpl, O_RDWR | O_CREAT | O_EXCL, S_IRUSR | S_IWUSR);
+         fd = small_open (tmpl, O_RDWR | O_CREAT | O_EXCL, S_IRUSR | S_IWUSR);
          break;
 
        case __GT_BIGFILE:
-         fd = __open64 (tmpl, O_RDWR | O_CREAT | O_EXCL, S_IRUSR | S_IWUSR);
+         fd = large_open (tmpl, O_RDWR | O_CREAT | O_EXCL, S_IRUSR | S_IWUSR);
          break;
 
        case __GT_DIR: