diff options
Diffstat (limited to 'cpukit')
-rw-r--r-- | cpukit/libcsupport/src/fs_null_handlers.c | 97 | ||||
-rw-r--r-- | cpukit/libfs/src/imfs/imfs.h | 5 | ||||
-rw-r--r-- | cpukit/libfs/src/imfs/imfs_fcntl.c | 25 |
3 files changed, 127 insertions, 0 deletions
diff --git a/cpukit/libcsupport/src/fs_null_handlers.c b/cpukit/libcsupport/src/fs_null_handlers.c new file mode 100644 index 0000000000..e9ff4a578a --- /dev/null +++ b/cpukit/libcsupport/src/fs_null_handlers.c @@ -0,0 +1,97 @@ +/* + * Operations Tables for the IMFS + * + * COPYRIGHT (c) 1989-1998. + * On-Line Applications Research Corporation (OAR). + * Copyright assigned to U.S. Government, 1994. + * + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.OARcorp.com/rtems/license.html. + * + * $Id$ + */ + +#include <errno.h> + +#include "imfs.h" + +/* + * Set of operations handlers for operations on memfile entities. + */ + +rtems_filesystem_file_handlers_r memfile_handlers = { + memfile_open, + memfile_close, + memfile_read, + memfile_write, + memfile_ioctl, + memfile_lseek, + IMFS_stat, + IMFS_fchmod, + memfile_ftruncate, + NULL, /* fpathconf */ + NULL, /* fsync */ + IMFS_fdatasync, + IMFS_fcntl +}; + +/* + * Set of operations handlers for operations on directories. + */ + +rtems_filesystem_file_handlers_r dir_handlers = { + imfs_dir_open, + imfs_dir_close, + imfs_dir_read, + NULL, /* write */ + NULL, /* ioctl */ + imfs_dir_lseek, + imfs_dir_fstat, + IMFS_fchmod, + NULL, /* ftruncate */ + NULL, /* fpathconf */ + NULL, /* fsync */ + IMFS_fdatasync, + IMFS_fcntl +}; + +/* + * Handler table for IMFS device nodes + */ + +rtems_filesystem_file_handlers_r device_handlers = { + device_open, + device_close, + device_read, + device_write, + device_ioctl, + device_lseek, + IMFS_stat, + IMFS_fchmod, + NULL, /* ftruncate */ + NULL, /* fpathconf */ + NULL, /* fsync */ + NULL, /* fdatasync */ + NULL /* fcntl */ +}; + +/* + * Set of null operations handlers. + */ + +rtems_filesystem_file_handlers_r null_handlers = { + NULL, /* open */ + NULL, /* close */ + NULL, /* read */ + NULL, /* write */ + NULL, /* ioctl */ + NULL, /* lseek */ + NULL, /* fstat */ + NULL, /* fchmod */ + NULL, /* ftruncate */ + NULL, /* fpathconf */ + NULL, /* fsync */ + NULL, /* fdatasync */ + NULL /* fcntl */ +}; diff --git a/cpukit/libfs/src/imfs/imfs.h b/cpukit/libfs/src/imfs/imfs.h index 0421e9e25c..f5ea346b44 100644 --- a/cpukit/libfs/src/imfs/imfs.h +++ b/cpukit/libfs/src/imfs/imfs.h @@ -447,6 +447,11 @@ int IMFS_fdatasync( rtems_libio_t *iop ); +int IMFS_fcntl( + int cmd, + rtems_libio_t *iop +); + #ifdef __cplusplus } #endif diff --git a/cpukit/libfs/src/imfs/imfs_fcntl.c b/cpukit/libfs/src/imfs/imfs_fcntl.c new file mode 100644 index 0000000000..cbbbe1eedb --- /dev/null +++ b/cpukit/libfs/src/imfs/imfs_fcntl.c @@ -0,0 +1,25 @@ +/* + * IMFS_fcntl + * + * The following routine does a fcntl on an IMFS node. + * + * COPYRIGHT (c) 1989-1998. + * On-Line Applications Research Corporation (OAR). + * Copyright assigned to U.S. Government, 1994. + * + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.OARcorp.com/rtems/license.html. + * + * $Id$ + */ + +#include "imfs.h" + +int IMFS_fcntl( + int cmd, + rtems_libio_t *iop +) +{ + return 0; +} |