1
0
mirror of https://https.git.savannah.gnu.org/git/gnulib.git synced 2026-09-01 02:34:55 +00:00

416 Commits

Author SHA1 Message Date
Eric Blake d9d5054ceb symlink: new module, for Solaris 9 bug
symlink("a","link/") mistakenly succeeds.

* modules/symlink: New file.
* m4/symlink.m4 (gl_FUNC_SYMLINK): Likewise.
* lib/symlink.c: Likewise.
* m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add defaults.
* modules/unistd (Makefile.am): Substitute them.
* lib/unistd.in.h (symlink): Declare replacement.
* MODULES.html.sh (File system functions): Mention it.
* doc/posix-functions/symlink.texi (symlink): Likewise.
* modules/symlink-tests: New test.
* tests/test-symlink.c: Likewise.

Signed-off-by: Eric Blake <ebb9@byu.net>
2009-09-23 04:57:08 -06:00
Eric Blake 6ca71ffe39 remove: new module, for mingw and Solaris 9 bugs
Mingw obeys C89, but not POSIX, by not handling directories.
Solaris remove("file/") mistakenly succeeded.

* modules/remove: New file.
* lib/remove.c: Likewise.
* m4/remove.m4 (gl_FUNC_REMOVE): Likewise.
* m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add witnesses.
* modules/stdio (Makefile.am): Use them.
* lib/stdio.in.h (remove): Declare replacement.
* MODULES.html.sh (systems lacking POSIX:2008): Mention module.
* doc/posix-functions/remove.texi (remove): Likewise.
* modules/remove-tests: New test.
* tests/test-remove.c: Likewise.

Signed-off-by: Eric Blake <ebb9@byu.net>
2009-09-19 13:34:23 -06:00
Eric Blake 4a60ba548b unlink: new module, for Solaris 9 bug
unlink("file/") mistakenly succeeded.  This patch favors, but
does not enforce, GNU semantics that unlink("link-to-dir/")
flat-out fails rather than attempting to unlink "dir".

* modules/unlink: New file.
* lib/unlink.c: Likewise.
* m4/unlink.m4 (gl_FUNC_UNLINK): Likewise.
* m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add witnesses.
* modules/unistd (Makefile.am): Use them.
* lib/unistd.in.h (stat): Declare replacement.
* MODULES.html.sh (systems lacking POSIX:2008): Mention module.
* doc/posix-functions/unlink.texi (unlink): Likewise.
* modules/unlink-tests: New test.
* tests/test-unlink.c: Likewise.

Signed-off-by: Eric Blake <ebb9@byu.net>
2009-09-19 13:24:26 -06:00
Eric Blake 5794d89bd2 stat: new module, for mingw bug
Depending on the current directory, either stat(".",buf) or
stat("./",buf) would fail on mingw.

* modules/stat: New file.
* lib/stat.c: Likewise.
* m4/stat.m4 (gl_FUNC_STAT): Likewise.
* m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Add witnesses.
* modules/sys_stat (Makefile.am): Use them.
* lib/sys_stat.in.h (stat): Declare replacement.
* lib/openat.c (fstatat): Deal with lstat and stat being function
macros.
* modules/openat (Depends-on): Add inline.
* MODULES.html.sh (systems lacking POSIX:2008): Mention module.
* doc/posix-functions/stat.texi (stat): Likewise.
* modules/stat-tests: New test.
* tests/test-stat.c: Likewise.

Signed-off-by: Eric Blake <ebb9@byu.net>
2009-09-19 13:15:51 -06:00
Eric Blake f4aa44fff8 mkfifoat: new module
* modules/mkfifoat: New file.
* lib/mkfifoat.c: Likewise.
* m4/mkfifoat.m4 (gl_FUNC_MKFIFOAT): Likewise.
* m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Add witnesses.
* modules/sys_stat (Makefile.am): Use them.
* lib/sys_stat.in.h (mkfifoat, mknodat): Declare them.
* MODULES.html.sh (File system functions): Mention module.
* doc/posix-functions/mkfifoat.texi (mkfifoat): Likewise.
* doc/posix-functions/mknodat.texi (mknodat): Likewise.
* modules/mkfifoat-tests: New test.
* tests/test-mkfifoat.c: Likewise.

