change log for rtems (2010-07-15)

rtems-vc at rtems.org rtems-vc at rtems.org
Thu Jul 15 09:12:00 UTC 2010


 *sh*:
2010-07-16	Sebastian Huber <sebastian.huber at embedded-brains.de>

	* libcsupport/include/rtems/libio.h: Removed file_info and handlers
	fields in rtems_libio_t.
	* libcsupport/src/close.c, libcsupport/src/fcntl.c,
	libcsupport/src/fdatasync.c, libcsupport/src/fstat.c,
	libcsupport/src/fsync.c, libcsupport/src/ftruncate.c,
	libcsupport/src/getdents.c, libcsupport/src/ioctl.c,
	libcsupport/src/libio_sockets.c, libcsupport/src/lseek.c,
	libcsupport/src/open.c, libcsupport/src/read.c,
	libcsupport/src/readv.c, libcsupport/src/write.c,
	libcsupport/src/writev.c, libfs/src/devfs/devclose.c,
	libfs/src/devfs/devioctl.c, libfs/src/devfs/devopen.c,
	libfs/src/devfs/devread.c, libfs/src/devfs/devwrite.c
	libfs/src/dosfs/msdos_dir.c libfs/src/dosfs/msdos_file.c
	libfs/src/imfs/deviceio.c libfs/src/imfs/imfs_directory.c
	libfs/src/imfs/imfs_fifo.c libfs/src/imfs/memfile.c
	libfs/src/nfsclient/src/nfs.c libfs/src/rfs/rtems-rfs-rtems-file.c
	libfs/src/rfs/rtems-rfs-rtems.h libnetworking/lib/ftpfs.c: Reflect
	changes above.

M 1.2508  cpukit/ChangeLog
M   1.78  cpukit/libcsupport/include/rtems/libio.h
M   1.14  cpukit/libcsupport/src/close.c
M   1.27  cpukit/libcsupport/src/fcntl.c
M   1.12  cpukit/libcsupport/src/fdatasync.c
M   1.13  cpukit/libcsupport/src/fstat.c
M   1.13  cpukit/libcsupport/src/fsync.c
M   1.14  cpukit/libcsupport/src/ftruncate.c
M   1.11  cpukit/libcsupport/src/getdents.c
M   1.17  cpukit/libcsupport/src/ioctl.c
M   1.16  cpukit/libcsupport/src/libio_sockets.c
M   1.18  cpukit/libcsupport/src/lseek.c
M   1.27  cpukit/libcsupport/src/open.c
M   1.18  cpukit/libcsupport/src/read.c
M    1.6  cpukit/libcsupport/src/readv.c
M   1.19  cpukit/libcsupport/src/write.c
M    1.5  cpukit/libcsupport/src/writev.c
M    1.5  cpukit/libfs/src/devfs/devclose.c
M    1.4  cpukit/libfs/src/devfs/devioctl.c
M    1.5  cpukit/libfs/src/devfs/devopen.c
M    1.4  cpukit/libfs/src/devfs/devread.c
M    1.4  cpukit/libfs/src/devfs/devwrite.c
M   1.20  cpukit/libfs/src/dosfs/msdos_dir.c
M   1.15  cpukit/libfs/src/dosfs/msdos_file.c
M   1.24  cpukit/libfs/src/imfs/deviceio.c
M   1.27  cpukit/libfs/src/imfs/imfs_directory.c
M    1.6  cpukit/libfs/src/imfs/imfs_fifo.c
M   1.37  cpukit/libfs/src/imfs/memfile.c
M   1.24  cpukit/libfs/src/nfsclient/src/nfs.c
M    1.7  cpukit/libfs/src/rfs/rtems-rfs-rtems-file.c
M    1.3  cpukit/libfs/src/rfs/rtems-rfs-rtems.h
M   1.32  cpukit/libnetworking/lib/ftpfs.c

diff -u rtems/cpukit/ChangeLog:1.2507 rtems/cpukit/ChangeLog:1.2508
--- rtems/cpukit/ChangeLog:1.2507	Thu Jul 15 02:59:56 2010
+++ rtems/cpukit/ChangeLog	Thu Jul 15 03:10:46 2010
@@ -1,5 +1,26 @@
 2010-07-16	Sebastian Huber <sebastian.huber at embedded-brains.de>
 
+	* libcsupport/include/rtems/libio.h: Removed file_info and handlers
+	fields in rtems_libio_t.
+	* libcsupport/src/close.c, libcsupport/src/fcntl.c,
+	libcsupport/src/fdatasync.c, libcsupport/src/fstat.c,
+	libcsupport/src/fsync.c, libcsupport/src/ftruncate.c,
+	libcsupport/src/getdents.c, libcsupport/src/ioctl.c,
+	libcsupport/src/libio_sockets.c, libcsupport/src/lseek.c,
+	libcsupport/src/open.c, libcsupport/src/read.c,
+	libcsupport/src/readv.c, libcsupport/src/write.c,
+	libcsupport/src/writev.c, libfs/src/devfs/devclose.c,
+	libfs/src/devfs/devioctl.c, libfs/src/devfs/devopen.c,
+	libfs/src/devfs/devread.c, libfs/src/devfs/devwrite.c
+	libfs/src/dosfs/msdos_dir.c libfs/src/dosfs/msdos_file.c
+	libfs/src/imfs/deviceio.c libfs/src/imfs/imfs_directory.c
+	libfs/src/imfs/imfs_fifo.c libfs/src/imfs/memfile.c
+	libfs/src/nfsclient/src/nfs.c libfs/src/rfs/rtems-rfs-rtems-file.c
+	libfs/src/rfs/rtems-rfs-rtems.h libnetworking/lib/ftpfs.c: Reflect
+	changes above.
+
+2010-07-16	Sebastian Huber <sebastian.huber at embedded-brains.de>
+
 	* libfs/src/devfs/devfs.h, libfs/src/devfs/devfs_node_type.c: Fixed
 	devFS_node_type() prototype.
 

diff -u rtems/cpukit/libcsupport/include/rtems/libio.h:1.77 rtems/cpukit/libcsupport/include/rtems/libio.h:1.78
--- rtems/cpukit/libcsupport/include/rtems/libio.h:1.77	Thu Jul 15 02:36:37 2010
+++ rtems/cpukit/libcsupport/include/rtems/libio.h	Thu Jul 15 03:10:46 2010
@@ -1119,8 +1119,6 @@
   rtems_id                                sem;
   uint32_t                                data0;     /* private to "driver" */
   void                                   *data1;     /* ... */
