diff options
author | Joel Sherrill <joel.sherrill@OARcorp.com> | 2000-08-11 20:04:03 +0000 |
---|---|---|
committer | Joel Sherrill <joel.sherrill@OARcorp.com> | 2000-08-11 20:04:03 +0000 |
commit | 74835d78803e46ae3fcb4e096d2a59964557719b (patch) | |
tree | cb2b9cbcd3ed0d6bf5d447230cc4e7d1b7c3991d /c/src/lib/libc/chmod.c | |
parent | IEEE (diff) | |
download | rtems-74835d78803e46ae3fcb4e096d2a59964557719b.tar.bz2 |
2000-08-11 Chris Johns <ccj@acm.org>
* libc/chmod.c: Return ENOTSUP if filesystem does not have handler.
* libc/eval.c: Ditto.
* libc/fcntl.c: Ditto.
* libc/fsync.c: Ditto.
* libc/ioctl.c: Ditto.
* libc/ioman.c: Ditto.
* libc/link.c: Ditto.
* libc/memfile.c: Ditto.
* libc/mknod.c: Ditto.
* libc/symlink.c: Ditto.
* libc/libio.h(rtems_filesystem_dev_major_t): New macro.
* libc/libio.h(rtems_filesystem_dev_minor_t): New macro.
Diffstat (limited to 'c/src/lib/libc/chmod.c')
-rw-r--r-- | c/src/lib/libc/chmod.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/c/src/lib/libc/chmod.c b/c/src/lib/libc/chmod.c index d88e80eeb7..f1042806b9 100644 --- a/c/src/lib/libc/chmod.c +++ b/c/src/lib/libc/chmod.c @@ -33,6 +33,11 @@ int chmod( if ( status != 0 ) return -1; + if ( !loc.handlers ){ + rtems_filesystem_freenode( &loc ); + set_errno_and_return_minus_one( EBADF ); + } + if ( !loc.handlers->fchmod ){ rtems_filesystem_freenode( &loc ); set_errno_and_return_minus_one( ENOTSUP ); |