bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

minor cleanups


From: Eric Blake
Subject: minor cleanups
Date: Wed, 07 Oct 2009 19:20:00 -0600
User-agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.23) Gecko/20090812 Thunderbird/2.0.0.23 Mnenhy/0.7.6.666

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

I noticed these minor issues today, so I'm pushing this.  I'm now heavily
entrenched in trying to write utimensat, and it's turning into quite a
project.

- --
Don't work too hard, make some time for fun as well!

Eric Blake             address@hidden
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (Cygwin)
Comment: Public key at home.comcast.net/~ericblake/eblake.gpg
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAkrNPkAACgkQ84KuGfSFAYCqOQCgiifQZnda9eoxJFHIR6Jf0XeG
6D0An3MrVCPl12al5rlhAlvvHANOvNmh
=q5YU
-----END PGP SIGNATURE-----
>From 4cfdc2ad7312588b038a55c6ecb1c89064e65d7d Mon Sep 17 00:00:00 2001
From: Eric Blake <address@hidden>
Date: Wed, 7 Oct 2009 08:17:36 -0600
Subject: [PATCH 1/2] openat, utimens: whitespace cleanup

* lib/openat.c: Prefer space throughout, rather than mix of 8
spaces vs. tabs.
* lib/at-func.c: Likewise.
* lib/utimens.c: Likewise.

Signed-off-by: Eric Blake <address@hidden>
---
 ChangeLog     |    8 +++++
 lib/at-func.c |   28 +++++++++---------
 lib/openat.c  |   92 ++++++++++++++++++++++++++++----------------------------
 lib/utimens.c |   78 ++++++++++++++++++++++++------------------------
 4 files changed, 107 insertions(+), 99 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index c120c09..8e4f204 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,13 @@
 2009-10-07  Eric Blake  <address@hidden>

+       openat, utimens: whitespace cleanup
+       * lib/openat.c: Prefer space throughout, rather than mix of 8
+       spaces vs. tabs.
+       * lib/at-func.c: Likewise.
+       * lib/utimens.c: Likewise.
+
+2009-10-07  Eric Blake  <address@hidden>
+
        openat: avoid using wrong fd
        * lib/openat.c (openat_permissive): Reject user's fd if saving the
        working directory chooses same fd.
diff --git a/lib/at-func.c b/lib/at-func.c
index 4e5ba2f..373b5f6 100644
--- a/lib/at-func.c
+++ b/lib/at-func.c
@@ -70,20 +70,20 @@ AT_FUNC_NAME (int fd, char const *file 
AT_FUNC_POST_FILE_PARAM_DECLS)
     char *proc_file = openat_proc_name (proc_buf, fd, file);
     if (proc_file)
       {
-       FUNC_RESULT proc_result = CALL_FUNC (proc_file);
-       int proc_errno = errno;
-       if (proc_file != proc_buf)
-         free (proc_file);
-       /* If the syscall succeeds, or if it fails with an unexpected
-          errno value, then return right away.  Otherwise, fall through
-          and resort to using save_cwd/restore_cwd.  */
-       if (0 <= proc_result)
-         return proc_result;
-       if (! EXPECTED_ERRNO (proc_errno))
-         {
-           errno = proc_errno;
-           return proc_result;
-         }
+        FUNC_RESULT proc_result = CALL_FUNC (proc_file);
+        int proc_errno = errno;
+        if (proc_file != proc_buf)
+          free (proc_file);
+        /* If the syscall succeeds, or if it fails with an unexpected
+           errno value, then return right away.  Otherwise, fall through
+           and resort to using save_cwd/restore_cwd.  */
+        if (0 <= proc_result)
+          return proc_result;
+        if (! EXPECTED_ERRNO (proc_errno))
+          {
+            errno = proc_errno;
+            return proc_result;
+          }
       }
   }

diff --git a/lib/openat.c b/lib/openat.c
index aae7782..2b15bb5 100644
--- a/lib/openat.c
+++ b/lib/openat.c
@@ -47,7 +47,7 @@ rpl_openat (int dfd, char const *filename, int flags, ...)
       va_start (arg, flags);

       /* We have to use PROMOTED_MODE_T instead of mode_t, otherwise GCC 4
-        creates crashing code when 'mode_t' is smaller than 'int'.  */
+         creates crashing code when 'mode_t' is smaller than 'int'.  */
       mode = va_arg (arg, PROMOTED_MODE_T);

       va_end (arg);
