diff options
author | Eric Blake <ebb9@byu.net> | 2009-11-11 13:23:04 -0700 |
---|---|---|
committer | Eric Blake <ebb9@byu.net> | 2009-11-11 19:24:35 -0700 |
commit | 599bbd22717fdd0f8d6b8a6f54b99b2a9fa7b410 (patch) | |
tree | 1ee79736ff3a7d917bdc1274872d9ba51731a902 /doc/posix-functions/mknod.texi | |
parent | 08166afd7322d40407cf62e3c98b97782d7d1af0 (diff) | |
download | gnulib-599bbd22717fdd0f8d6b8a6f54b99b2a9fa7b410.tar.gz |
mknod: new module
Solaris 9 mknod("name/",mode,dev) mistakenly creates "name" for
non-directory mode. FreeBSD 7.2 mknod("dangling/",mode,dev)
mistakenly creates the target of the symlink if run as root.
FreeBSD and OpenBSD mknod("fifo",S_IFIFO|mode,0) fails for non-root.
Use of mknod caused link failures on mingw.
* modules/mknod: New file.
* m4/mknod.m4 (gl_FUNC_MKNOD): Likewise.
* lib/mknod.c (mknod): Likewise.
* m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Set witness
defaults.
* modules/sys_stat (Makefile.am): Substitute them.
* lib/sys_stat.in.h (mknod): Declare replacement.
* MODULES.html.sh (Support for systems lacking POSIX:2008):
Document it.
* doc/posix-functions/mknod.texi (mknod): Likewise.
* modules/mknod-tests: New test.
* tests/test-mknod.c: Likewise.
Signed-off-by: Eric Blake <ebb9@byu.net>
Diffstat (limited to 'doc/posix-functions/mknod.texi')
-rw-r--r-- | doc/posix-functions/mknod.texi | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/doc/posix-functions/mknod.texi b/doc/posix-functions/mknod.texi index 2853416cfa..99105eab08 100644 --- a/doc/posix-functions/mknod.texi +++ b/doc/posix-functions/mknod.texi @@ -4,15 +4,26 @@ POSIX specification: @url{http://www.opengroup.org/onlinepubs/9699919799/functions/mknod.html} -Gnulib module: --- +Gnulib module: mknod Portability problems fixed by Gnulib: @itemize +@item +This function requires super-user privileges to create a fifo: +FreeBSD 7.2, OpenBSD 3.8. +@item +This function mishandles trailing slash on some platforms: +FreeBSD 7.2, Solaris 9. +@item +This function is missing on some platforms; however, the replacement +always fails with @code{ENOSYS}: +mingw. @end itemize Portability problems not fixed by Gnulib: @itemize @item -This function is missing on some platforms: -mingw. +Use of this function for anything except fifos is not portable, +generally requiring super-user privileges and knowledge of supported +device numbers. @end itemize |