diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2012-05-15 10:06:18 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2012-05-15 10:06:18 +0200 |
commit | a7d1992c8313eeb5e67bd0f7eebe35e61a103b8a (patch) | |
tree | 594b8171a2aba1a6908c2cc7a42d2a4497b4652e /cpukit/libcsupport/include/rtems/libio.h | |
parent | Merge branch 'upstream' (diff) | |
parent | Filesystem: Move operations to mount table entry (diff) | |
download | rtems-a7d1992c8313eeb5e67bd0f7eebe35e61a103b8a.tar.bz2 |
Merge branch 'upstream'
Diffstat (limited to 'cpukit/libcsupport/include/rtems/libio.h')
-rw-r--r-- | cpukit/libcsupport/include/rtems/libio.h | 42 |
1 files changed, 18 insertions, 24 deletions
diff --git a/cpukit/libcsupport/include/rtems/libio.h b/cpukit/libcsupport/include/rtems/libio.h index 0f21b36d65..0e74c4c7fe 100644 --- a/cpukit/libcsupport/include/rtems/libio.h +++ b/cpukit/libcsupport/include/rtems/libio.h @@ -69,7 +69,7 @@ typedef enum { * @see rtems_filesystem_default_lock(). */ typedef void (*rtems_filesystem_mt_entry_lock_t)( - rtems_filesystem_mount_table_entry_t *mt_entry + const rtems_filesystem_mount_table_entry_t *mt_entry ); /** @@ -80,7 +80,7 @@ typedef void (*rtems_filesystem_mt_entry_lock_t)( * @see rtems_filesystem_default_unlock(). */ typedef void (*rtems_filesystem_mt_entry_unlock_t)( - rtems_filesystem_mount_table_entry_t *mt_entry + const rtems_filesystem_mount_table_entry_t *mt_entry ); /** @@ -523,7 +523,7 @@ extern const rtems_filesystem_operations_table * @see rtems_filesystem_mt_entry_lock_t. */ void rtems_filesystem_default_lock( - rtems_filesystem_mount_table_entry_t *mt_entry + const rtems_filesystem_mount_table_entry_t *mt_entry ); /** @@ -532,7 +532,7 @@ void rtems_filesystem_default_lock( * @see rtems_filesystem_mt_entry_unlock_t. */ void rtems_filesystem_default_unlock( - rtems_filesystem_mount_table_entry_t *mt_entry + const rtems_filesystem_mount_table_entry_t *mt_entry ); /** @@ -786,6 +786,8 @@ typedef int (*rtems_filesystem_close_t)( /** * @brief Reads from a node. * + * This handler is responsible to update the offset field of the IO descriptor. + * * @param[in, out] iop The IO pointer. * @param[out] buffer The buffer for read data. * @param[in] count The size of the buffer in characters. @@ -804,6 +806,8 @@ typedef ssize_t (*rtems_filesystem_read_t)( /** * @brief Writes to a node. * + * This handler is responsible to update the offset field of the IO descriptor. + * * @param[in, out] iop The IO pointer. * @param[out] buffer The buffer for write data. * @param[in] count The size of the buffer in characters. @@ -832,9 +836,9 @@ typedef ssize_t (*rtems_filesystem_write_t)( * @see rtems_filesystem_default_ioctl(). */ typedef int (*rtems_filesystem_ioctl_t)( - rtems_libio_t *iop, - uint32_t request, - void *buffer + rtems_libio_t *iop, + ioctl_command_t request, + void *buffer ); /** @@ -1008,9 +1012,9 @@ ssize_t rtems_filesystem_default_write( * @see rtems_filesystem_ioctl_t. */ int rtems_filesystem_default_ioctl( - rtems_libio_t *iop, - uint32_t command, - void *buffer + rtems_libio_t *iop, + ioctl_command_t request, + void *buffer ); /** @@ -1065,17 +1069,6 @@ off_t rtems_filesystem_default_lseek_file( ); /** - * @retval 0 Always. - * - * @see rtems_filesystem_lseek_t. - */ -off_t rtems_filesystem_default_lseek_file( - rtems_libio_t *iop, - off_t offset, - int whence -); - -/** * @brief Sets the mode to S_IRWXU | S_IRWXG | S_IRWXO. * * @retval 0 Always. @@ -1236,7 +1229,7 @@ typedef struct { */ typedef struct { rtems_libio_t *iop; - uint32_t command; + ioctl_command_t command; void *buffer; int ioctl_return; } rtems_libio_ioctl_args_t; @@ -1438,13 +1431,14 @@ extern int rtems_mkdir(const char *path, mode_t mode); */ struct rtems_filesystem_mount_table_entry_tt { rtems_chain_node mt_node; + void *fs_info; + const rtems_filesystem_operations_table *ops; + const void *immutable_fs_info; rtems_chain_control location_chain; rtems_filesystem_global_location_t *mt_point_node; rtems_filesystem_global_location_t *mt_fs_root; bool mounted; bool writeable; - void *fs_info; - const void *immutable_fs_info; rtems_filesystem_limits_and_options_t pathconf_limits_and_options; /* |