Mercurial > hg > octave-lyh > gnulib-hg
changeset 11941:909daff94315
errno: use consistently
* lib/c-stack.c (ENOTSUP): <errno.h> guarantees a definition.
* lib/canonicalize-lgpl.c (ENAMETOOLONG): Likewise.
* lib/canonicalize.c (ELOOP): Likewise.
* lib/inet_ntop.c (EAFNOSUPPORT): Likewise.
* lib/inet_pton.c (EAFNOSUPPORT): Likewise.
* lib/lchown.c (EOPNOTSUPP): Likewise.
* lib/openat-priv.h (ENOSYS, EOPNOTSUPP): Likewise.
* lib/savewd.c (ESTALE): Likewise.
* lib/settime.c (ENOSYS): Likewise.
* lib/utimens.c (ENOSYS): Likewise.
* lib/xgethostname.c (ENAMETOOLONG): Likewise.
* lib/chdir-safer.c (ELOOP): Likewise.
(chdir_no_follow): Use HAVE_READLINK, not ELOOP, as witness.
* modules/c-stack (Depends-on): Add errno.
* modules/canonicalize (Depends-on): Likewise.
* modules/chdir-safer (Depends-on): Likewise.
* modules/fdopendir (Depends-on): Likewise.
* modules/inet_ntop (Depends-on): Likewise.
* modules/inet_pton (Depends-on): Likewise.
* modules/lchown (Depends-on): Likewise.
* modules/openat (Depends-on): Likewise.
* modules/savewd (Depends-on): Likewise.
* modules/settime (Depends-on): Likewise.
* m4/chdir-safer.m4 (gl_CHDIR_SAFER): Check for readlink.
Signed-off-by: Eric Blake <ebb9@byu.net>
author | Eric Blake <ebb9@byu.net> |
---|---|
date | Wed, 02 Sep 2009 17:06:43 -0600 |
parents | 6dd8c8815b1f |
children | d1047ae4b8d5 |
files | ChangeLog lib/c-stack.c lib/canonicalize-lgpl.c lib/canonicalize.c lib/chdir-safer.c lib/inet_ntop.c lib/inet_pton.c lib/lchown.c lib/openat-priv.h lib/savewd.c lib/settime.c lib/utimens.c lib/xgethostname.c m4/chdir-safer.m4 modules/c-stack modules/canonicalize modules/chdir-safer modules/fdopendir modules/inet_ntop modules/inet_pton modules/lchown modules/openat modules/savewd modules/settime modules/utimens |
diffstat | 25 files changed, 56 insertions(+), 93 deletions(-) [+] |
line wrap: on
line diff
--- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,31 @@ 2009-09-02 Eric Blake <ebb9@byu.net> + errno: use consistently + * lib/c-stack.c (ENOTSUP): <errno.h> guarantees a definition. + * lib/canonicalize-lgpl.c (ENAMETOOLONG): Likewise. + * lib/canonicalize.c (ELOOP): Likewise. + * lib/inet_ntop.c (EAFNOSUPPORT): Likewise. + * lib/inet_pton.c (EAFNOSUPPORT): Likewise. + * lib/lchown.c (EOPNOTSUPP): Likewise. + * lib/openat-priv.h (ENOSYS, EOPNOTSUPP): Likewise. + * lib/savewd.c (ESTALE): Likewise. + * lib/settime.c (ENOSYS): Likewise. + * lib/utimens.c (ENOSYS): Likewise. + * lib/xgethostname.c (ENAMETOOLONG): Likewise. + * lib/chdir-safer.c (ELOOP): Likewise. + (chdir_no_follow): Use HAVE_READLINK, not ELOOP, as witness. + * modules/c-stack (Depends-on): Add errno. + * modules/canonicalize (Depends-on): Likewise. + * modules/chdir-safer (Depends-on): Likewise. + * modules/fdopendir (Depends-on): Likewise. + * modules/inet_ntop (Depends-on): Likewise. + * modules/inet_pton (Depends-on): Likewise. + * modules/lchown (Depends-on): Likewise. + * modules/openat (Depends-on): Likewise. + * modules/savewd (Depends-on): Likewise. + * modules/settime (Depends-on): Likewise. + * m4/chdir-safer.m4 (gl_CHDIR_SAFER): Check for readlink. + fts: avoid leaking fds * modules/fts (Depends-on): Add cloexec. * lib/fts.c (opendirat, diropen, fts_build): Set close-on-exec
--- a/lib/c-stack.c +++ b/lib/c-stack.c @@ -46,9 +46,6 @@ #define _(msgid) gettext (msgid) #include <errno.h> -#ifndef ENOTSUP -# define ENOTSUP EINVAL -#endif #include <signal.h> #if ! HAVE_STACK_T && ! defined stack_t
--- a/lib/canonicalize-lgpl.c +++ b/lib/canonicalize-lgpl.c @@ -1,5 +1,5 @@ /* Return the canonical absolute name of a given file. - Copyright (C) 1996-2003, 2005-2008 Free Software Foundation, Inc. + Copyright (C) 1996-2003, 2005-2009 Free Software Foundation, Inc. This file is part of the GNU C Library. This program is free software: you can redistribute it and/or modify @@ -50,9 +50,6 @@ #include <errno.h> #ifndef _LIBC # define __set_errno(e) errno = (e) -# ifndef ENAMETOOLONG -# define ENAMETOOLONG EINVAL -# endif #endif #ifdef _LIBC
--- a/lib/canonicalize.c +++ b/lib/canonicalize.c @@ -38,9 +38,6 @@ #include "xalloc.h" #include "xgetcwd.h" -#ifndef ELOOP -# define ELOOP 0 -#endif #ifndef __set_errno # define __set_errno(Val) errno = (Val) #endif
--- a/lib/chdir-safer.c +++ b/lib/chdir-safer.c @@ -1,6 +1,6 @@ /* much like chdir(2), but safer - Copyright (C) 2005-2006, 2008 Free Software Foundation, Inc. + Copyright (C) 2005-2006, 2008-2009 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 @@ -29,8 +29,8 @@ #include <sys/stat.h> #include "same-inode.h" -#ifndef ELOOP -# define ELOOP 0 +#ifndef HAVE_READLINK +# define HAVE_READLINK 0 #endif /* Like chdir, but fail if DIR is a symbolic link to a directory (or @@ -51,9 +51,9 @@ they are the same file; if they are different files, set errno to ELOOP (the same value that open uses for symlinks with O_NOFOLLOW) so the caller can report a failure. - Skip this check if ELOOP == 0, which should be the case + Skip this check if HAVE_READLINK == 0, which should be the case on any system that lacks symlink support. */ - if (ELOOP && ! HAVE_WORKING_O_NOFOLLOW) + if (HAVE_READLINK && ! HAVE_WORKING_O_NOFOLLOW) { struct stat sb1; result = lstat (dir, &sb1);
--- a/lib/inet_ntop.c +++ b/lib/inet_ntop.c @@ -1,6 +1,6 @@ /* inet_ntop.c -- convert IPv4 and IPv6 addresses from binary to text form - Copyright (C) 2005, 2006, 2008 Free Software Foundation, Inc. + Copyright (C) 2005, 2006, 2008, 2009 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 @@ -42,10 +42,6 @@ #include <string.h> #include <errno.h> -#ifndef EAFNOSUPPORT -# define EAFNOSUPPORT EINVAL -#endif - #define NS_IN6ADDRSZ 16 #define NS_INT16SZ 2
--- a/lib/inet_pton.c +++ b/lib/inet_pton.c @@ -1,6 +1,6 @@ /* inet_pton.c -- convert IPv4 and IPv6 addresses from text to binary form - Copyright (C) 2006, 2008 Free Software Foundation, Inc. + Copyright (C) 2006, 2008, 2009 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 @@ -41,10 +41,6 @@ #include <string.h> #include <errno.h> -#ifndef EAFNOSUPPORT -# define EAFNOSUPPORT EINVAL -#endif - #define NS_INADDRSZ 4 #define NS_IN6ADDRSZ 16 #define NS_INT16SZ 2
--- a/lib/lchown.c +++ b/lib/lchown.c @@ -30,16 +30,6 @@ #include <errno.h> #include <sys/stat.h> -/* Some systems don't have EOPNOTSUPP. */ -#ifndef EOPNOTSUPP -# ifdef ENOTSUP -# define EOPNOTSUPP ENOTSUP -# else -/* Some systems don't have ENOTSUP either. */ -# define EOPNOTSUPP EINVAL -# endif -#endif - /* Work just like chown, except when FILE is a symbolic link. In that case, set errno to EOPNOTSUPP and return -1. But if autoconf tests determined that chown modifies
--- a/lib/openat-priv.h +++ b/lib/openat-priv.h @@ -1,6 +1,6 @@ /* Internals for openat-like functions. - Copyright (C) 2005, 2006 Free Software Foundation, Inc. + Copyright (C) 2005, 2006, 2009 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 @@ -23,26 +23,6 @@ #define OPENAT_BUFFER_SIZE 512 char *openat_proc_name (char buf[OPENAT_BUFFER_SIZE], int fd, char const *file); -/* Some systems don't have ENOSYS. */ -#ifndef ENOSYS -# ifdef ENOTSUP -# define ENOSYS ENOTSUP -# else -/* Some systems don't have ENOTSUP either. */ -# define ENOSYS EINVAL -# endif -#endif - -/* Some systems don't have EOPNOTSUPP. */ -#ifndef EOPNOTSUPP -# ifdef ENOTSUP -# define EOPNOTSUPP ENOTSUP -# else -/* Some systems don't have ENOTSUP either. */ -# define EOPNOTSUPP EINVAL -# endif -#endif - /* Trying to access a BUILD_PROC_NAME file will fail on systems without /proc support, and even on systems *with* ProcFS support. Return nonzero if the failure may be legitimate, e.g., because /proc is not
--- a/lib/savewd.c +++ b/lib/savewd.c @@ -1,6 +1,6 @@ /* Save and restore the working directory, possibly using a child process. - Copyright (C) 2006, 2007 Free Software Foundation, Inc. + Copyright (C) 2006, 2007, 2009 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 @@ -34,10 +34,6 @@ #include "dirname.h" #include "fcntl-safer.h" -#ifndef ESTALE -# define ESTALE -1 -#endif - /* Save the working directory into *WD, if it hasn't been saved already. Return true if a child has been forked to do the real work. */
--- a/lib/settime.c +++ b/lib/settime.c @@ -1,6 +1,6 @@ /* settime -- set the system clock - Copyright (C) 2002, 2004, 2005, 2006, 2007 Free Software + Copyright (C) 2002, 2004, 2005, 2006, 2007, 2009 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify @@ -27,16 +27,6 @@ #include <errno.h> -/* Some systems don't have ENOSYS. */ -#ifndef ENOSYS -# ifdef ENOTSUP -# define ENOSYS ENOTSUP -# else -/* Some systems don't have ENOTSUP either. */ -# define ENOSYS EINVAL -# endif -#endif - /* Set the system time. */ int
--- a/lib/utimens.c +++ b/lib/utimens.c @@ -1,7 +1,7 @@ /* Set file access and modification times. - Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008 Free Software - Foundation, Inc. + Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009 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 the @@ -44,16 +44,6 @@ }; #endif -/* Some systems don't have ENOSYS. */ -#ifndef ENOSYS -# ifdef ENOTSUP -# define ENOSYS ENOTSUP -# else -/* Some systems don't have ENOTSUP either. */ -# define ENOSYS EINVAL -# endif -#endif - #ifndef __attribute__ # if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 8) # define __attribute__(x)
--- a/lib/xgethostname.c +++ b/lib/xgethostname.c @@ -1,7 +1,7 @@ /* xgethostname.c -- return current hostname with unlimited length - Copyright (C) 1992, 1996, 2000, 2001, 2003, 2004, 2005, 2006 Free - Software Foundation, Inc. + Copyright (C) 1992, 1996, 2000, 2001, 2003, 2004, 2005, 2006, 2009 + 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 @@ -29,10 +29,6 @@ #include "xalloc.h" -#ifndef ENAMETOOLONG -# define ENAMETOOLONG 0 -#endif - #ifndef INITIAL_HOSTNAME_LENGTH # define INITIAL_HOSTNAME_LENGTH 34 #endif
--- a/m4/chdir-safer.m4 +++ b/m4/chdir-safer.m4 @@ -1,5 +1,5 @@ -#serial 3 -dnl Copyright (C) 2005, 2006 Free Software Foundation, Inc. +#serial 4 +dnl Copyright (C) 2005, 2006, 2009 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -7,4 +7,5 @@ AC_DEFUN([gl_CHDIR_SAFER], [ AC_LIBOBJ([chdir-safer]) + AC_CHECK_FUNCS_ONCE([readlink]) ])
--- a/modules/c-stack +++ b/modules/c-stack @@ -8,6 +8,7 @@ Depends-on: gettext-h +errno exitfail unistd raise
--- a/modules/canonicalize +++ b/modules/canonicalize @@ -9,6 +9,7 @@ Depends-on: areadlink-with-size +errno file-set filenamecat hash-triple
--- a/modules/chdir-safer +++ b/modules/chdir-safer @@ -7,6 +7,7 @@ m4/chdir-safer.m4 Depends-on: +errno fchdir fcntl-h open
--- a/modules/fdopendir +++ b/modules/fdopendir @@ -8,8 +8,9 @@ m4/fdopendir.m4 Depends-on: +dirent +errno extensions -dirent fchdir openat-die save-cwd
--- a/modules/inet_ntop +++ b/modules/inet_ntop @@ -9,6 +9,7 @@ socklen sys_socket arpa_inet +errno netinet_in extensions
--- a/modules/inet_pton +++ b/modules/inet_pton @@ -10,6 +10,7 @@ socklen sys_socket arpa_inet +errno netinet_in extensions
--- a/modules/openat +++ b/modules/openat @@ -16,6 +16,7 @@ Depends-on: dirname +errno extensions fchdir fdopendir
--- a/modules/savewd +++ b/modules/savewd @@ -8,6 +8,7 @@ Depends-on: dirname +errno exit fchdir fcntl-safer