@@ -79,10 +79,10 @@ rpl_openat (int dfd, char const *filename, int flags, ...)
     {
       size_t len = strlen (filename);
       if (len > 0 && filename[len - 1] == '/')
-       {
-         errno = EISDIR;
-         return -1;
-       }
+        {
+          errno = EISDIR;
+          return -1;
+        }
     }
 #endif

@@ -106,16 +106,16 @@ rpl_openat (int dfd, char const *filename, int flags, ...)
       /* We know len is positive, since open did not fail with ENOENT.  */
       size_t len = strlen (filename);
       if (filename[len - 1] == '/')
-       {
-         struct stat statbuf;
-
-         if (fstat (fd, &statbuf) >= 0 && !S_ISDIR (statbuf.st_mode))
-           {
-             close (fd);
-             errno = ENOTDIR;
-             return -1;
-           }
-       }
+        {
+          struct stat statbuf;
+
+          if (fstat (fd, &statbuf) >= 0 && !S_ISDIR (statbuf.st_mode))
+            {
+              close (fd);
+              errno = ENOTDIR;
+              return -1;
+            }
+        }
     }
 #endif

@@ -143,7 +143,7 @@ openat (int fd, char const *file, int flags, ...)
       va_start (arg, flags);

       /* We have to use PROMOTED_MODE_T instead of mode_t, otherwise GCC 4
-        creates crashing code when 'mode_t' is smaller than 'int'.  */
+         creates crashing code when 'mode_t' is smaller than 'int'.  */
       mode = va_arg (arg, PROMOTED_MODE_T);

       va_end (arg);
