diff options
author | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2015-02-07 21:56:15 +0100 |
---|---|---|
committer | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2015-02-07 21:56:15 +0100 |
commit | 5d2556c4fa4629b1c3adf59f29c699f00d4122ea (patch) | |
tree | 38d8e377f3bd66280aaaab51a706a73bf7383aed /sysdeps/mach | |
parent | e2049d17a0fe36e07cbd944504fa6c8fe68832bf (diff) | |
download | glibc-5d2556c4fa4629b1c3adf59f29c699f00d4122ea.tar.gz glibc-5d2556c4fa4629b1c3adf59f29c699f00d4122ea.tar.xz glibc-5d2556c4fa4629b1c3adf59f29c699f00d4122ea.zip |
hurd: fix f?chflags prototypes, declare them and their flags
Diffstat (limited to 'sysdeps/mach')
-rw-r--r-- | sysdeps/mach/hurd/bits/stat.h | 30 | ||||
-rw-r--r-- | sysdeps/mach/hurd/chflags.c | 2 | ||||
-rw-r--r-- | sysdeps/mach/hurd/fchflags.c | 2 |
3 files changed, 31 insertions, 3 deletions
diff --git a/sysdeps/mach/hurd/bits/stat.h b/sysdeps/mach/hurd/bits/stat.h index 6f9245742e..4d4bae4391 100644 --- a/sysdeps/mach/hurd/bits/stat.h +++ b/sysdeps/mach/hurd/bits/stat.h @@ -222,9 +222,37 @@ struct stat64 S_IUSEUNK|S_IUNKNOWN|07777)) #endif -/* Default file creation mask (umask). */ #ifdef __USE_MISC +/* Default file creation mask (umask). */ # define CMASK 0022 + +/* Definitions of flags stored in file flags word. */ + +/* Super-user and owner changeable flags. */ +# define UF_SETTABLE 0x0000ffff /* mask of owner changeable flags */ +# define UF_NODUMP 0x00000001 /* do not dump file */ +# define UF_IMMUTABLE 0x00000002 /* file may not be changed */ +# define UF_APPEND 0x00000004 /* writes to file may only append */ +# define UF_OPAQUE 0x00000008 /* directory is opaque wrt. union */ +# define UF_NOUNLINK 0x00000010 /* file may not be removed or renamed */ + +/* Super-user changeable flags. */ +# define SF_SETTABLE 0xffff0000 /* mask of superuser changeable flags */ +# define SF_ARCHIVED 0x00010000 /* file is archived */ +# define SF_IMMUTABLE 0x00020000 /* file may not be changed */ +# define SF_APPEND 0x00040000 /* writes to file may only append */ +# define SF_NOUNLINK 0x00100000 /* file may not be removed or renamed */ +# define SF_SNAPSHOT 0x00200000 /* snapshot inode */ + +__BEGIN_DECLS + +/* Set file flags for FILE to FLAGS. */ +extern int chflags (__const char *__file, unsigned long int __flags) __THROW; + +/* Set file flags of the file referred to by FD to FLAGS. */ +extern int fchflags (int __fd, unsigned long int __flags) __THROW; + +__END_DECLS #endif #endif /* bits/stat.h */ diff --git a/sysdeps/mach/hurd/chflags.c b/sysdeps/mach/hurd/chflags.c index 07a8b1fe0f..f088f9b437 100644 --- a/sysdeps/mach/hurd/chflags.c +++ b/sysdeps/mach/hurd/chflags.c @@ -24,7 +24,7 @@ /* XXX shouldn't this be __chflags? */ int -chflags (const char *file, int flags) +chflags (const char *file, unsigned long int flags) { error_t err; file_t port = __file_name_lookup (file, 0, 0); diff --git a/sysdeps/mach/hurd/fchflags.c b/sysdeps/mach/hurd/fchflags.c index d665e6671c..841d9df56e 100644 --- a/sysdeps/mach/hurd/fchflags.c +++ b/sysdeps/mach/hurd/fchflags.c @@ -25,7 +25,7 @@ /* XXX should be __fchflags? */ int -fchflags (int fd, int flags) +fchflags (int fd, unsigned long int flags) { error_t err; |