From dd19c0bb061af5595a970ed3c4f4af3824b65593 Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Fri, 11 Aug 2000 20:04:27 +0000 Subject: 2000-08-11 Chris Johns * 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. --- cpukit/libcsupport/src/chmod.c | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'cpukit/libcsupport/src/chmod.c') diff --git a/cpukit/libcsupport/src/chmod.c b/cpukit/libcsupport/src/chmod.c index d88e80eeb7..f1042806b9 100644 --- a/cpukit/libcsupport/src/chmod.c +++ b/cpukit/libcsupport/src/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 ); -- cgit v1.2.3