summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libc
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2000-10-18 13:08:22 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2000-10-18 13:08:22 +0000
commite6babd7e0884dc127c6f38e4453451ad13bda9a0 (patch)
tree040b93f0ab3251450f079a84ffee1341a342a9b0 /c/src/lib/libc
parent3a410c5691a8976e0136b16b7a9fdd25a9fb3c34 (diff)
downloadrtems-e6babd7e0884dc127c6f38e4453451ad13bda9a0.tar.bz2
2000-10-18 Joel Sherrill <joel@OARcorp.com>
* libc/fcntl.c: Do not require every filesystem to have an fcntl() handler. Most fcntl() operations can be performed with no filesystem support. * ChangeLog: Corrected comment.
Diffstat (limited to 'c/src/lib/libc')
-rw-r--r--c/src/lib/libc/fcntl.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/c/src/lib/libc/fcntl.c b/c/src/lib/libc/fcntl.c
index 819b2f7778..72a03fa1c5 100644
--- a/c/src/lib/libc/fcntl.c
+++ b/c/src/lib/libc/fcntl.c
@@ -131,6 +131,12 @@ int fcntl(
ret = -1;
break;
}
+
+ /*
+ * If we got this far successfully, then we give the optional
+ * filesystem specific handler a chance to process this.
+ */
+
if (ret >= 0) {
if (iop->handlers->fcntl_h) {
int err = (*iop->handlers->fcntl_h)( cmd, iop );
@@ -139,10 +145,6 @@ int fcntl(
ret = -1;
}
}
- else {
- errno = ENOTSUP;
- ret = -1;
- }
}
return ret;
}