-  void                                   *file_info; /* used by file handlers */
-  const rtems_filesystem_file_handlers_r *handlers;  /* type specific handlers */
 };
 
 /**

diff -u rtems/cpukit/libcsupport/src/close.c:1.13 rtems/cpukit/libcsupport/src/close.c:1.14
--- rtems/cpukit/libcsupport/src/close.c:1.13	Thu Jul  1 10:12:36 2010
+++ rtems/cpukit/libcsupport/src/close.c	Thu Jul 15 03:10:47 2010
@@ -29,7 +29,7 @@
   rtems_libio_check_is_open(iop);
 
   rc = RTEMS_SUCCESSFUL;
-  rc = (*iop->handlers->close_h)( iop );
+  rc = (*iop->pathinfo.handlers->close_h)( iop );
 
   rtems_filesystem_freenode( &iop->pathinfo );
   rtems_libio_free( iop );

diff -u rtems/cpukit/libcsupport/src/fcntl.c:1.26 rtems/cpukit/libcsupport/src/fcntl.c:1.27
--- rtems/cpukit/libcsupport/src/fcntl.c:1.26	Thu Jul  1 10:12:36 2010
+++ rtems/cpukit/libcsupport/src/fcntl.c	Thu Jul 15 03:10:47 2010
@@ -62,8 +62,6 @@
         }
       }
 
-      diop->handlers   = iop->handlers;
-      diop->file_info  = iop->file_info;
       diop->flags      = iop->flags;
       diop->pathinfo   = iop->pathinfo;
       ret = (int) (diop - rtems_libio_iops);
@@ -140,7 +138,7 @@
    */
 
   if (ret >= 0) {
-    int err = (*iop->handlers->fcntl_h)( cmd, iop );
+    int err = (*iop->pathinfo.handlers->fcntl_h)( cmd, iop );
     if (err) {
       errno = err;
       ret = -1;

diff -u rtems/cpukit/libcsupport/src/fdatasync.c:1.11 rtems/cpukit/libcsupport/src/fdatasync.c:1.12
--- rtems/cpukit/libcsupport/src/fdatasync.c:1.11	Thu Jul  1 10:12:37 2010
+++ rtems/cpukit/libcsupport/src/fdatasync.c	Thu Jul 15 03:10:47 2010
@@ -35,5 +35,5 @@
    *  Now process the fdatasync().
    */
 
-  return (*iop->handlers->fdatasync_h)( iop );
+  return (*iop->pathinfo.handlers->fdatasync_h)( iop );
 }

diff -u rtems/cpukit/libcsupport/src/fstat.c:1.12 rtems/cpukit/libcsupport/src/fstat.c:1.13
--- rtems/cpukit/libcsupport/src/fstat.c:1.12	Thu Jul  1 10:12:37 2010
+++ rtems/cpukit/libcsupport/src/fstat.c	Thu Jul 15 03:10:47 2010
@@ -50,7 +50,7 @@
    */
   memset( sbuf, 0, sizeof(struct stat) );
 
-  return (*iop->handlers->fstat_h)( &iop->pathinfo, sbuf );
+  return (*iop->pathinfo.handlers->fstat_h)( &iop->pathinfo, sbuf );
 }
 
 /*

diff -u rtems/cpukit/libcsupport/src/fsync.c:1.12 rtems/cpukit/libcsupport/src/fsync.c:1.13
--- rtems/cpukit/libcsupport/src/fsync.c:1.12	Thu Jul  1 10:12:37 2010
+++ rtems/cpukit/libcsupport/src/fsync.c	Thu Jul 15 03:10:47 2010
@@ -35,5 +35,5 @@
    *  Now process the fsync().
    */
 
-  return (*iop->handlers->fsync_h)( iop );
+  return (*iop->pathinfo.handlers->fsync_h)( iop );
 }

diff -u rtems/cpukit/libcsupport/src/ftruncate.c:1.13 rtems/cpukit/libcsupport/src/ftruncate.c:1.14
--- rtems/cpukit/libcsupport/src/ftruncate.c:1.13	Thu Jul  1 10:12:37 2010
+++ rtems/cpukit/libcsupport/src/ftruncate.c	Thu Jul 15 03:10:47 2010
@@ -47,5 +47,5 @@
 
   rtems_libio_check_permissions( iop, LIBIO_FLAGS_WRITE );
 
-  return (*iop->handlers->ftruncate_h)( iop, length );
+  return (*iop->pathinfo.handlers->ftruncate_h)( iop, length );
 }

diff -u rtems/cpukit/libcsupport/src/getdents.c:1.10 rtems/cpukit/libcsupport/src/getdents.c:1.11
--- rtems/cpukit/libcsupport/src/getdents.c:1.10	Thu Jul  1 12:47:46 2010
+++ rtems/cpukit/libcsupport/src/getdents.c	Thu Jul 15 03:10:47 2010
@@ -51,5 +51,5 @@
    *  Return the number of bytes that were actually transfered as a result
    *  of the read attempt.
    */
-  return (*iop->handlers->read_h)( iop, dd_buf, dd_len  );
+  return (*iop->pathinfo.handlers->read_h)( iop, dd_buf, dd_len  );
 }

diff -u rtems/cpukit/libcsupport/src/ioctl.c:1.16 rtems/cpukit/libcsupport/src/ioctl.c:1.17
--- rtems/cpukit/libcsupport/src/ioctl.c:1.16	Thu Jul  1 10:12:37 2010
+++ rtems/cpukit/libcsupport/src/ioctl.c	Thu Jul 15 03:10:47 2010
@@ -47,7 +47,7 @@
   /*
    *  Now process the ioctl().
    */
-  rc = (*iop->handlers->ioctl_h)( iop, command, buffer );
+  rc = (*iop->pathinfo.handlers->ioctl_h)( iop, command, buffer );
 
   return rc;
 }

diff -u rtems/cpukit/libcsupport/src/libio_sockets.c:1.15 rtems/cpukit/libcsupport/src/libio_sockets.c:1.16
--- rtems/cpukit/libcsupport/src/libio_sockets.c:1.15	Wed Jul 14 10:01:00 2010
+++ rtems/cpukit/libcsupport/src/libio_sockets.c	Thu Jul 15 03:10:47 2010
@@ -16,10 +16,7 @@
 #include "config.h"
 #endif
 
-#include <rtems/libio_.h>             /* libio_.h pulls in rtems */
-#include <rtems.h>
-
-#include <errno.h>
+#include <rtems/libio_.h>
 #include <rtems/seterr.h>
 
 /*
@@ -70,8 +67,7 @@
   iop->flags |= LIBIO_FLAGS_WRITE | LIBIO_FLAGS_READ;
   iop->data0 = fd;
   iop->data1 = so;
-  iop->handlers = h;
-  iop->pathinfo.handlers = rtems_filesystem_root.handlers;
-  iop->pathinfo.ops = rtems_filesystem_root.ops;
+  iop->pathinfo.handlers = h;
+  iop->pathinfo.ops = &rtems_filesystem_operations_default;
   return fd;
 }

diff -u rtems/cpukit/libcsupport/src/lseek.c:1.17 rtems/cpukit/libcsupport/src/lseek.c:1.18
--- rtems/cpukit/libcsupport/src/lseek.c:1.17	Thu Jul  1 10:12:37 2010
+++ rtems/cpukit/libcsupport/src/lseek.c	Thu Jul 15 03:10:47 2010
@@ -61,7 +61,7 @@
    *  new offset.
    */
 
-  status = (*iop->handlers->lseek_h)( iop, offset, whence );
+  status = (*iop->pathinfo.handlers->lseek_h)( iop, offset, whence );
   if ( status == (off_t) -1 )
     iop->offset = old_offset;
 

diff -u rtems/cpukit/libcsupport/src/open.c:1.26 rtems/cpukit/libcsupport/src/open.c:1.27
--- rtems/cpukit/libcsupport/src/open.c:1.26	Wed Jul  7 10:55:22 2010
+++ rtems/cpukit/libcsupport/src/open.c	Thu Jul 15 03:10:47 2010
@@ -154,12 +154,10 @@
    *  Fill in the file control block based on the loc structure
    *  returned by successful path evaluation.
    */
-  iop->handlers   = loc.handlers;
-  iop->file_info  = loc.node_access;
   iop->flags     |= rtems_libio_fcntl_flags( flags );
   iop->pathinfo   = loc;
 