@@ -165,7 +165,7 @@ openat (int fd, char const *file, int flags, ...)

 int
 openat_permissive (int fd, char const *file, int flags, mode_t mode,
-                  int *cwd_errno)
+                   int *cwd_errno)
 {
   struct saved_cwd saved_cwd;
   int saved_errno;
@@ -180,18 +180,18 @@ openat_permissive (int fd, char const *file, int flags, 
mode_t mode,
     char *proc_file = openat_proc_name (buf, fd, file);
     if (proc_file)
       {
-       int open_result = open (proc_file, flags, mode);
-       int open_errno = errno;
-       if (proc_file != buf)
-         free (proc_file);
-       /* If the syscall succeeds, or if it fails with an unexpected
-          errno value, then return right away.  Otherwise, fall through
-          and resort to using save_cwd/restore_cwd.  */
-       if (0 <= open_result || ! EXPECTED_ERRNO (open_errno))
-         {
-           errno = open_errno;
-           return open_result;
-         }
+        int open_result = open (proc_file, flags, mode);
+        int open_errno = errno;
+        if (proc_file != buf)
+          free (proc_file);
+        /* If the syscall succeeds, or if it fails with an unexpected
+           errno value, then return right away.  Otherwise, fall through
+           and resort to using save_cwd/restore_cwd.  */
+        if (0 <= open_result || ! EXPECTED_ERRNO (open_errno))
+          {
+            errno = open_errno;
+            return open_result;
+          }
       }
   }

@@ -199,7 +199,7 @@ openat_permissive (int fd, char const *file, int flags, 
mode_t mode,
   if (! save_ok)
     {
       if (! cwd_errno)
-       openat_save_fail (errno);
+        openat_save_fail (errno);
       *cwd_errno = errno;
     }
   if (0 <= fd && fd == saved_cwd.desc)
@@ -220,17 +220,17 @@ openat_permissive (int fd, char const *file, int flags, 
mode_t mode,
       err = open (file, flags, mode);
       saved_errno = errno;
       if (save_ok && restore_cwd (&saved_cwd) != 0)
-       {
-         if (! cwd_errno)
-           {
-             /* Don't write a message to just-created fd 2.  */
-             saved_errno = errno;
-             if (err == STDERR_FILENO)
-               close (err);
-             openat_restore_fail (saved_errno);
-           }
-         *cwd_errno = errno;
-       }
+        {
+          if (! cwd_errno)
+            {
+              /* Don't write a message to just-created fd 2.  */
+              saved_errno = errno;
+              if (err == STDERR_FILENO)
+                close (err);
+              openat_restore_fail (saved_errno);
+            }
+          *cwd_errno = errno;
+        }
     }

   free_cwd (&saved_cwd);
@@ -251,11 +251,11 @@ openat_needs_fchdir (void)
       char buf[OPENAT_BUFFER_SIZE];
       char *proc_file = openat_proc_name (buf, fd, ".");
       if (proc_file)
-       {
-         needs_fchdir = false;
-         if (proc_file != buf)
-           free (proc_file);
-       }
+        {
+          needs_fchdir = false;
+          if (proc_file != buf)
+            free (proc_file);
+        }
       close (fd);
     }

diff --git a/lib/utimens.c b/lib/utimens.c
index f7bc75e..86c1c5a 100644
--- a/lib/utimens.c
+++ b/lib/utimens.c
@@ -66,7 +66,7 @@ struct utimbuf

 int
 gl_futimens (int fd ATTRIBUTE_UNUSED,
-            char const *file, struct timespec const timespec[2])
+             char const *file, struct timespec const timespec[2])
 {
   /* Some Linux-based NFS clients are buggy, and mishandle time stamps
      of files in NFS file systems in some cases.  We have no
@@ -131,11 +131,11 @@ gl_futimens (int fd ATTRIBUTE_UNUSED,
     struct timeval const *t;
     if (timespec)
       {
-       timeval[0].tv_sec = timespec[0].tv_sec;
-       timeval[0].tv_usec = timespec[0].tv_nsec / 1000;
-       timeval[1].tv_sec = timespec[1].tv_sec;
-       timeval[1].tv_usec = timespec[1].tv_nsec / 1000;
-       t = timeval;
+        timeval[0].tv_sec = timespec[0].tv_sec;
+        timeval[0].tv_usec = timespec[0].tv_nsec / 1000;
+        timeval[1].tv_sec = timespec[1].tv_sec;
+        timeval[1].tv_usec = timespec[1].tv_nsec / 1000;
+        t = timeval;
       }
     else
       t = NULL;
@@ -143,27 +143,27 @@ gl_futimens (int fd ATTRIBUTE_UNUSED,
     if (fd < 0)
       {
 # if HAVE_FUTIMESAT
-       return futimesat (AT_FDCWD, file, t);
+        return futimesat (AT_FDCWD, file, t);
 # endif
       }
     else
       {
-       /* If futimesat or futimes fails here, don't try to speed things
-          up by returning right away.  glibc can incorrectly fail with
-          errno == ENOENT if /proc isn't mounted.  Also, Mandrake 10.0
-          in high security mode doesn't allow ordinary users to read
-          /proc/self, so glibc incorrectly fails with errno == EACCES.
-          If errno == EIO, EPERM, or EROFS, it's probably safe to fail
-          right away, but these cases are rare enough that they're not
-          worth optimizing, and who knows what other messed-up systems
-          are out there?  So play it safe and fall back on the code
-          below.  */
+        /* If futimesat or futimes fails here, don't try to speed things
+           up by returning right away.  glibc can incorrectly fail with
+           errno == ENOENT if /proc isn't mounted.  Also, Mandrake 10.0
+           in high security mode doesn't allow ordinary users to read
+           /proc/self, so glibc incorrectly fails with errno == EACCES.
+           If errno == EIO, EPERM, or EROFS, it's probably safe to fail
+           right away, but these cases are rare enough that they're not
+           worth optimizing, and who knows what other messed-up systems
+           are out there?  So play it safe and fall back on the code
+           below.  */
 # if HAVE_FUTIMESAT
-       if (futimesat (fd, NULL, t) == 0)
-         return 0;
+        if (futimesat (fd, NULL, t) == 0)
+          return 0;
 # elif HAVE_FUTIMES
-       if (futimes (fd, t) == 0)
-         return 0;
+        if (futimes (fd, t) == 0)
+          return 0;
 # endif
       }
 #endif /* HAVE_FUTIMESAT || HAVE_WORKING_UTIMES */