Signed-off-by: Eric Blake <ebb9@byu.net>
2009-09-08 06:24:44 -06:00
Eric Blake ac18127467 symlinkat: new module
* modules/symlinkat: New file.
* lib/symlinkat.c: Likewise.
* m4/symlinkat.m4 (gl_FUNC_SYMLINKAT): Likewise.
* m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add witnesses.
* modules/unistd (Makefile.am): Use them.
* lib/unistd.in.h (symlinkat, readlinkat): Declare them.
(faccessat) [GNULIB_POSIXCHECK]: Fix typo.
* lib/at-func.c (FUNC_RESULT): New macro, defaulting to int.
* MODULES.html.sh (File system functions): Mention module.
* doc/posix-functions/symlinkat.texi (symlinkat): Likewise.
* doc/posix-functions/readlinkat.texi (readlinkat): Likewise.
* modules/symlinkat-tests: New test.
* tests/test-symlinkat.c: Likewise.

Signed-off-by: Eric Blake <ebb9@byu.net>
2009-09-05 12:42:33 -06:00
Eric Blake 973333dc42 faccessat: new module
* modules/faccessat: New file.
* lib/faccessat.m4: Likewise.
* m4/faccessat.m4 (gl_FUNC_FACCESSAT): Likewise.
* m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add witness.
* modules/unistd (Makefile.am): Use it.
* lib/unistd.in.h (faccessat): Declare it.
(F_OK, X_OK, W_OK, R_OK): Provide definitions.
* lib/fcntl.in.h (AT_SYMLINK_FOLLOW, AT_EACCESS): Likewise.
* MODULES.html.sh (File system functions): Mention it.
* doc/posix-functions/faccessat.texi (faccessat): Likewise.
* doc/posix-headers/fcntl.texi (fcntl.h): Likewise.

Signed-off-by: Eric Blake <ebb9@byu.net>
2009-09-03 21:20:52 -06:00
Eric Blake 02fd4eb456 openat-safer: new module
* modules/openat-safer: New file.
* lib/openat-safer.c: Likewise.
* m4/fcntl-safer.m4 (gl_OPENAT_SAFER): New macro.
* lib/fcntl-safer.h (openat_safer): Declare.
* lib/fcntl--.h (openat): Override.
* MODULES.html.sh (File descriptor based I/O): Mention it.
* lib/openat.h: Add double-inclusion guards.
* lib/openat.c (includes): Only include "fcntl-safer.h", not
"fcntl--.h", so we can implement openat.
* modules/openat-safer-tests: New test.
* tests/test-openat-safer.c: New file.

Signed-off-by: Eric Blake <ebb9@byu.net>
2009-09-02 20:27:56 -06:00
Eric Blake 4f1227bdea dirent-safer: new module
* modules/dirent-safer: New file.
* lib/dirent--.h: Likewise.
* lib/dirent-safer.h: Likewise.
* lib/opendir-safer.c: Likewise.
* m4/dirent-safer.m4: Likewise.
* MODULES.html.sh (Enhancements for POSIX:2008): Mention it.
* modules/dirent-safer-tests: New test.
* tests/test-dirent-safer.c: New file.
* lib/fdopendir.c (includes): Ensure fdopendir is also safe.

Signed-off-by: Eric Blake <ebb9@byu.net>
2009-09-02 19:14:53 -06:00
Eric Blake d1aa3e4028 fdopendir: split into its own module
* lib/openat.c (fdopendir): Move...
* lib/fdopendir.c: ...into new file.
* modules/fdopendir: New module.
* m4/fdopendir.m4 (gl_FUNC_FDOPENDIR): New file.
* modules/openat (Depends-on): Add fdopendir.
* m4/openat.m4 (gl_FUNC_OPENAT): No longer need to check for
fdopendir here.
* modules/savedir (Depends-on): Only need fdopendir, not full
openat.
* lib/savedir.c (include): Use <dirent.h>, not "openat.h".
* lib/openat.h (fdopendir): Drop prototype.
* lib/dirent.in.h (fdopendir): Provide prototype.
* m4/dirent_h.m4 (gl_DIRENT_H_DEFAULTS): Add replacements.
* modules/dirent (Makefile.am): Substitute them.
* MODULES.html.sh (File system functions): Mention it.
* doc/posix-functions/fdopendir.texi (fdopendir): Likewise.
* modules/fdopendir-tests: New file.
* tests/test-fdopendir.c: Likewise.

