summaryrefslogtreecommitdiffstats
path: root/cpukit/libfs
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2010-07-13 21:43:32 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2010-07-13 21:43:32 +0000
commitdd38f3d9d0945b213158036c481891772daaec33 (patch)
treed80fa7488eb70bd279b9dff09d8209cc6fe64e5b /cpukit/libfs
parent2010-07-12 Bharath Suri <bharath.s.jois@gmail.com> (diff)
downloadrtems-dd38f3d9d0945b213158036c481891772daaec33.tar.bz2
2010-07-13 Vinu Rajashekhar <vinutheraj@gmail.com>
PR 1614/filesystem * libfs/src/imfs/fifoimfs_init.c, libfs/src/imfs/imfs.h, libfs/src/imfs/imfs_load_tar.c: Fix rtems_tarfs_load to work with pipe filesystem.
Diffstat (limited to 'cpukit/libfs')
-rw-r--r--cpukit/libfs/src/imfs/fifoimfs_init.c4
-rw-r--r--cpukit/libfs/src/imfs/imfs.h1
-rw-r--r--cpukit/libfs/src/imfs/imfs_load_tar.c3
3 files changed, 5 insertions, 3 deletions
diff --git a/cpukit/libfs/src/imfs/fifoimfs_init.c b/cpukit/libfs/src/imfs/fifoimfs_init.c
index 1104bbb629..6fa7b076ea 100644
--- a/cpukit/libfs/src/imfs/fifoimfs_init.c
+++ b/cpukit/libfs/src/imfs/fifoimfs_init.c
@@ -25,7 +25,7 @@
#include "imfs.h"
-static const rtems_filesystem_operations_table fifoIMFS_ops = {
+const rtems_filesystem_operations_table fifoIMFS_ops = {
.evalpath_h = IMFS_eval_path,
.evalformake_h = IMFS_evaluate_for_make,
.link_h = IMFS_link,
@@ -43,7 +43,7 @@ static const rtems_filesystem_operations_table fifoIMFS_ops = {
.symlink_h = IMFS_symlink,
.readlink_h = IMFS_readlink,
.rename_h = IMFS_rename,
- .statvfs_h = NULL
+ .statvfs_h = rtems_filesystem_default_statvfs
};
int fifoIMFS_initialize(
diff --git a/cpukit/libfs/src/imfs/imfs.h b/cpukit/libfs/src/imfs/imfs.h
index 148889efd9..bb9b889116 100644
--- a/cpukit/libfs/src/imfs/imfs.h
+++ b/cpukit/libfs/src/imfs/imfs.h
@@ -248,6 +248,7 @@ extern const rtems_filesystem_file_handlers_r IMFS_link_handlers;
extern const rtems_filesystem_file_handlers_r IMFS_memfile_handlers;
extern const rtems_filesystem_file_handlers_r IMFS_fifo_handlers;
extern const rtems_filesystem_operations_table IMFS_ops;
+extern const rtems_filesystem_operations_table fifoIMFS_ops;
extern const rtems_filesystem_limits_and_options_t IMFS_LIMITS_AND_OPTIONS;
/*
diff --git a/cpukit/libfs/src/imfs/imfs_load_tar.c b/cpukit/libfs/src/imfs/imfs_load_tar.c
index e71ca9a982..1045c33d69 100644
--- a/cpukit/libfs/src/imfs/imfs_load_tar.c
+++ b/cpukit/libfs/src/imfs/imfs_load_tar.c
@@ -108,7 +108,8 @@ int rtems_tarfs_load(
if (status != 0)
return -1;
- if (root_loc.ops != &IMFS_ops)
+ if (root_loc.ops != &IMFS_ops
+ && root_loc.ops != &fifoIMFS_ops)
return -1;
/*