diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2019-11-18 06:55:43 +0100 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2019-11-19 16:22:00 +0100 |
commit | f3779985681baaa4ac4e33dddfabab241008376c (patch) | |
tree | 2758bb25741f90b3cd5d9266b0021a40aaf8b659 /cpukit/libfs/src/imfs/imfs_linfile.c | |
parent | Move feature macro before "config.h" include (diff) | |
download | rtems-f3779985681baaa4ac4e33dddfabab241008376c.tar.bz2 |
imfs: Add IMFS_make_linfile()
Update #3818.
Diffstat (limited to 'cpukit/libfs/src/imfs/imfs_linfile.c')
-rw-r--r-- | cpukit/libfs/src/imfs/imfs_linfile.c | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/cpukit/libfs/src/imfs/imfs_linfile.c b/cpukit/libfs/src/imfs/imfs_linfile.c index f53930d4b0..2044cc66fc 100644 --- a/cpukit/libfs/src/imfs/imfs_linfile.c +++ b/cpukit/libfs/src/imfs/imfs_linfile.c @@ -95,9 +95,25 @@ static const rtems_filesystem_file_handlers_r IMFS_linfile_handlers = { .writev_h = rtems_filesystem_default_writev }; +static IMFS_jnode_t *IMFS_node_initialize_linfile( + IMFS_jnode_t *node, + void *arg +) +{ + IMFS_linearfile_t *linfile; + IMFS_linearfile_context *ctx; + + linfile = (IMFS_linearfile_t *) node; + ctx = arg; + linfile->File.size = ctx->size; + linfile->direct = RTEMS_DECONST( void *, ctx->data ); + + return node; +} + const IMFS_node_control IMFS_node_control_linfile = { .handlers = &IMFS_linfile_handlers, - .node_initialize = IMFS_node_initialize_default, + .node_initialize = IMFS_node_initialize_linfile, .node_remove = IMFS_node_remove_default, .node_destroy = IMFS_node_destroy_default }; |