Signed-off-by: Eric Blake <ebb9@byu.net>
2009-09-02 19:14:47 -06:00
Eric Blake 1786a4159d fcntl-h: rename from fcntl, in preparation for fcntl(2)
* modules/fcntl: Move <fcntl.h> header replacement...
* modules/fcntl-h: ...to new name, so as not to collide with
like-named function.
* tests/test-fcntl.c: Rename...
* tests/test-fcntl-h.c: ...to this.  Test FD_CLOEXEC.
* modules/fcntl-tests: Rename...
* modules/fcntl-h-tests: ...to this.  Update test file name.
* modules/chdir-long (Depends-on): Update clients.
* modules/chdir-safer (Depends-on): Likewise.
* modules/fcntl-safer (Depends-on): Likewise.
* modules/fts (Depends-on): Likewise.
* modules/mkancesdirs (Depends-on): Likewise.
* modules/mkdir-p (Depends-on): Likewise.
* modules/open (Depends-on): Likewise.
* modules/savewd (Depends-on): Likewise.
* MODULES.html.sh (systems lacking POSIX:2008): Update name.
* doc/posix-headers/fcntl.texi (fcntl.h): Update documentation.

Signed-off-by: Eric Blake <ebb9@byu.net>
2009-08-22 21:19:15 -06:00
Eric Blake ccb9c67980 popen-safer: prevent popen from clobbering std descriptors
* modules/popen-safer: New file.
* lib/popen-safer.c: Likewise.
* m4/stdio-safer.m4 (gl_POPEN_SAFER): New macro.
* lib/stdio--.h (popen): Provide override.
* lib/stdio-safer.h (popen_safer): Provide declaration.
* tests/test-popen.c (includes): Partially test this.
* modules/popen-safer-tests: New file, for more tests.
* tests/test-popen-safer.c: Likewise.
* MODULES.html.sh (file stream based Input/Output): Mention it.

Signed-off-by: Eric Blake <ebb9@byu.net>
2009-08-19 10:50:36 -06:00
Eric Blake a8f637e3c4 popen: fix cygwin 1.5 bug when stdin closed
* doc/posix-functions/popen.texi (popen): Document cygwin bugs.
* modules/popen: New file.
* modules/popen-tests: Likewise.
* tests/test-popen.c: Likewise.
* m4/popen.m4: Likewise.
* lib/popen.c: Likewise.
* lib/stdio.in.h (popen): New declaration.
* m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add popen.
* modules/stdio (Makefile.am): Likewise.
* MODULES.html.sh (systems lacking POSIX:2008): Mention it.

Signed-off-by: Eric Blake <ebb9@byu.net>
2009-08-19 07:42:30 -06:00
Eric Blake 2f5181b1a2 stddef: fix NetBSD 5.0 NULL bug, rather than working around it
* tests/test-locale.c: Revert previous patch related to NULL.
* tests/test-stdio.c: Likewise.
* tests/test-stdlib.c: Likewise.
* tests/test-string.c: Likewise.
* tests/test-unistd.c: Likewise.
* modules/time-tests (Depends-on): Add verify.
* modules/wchar-tests (Depends-on): Likewise.
* tests/test-time.c: Test for NULL compliance.
* tests/test-wchar.c: Likewise.
* modules/locale (Depends-on): Add stddef.
* modules/stdio (Depends-on): Likewise.
* modules/stdlib (Depends-on): Likewise.
* modules/string (Depends-on): Likewise.
* modules/time (Depends-on): Likewise.
* modules/unistd (Depends-on): Likewise.
* modules/wchar (Depends-on): Likewise.
* lib/locale.in.h (includes): Use <stddef.h> to fix NULL.
* lib/stdlib.in.h (includes): Likewise.
* lib/string.in.h (includes): Likewise.
* lib/time.in.h (includes): Likewise.
* lib/unistd.in.h (includes): Likewise.
* m4/locale_h.m4 (gl_LOCALE_H): Replace locale.h if stddef.h was
replaced.
* m4/wchar.m4 (gl_WCHAR_H): Likewise.
* m4/stddef_h.m4: New file.
* modules/stddef: Likewise.
* lib/stddef.in.h: Likewise.
* modules/stddef-tests: Likewise.
* tests/test-stddef.c: Likewise.
* MODULES.html.sh (Basic types <stddef.h>): Mention new module.
* doc/posix-headers/stddef.texi (stddef.h): Document the bug.
* doc/posix-headers/locale.texi (locale.h): Likewise.
* doc/posix-headers/stdio.texi (stdio.h): Likewise.
* doc/posix-headers/stdlib.texi (stdlib.h): Likewise.
* doc/posix-headers/string.texi (string.h): Likewise.
* doc/posix-headers/time.texi (time.h): Likewise.
* doc/posix-headers/unistd.texi (unistd.h): Likewise.
* doc/posix-headers/wchar.texi (wchar.h): Likewise.

