From 51435fc7c56ed5b18e5e4ed294dac80b376a60f4 Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Tue, 12 Oct 1999 19:26:37 +0000 Subject: Split null handlers table to own file and renamed. Renamed IMFS handler tables to include IMFS prefix. --- c/src/lib/libc/fs_null_handlers.c | 66 ++------------------------------------- c/src/lib/libc/imfs.h | 7 ++--- c/src/lib/libc/imfs_eval.c | 8 ++--- c/src/lib/libc/imfs_handlers.c | 6 ++-- c/src/lib/libc/imfs_init.c | 2 +- c/src/lib/libc/imfs_initsupp.c | 2 +- c/src/lib/libc/libio_.h | 3 +- 7 files changed, 17 insertions(+), 77 deletions(-) (limited to 'c/src/lib/libc') diff --git a/c/src/lib/libc/fs_null_handlers.c b/c/src/lib/libc/fs_null_handlers.c index e9ff4a578a..42bc146eb9 100644 --- a/c/src/lib/libc/fs_null_handlers.c +++ b/c/src/lib/libc/fs_null_handlers.c @@ -1,5 +1,5 @@ /* - * Operations Tables for the IMFS + * Null Filesystem Operations Tables * * COPYRIGHT (c) 1989-1998. * On-Line Applications Research Corporation (OAR). @@ -14,73 +14,13 @@ #include -#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 */ -}; +#include /* * Set of null operations handlers. */ -rtems_filesystem_file_handlers_r null_handlers = { +rtems_filesystem_file_handlers_r rtems_filesystem_null_handlers = { NULL, /* open */ NULL, /* close */ NULL, /* read */ diff --git a/c/src/lib/libc/imfs.h b/c/src/lib/libc/imfs.h index f5ea346b44..4aaa923982 100644 --- a/c/src/lib/libc/imfs.h +++ b/c/src/lib/libc/imfs.h @@ -210,10 +210,9 @@ typedef enum { * Shared Data */ -extern rtems_filesystem_file_handlers_r device_handlers; -extern rtems_filesystem_file_handlers_r memfile_handlers; -extern rtems_filesystem_file_handlers_r dir_handlers; -extern rtems_filesystem_file_handlers_r null_handlers; +extern rtems_filesystem_file_handlers_r IMFS_device_handlers; +extern rtems_filesystem_file_handlers_r IMFS_memfile_handlers; +extern rtems_filesystem_file_handlers_r IMFS_directory_handlers; extern rtems_filesystem_operations_table IMFS_ops; extern rtems_filesystem_limits_and_options_t IMFS_LIMITS_AND_OPTIONS; diff --git a/c/src/lib/libc/imfs_eval.c b/c/src/lib/libc/imfs_eval.c index e7e2d47908..e06301029f 100644 --- a/c/src/lib/libc/imfs_eval.c +++ b/c/src/lib/libc/imfs_eval.c @@ -36,17 +36,17 @@ int IMFS_Set_handlers( switch( node->type ) { case IMFS_DIRECTORY: - loc->handlers = &dir_handlers; + loc->handlers = &IMFS_directory_handlers; break; case IMFS_DEVICE: - loc->handlers = &device_handlers; + loc->handlers = &IMFS_device_handlers; break; case IMFS_SYM_LINK: case IMFS_HARD_LINK: - loc->handlers = &null_handlers; + loc->handlers = &rtems_filesystem_null_handlers; break; case IMFS_MEMORY_FILE: - loc->handlers = &memfile_handlers; + loc->handlers = &IMFS_memfile_handlers; break; } diff --git a/c/src/lib/libc/imfs_handlers.c b/c/src/lib/libc/imfs_handlers.c index 97e47fb8ea..b7466a5072 100644 --- a/c/src/lib/libc/imfs_handlers.c +++ b/c/src/lib/libc/imfs_handlers.c @@ -20,7 +20,7 @@ * Set of operations handlers for operations on memfile entities. */ -rtems_filesystem_file_handlers_r memfile_handlers = { +rtems_filesystem_file_handlers_r IMFS_memfile_handlers = { memfile_open, memfile_close, memfile_read, @@ -40,7 +40,7 @@ rtems_filesystem_file_handlers_r memfile_handlers = { * Set of operations handlers for operations on directories. */ -rtems_filesystem_file_handlers_r dir_handlers = { +rtems_filesystem_file_handlers_r IMFS_directory_handlers = { imfs_dir_open, imfs_dir_close, imfs_dir_read, @@ -60,7 +60,7 @@ rtems_filesystem_file_handlers_r dir_handlers = { * Handler table for IMFS device nodes */ -rtems_filesystem_file_handlers_r device_handlers = { +rtems_filesystem_file_handlers_r IMFS_device_handlers = { device_open, device_close, device_read, diff --git a/c/src/lib/libc/imfs_init.c b/c/src/lib/libc/imfs_init.c index bb3a0f9aea..a38fa89c33 100644 --- a/c/src/lib/libc/imfs_init.c +++ b/c/src/lib/libc/imfs_init.c @@ -73,7 +73,7 @@ int IMFS_initialize( NULL ); - temp_mt_entry->mt_fs_root.handlers = &dir_handlers; + temp_mt_entry->mt_fs_root.handlers = &IMFS_directory_handlers; temp_mt_entry->mt_fs_root.ops = &IMFS_ops; temp_mt_entry->pathconf_limits_and_options = IMFS_LIMITS_AND_OPTIONS; diff --git a/c/src/lib/libc/imfs_initsupp.c b/c/src/lib/libc/imfs_initsupp.c index bb3a0f9aea..a38fa89c33 100644 --- a/c/src/lib/libc/imfs_initsupp.c +++ b/c/src/lib/libc/imfs_initsupp.c @@ -73,7 +73,7 @@ int IMFS_initialize( NULL ); - temp_mt_entry->mt_fs_root.handlers = &dir_handlers; + temp_mt_entry->mt_fs_root.handlers = &IMFS_directory_handlers; temp_mt_entry->mt_fs_root.ops = &IMFS_ops; temp_mt_entry->pathconf_limits_and_options = IMFS_LIMITS_AND_OPTIONS; diff --git a/c/src/lib/libc/libio_.h b/c/src/lib/libc/libio_.h index 8c186278fa..e37dcbcc9f 100644 --- a/c/src/lib/libc/libio_.h +++ b/c/src/lib/libc/libio_.h @@ -53,7 +53,8 @@ extern "C" { #define RTEMS_LIBIO_SEM rtems_build_name('L', 'B', 'I', 'O') #define RTEMS_LIBIO_IOP_SEM(n) rtems_build_name('L', 'B', 'I', n) -extern rtems_id rtems_libio_semaphore; +extern rtems_id rtems_libio_semaphore; +extern rtems_filesystem_file_handlers_r rtems_filesystem_null_handlers; /* * File descriptor Table Information -- cgit v1.2.3