-  rc = (*iop->handlers->open_h)( iop, pathname, flags, mode );
+  rc = (*iop->pathinfo.handlers->open_h)( iop, pathname, flags, mode );
   if ( rc ) {
     rc = errno;
     goto done;

diff -u rtems/cpukit/libcsupport/src/read.c:1.17 rtems/cpukit/libcsupport/src/read.c:1.18
--- rtems/cpukit/libcsupport/src/read.c:1.17	Thu Jul  1 10:12:37 2010
+++ rtems/cpukit/libcsupport/src/read.c	Thu Jul 15 03:10:47 2010
@@ -40,7 +40,7 @@
   /*
    *  Now process the read().
    */
-  rc = (*iop->handlers->read_h)( iop, buffer, count );
+  rc = (*iop->pathinfo.handlers->read_h)( iop, buffer, count );
 
   if ( rc > 0 )
     iop->offset += rc;

diff -u rtems/cpukit/libcsupport/src/readv.c:1.5 rtems/cpukit/libcsupport/src/readv.c:1.6
--- rtems/cpukit/libcsupport/src/readv.c:1.5	Thu Jul  1 10:12:37 2010
+++ rtems/cpukit/libcsupport/src/readv.c	Thu Jul 15 03:10:47 2010
@@ -97,7 +97,11 @@
    *  Now process the readv().
    */
   for ( total=0, v=0 ; v < iovcnt ; v++ ) {
-    bytes = (*iop->handlers->read_h)( iop, iov[v].iov_base, iov[v].iov_len );
+    bytes = (*iop->pathinfo.handlers->read_h)(
+      iop,
+      iov[v].iov_base,
+      iov[v].iov_len
+    );
 
     if ( bytes < 0 )
       return -1;

diff -u rtems/cpukit/libcsupport/src/write.c:1.18 rtems/cpukit/libcsupport/src/write.c:1.19
--- rtems/cpukit/libcsupport/src/write.c:1.18	Thu Jul  1 10:12:38 2010
+++ rtems/cpukit/libcsupport/src/write.c	Thu Jul 15 03:10:47 2010
@@ -47,7 +47,7 @@
   /*
    *  Now process the write() request.
    */
-  rc = (*iop->handlers->write_h)( iop, buffer, count );
+  rc = (*iop->pathinfo.handlers->write_h)( iop, buffer, count );
 
   if ( rc > 0 )
     iop->offset += rc;

diff -u rtems/cpukit/libcsupport/src/writev.c:1.4 rtems/cpukit/libcsupport/src/writev.c:1.5
--- rtems/cpukit/libcsupport/src/writev.c:1.4	Thu Jul  1 12:47:48 2010
+++ rtems/cpukit/libcsupport/src/writev.c	Thu Jul 15 03:10:47 2010
@@ -104,7 +104,11 @@
     if ( iov[v].iov_len == 0 )
       continue;
 
-    bytes = (*iop->handlers->write_h)( iop, iov[v].iov_base, iov[v].iov_len );
+    bytes = (*iop->pathinfo.handlers->write_h)(
+      iop,
+      iov[v].iov_base,
+      iov[v].iov_len
+    );
 
     if ( bytes < 0 )
       return -1;

diff -u rtems/cpukit/libfs/src/devfs/devclose.c:1.4 rtems/cpukit/libfs/src/devfs/devclose.c:1.5
--- rtems/cpukit/libfs/src/devfs/devclose.c:1.4	Tue Jun  8 03:30:04 2010
+++ rtems/cpukit/libfs/src/devfs/devclose.c	Thu Jul 15 03:10:47 2010
@@ -23,7 +23,7 @@
   rtems_status_code              status;
   rtems_device_name_t           *np;
 
-  np         = (rtems_device_name_t *)iop->file_info;
+  np         = (rtems_device_name_t *)iop->pathinfo.node_access;
 
   args.iop   = iop;
   args.flags = 0;

diff -u rtems/cpukit/libfs/src/devfs/devioctl.c:1.3 rtems/cpukit/libfs/src/devfs/devioctl.c:1.4
--- rtems/cpukit/libfs/src/devfs/devioctl.c:1.3	Thu Sep 18 08:21:49 2008
+++ rtems/cpukit/libfs/src/devfs/devioctl.c	Thu Jul 15 03:10:47 2010
@@ -25,7 +25,7 @@
   rtems_status_code         status;
   rtems_device_name_t      *np;
 
-  np           = (rtems_device_name_t *)iop->file_info;
+  np           = (rtems_device_name_t *)iop->pathinfo.node_access;
 
   args.iop     = iop;
   args.command = command;

diff -u rtems/cpukit/libfs/src/devfs/devopen.c:1.4 rtems/cpukit/libfs/src/devfs/devopen.c:1.5
--- rtems/cpukit/libfs/src/devfs/devopen.c:1.4	Tue Jun  8 03:30:04 2010
+++ rtems/cpukit/libfs/src/devfs/devopen.c	Thu Jul 15 03:10:47 2010
@@ -26,7 +26,7 @@
   rtems_status_code              status;
   rtems_device_name_t           *np;
 
-  np         = (rtems_device_name_t *)iop->file_info;
+  np         = (rtems_device_name_t *)iop->pathinfo.node_access;
 
   args.iop   = iop;
   args.flags = iop->flags;

diff -u rtems/cpukit/libfs/src/devfs/devread.c:1.3 rtems/cpukit/libfs/src/devfs/devread.c:1.4
--- rtems/cpukit/libfs/src/devfs/devread.c:1.3	Thu Sep 18 08:21:49 2008
+++ rtems/cpukit/libfs/src/devfs/devread.c	Thu Jul 15 03:10:47 2010
@@ -25,7 +25,7 @@
   rtems_status_code       status;
   rtems_device_name_t     *np;
 
-  np               = (rtems_device_name_t *)iop->file_info;
+  np               = (rtems_device_name_t *)iop->pathinfo.node_access;
 
   args.iop         = iop;
   args.offset      = iop->offset;

diff -u rtems/cpukit/libfs/src/devfs/devwrite.c:1.3 rtems/cpukit/libfs/src/devfs/devwrite.c:1.4
--- rtems/cpukit/libfs/src/devfs/devwrite.c:1.3	Thu Sep 18 08:21:49 2008
+++ rtems/cpukit/libfs/src/devfs/devwrite.c	Thu Jul 15 03:10:47 2010
@@ -25,7 +25,7 @@
   rtems_status_code       status;
   rtems_device_name_t    *np;
 
-  np           = (rtems_device_name_t *)iop->file_info;
+  np           = (rtems_device_name_t *)iop->pathinfo.node_access;
 
   args.iop         = iop;
   args.offset      = iop->offset;

diff -u rtems/cpukit/libfs/src/dosfs/msdos_dir.c:1.19 rtems/cpukit/libfs/src/dosfs/msdos_dir.c:1.20
--- rtems/cpukit/libfs/src/dosfs/msdos_dir.c:1.19	Sun Jul  4 09:53:46 2010
+++ rtems/cpukit/libfs/src/dosfs/msdos_dir.c	Thu Jul 15 03:10:47 2010
@@ -51,7 +51,7 @@
     int                rc = RC_OK;
     rtems_status_code  sc = RTEMS_SUCCESSFUL;
     msdos_fs_info_t   *fs_info = iop->pathinfo.mt_entry->fs_info;
-    fat_file_fd_t     *fat_fd = iop->file_info;
+    fat_file_fd_t     *fat_fd = iop->pathinfo.node_access;
 
     sc = rtems_semaphore_obtain(fs_info->vol_sema, RTEMS_WAIT,
                                 MSDOS_VOLUME_SEMAPHORE_TIMEOUT);
@@ -86,7 +86,7 @@
     int                rc = RC_OK;
     rtems_status_code  sc = RTEMS_SUCCESSFUL;
     msdos_fs_info_t   *fs_info = iop->pathinfo.mt_entry->fs_info;
-    fat_file_fd_t     *fat_fd = iop->file_info;
+    fat_file_fd_t     *fat_fd = iop->pathinfo.node_access;
 
     sc = rtems_semaphore_obtain(fs_info->vol_sema, RTEMS_WAIT,
                                 MSDOS_VOLUME_SEMAPHORE_TIMEOUT);
@@ -201,7 +201,7 @@
     int                rc = RC_OK;
     rtems_status_code  sc = RTEMS_SUCCESSFUL;
     msdos_fs_info_t   *fs_info = iop->pathinfo.mt_entry->fs_info;
-    fat_file_fd_t     *fat_fd = iop->file_info;
+    fat_file_fd_t     *fat_fd = iop->pathinfo.node_access;
     fat_file_fd_t     *tmp_fat_fd = NULL;
     struct dirent      tmp_dirent;
     uint32_t           start = 0;
@@ -591,7 +591,7 @@
 {
     int                rc = RC_OK;
     rtems_status_code  sc = RTEMS_SUCCESSFUL;
-    fat_file_fd_t     *fat_fd = iop->file_info;
+    fat_file_fd_t     *fat_fd = iop->pathinfo.node_access;
     msdos_fs_info_t   *fs_info = iop->pathinfo.mt_entry->fs_info;
 
     sc = rtems_semaphore_obtain(fs_info->vol_sema, RTEMS_WAIT,

diff -u rtems/cpukit/libfs/src/dosfs/msdos_file.c:1.14 rtems/cpukit/libfs/src/dosfs/msdos_file.c:1.15
--- rtems/cpukit/libfs/src/dosfs/msdos_file.c:1.14	Sun Jul  4 09:53:46 2010
+++ rtems/cpukit/libfs/src/dosfs/msdos_file.c	Thu Jul 15 03:10:47 2010
@@ -47,7 +47,7 @@
     int                rc = RC_OK;
     rtems_status_code  sc = RTEMS_SUCCESSFUL;
     msdos_fs_info_t   *fs_info = iop->pathinfo.mt_entry->fs_info;
-    fat_file_fd_t     *fat_fd = iop->file_info;
+    fat_file_fd_t     *fat_fd = iop->pathinfo.node_access;
 
     sc = rtems_semaphore_obtain(fs_info->vol_sema, RTEMS_WAIT,
                                 MSDOS_VOLUME_SEMAPHORE_TIMEOUT);
@@ -88,7 +88,7 @@
     int                rc = RC_OK;
     rtems_status_code  sc = RTEMS_SUCCESSFUL;
     msdos_fs_info_t   *fs_info = iop->pathinfo.mt_entry->fs_info;
-    fat_file_fd_t     *fat_fd = iop->file_info;
+    fat_file_fd_t     *fat_fd = iop->pathinfo.node_access;
 
     sc = rtems_semaphore_obtain(fs_info->vol_sema, RTEMS_WAIT,
                                 MSDOS_VOLUME_SEMAPHORE_TIMEOUT);
@@ -148,7 +148,7 @@
     ssize_t            ret = 0;
     rtems_status_code  sc = RTEMS_SUCCESSFUL;
     msdos_fs_info_t   *fs_info = iop->pathinfo.mt_entry->fs_info;
-    fat_file_fd_t     *fat_fd = iop->file_info;
+    fat_file_fd_t     *fat_fd = iop->pathinfo.node_access;
 
     sc = rtems_semaphore_obtain(fs_info->vol_sema, RTEMS_WAIT,
                                 MSDOS_VOLUME_SEMAPHORE_TIMEOUT);
@@ -181,7 +181,7 @@
     ssize_t            ret = 0;
     rtems_status_code  sc = RTEMS_SUCCESSFUL;
     msdos_fs_info_t   *fs_info = iop->pathinfo.mt_entry->fs_info;
-    fat_file_fd_t     *fat_fd = iop->file_info;
+    fat_file_fd_t     *fat_fd = iop->pathinfo.node_access;
 
     sc = rtems_semaphore_obtain(fs_info->vol_sema, RTEMS_WAIT,
                                 MSDOS_VOLUME_SEMAPHORE_TIMEOUT);
@@ -228,7 +228,7 @@
     int                rc = RC_OK;
     rtems_status_code  sc = RTEMS_SUCCESSFUL;
     msdos_fs_info_t   *fs_info = iop->pathinfo.mt_entry->fs_info;
-    fat_file_fd_t     *fat_fd = iop->file_info;
+    fat_file_fd_t     *fat_fd = iop->pathinfo.node_access;
     uint32_t           real_size = 0;
 
     sc = rtems_semaphore_obtain(fs_info->vol_sema, RTEMS_WAIT,
@@ -306,7 +306,7 @@
     int                rc = RC_OK;
     rtems_status_code  sc = RTEMS_SUCCESSFUL;
     msdos_fs_info_t   *fs_info = iop->pathinfo.mt_entry->fs_info;
-    fat_file_fd_t     *fat_fd = iop->file_info;
+    fat_file_fd_t     *fat_fd = iop->pathinfo.node_access;
 
     if (length >= fat_fd->fat_file_size)
         return RC_OK;
@@ -349,7 +349,7 @@
 {
     int                rc = RC_OK;
     rtems_status_code  sc = RTEMS_SUCCESSFUL;
-    fat_file_fd_t     *fat_fd = iop->file_info;
+    fat_file_fd_t     *fat_fd = iop->pathinfo.node_access;
     msdos_fs_info_t   *fs_info = iop->pathinfo.mt_entry->fs_info;
 
     sc = rtems_semaphore_obtain(fs_info->vol_sema, RTEMS_WAIT,
@@ -409,7 +409,7 @@
 {
     int                rc = RC_OK;
     rtems_status_code  sc = RTEMS_SUCCESSFUL;
-    fat_file_fd_t     *fat_fd = iop->file_info;
+    fat_file_fd_t     *fat_fd = iop->pathinfo.node_access;
     msdos_fs_info_t   *fs_info = iop->pathinfo.mt_entry->fs_info;
 
     sc = rtems_semaphore_obtain(fs_info->vol_sema, RTEMS_WAIT,

diff -u rtems/cpukit/libfs/src/imfs/deviceio.c:1.23 rtems/cpukit/libfs/src/imfs/deviceio.c:1.24
--- rtems/cpukit/libfs/src/imfs/deviceio.c:1.23	Tue Jun  8 03:50:56 2010
+++ rtems/cpukit/libfs/src/imfs/deviceio.c	Thu Jul 15 03:10:47 2010
@@ -41,7 +41,7 @@
   rtems_status_code              status;
   IMFS_jnode_t                  *the_jnode;
 
-  the_jnode  = iop->file_info;
+  the_jnode  = iop->pathinfo.node_access;
 
   args.iop   = iop;
   args.flags = iop->flags;
@@ -70,7 +70,7 @@
   rtems_status_code              status;
   IMFS_jnode_t                  *the_jnode;
 
-  the_jnode = iop->file_info;
+  the_jnode = iop->pathinfo.node_access;
 
   args.iop   = iop;
   args.flags = 0;
@@ -103,7 +103,7 @@
   rtems_status_code       status;
   IMFS_jnode_t           *the_jnode;
 
-  the_jnode = iop->file_info;
+  the_jnode = iop->pathinfo.node_access;
 
   args.iop         = iop;
   args.offset      = iop->offset;
@@ -140,7 +140,7 @@
   rtems_status_code       status;
   IMFS_jnode_t           *the_jnode;
 
-  the_jnode = iop->file_info;
+  the_jnode = iop->pathinfo.node_access;
 
   args.iop         = iop;
   args.offset      = iop->offset;
@@ -181,7 +181,7 @@
   args.command = command;
   args.buffer  = buffer;
 
-  the_jnode = iop->file_info;
+  the_jnode = iop->pathinfo.node_access;
 
   status = rtems_io_control(
     the_jnode->info.device.major,

diff -u rtems/cpukit/libfs/src/imfs/imfs_directory.c:1.26 rtems/cpukit/libfs/src/imfs/imfs_directory.c:1.27
--- rtems/cpukit/libfs/src/imfs/imfs_directory.c:1.26	Thu Jun 24 16:31:21 2010
+++ rtems/cpukit/libfs/src/imfs/imfs_directory.c	Thu Jul 15 03:10:48 2010
@@ -47,7 +47,7 @@
   IMFS_jnode_t      *the_jnode;
 
   /* Is the node a directory ? */
-  the_jnode = (IMFS_jnode_t *) iop->file_info;
+  the_jnode = (IMFS_jnode_t *) iop->pathinfo.node_access;
 
   if ( the_jnode->type != IMFS_DIRECTORY )
      return -1;      /* It wasn't a directory --> return error */
@@ -90,7 +90,7 @@
    int                  last_entry;
    struct dirent        tmp_dirent;
 
-   the_jnode = (IMFS_jnode_t *)iop->file_info;
+   the_jnode = (IMFS_jnode_t *)iop->pathinfo.node_access;
    the_chain = &the_jnode->info.directory.Entries;
 
    if ( rtems_chain_is_empty( the_chain ) )

diff -u rtems/cpukit/libfs/src/imfs/imfs_fifo.c:1.5 rtems/cpukit/libfs/src/imfs/imfs_fifo.c:1.6
--- rtems/cpukit/libfs/src/imfs/imfs_fifo.c:1.5	Thu Jul  1 15:18:40 2010
+++ rtems/cpukit/libfs/src/imfs/imfs_fifo.c	Thu Jul 15 03:10:48 2010
@@ -22,7 +22,7 @@
 
 #define JNODE2PIPE(_jnode)  ( (_jnode)->info.fifo.pipe )
 
-#define LIBIO2PIPE(_iop)  ( JNODE2PIPE((IMFS_jnode_t *)(_iop)->file_info) )
+#define LIBIO2PIPE(_iop)  ( JNODE2PIPE((IMFS_jnode_t *)(_iop)->pathinfo.node_access) )
 
 /* Set errno and return -1 if error, else return _err */
 #define IMFS_FIFO_RETURN(_err) \
@@ -39,7 +39,7 @@
   uint32_t       mode
 )
 {
-  IMFS_jnode_t *jnode = iop->file_info;
+  IMFS_jnode_t *jnode = iop->pathinfo.node_access;
 
   int err = fifo_open(&JNODE2PIPE(jnode), iop);
   IMFS_FIFO_RETURN(err);
@@ -49,7 +49,7 @@
   rtems_libio_t *iop
 )
 {
-  IMFS_jnode_t *jnode = iop->file_info;
+  IMFS_jnode_t *jnode = iop->pathinfo.node_access;
 
   int err = pipe_release(&JNODE2PIPE(jnode), iop);
 
@@ -67,7 +67,7 @@
   size_t         count
 )
 {
-  IMFS_jnode_t *jnode = iop->file_info;
+  IMFS_jnode_t *jnode = iop->pathinfo.node_access;
 
   int err = pipe_read(JNODE2PIPE(jnode), buffer, count, iop);
   if (err > 0)
@@ -82,7 +82,7 @@
   size_t         count
 )
 {
-  IMFS_jnode_t *jnode = iop->file_info;
+  IMFS_jnode_t *jnode = iop->pathinfo.node_access;
 
   int err = pipe_write(JNODE2PIPE(jnode), buffer, count, iop);
   if (err > 0) {

diff -u rtems/cpukit/libfs/src/imfs/memfile.c:1.36 rtems/cpukit/libfs/src/imfs/memfile.c:1.37
--- rtems/cpukit/libfs/src/imfs/memfile.c:1.36	Thu Jul  1 10:39:23 2010
+++ rtems/cpukit/libfs/src/imfs/memfile.c	Thu Jul 15 03:10:48 2010
@@ -98,7 +98,7 @@
 {
   IMFS_jnode_t  *the_jnode;
 
-  the_jnode = iop->file_info;
+  the_jnode = iop->pathinfo.node_access;
 
   /*
    * Perform 'copy on write' for linear files
@@ -137,7 +137,7 @@
 {
   IMFS_jnode_t   *the_jnode;
 
-  the_jnode = iop->file_info;
+  the_jnode = iop->pathinfo.node_access;
 
   if (iop->flags & LIBIO_FLAGS_APPEND)
     iop->offset = the_jnode->info.file.size;
@@ -161,7 +161,7 @@
 {
   IMFS_jnode_t   *the_jnode;
 
-  the_jnode = iop->file_info;
+  the_jnode = iop->pathinfo.node_access;
 
   return IMFS_memfile_read( the_jnode, iop->offset, buffer, count );
 }
@@ -181,7 +181,7 @@
   IMFS_jnode_t   *the_jnode;
   ssize_t         status;
 
-  the_jnode = iop->file_info;
+  the_jnode = iop->pathinfo.node_access;
 
   status = IMFS_memfile_write( the_jnode, iop->offset, buffer, count );
   iop->size = the_jnode->info.file.size;
@@ -205,7 +205,7 @@
 {
   IMFS_jnode_t   *the_jnode;
 
-  the_jnode = iop->file_info;
+  the_jnode = iop->pathinfo.node_access;
 
   return 0;
 }
@@ -224,7 +224,7 @@
 {
   IMFS_jnode_t   *the_jnode;
 
-  the_jnode = iop->file_info;
+  the_jnode = iop->pathinfo.node_access;
 
   if (the_jnode->type == IMFS_LINEAR_FILE) {
     if (iop->offset > the_jnode->info.linearfile.size)
@@ -258,7 +258,7 @@
 {
   IMFS_jnode_t   *the_jnode;
 
-  the_jnode = iop->file_info;
+  the_jnode = iop->pathinfo.node_access;
 
   /*
    *  POSIX 1003.1b does not specify what happens if you truncate a file

diff -u rtems/cpukit/libfs/src/nfsclient/src/nfs.c:1.23 rtems/cpukit/libfs/src/nfsclient/src/nfs.c:1.24
--- rtems/cpukit/libfs/src/nfsclient/src/nfs.c:1.23	Thu Jul  1 04:51:50 2010
+++ rtems/cpukit/libfs/src/nfsclient/src/nfs.c	Thu Jul 15 03:10:48 2010
@@ -2515,23 +2515,6 @@
 		  'nfs_xxx'.
  *****************************************/
 
-
-#if 0
-/* from rtems/libio.h for convenience */
-struct rtems_libio_tt {
-		rtems_driver_name_t              *driver;
-		off_t                             size;      /* size of file */
-		off_t                             offset;    /* current offset into file */
-		uint32_t                          flags;
-		rtems_filesystem_location_info_t  pathinfo;
-		Objects_Id                        sem;
-		uint32_t                          data0;     /* private to "driver" */
-		void                             *data1;     /* ... */
-		void                             *file_info; /* used by file handlers */
-		rtems_filesystem_file_handlers_r *handlers;  /* type specific handlers */
-};
-#endif
-
 /* stateless NFS protocol makes this trivial */
 static int nfs_file_open(
 	rtems_libio_t *iop,
@@ -2540,14 +2523,13 @@
 	uint32_t      mode
 )
 {
-	iop->file_info = 0;
 	return 0;
 }
 
 /* reading directories is not stateless; we must
  * remember the last 'read' position, i.e.
  * the server 'cookie'. We do manage this information
- * attached to the iop->file_info.
+ * attached to the pathinfo.node_access_2.
  */
 static int nfs_dir_open(
 	rtems_libio_t *iop,
@@ -2560,11 +2542,11 @@
 DirInfo		di;
 
 	/* create a readdirargs object and copy the file handle;
-	 * attach to the file_info.
+	 * attach to the pathinfo.node_access_2
 	 */
 
 	di = (DirInfo) malloc(sizeof(*di));
-	iop->file_info = di;
+	iop->pathinfo.node_access_2 = di;
 
 	if ( !di  ) {
 		errno = ENOMEM;
@@ -2598,8 +2580,8 @@
 	rtems_libio_t *iop
 )
 {
-	free(iop->file_info);
-	iop->file_info = 0;
+	free(iop->pathinfo.node_access_2);
+	iop->pathinfo.node_access_2 = 0;
 	return 0;
 }
 
@@ -2656,7 +2638,7 @@
 	size_t        count
 )
 {
-DirInfo			di     = iop->file_info;
+DirInfo			di     = iop->pathinfo.node_access_2;
 RpcUdpServer	server = ((Nfs)iop->pathinfo.mt_entry->fs_info)->server;
 
 	if ( di->eofreached )
@@ -2814,7 +2796,7 @@
 	int            whence
 )
 {
-DirInfo di = iop->file_info;
+DirInfo di = iop->pathinfo.node_access_2;
 
 	/* we don't support anything other than
 	 * rewinding

diff -u rtems/cpukit/libfs/src/rfs/rtems-rfs-rtems-file.c:1.6 rtems/cpukit/libfs/src/rfs/rtems-rfs-rtems-file.c:1.7
--- rtems/cpukit/libfs/src/rfs/rtems-rfs-rtems-file.c:1.6	Thu Jul  1 15:18:41 2010
+++ rtems/cpukit/libfs/src/rfs/rtems-rfs-rtems-file.c	Thu Jul 15 03:10:48 2010
@@ -70,7 +70,7 @@
   if (rtems_rfs_rtems_trace (RTEMS_RFS_RTEMS_DEBUG_FILE_OPEN))
     printf("rtems-rfs: file-open: handle:%p\n", file);
   
-  iop->file_info = file;
+  iop->pathinfo.node_access = file;
   
   rtems_rfs_rtems_unlock (fs);
   return 0;
@@ -86,7 +86,7 @@
 static int
 rtems_rfs_rtems_file_close (rtems_libio_t* iop)
 {
-  rtems_rfs_file_handle* file = iop->file_info;
+  rtems_rfs_file_handle* file = iop->pathinfo.node_access;
   rtems_rfs_file_system* fs = rtems_rfs_file_fs (file);
   int                    rc;
 
@@ -116,7 +116,7 @@
                            void*          buffer,
                            size_t         count)
 {
-  rtems_rfs_file_handle* file = iop->file_info;
+  rtems_rfs_file_handle* file = iop->pathinfo.node_access;
   rtems_rfs_pos          pos;
   uint8_t*               data = buffer;
   ssize_t                read = 0;
@@ -181,7 +181,7 @@
                             const void*    buffer,
                             size_t         count)
 {
-  rtems_rfs_file_handle* file = iop->file_info;
+  rtems_rfs_file_handle* file = iop->pathinfo.node_access;
   rtems_rfs_pos          pos;
   const uint8_t*         data = buffer;
   ssize_t                write = 0;
@@ -271,7 +271,7 @@
                             rtems_off64_t  offset,
                             int            whence)
 {
-  rtems_rfs_file_handle* file = iop->file_info;
+  rtems_rfs_file_handle* file = iop->pathinfo.node_access;
   rtems_rfs_pos          pos;
   int                    rc;
 
@@ -305,7 +305,7 @@
 rtems_rfs_rtems_file_ftruncate (rtems_libio_t* iop,
                                 rtems_off64_t  length)
 {
-  rtems_rfs_file_handle* file = iop->file_info;
+  rtems_rfs_file_handle* file = iop->pathinfo.node_access;
   int                    rc;
 
   if (rtems_rfs_rtems_trace (RTEMS_RFS_RTEMS_DEBUG_FILE_FTRUNC))

diff -u rtems/cpukit/libfs/src/rfs/rtems-rfs-rtems.h:1.2 rtems/cpukit/libfs/src/rfs/rtems-rfs-rtems.h:1.3
--- rtems/cpukit/libfs/src/rfs/rtems-rfs-rtems.h:1.2	Mon Apr 12 00:29:25 2010
+++ rtems/cpukit/libfs/src/rfs/rtems-rfs-rtems.h	Thu Jul 15 03:10:48 2010
@@ -194,7 +194,7 @@
  * @return
  */
 #define rtems_rfs_rtems_get_iop_ino(_iop) \
-  ((intptr_t)(_iop)->file_info)
+  ((intptr_t)(_iop)->pathinfo.node_access)
 
 /**
  * Create the name of the handler's table given the type of handlers.

diff -u rtems/cpukit/libnetworking/lib/ftpfs.c:1.31 rtems/cpukit/libnetworking/lib/ftpfs.c:1.32
--- rtems/cpukit/libnetworking/lib/ftpfs.c:1.31	Thu Jun 10 04:20:28 2010
+++ rtems/cpukit/libnetworking/lib/ftpfs.c	Thu Jul 15 03:10:48 2010
@@ -958,7 +958,7 @@
     ? "STOR "
     : "RETR ";
   uint32_t client_address = 0;
-  char *location = iop->file_info;
+  char *location = iop->pathinfo.node_access;
 
   /* Invalidate data handle */
   iop->data1 = NULL;
@@ -982,7 +982,7 @@
        * This is an access to the root node that will be used for file system
        * option settings.
        */
-      iop->handlers = &rtems_ftpfs_root_handlers;
+      iop->pathinfo.handlers = &rtems_ftpfs_root_handlers;
 
       return 0;
     } else {
@@ -1166,7 +1166,7 @@
   /*
    * The caller of this routine has striped off the mount prefix from the path.
    * We need to store this path here or otherwise we would have to do this job
-   * again.  The path is used in rtems_ftpfs_open() via iop->file_info.
+   * again.  The path is used in rtems_ftpfs_open() via iop->pathinfo.node_access.
    */
   char *pathname_dup = malloc(pathnamelen + 1);
 


 *sh*:
2010-07-16	Sebastian Huber <sebastian.huber at embedded-brains.de>

	* libcsupport/include/rtems/libio_.h: Removed rtems_filesystem_null_handlers.
	* libcsupport/src/fs_null_handlers.c: Removed file.
	* libcsupport/Makefile.am: Reflect change above.
	* libfs/src/nfsclient/src/nfs.c, libfs/src/imfs/imfs_creat.c,
	libfs/src/imfs/imfs_init.c, libfs/src/imfs/miniimfs_init.c: Use
	rtems_filesystem_handlers_default instead of
	rtems_filesystem_null_handlers.
	* libnetworking/lib/ftpfs.c, libnetworking/lib/tftpDriver.c:
	Initialize handler and operations table with proper defaults.

M 1.2509  cpukit/ChangeLog
M  1.127  cpukit/libcsupport/Makefile.am
M   1.40  cpukit/libcsupport/include/rtems/libio_.h
R    1.7  cpukit/libcsupport/src/fs_null_handlers.c
M   1.18  cpukit/libfs/src/imfs/imfs_creat.c
M   1.21  cpukit/libfs/src/imfs/imfs_init.c
M   1.17  cpukit/libfs/src/imfs/miniimfs_init.c
M   1.25  cpukit/libfs/src/nfsclient/src/nfs.c
M   1.33  cpukit/libnetworking/lib/ftpfs.c
M   1.40  cpukit/libnetworking/lib/tftpDriver.c

diff -u rtems/cpukit/ChangeLog:1.2508 rtems/cpukit/ChangeLog:1.2509
--- rtems/cpukit/ChangeLog:1.2508	Thu Jul 15 03:10:46 2010
+++ rtems/cpukit/ChangeLog	Thu Jul 15 03:46:06 2010
@@ -1,5 +1,17 @@
 2010-07-16	Sebastian Huber <sebastian.huber at embedded-brains.de>
 
+	* libcsupport/include/rtems/libio_.h: Removed rtems_filesystem_null_handlers.
+	* libcsupport/src/fs_null_handlers.c: Removed file.
+	* libcsupport/Makefile.am: Reflect change above.
+	* libfs/src/nfsclient/src/nfs.c, libfs/src/imfs/imfs_creat.c,
+	libfs/src/imfs/imfs_init.c, libfs/src/imfs/miniimfs_init.c: Use
+	rtems_filesystem_handlers_default instead of
+	rtems_filesystem_null_handlers.
+	* libnetworking/lib/ftpfs.c, libnetworking/lib/tftpDriver.c:
+	Initialize handler and operations table with proper defaults.
+
+2010-07-16	Sebastian Huber <sebastian.huber at embedded-brains.de>
+
 	* libcsupport/include/rtems/libio.h: Removed file_info and handlers
 	fields in rtems_libio_t.
 	* libcsupport/src/close.c, libcsupport/src/fcntl.c,

diff -u rtems/cpukit/libcsupport/Makefile.am:1.126 rtems/cpukit/libcsupport/Makefile.am:1.127
--- rtems/cpukit/libcsupport/Makefile.am:1.126	Sat Jul 10 09:31:45 2010
+++ rtems/cpukit/libcsupport/Makefile.am	Thu Jul 15 03:46:06 2010
@@ -45,7 +45,7 @@
 
 BASE_FS_C_FILES = src/base_fs.c src/mount.c src/unmount.c src/libio.c \
     src/mount-mgr.c src/mount-mktgt.c src/libio_init.c \
-    src/eval.c src/fs_null_handlers.c src/privateenv.c \
+    src/eval.c src/privateenv.c \
     src/open_dev_console.c src/__usrenv.c src/rtems_mkdir.c
 
 if LIBNETWORKING

diff -u rtems/cpukit/libcsupport/include/rtems/libio_.h:1.39 rtems/cpukit/libcsupport/include/rtems/libio_.h:1.40
--- rtems/cpukit/libcsupport/include/rtems/libio_.h:1.39	Thu Jul  1 08:05:18 2010
+++ rtems/cpukit/libcsupport/include/rtems/libio_.h	Thu Jul 15 03:46:06 2010
@@ -37,7 +37,6 @@
 #define RTEMS_LIBIO_IOP_SEM(n)  rtems_build_name('L', 'B', 'I', n)
 
 extern rtems_id                          rtems_libio_semaphore;
-extern const rtems_filesystem_file_handlers_r rtems_filesystem_null_handlers;
 
 /*
  *  File descriptor Table Information

diff -u rtems/cpukit/libfs/src/imfs/imfs_creat.c:1.17 rtems/cpukit/libfs/src/imfs/imfs_creat.c:1.18
--- rtems/cpukit/libfs/src/imfs/imfs_creat.c:1.17	Thu Jun 24 16:37:08 2010
+++ rtems/cpukit/libfs/src/imfs/imfs_creat.c	Thu Jul 15 03:46:06 2010
@@ -54,7 +54,7 @@
    *  Reject creation of FIFOs if support is disabled.
    */
   if ( type == IMFS_FIFO &&
-       fs_info->fifo_handlers == &rtems_filesystem_null_handlers )
+       fs_info->fifo_handlers == &rtems_filesystem_handlers_default )
     return NULL;
 
   /*

diff -u rtems/cpukit/libfs/src/imfs/imfs_init.c:1.20 rtems/cpukit/libfs/src/imfs/imfs_init.c:1.21
--- rtems/cpukit/libfs/src/imfs/imfs_init.c:1.20	Wed Jul 14 10:44:43 2010
+++ rtems/cpukit/libfs/src/imfs/imfs_init.c	Thu Jul 15 03:46:06 2010
@@ -56,6 +56,6 @@
     &IMFS_ops,
     &IMFS_memfile_handlers,
     &IMFS_directory_handlers,
-    &rtems_filesystem_null_handlers  /* for fifos */
+    &rtems_filesystem_handlers_default  /* for fifos */
   );
 }

diff -u rtems/cpukit/libfs/src/imfs/miniimfs_init.c:1.16 rtems/cpukit/libfs/src/imfs/miniimfs_init.c:1.17
--- rtems/cpukit/libfs/src/imfs/miniimfs_init.c:1.16	Thu Jul  1 15:18:41 2010
+++ rtems/cpukit/libfs/src/imfs/miniimfs_init.c	Thu Jul 15 03:46:06 2010
@@ -54,8 +54,8 @@
   return IMFS_initialize_support(
     mt_entry,
     &miniIMFS_ops,
-    &rtems_filesystem_null_handlers, /* for memfiles */
-    &rtems_filesystem_null_handlers, /* for directories */
-    &rtems_filesystem_null_handlers  /* for fifos */
+    &rtems_filesystem_handlers_default, /* for memfiles */
+    &rtems_filesystem_handlers_default, /* for directories */
+    &rtems_filesystem_handlers_default  /* for fifos */
   );
 }

diff -u rtems/cpukit/libfs/src/nfsclient/src/nfs.c:1.24 rtems/cpukit/libfs/src/nfsclient/src/nfs.c:1.25
--- rtems/cpukit/libfs/src/nfsclient/src/nfs.c:1.24	Thu Jul 15 03:10:48 2010
+++ rtems/cpukit/libfs/src/nfsclient/src/nfs.c	Thu Jul 15 03:46:06 2010
@@ -1616,7 +1616,7 @@
 			case NFDIR:	pathloc->handlers = &nfs_dir_file_handlers;  break;
 			case NFREG:	pathloc->handlers = &nfs_file_file_handlers; break;
 			case NFLNK: pathloc->handlers = &nfs_link_file_handlers; break;
-			default: 	pathloc->handlers = &rtems_filesystem_null_handlers; break;
+			default: 	pathloc->handlers = &rtems_filesystem_handlers_default; break;
 		}
 		pathloc->node_access = node;
 

diff -u rtems/cpukit/libnetworking/lib/ftpfs.c:1.32 rtems/cpukit/libnetworking/lib/ftpfs.c:1.33
--- rtems/cpukit/libnetworking/lib/ftpfs.c:1.32	Thu Jul 15 03:10:48 2010
+++ rtems/cpukit/libnetworking/lib/ftpfs.c	Thu Jul 15 03:46:06 2010
@@ -1292,21 +1292,21 @@
 
 static const rtems_filesystem_operations_table rtems_ftpfs_ops = {
   .evalpath_h = rtems_ftpfs_eval_path,
-  .evalformake_h = NULL,
-  .link_h = NULL,
-  .unlink_h = NULL,
+  .evalformake_h = rtems_filesystem_default_evalformake,
+  .link_h = rtems_filesystem_default_link,
+  .unlink_h = rtems_filesystem_default_unlink,
   .node_type_h = rtems_ftpfs_node_type,
-  .mknod_h = NULL,
-  .chown_h = NULL,
+  .mknod_h = rtems_filesystem_default_mknod,
+  .chown_h = rtems_filesystem_default_chown,
   .freenod_h = rtems_ftpfs_free_node,
-  .mount_h = NULL,
+  .mount_h = rtems_filesystem_default_mount,
   .fsmount_me_h = rtems_ftpfs_initialize,
-  .unmount_h = NULL,
+  .unmount_h = rtems_filesystem_default_unmount,
   .fsunmount_me_h = rtems_ftpfs_unmount_me,
-  .utime_h = NULL,
-  .eval_link_h = NULL,
-  .symlink_h = NULL,
-  .readlink_h = NULL
+  .utime_h = rtems_filesystem_default_utime,
+  .eval_link_h = rtems_filesystem_default_evaluate_link,
+  .symlink_h = rtems_filesystem_default_symlink,
+  .readlink_h = rtems_filesystem_default_readlink
 };
 
 static const rtems_filesystem_file_handlers_r rtems_ftpfs_handlers = {
@@ -1314,31 +1314,31 @@
   .close_h = rtems_ftpfs_close,
   .read_h = rtems_ftpfs_read,
   .write_h = rtems_ftpfs_write,
-  .ioctl_h = NULL,
-  .lseek_h = NULL,
+  .ioctl_h = rtems_filesystem_default_ioctl,
+  .lseek_h = rtems_filesystem_default_lseek,
   .fstat_h = rtems_ftpfs_fstat,
-  .fchmod_h = NULL,
+  .fchmod_h = rtems_filesystem_default_fchmod,
   .ftruncate_h = rtems_ftpfs_ftruncate,
-  .fpathconf_h = NULL,
-  .fsync_h = NULL,
-  .fdatasync_h = NULL,
-  .fcntl_h = NULL,
-  .rmnod_h = NULL
+  .fpathconf_h = rtems_filesystem_default_fpathconf,
+  .fsync_h = rtems_filesystem_default_fsync,
+  .fdatasync_h = rtems_filesystem_default_fdatasync,
+  .fcntl_h = rtems_filesystem_default_fcntl,
+  .rmnod_h = rtems_filesystem_default_rmnod
 };
 
 static const rtems_filesystem_file_handlers_r rtems_ftpfs_root_handlers = {
-  .open_h = NULL,
-  .close_h = NULL,
-  .read_h = NULL,
-  .write_h = NULL,
+  .open_h = rtems_filesystem_default_open,
+  .close_h = rtems_filesystem_default_close,
+  .read_h = rtems_filesystem_default_read,
+  .write_h = rtems_filesystem_default_write,
   .ioctl_h = rtems_ftpfs_ioctl,
-  .lseek_h = NULL,
-  .fstat_h = NULL,
-  .fchmod_h = NULL,
-  .ftruncate_h = NULL,
-  .fpathconf_h = NULL,
-  .fsync_h = NULL,
-  .fdatasync_h = NULL,
-  .fcntl_h = NULL,
-  .rmnod_h = NULL
+  .lseek_h = rtems_filesystem_default_lseek,
+  .fstat_h = rtems_filesystem_default_fstat,
+  .fchmod_h = rtems_filesystem_default_fchmod,
+  .ftruncate_h = rtems_filesystem_default_ftruncate,
+  .fpathconf_h = rtems_filesystem_default_fpathconf,
+  .fsync_h = rtems_filesystem_default_fsync,
+  .fdatasync_h = rtems_filesystem_default_fdatasync,
+  .fcntl_h = rtems_filesystem_default_fcntl,
+  .rmnod_h = rtems_filesystem_default_rmnod
 };

diff -u rtems/cpukit/libnetworking/lib/tftpDriver.c:1.39 rtems/cpukit/libnetworking/lib/tftpDriver.c:1.40
--- rtems/cpukit/libnetworking/lib/tftpDriver.c:1.39	Tue Jun 29 08:03:31 2010
+++ rtems/cpukit/libnetworking/lib/tftpDriver.c	Thu Jul 15 03:46:06 2010
@@ -1083,37 +1083,37 @@
 
 
 static const rtems_filesystem_operations_table  rtems_tftp_ops = {
-    rtems_tftp_eval_path,            /* eval_path */
-    rtems_tftp_evaluate_for_make,    /* evaluate_for_make */
-    NULL,                            /* link */
-    NULL,                            /* unlink */
-    rtems_tftp_node_type,            /* node_type */
-    NULL,                            /* mknod */
-    NULL,                            /* chown */
-    rtems_tftp_free_node_info,       /* freenodinfo */
-    NULL,                            /* mount */
-    rtems_tftpfs_initialize,         /* initialize */
-    NULL,                            /* unmount */
-    rtems_tftpfs_shutdown,           /* fsunmount */
-    NULL,                            /* utime, */
-    NULL,                            /* evaluate_link */
-    NULL,                            /* symlink */
-    NULL,                            /* readlin */
+    .evalpath_h = rtems_tftp_eval_path,
+    .evalformake_h = rtems_tftp_evaluate_for_make,
+    .link_h = rtems_filesystem_default_link,
+    .unlink_h = rtems_filesystem_default_unlink,
+    .node_type_h = rtems_tftp_node_type,
+    .mknod_h = rtems_filesystem_default_mknod,
+    .chown_h = rtems_filesystem_default_chown,
+    .freenod_h = rtems_tftp_free_node_info,
+    .mount_h = rtems_filesystem_default_mount,
+    .fsmount_me_h = rtems_tftpfs_initialize,
+    .unmount_h = rtems_filesystem_default_unmount,
+    .fsunmount_me_h = rtems_tftpfs_shutdown,
+    .utime_h = rtems_filesystem_default_utime,
+    .eval_link_h = rtems_filesystem_default_evaluate_link,
+    .symlink_h = rtems_filesystem_default_symlink,
+    .readlink_h = rtems_filesystem_default_readlink
 };
 
 static const rtems_filesystem_file_handlers_r rtems_tftp_handlers = {
-    rtems_tftp_open,      /* open */
-    rtems_tftp_close,     /* close */
-    rtems_tftp_read,      /* read */
-    rtems_tftp_write,     /* write */
-    NULL,                 /* ioctl */
-    NULL,                 /* lseek */
-    NULL,                 /* fstat */
-    NULL,                 /* fchmod */
-    rtems_tftp_ftruncate, /* ftruncate */
-    NULL,                 /* fpathconf */
-    NULL,                 /* fsync */
-    NULL,                 /* fdatasync */
-    NULL,                 /* fcntl */
-    NULL                  /* rmnod */
+   .open_h = rtems_tftp_open,
+   .close_h = rtems_tftp_close,
+   .read_h = rtems_tftp_read,
+   .write_h = rtems_tftp_write,
+   .ioctl_h = rtems_filesystem_default_ioctl,
+   .lseek_h = rtems_filesystem_default_lseek,
+   .fstat_h = rtems_filesystem_default_fstat,
+   .fchmod_h = rtems_filesystem_default_fchmod,
+   .ftruncate_h = rtems_tftp_ftruncate,
+   .fpathconf_h = rtems_filesystem_default_fpathconf,
+   .fsync_h = rtems_filesystem_default_fsync,
+   .fdatasync_h = rtems_filesystem_default_fdatasync,
+   .fcntl_h = rtems_filesystem_default_fcntl,
+   .rmnod_h = rtems_filesystem_default_rmnod
 };


 *sh*:
2010-07-16	Sebastian Huber <sebastian.huber at embedded-brains.de>

	* libfs/src/imfs/imfs.h: Changed IMFS_jnode_types_t to an enum.
	Removed IMFS_NUMBER_OF_TYPES define.
	* libfs/src/imfs/imfs_debug.c: Removed IMFS_types.

M 1.2510  cpukit/ChangeLog
M   1.46  cpukit/libfs/src/imfs/imfs.h
M   1.16  cpukit/libfs/src/imfs/imfs_debug.c

diff -u rtems/cpukit/ChangeLog:1.2509 rtems/cpukit/ChangeLog:1.2510
--- rtems/cpukit/ChangeLog:1.2509	Thu Jul 15 03:46:06 2010
+++ rtems/cpukit/ChangeLog	Thu Jul 15 03:59:46 2010
@@ -1,5 +1,11 @@
 2010-07-16	Sebastian Huber <sebastian.huber at embedded-brains.de>
 
+	* libfs/src/imfs/imfs.h: Changed IMFS_jnode_types_t to an enum.
+	Removed IMFS_NUMBER_OF_TYPES define.
+	* libfs/src/imfs/imfs_debug.c: Removed IMFS_types.
+
+2010-07-16	Sebastian Huber <sebastian.huber at embedded-brains.de>
+
 	* libcsupport/include/rtems/libio_.h: Removed rtems_filesystem_null_handlers.
 	* libcsupport/src/fs_null_handlers.c: Removed file.
 	* libcsupport/Makefile.am: Reflect change above.

diff -u rtems/cpukit/libfs/src/imfs/imfs.h:1.45 rtems/cpukit/libfs/src/imfs/imfs.h:1.46
--- rtems/cpukit/libfs/src/imfs/imfs.h:1.45	Wed Jul 14 10:44:43 2010
+++ rtems/cpukit/libfs/src/imfs/imfs.h	Thu Jul 15 03:59:46 2010
@@ -134,16 +134,15 @@
  *  What types of IMFS file systems entities there can be.
  */
 
-#define IMFS_jnode_types_t rtems_filesystem_node_types_t
-#define IMFS_DIRECTORY     RTEMS_FILESYSTEM_DIRECTORY
-#define IMFS_DEVICE        RTEMS_FILESYSTEM_DEVICE
-#define IMFS_HARD_LINK     RTEMS_FILESYSTEM_HARD_LINK
-#define IMFS_SYM_LINK      RTEMS_FILESYSTEM_SYM_LINK
-#define IMFS_MEMORY_FILE   RTEMS_FILESYSTEM_MEMORY_FILE
-#define IMFS_LINEAR_FILE   (IMFS_MEMORY_FILE + 1)
-#define IMFS_FIFO          (IMFS_LINEAR_FILE + 1)
-
-#define IMFS_NUMBER_OF_TYPES  (IMFS_FIFO + 1)
+typedef enum {
+  IMFS_DIRECTORY = RTEMS_FILESYSTEM_DIRECTORY,
+  IMFS_DEVICE = RTEMS_FILESYSTEM_DEVICE,
+  IMFS_HARD_LINK = RTEMS_FILESYSTEM_HARD_LINK,
+  IMFS_SYM_LINK =  RTEMS_FILESYSTEM_SYM_LINK,
+  IMFS_MEMORY_FILE = RTEMS_FILESYSTEM_MEMORY_FILE,
+  IMFS_LINEAR_FILE,
+  IMFS_FIFO
+} IMFS_jnode_types_t;
 
 typedef union {
   IMFS_directory_t   directory;

diff -u rtems/cpukit/libfs/src/imfs/imfs_debug.c:1.15 rtems/cpukit/libfs/src/imfs/imfs_debug.c:1.16
--- rtems/cpukit/libfs/src/imfs/imfs_debug.c:1.15	Thu Jun 24 16:31:21 2010
+++ rtems/cpukit/libfs/src/imfs/imfs_debug.c	Thu Jul 15 03:59:46 2010
@@ -32,20 +32,6 @@
 #include <rtems/libio_.h>
 
 /*
- *  IMFS_types
- *
- *  Printable names for each of the IMFS file system types.
- */
-
-char *IMFS_types[ IMFS_NUMBER_OF_TYPES ] = {
-  "directory",
-  "device",
-  "link",
-  "memory file",
-  "linear file"
-};
-
-/*
  *  IMFS_print_jnode
  *
  *  This routine prints the contents of the specified jnode.



--

Generated by Deluxe Loginfo [http://www.codewiz.org/projects/index.html#loginfo] 2.122 by Bernardo Innocenti <bernie at develer.com>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/vc/attachments/20100715/9f233db3/attachment-0001.html>


More information about the vc mailing list