Signed-off-by: Eric Blake <ebb9@byu.net>
2009-08-14 06:45:29 -06:00
Jim Meyering 27aa230554 selinux-at: new module
Initially written for coreutils, this module will soon be
used by findutils, too.
* MODULES.html.sh [Misc]: Add selinux-at.
* lib/selinux-at.h: New file, from coreutils.
* lib/selinux-at.c: Likewise.
* modules/selinux-at: Likewise.
(License): Change from LGPL to GPL, since it depends
on the GPL'd openat module.
2009-08-06 14:30:05 +02:00
Jim Meyering 8dc0e5d63e update-copyright: new module
* modules/update-copyright: New file.
* build-aux/update-copyright: New file.
* MODULES.html.sh (maint+release support): Add update-copyright.
2009-07-29 16:22:21 +02:00
Jim Meyering 675fbd30d4 argv-iter: new module
* MODULES.html.sh: Add argv-iter.
* lib/argv-iter.c, lib/argv-iter.h: New files.
* modules/argv-iter: New file.
* modules/argv-iter-tests: New file.
* tests/test-argv-iter.c: Test it.
2009-07-04 17:17:32 +02:00
Eric Blake 284e5295d9 strstr-simple: document new module
* MODULES.html.sh: Document new module.

Signed-off-by: Eric Blake <ebb9@byu.net>
2009-06-17 12:48:36 -06:00
Eric Blake e06226e324 docs: memchr is no longer obsolete
* MODULES.html.sh: Move memchr from obsolete to string.h section.
* lib/string.in.h (memchr): Simplify logic.

