summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2009-06-03 19:27:38 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2009-06-03 19:27:38 +0000
commit69981587273b049826fcd992a1ffe9fd5b8eff9b (patch)
tree900303e00b348efcdc7b618df605a1affd656b0b
parent8774fddf30cd8955b69fd4eb90862c3101cc659a (diff)
2009-06-03 Joel Sherrill <joel.sherrill@OARcorp.com>
PR 1421/filesystem * libfs/src/imfs/deviceio.c, libfs/src/imfs/imfs.h, libfs/src/imfs/imfs_handlers_device.c: Backport ftruncate support for devices so fopen(device, w) works.
-rw-r--r--cpukit/ChangeLog7
-rw-r--r--cpukit/libfs/src/imfs/deviceio.c9
-rw-r--r--cpukit/libfs/src/imfs/imfs.h5
-rw-r--r--cpukit/libfs/src/imfs/imfs_handlers_device.c2
4 files changed, 22 insertions, 1 deletions
diff --git a/cpukit/ChangeLog b/cpukit/ChangeLog
index b7efc5e9bd..8bc2e1d3d2 100644
--- a/cpukit/ChangeLog
+++ b/cpukit/ChangeLog
@@ -1,3 +1,10 @@
+2009-06-03 Joel Sherrill <joel.sherrill@OARcorp.com>
+
+ PR 1421/filesystem
+ * libfs/src/imfs/deviceio.c, libfs/src/imfs/imfs.h,
+ libfs/src/imfs/imfs_handlers_device.c: Backport ftruncate support for
+ devices so fopen(device, w) works.
+
2009-05-28 Joel Sherrill <joel.sherrill@OARcorp.com>
PR 1415/cpukit
diff --git a/cpukit/libfs/src/imfs/deviceio.c b/cpukit/libfs/src/imfs/deviceio.c
index e088a7f8d7..e6a4dd6e0f 100644
--- a/cpukit/libfs/src/imfs/deviceio.c
+++ b/cpukit/libfs/src/imfs/deviceio.c
@@ -255,3 +255,12 @@ off_t device_lseek(
*
* The IMFS_rmnod() is used.
*/
+
+int device_ftruncate(
+ rtems_libio_t *iop,
+ off_t length
+)
+{
+ return 0;
+}
+
diff --git a/cpukit/libfs/src/imfs/imfs.h b/cpukit/libfs/src/imfs/imfs.h
index 25736b394d..a7f4cb43b4 100644
--- a/cpukit/libfs/src/imfs/imfs.h
+++ b/cpukit/libfs/src/imfs/imfs.h
@@ -480,6 +480,11 @@ off_t device_lseek(
int whence /* IN */
);
+int device_ftruncate(
+ rtems_libio_t *iop, /* IN */
+ off_t length /* IN */
+);
+
int IMFS_utime(
rtems_filesystem_location_info_t *pathloc, /* IN */
time_t actime, /* IN */
diff --git a/cpukit/libfs/src/imfs/imfs_handlers_device.c b/cpukit/libfs/src/imfs/imfs_handlers_device.c
index fa373b8b91..db8238d855 100644
--- a/cpukit/libfs/src/imfs/imfs_handlers_device.c
+++ b/cpukit/libfs/src/imfs/imfs_handlers_device.c
@@ -32,7 +32,7 @@ rtems_filesystem_file_handlers_r IMFS_device_handlers = {
device_lseek,
IMFS_stat,
IMFS_fchmod,
- NULL, /* ftruncate */
+ device_ftruncate,
NULL, /* fpathconf */
NULL, /* fsync */
NULL, /* fdatasync */