@@ -171,20 +171,20 @@ gl_futimens (int fd ATTRIBUTE_UNUSED,
     if (!file)
       {
 #if ! (HAVE_FUTIMESAT || (HAVE_WORKING_UTIMES && HAVE_FUTIMES))
-       errno = ENOSYS;
+        errno = ENOSYS;
 #endif

-       /* Prefer EBADF to ENOSYS if both error numbers apply.  */
-       if (errno == ENOSYS)
-         {
-           int fd2 = dup (fd);
-           int dup_errno = errno;
-           if (0 <= fd2)
-             close (fd2);
-           errno = (fd2 < 0 && dup_errno == EBADF ? EBADF : ENOSYS);
-         }
-
-       return -1;
+        /* Prefer EBADF to ENOSYS if both error numbers apply.  */
+        if (errno == ENOSYS)
+          {
+            int fd2 = dup (fd);
+            int dup_errno = errno;
+            if (0 <= fd2)
+              close (fd2);
+            errno = (fd2 < 0 && dup_errno == EBADF ? EBADF : ENOSYS);
+          }
+
+        return -1;
       }

 #if HAVE_WORKING_UTIMES
@@ -194,13 +194,13 @@ gl_futimens (int fd ATTRIBUTE_UNUSED,
       struct utimbuf utimbuf;
       struct utimbuf const *ut;
       if (timespec)
-       {
-         utimbuf.actime = timespec[0].tv_sec;
-         utimbuf.modtime = timespec[1].tv_sec;
-         ut = &utimbuf;
-       }
+        {
+          utimbuf.actime = timespec[0].tv_sec;
+          utimbuf.modtime = timespec[1].tv_sec;
+          ut = &utimbuf;
+        }
       else
-       ut = NULL;
+        ut = NULL;

       return utime (file, ut);
     }
-- 
1.6.5.rc1


>From be6ecdb426dd16eb475d3f869a3c27bd2271cca5 Mon Sep 17 00:00:00 2001
From: Eric Blake <address@hidden>
Date: Wed, 7 Oct 2009 14:49:38 -0600
Subject: [PATCH 2/2] maint: minor cleanups

* lib/fts.c (ATTRIBUTE_UNUSED): Delete; use gnulib-guaranteed
_ATTRIBUTE_UNUSED instead.
* lib/getdate.y (ATTRIBUTE_UNUSED): Likewise.
* lib/utimens.c (ATTRIBUTE_UNUSED): Likewise.
* modules/linkat-tests (Files): Distribute test-link.h.

Signed-off-by: Eric Blake <address@hidden>
---
 ChangeLog            |    7 +++++++
 lib/fts.c            |   16 +++-------------
 lib/getdate.y        |   14 ++------------
 lib/utimens.c        |   12 +-----------
 modules/linkat-tests |    1 +
 5 files changed, 14 insertions(+), 36 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 8e4f204..e1b6ca8 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,12 @@
 2009-10-07  Eric Blake  <address@hidden>

+       maint: minor cleanups
+       * lib/fts.c (ATTRIBUTE_UNUSED): Delete; use gnulib-guaranteed
+       _UNUSED_PARAMETER_ instead.
+       * lib/getdate.y (ATTRIBUTE_UNUSED): Likewise.
+       * lib/utimens.c (ATTRIBUTE_UNUSED): Likewise.
+       * modules/linkat-tests (Files): Distribute test-link.h.
+
        openat, utimens: whitespace cleanup
        * lib/openat.c: Prefer space throughout, rather than mix of 8
        spaces vs. tabs.
diff --git a/lib/fts.c b/lib/fts.c
index 041f9f0..40a837e 100644
--- a/lib/fts.c
+++ b/lib/fts.c
@@ -173,16 +173,6 @@ enum Fts_stat
 # define __set_errno(Val) errno = (Val)
 #endif

-#ifndef __attribute__
-# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 8)
-#  define __attribute__(x) /* empty */
-# endif
-#endif
-
-#ifndef ATTRIBUTE_UNUSED
-# define ATTRIBUTE_UNUSED __attribute__ ((__unused__))
-#endif
-
 /* If this host provides the openat function, then we can avoid
    attempting to open "." in some initialization code below.  */
 #ifdef HAVE_OPENAT
@@ -727,9 +717,9 @@ leaf_optimization_applies (int dir_fd)

 #else
 static bool
-dirent_inode_sort_may_be_useful (int dir_fd ATTRIBUTE_UNUSED) { return true; }
+dirent_inode_sort_may_be_useful (int dir_fd _UNUSED_PARAMETER_) { return true; 
}
 static bool
-leaf_optimization_applies (int dir_fd ATTRIBUTE_UNUSED) { return false; }
+leaf_optimization_applies (int dir_fd _UNUSED_PARAMETER_) { return false; }
 #endif

 #if GNULIB_FTS
@@ -1079,7 +1069,7 @@ check_for_dir:
  */
 /* ARGSUSED */
 int
-fts_set(FTS *sp ATTRIBUTE_UNUSED, FTSENT *p, int instr)
+fts_set(FTS *sp _UNUSED_PARAMETER_, FTSENT *p, int instr)
 {
        if (instr != 0 && instr != FTS_AGAIN && instr != FTS_FOLLOW &&
            instr != FTS_NOINSTR && instr != FTS_SKIP) {
diff --git a/lib/getdate.y b/lib/getdate.y
index f022710..94160b2 100644
--- a/lib/getdate.y
+++ b/lib/getdate.y
@@ -78,16 +78,6 @@
    of `digit' even when the host does not conform to POSIX.  */
 #define ISDIGIT(c) ((unsigned int) (c) - '0' <= 9)

-#ifndef __attribute__
-# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 8) || __STRICT_ANSI__
-#  define __attribute__(x)
-# endif
-#endif
-
-#ifndef ATTRIBUTE_UNUSED
-# define ATTRIBUTE_UNUSED __attribute__ ((__unused__))
-#endif
-
 /* Shift A right by B bits portably, by dividing A by 2**B and
    truncating towards minus infinity.  A and B should be free of side
    effects, and B should be in the range 0 <= B <= INT_BITS - 2, where
@@ -1155,8 +1145,8 @@ yylex (YYSTYPE *lvalp, parser_control *pc)

 /* Do nothing if the parser reports an error.  */
 static int
-yyerror (parser_control const *pc ATTRIBUTE_UNUSED,
-        char const *s ATTRIBUTE_UNUSED)
+yyerror (parser_control const *pc _UNUSED_PARAMETER_,
+        char const *s _UNUSED_PARAMETER_)
 {
   return 0;
 }
diff --git a/lib/utimens.c b/lib/utimens.c
index 86c1c5a..10d2c82 100644
--- a/lib/utimens.c
+++ b/lib/utimens.c
@@ -44,16 +44,6 @@ struct utimbuf
 };
 #endif

-#ifndef __attribute__
-# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 8)
-#  define __attribute__(x)
-# endif
-#endif
-
-#ifndef ATTRIBUTE_UNUSED
-# define ATTRIBUTE_UNUSED __attribute__ ((__unused__))
-#endif
-
 /* Set the access and modification time stamps of FD (a.k.a. FILE) to be
    TIMESPEC[0] and TIMESPEC[1], respectively.
    FD must be either negative -- in which case it is ignored --
@@ -65,7 +55,7 @@ struct utimbuf
    Return 0 on success, -1 (setting errno) on failure.  */

 int
-gl_futimens (int fd ATTRIBUTE_UNUSED,
+gl_futimens (int fd _UNUSED_PARAMETER_,
              char const *file, struct timespec const timespec[2])
 {
   /* Some Linux-based NFS clients are buggy, and mishandle time stamps
diff --git a/modules/linkat-tests b/modules/linkat-tests
index 9fb6505..1f9aafa 100644
--- a/modules/linkat-tests
+++ b/modules/linkat-tests
@@ -1,4 +1,5 @@
 Files:
+tests/test-link.h
 tests/test-linkat.c

 Depends-on:
-- 
1.6.5.rc1


reply via email to

[Prev in Thread] Current Thread [Next in Thread]