Signed-off-by: Eric Blake <ebb9@byu.net>
2009-06-15 20:56:24 -06:00
Bruno Haible 3666edd36b New module 'libunistring'. 2009-04-27 23:37:25 +02:00
Bruno Haible 63afac268d Rename module 'visibility'. 2009-04-02 00:27:40 +02:00
Simon Josefsson 68f982e01b Add lib-msvc-compat module. 2009-04-01 16:49:57 +02:00
Simon Josefsson 13e7b3562b Rename ld-version-script to lib-symbol-versions. 2009-04-01 07:04:49 +02:00
Simon Josefsson 8552e4ba0d New module u64. Make crypto/sha512 use it. 2009-03-31 16:27:55 +02:00
Paul Eggert 4cc93d2296 New modules nproc, pthread.
* MODULES.html.sh: Add pthread, nproc.
* lib/nproc.c: New file.
* lib/nproc.h: New file.
* lib/pthread.in.h: New file.
* m4/pthread.m4: New file.
* modules/nproc: New file.
* modules/pthread: New file.
2009-03-25 13:01:24 -07:00
David Lutterkort 032310a691 New module 'safe-alloc'. 2009-02-21 11:08:37 +01:00
Bruno Haible db95eb8bd0 Classify some recently added modules. 2008-12-22 02:13:17 +01:00
Bruno Haible 75a726b3ac Oops, typo. 2008-12-22 01:54:41 +01:00
Bruno Haible 4997feb303 Change subtitles to refer to POSIX:2008. 2008-12-22 01:51:57 +01:00
Bruno Haible 561e331c8d Change MODULES.html to refer to POSIX:2008 where possible. 2008-12-10 13:11:28 +01:00
Simon Josefsson c00c93e702 warnings: Split off some code to new module manywarnings. 2008-11-18 13:50:32 +01:00
Simon Josefsson 3aa989ad36 Add warnings module. 2008-11-11 10:29:18 +01:00
Simon Josefsson 4df5306dfd Add GFDLv1.3. 2008-11-04 09:12:32 +01:00
Simon Josefsson 66de54f8a1 Add modules for sys/times.h header and times function. 2008-10-28 18:19:49 +01:00
Jim Meyering 26af642c37 random_r: new module
* modules/random_r: New file.
* m4/random_r.m4: New file.
* lib/random_r.c: New file, from glibc.
* modules/random_r-tests: New file.
* tests/test-random_r.c: New file.
* lib/stdlib.in.h (srandom_r, initstate_r, setstate_r, random_r): Declare.
(RAND_MAX): Define.
* m4/stdlib_h.m4: Define and AC_SUBST GNULIB_RANDOM_R and HAVE_RANDOM_R.
* modules/stdlib: Substitute them, too.
* MODULES.html.sh (Extra functions based on POSIX:2001) [Misc]: Add it.
* doc/glibc-functions/initstate_r.texi: Mention the new module.
* doc/glibc-functions/random_r.texi: Likewise.
* doc/glibc-functions/setstate_r.texi: Likewise.
* doc/glibc-functions/srandom_r.texi: Likewise.
* config/srclist.txt: Mention it.
2008-10-23 16:38:01 +02:00
Jim Meyering 2c77dff78d ignore-value: new module
* modules/ignore-value: New file.
* lib/ignore-value.h: New file.
* MODULES.html.sh (Compiler warning management): New section,
just for this module.  More to come.
2008-10-17 11:22:46 +02:00
Simon Josefsson ceb82aa30f Add netdb.h replacement module.
Currently empty and unused, but that will change soon.
2008-10-15 14:48:59 +02:00
Simon Josefsson 61776a064d Add pmccabe2html to MODULES.html.sh. 2008-10-07 14:16:37 +02:00
Richard W.M. Jones e69247d77e flock: new module
* MODULES.html.sh: Add to list of modules.
* lib/flock.c: flock implementation for Windows and Unix systems
which have fcntl.
* doc/glibc-functions/flock.texi: Update documentation.
* lib/sys_file.in.h: <sys/file.h> header file.
* m4/flock.m4: M4 macros.
* m4/sys_file_h.m4: M4 macros for replacement sys/file.h.
* modules/flock: flock module.
* modules/flock-tests: flock tests module.
* modules/sys_file: sys/file.h module.
* tests/test-flock.c: test suite for flock.
2008-10-07 08:32:09 +02:00
Kamil Dudka 9121662f1a filevercmp: new module
* lib/filevercmp.h: New function filevercmp comparing version strings.
* lib/filevercmp.c: Implementation of filevercmp function.
* modules/filevercmp: Module metadata.
* tests/test-filevercmp.c: Unit test for new module.
* modules/filevercmp-tests: Unit test metadata.
* MODULES.html.sh: Add filevercmp module.
2008-10-03 15:03:04 +02:00
Richard W.M. Jones 9d7e96c82c fsync: new module
* lib/fsync.c: New file.
* m4/fsync.m4: New file.
* modules/fsync: New file.
* modules/fsync-tests: New file.
* tests/test-fsync.c: New file.
* modules/unistd: Substitute GNULIB_FSYNC and HAVE_FSYNC.
* m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Define and AC_SUBST
both GNULIB_FSYNC and HAVE_FSYNC.
* lib/unistd.in.h (@GNULIB_FSYNC@): Add a block for fsync.
* MODULES.html.sh (posix_functions): Add fsync.
* doc/posix-functions/fsync.texi: Update.
2008-10-02 08:44:44 +02:00
Bruno Haible 878aed7ca4 Clarify which modules are only for obsolete systems. 2008-09-21 18:10:21 +02:00
Bruno Haible cfa381fc27 New module 'strdup-posix'. 2008-09-21 14:54:54 +02:00
Bruno Haible 3aa0d4da24 New module 'perror'. 2008-09-14 13:50:55 +02:00
Bruno Haible b5ae144098 Remove module EOVERFLOW. 2008-09-14 00:56:22 +02:00
Bruno Haible 3d37b26404 New module 'errno'. 2008-09-14 00:41:33 +02:00
Bruno Haible ab01b09179 New module 'sigpipe-die'. 2008-08-31 16:11:47 +02:00
Simon Josefsson ca19d955eb Add bitrotate module. 2008-08-29 14:51:37 +02:00
Bruno Haible 30ec0c6764 Remove --cvs-urls option. 2008-08-29 12:07:37 +02:00
Bruno Haible 5141c54dc3 New module 'yield'. 2008-08-17 21:02:11 +02:00