<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>change log for rtems (2010-07-15)</title>
</head>
<body text='#000000' bgcolor='#ffffff'>
<a name='cs1'></a>
<table border='0' cellspacing='0' cellpadding='5' width='100%' bgcolor='#eeeeee'>
<tr><td colspan='3' bgcolor='#dddddd'>
 <font color='#bb2222'><strong>sh</strong></font>
</td></tr>
<tr><td colspan='3' bgcolor='#dddddd'><pre>2010-07-16 Sebastian Huber <sebastian.huber@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.
</pre></td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/ChangeLog.diff?r1=text&tr1=1.2507&r2=text&tr2=1.2508&diff_format=h">M</a></td><td width='1%'>1.2508</td><td width='100%'>cpukit/ChangeLog</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libcsupport/include/rtems/libio.h.diff?r1=text&tr1=1.77&r2=text&tr2=1.78&diff_format=h">M</a></td><td width='1%'>1.78</td><td width='100%'>cpukit/libcsupport/include/rtems/libio.h</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libcsupport/src/close.c.diff?r1=text&tr1=1.13&r2=text&tr2=1.14&diff_format=h">M</a></td><td width='1%'>1.14</td><td width='100%'>cpukit/libcsupport/src/close.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libcsupport/src/fcntl.c.diff?r1=text&tr1=1.26&r2=text&tr2=1.27&diff_format=h">M</a></td><td width='1%'>1.27</td><td width='100%'>cpukit/libcsupport/src/fcntl.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libcsupport/src/fdatasync.c.diff?r1=text&tr1=1.11&r2=text&tr2=1.12&diff_format=h">M</a></td><td width='1%'>1.12</td><td width='100%'>cpukit/libcsupport/src/fdatasync.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libcsupport/src/fstat.c.diff?r1=text&tr1=1.12&r2=text&tr2=1.13&diff_format=h">M</a></td><td width='1%'>1.13</td><td width='100%'>cpukit/libcsupport/src/fstat.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libcsupport/src/fsync.c.diff?r1=text&tr1=1.12&r2=text&tr2=1.13&diff_format=h">M</a></td><td width='1%'>1.13</td><td width='100%'>cpukit/libcsupport/src/fsync.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libcsupport/src/ftruncate.c.diff?r1=text&tr1=1.13&r2=text&tr2=1.14&diff_format=h">M</a></td><td width='1%'>1.14</td><td width='100%'>cpukit/libcsupport/src/ftruncate.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libcsupport/src/getdents.c.diff?r1=text&tr1=1.10&r2=text&tr2=1.11&diff_format=h">M</a></td><td width='1%'>1.11</td><td width='100%'>cpukit/libcsupport/src/getdents.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libcsupport/src/ioctl.c.diff?r1=text&tr1=1.16&r2=text&tr2=1.17&diff_format=h">M</a></td><td width='1%'>1.17</td><td width='100%'>cpukit/libcsupport/src/ioctl.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libcsupport/src/libio_sockets.c.diff?r1=text&tr1=1.15&r2=text&tr2=1.16&diff_format=h">M</a></td><td width='1%'>1.16</td><td width='100%'>cpukit/libcsupport/src/libio_sockets.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libcsupport/src/lseek.c.diff?r1=text&tr1=1.17&r2=text&tr2=1.18&diff_format=h">M</a></td><td width='1%'>1.18</td><td width='100%'>cpukit/libcsupport/src/lseek.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libcsupport/src/open.c.diff?r1=text&tr1=1.26&r2=text&tr2=1.27&diff_format=h">M</a></td><td width='1%'>1.27</td><td width='100%'>cpukit/libcsupport/src/open.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libcsupport/src/read.c.diff?r1=text&tr1=1.17&r2=text&tr2=1.18&diff_format=h">M</a></td><td width='1%'>1.18</td><td width='100%'>cpukit/libcsupport/src/read.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libcsupport/src/readv.c.diff?r1=text&tr1=1.5&r2=text&tr2=1.6&diff_format=h">M</a></td><td width='1%'>1.6</td><td width='100%'>cpukit/libcsupport/src/readv.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libcsupport/src/write.c.diff?r1=text&tr1=1.18&r2=text&tr2=1.19&diff_format=h">M</a></td><td width='1%'>1.19</td><td width='100%'>cpukit/libcsupport/src/write.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libcsupport/src/writev.c.diff?r1=text&tr1=1.4&r2=text&tr2=1.5&diff_format=h">M</a></td><td width='1%'>1.5</td><td width='100%'>cpukit/libcsupport/src/writev.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libfs/src/devfs/devclose.c.diff?r1=text&tr1=1.4&r2=text&tr2=1.5&diff_format=h">M</a></td><td width='1%'>1.5</td><td width='100%'>cpukit/libfs/src/devfs/devclose.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libfs/src/devfs/devioctl.c.diff?r1=text&tr1=1.3&r2=text&tr2=1.4&diff_format=h">M</a></td><td width='1%'>1.4</td><td width='100%'>cpukit/libfs/src/devfs/devioctl.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libfs/src/devfs/devopen.c.diff?r1=text&tr1=1.4&r2=text&tr2=1.5&diff_format=h">M</a></td><td width='1%'>1.5</td><td width='100%'>cpukit/libfs/src/devfs/devopen.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libfs/src/devfs/devread.c.diff?r1=text&tr1=1.3&r2=text&tr2=1.4&diff_format=h">M</a></td><td width='1%'>1.4</td><td width='100%'>cpukit/libfs/src/devfs/devread.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libfs/src/devfs/devwrite.c.diff?r1=text&tr1=1.3&r2=text&tr2=1.4&diff_format=h">M</a></td><td width='1%'>1.4</td><td width='100%'>cpukit/libfs/src/devfs/devwrite.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libfs/src/dosfs/msdos_dir.c.diff?r1=text&tr1=1.19&r2=text&tr2=1.20&diff_format=h">M</a></td><td width='1%'>1.20</td><td width='100%'>cpukit/libfs/src/dosfs/msdos_dir.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libfs/src/dosfs/msdos_file.c.diff?r1=text&tr1=1.14&r2=text&tr2=1.15&diff_format=h">M</a></td><td width='1%'>1.15</td><td width='100%'>cpukit/libfs/src/dosfs/msdos_file.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libfs/src/imfs/deviceio.c.diff?r1=text&tr1=1.23&r2=text&tr2=1.24&diff_format=h">M</a></td><td width='1%'>1.24</td><td width='100%'>cpukit/libfs/src/imfs/deviceio.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libfs/src/imfs/imfs_directory.c.diff?r1=text&tr1=1.26&r2=text&tr2=1.27&diff_format=h">M</a></td><td width='1%'>1.27</td><td width='100%'>cpukit/libfs/src/imfs/imfs_directory.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libfs/src/imfs/imfs_fifo.c.diff?r1=text&tr1=1.5&r2=text&tr2=1.6&diff_format=h">M</a></td><td width='1%'>1.6</td><td width='100%'>cpukit/libfs/src/imfs/imfs_fifo.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libfs/src/imfs/memfile.c.diff?r1=text&tr1=1.36&r2=text&tr2=1.37&diff_format=h">M</a></td><td width='1%'>1.37</td><td width='100%'>cpukit/libfs/src/imfs/memfile.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libfs/src/nfsclient/src/nfs.c.diff?r1=text&tr1=1.23&r2=text&tr2=1.24&diff_format=h">M</a></td><td width='1%'>1.24</td><td width='100%'>cpukit/libfs/src/nfsclient/src/nfs.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libfs/src/rfs/rtems-rfs-rtems-file.c.diff?r1=text&tr1=1.6&r2=text&tr2=1.7&diff_format=h">M</a></td><td width='1%'>1.7</td><td width='100%'>cpukit/libfs/src/rfs/rtems-rfs-rtems-file.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libfs/src/rfs/rtems-rfs-rtems.h.diff?r1=text&tr1=1.2&r2=text&tr2=1.3&diff_format=h">M</a></td><td width='1%'>1.3</td><td width='100%'>cpukit/libfs/src/rfs/rtems-rfs-rtems.h</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libnetworking/lib/ftpfs.c.diff?r1=text&tr1=1.31&r2=text&tr2=1.32&diff_format=h">M</a></td><td width='1%'>1.32</td><td width='100%'>cpukit/libnetworking/lib/ftpfs.c</td></tr>
</table>
<pre>
<font color='#006600'>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
</font><font color='#997700'>@@ -1,5 +1,26 @@
</font> 2010-07-16        Sebastian Huber <sebastian.huber@embedded-brains.de>
 
<font color='#000088'>+   * 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@embedded-brains.de>
+
</font>   * libfs/src/devfs/devfs.h, libfs/src/devfs/devfs_node_type.c: Fixed
        devFS_node_type() prototype.
 

<font color='#006600'>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
</font><font color='#997700'>@@ -1119,8 +1119,6 @@
</font>   rtems_id                                sem;
   uint32_t                                data0;     /* private to "driver" */
   void                                   *data1;     /* ... */
<font color='#880000'>-  void                                   *file_info; /* used by file handlers */
-  const rtems_filesystem_file_handlers_r *handlers;  /* type specific handlers */
</font> };
 
 /**

<font color='#006600'>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
</font><font color='#997700'>@@ -29,7 +29,7 @@
</font>   rtems_libio_check_is_open(iop);
 
   rc = RTEMS_SUCCESSFUL;
<font color='#880000'>-  rc = (*iop->handlers->close_h)( iop );
</font><font color='#000088'>+  rc = (*iop->pathinfo.handlers->close_h)( iop );
</font> 
   rtems_filesystem_freenode( &iop->pathinfo );
   rtems_libio_free( iop );

<font color='#006600'>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
</font><font color='#997700'>@@ -62,8 +62,6 @@
</font>         }
       }
 
<font color='#880000'>-      diop->handlers   = iop->handlers;
-      diop->file_info  = iop->file_info;
</font>       diop->flags      = iop->flags;
       diop->pathinfo   = iop->pathinfo;
       ret = (int) (diop - rtems_libio_iops);
<font color='#997700'>@@ -140,7 +138,7 @@
</font>    */
 
   if (ret >= 0) {
<font color='#880000'>-    int err = (*iop->handlers->fcntl_h)( cmd, iop );
</font><font color='#000088'>+    int err = (*iop->pathinfo.handlers->fcntl_h)( cmd, iop );
</font>     if (err) {
       errno = err;
       ret = -1;

<font color='#006600'>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
</font><font color='#997700'>@@ -35,5 +35,5 @@
</font>    *  Now process the fdatasync().
    */
 
<font color='#880000'>-  return (*iop->handlers->fdatasync_h)( iop );
</font><font color='#000088'>+  return (*iop->pathinfo.handlers->fdatasync_h)( iop );
</font> }

<font color='#006600'>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
</font><font color='#997700'>@@ -50,7 +50,7 @@
</font>    */
   memset( sbuf, 0, sizeof(struct stat) );
 
<font color='#880000'>-  return (*iop->handlers->fstat_h)( &iop->pathinfo, sbuf );
</font><font color='#000088'>+  return (*iop->pathinfo.handlers->fstat_h)( &iop->pathinfo, sbuf );
</font> }
 
 /*

<font color='#006600'>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
</font><font color='#997700'>@@ -35,5 +35,5 @@
</font>    *  Now process the fsync().
    */
 
<font color='#880000'>-  return (*iop->handlers->fsync_h)( iop );
</font><font color='#000088'>+  return (*iop->pathinfo.handlers->fsync_h)( iop );
</font> }

<font color='#006600'>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
</font><font color='#997700'>@@ -47,5 +47,5 @@
</font> 
   rtems_libio_check_permissions( iop, LIBIO_FLAGS_WRITE );
 
<font color='#880000'>-  return (*iop->handlers->ftruncate_h)( iop, length );
</font><font color='#000088'>+  return (*iop->pathinfo.handlers->ftruncate_h)( iop, length );
</font> }

<font color='#006600'>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
</font><font color='#997700'>@@ -51,5 +51,5 @@
</font>    *  Return the number of bytes that were actually transfered as a result
    *  of the read attempt.
    */
<font color='#880000'>-  return (*iop->handlers->read_h)( iop, dd_buf, dd_len  );
</font><font color='#000088'>+  return (*iop->pathinfo.handlers->read_h)( iop, dd_buf, dd_len  );
</font> }

<font color='#006600'>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
</font><font color='#997700'>@@ -47,7 +47,7 @@
</font>   /*
    *  Now process the ioctl().
    */
<font color='#880000'>-  rc = (*iop->handlers->ioctl_h)( iop, command, buffer );
</font><font color='#000088'>+  rc = (*iop->pathinfo.handlers->ioctl_h)( iop, command, buffer );
</font> 
   return rc;
 }

<font color='#006600'>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
</font><font color='#997700'>@@ -16,10 +16,7 @@
</font> #include "config.h"
 #endif
 
<font color='#880000'>-#include <rtems/libio_.h>             /* libio_.h pulls in rtems */
-#include <rtems.h>
-
-#include <errno.h>
</font><font color='#000088'>+#include <rtems/libio_.h>
</font> #include <rtems/seterr.h>
 
 /*
<font color='#997700'>@@ -70,8 +67,7 @@
</font>   iop->flags |= LIBIO_FLAGS_WRITE | LIBIO_FLAGS_READ;
   iop->data0 = fd;
   iop->data1 = so;
<font color='#880000'>-  iop->handlers = h;
-  iop->pathinfo.handlers = rtems_filesystem_root.handlers;
-  iop->pathinfo.ops = rtems_filesystem_root.ops;
</font><font color='#000088'>+  iop->pathinfo.handlers = h;
+  iop->pathinfo.ops = &rtems_filesystem_operations_default;
</font>   return fd;
 }

<font color='#006600'>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
</font><font color='#997700'>@@ -61,7 +61,7 @@
</font>    *  new offset.
    */
 
<font color='#880000'>-  status = (*iop->handlers->lseek_h)( iop, offset, whence );
</font><font color='#000088'>+  status = (*iop->pathinfo.handlers->lseek_h)( iop, offset, whence );
</font>   if ( status == (off_t) -1 )
     iop->offset = old_offset;
 

<font color='#006600'>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
</font><font color='#997700'>@@ -154,12 +154,10 @@
</font>    *  Fill in the file control block based on the loc structure
    *  returned by successful path evaluation.
    */
<font color='#880000'>-  iop->handlers   = loc.handlers;
-  iop->file_info  = loc.node_access;
</font>   iop->flags     |= rtems_libio_fcntl_flags( flags );
   iop->pathinfo   = loc;
 
<font color='#880000'>-  rc = (*iop->handlers->open_h)( iop, pathname, flags, mode );
</font><font color='#000088'>+  rc = (*iop->pathinfo.handlers->open_h)( iop, pathname, flags, mode );
</font>   if ( rc ) {
     rc = errno;
     goto done;

<font color='#006600'>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
</font><font color='#997700'>@@ -40,7 +40,7 @@
</font>   /*
    *  Now process the read().
    */
<font color='#880000'>-  rc = (*iop->handlers->read_h)( iop, buffer, count );
</font><font color='#000088'>+  rc = (*iop->pathinfo.handlers->read_h)( iop, buffer, count );
</font> 
   if ( rc > 0 )
     iop->offset += rc;

<font color='#006600'>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
</font><font color='#997700'>@@ -97,7 +97,11 @@
</font>    *  Now process the readv().
    */
   for ( total=0, v=0 ; v < iovcnt ; v++ ) {
<font color='#880000'>-    bytes = (*iop->handlers->read_h)( iop, iov[v].iov_base, iov[v].iov_len );
</font><font color='#000088'>+    bytes = (*iop->pathinfo.handlers->read_h)(
+      iop,
+      iov[v].iov_base,
+      iov[v].iov_len
+    );
</font> 
     if ( bytes < 0 )
       return -1;

<font color='#006600'>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
</font><font color='#997700'>@@ -47,7 +47,7 @@
</font>   /*
    *  Now process the write() request.
    */
<font color='#880000'>-  rc = (*iop->handlers->write_h)( iop, buffer, count );
</font><font color='#000088'>+  rc = (*iop->pathinfo.handlers->write_h)( iop, buffer, count );
</font> 
   if ( rc > 0 )
     iop->offset += rc;

<font color='#006600'>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
</font><font color='#997700'>@@ -104,7 +104,11 @@
</font>     if ( iov[v].iov_len == 0 )
       continue;
 
<font color='#880000'>-    bytes = (*iop->handlers->write_h)( iop, iov[v].iov_base, iov[v].iov_len );
</font><font color='#000088'>+    bytes = (*iop->pathinfo.handlers->write_h)(
+      iop,
+      iov[v].iov_base,
+      iov[v].iov_len
+    );
</font> 
     if ( bytes < 0 )
       return -1;

<font color='#006600'>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
</font><font color='#997700'>@@ -23,7 +23,7 @@
</font>   rtems_status_code              status;
   rtems_device_name_t           *np;
 
<font color='#880000'>-  np         = (rtems_device_name_t *)iop->file_info;
</font><font color='#000088'>+  np         = (rtems_device_name_t *)iop->pathinfo.node_access;
</font> 
   args.iop   = iop;
   args.flags = 0;

<font color='#006600'>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
</font><font color='#997700'>@@ -25,7 +25,7 @@
</font>   rtems_status_code         status;
   rtems_device_name_t      *np;
 
<font color='#880000'>-  np           = (rtems_device_name_t *)iop->file_info;
</font><font color='#000088'>+  np           = (rtems_device_name_t *)iop->pathinfo.node_access;
</font> 
   args.iop     = iop;
   args.command = command;

<font color='#006600'>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
</font><font color='#997700'>@@ -26,7 +26,7 @@
</font>   rtems_status_code              status;
   rtems_device_name_t           *np;
 
<font color='#880000'>-  np         = (rtems_device_name_t *)iop->file_info;
</font><font color='#000088'>+  np         = (rtems_device_name_t *)iop->pathinfo.node_access;
</font> 
   args.iop   = iop;
   args.flags = iop->flags;

<font color='#006600'>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
</font><font color='#997700'>@@ -25,7 +25,7 @@
</font>   rtems_status_code       status;
   rtems_device_name_t     *np;
 
<font color='#880000'>-  np               = (rtems_device_name_t *)iop->file_info;
</font><font color='#000088'>+  np               = (rtems_device_name_t *)iop->pathinfo.node_access;
</font> 
   args.iop         = iop;
   args.offset      = iop->offset;

<font color='#006600'>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
</font><font color='#997700'>@@ -25,7 +25,7 @@
</font>   rtems_status_code       status;
   rtems_device_name_t    *np;
 
<font color='#880000'>-  np           = (rtems_device_name_t *)iop->file_info;
</font><font color='#000088'>+  np           = (rtems_device_name_t *)iop->pathinfo.node_access;
</font> 
   args.iop         = iop;
   args.offset      = iop->offset;

<font color='#006600'>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
</font><font color='#997700'>@@ -51,7 +51,7 @@
</font>     int                rc = RC_OK;
     rtems_status_code  sc = RTEMS_SUCCESSFUL;
     msdos_fs_info_t   *fs_info = iop->pathinfo.mt_entry->fs_info;
<font color='#880000'>-    fat_file_fd_t     *fat_fd = iop->file_info;
</font><font color='#000088'>+    fat_file_fd_t     *fat_fd = iop->pathinfo.node_access;
</font> 
     sc = rtems_semaphore_obtain(fs_info->vol_sema, RTEMS_WAIT,
                                 MSDOS_VOLUME_SEMAPHORE_TIMEOUT);
<font color='#997700'>@@ -86,7 +86,7 @@
</font>     int                rc = RC_OK;
     rtems_status_code  sc = RTEMS_SUCCESSFUL;
     msdos_fs_info_t   *fs_info = iop->pathinfo.mt_entry->fs_info;
<font color='#880000'>-    fat_file_fd_t     *fat_fd = iop->file_info;
</font><font color='#000088'>+    fat_file_fd_t     *fat_fd = iop->pathinfo.node_access;
</font> 
     sc = rtems_semaphore_obtain(fs_info->vol_sema, RTEMS_WAIT,
                                 MSDOS_VOLUME_SEMAPHORE_TIMEOUT);
<font color='#997700'>@@ -201,7 +201,7 @@
</font>     int                rc = RC_OK;
     rtems_status_code  sc = RTEMS_SUCCESSFUL;
     msdos_fs_info_t   *fs_info = iop->pathinfo.mt_entry->fs_info;
<font color='#880000'>-    fat_file_fd_t     *fat_fd = iop->file_info;
</font><font color='#000088'>+    fat_file_fd_t     *fat_fd = iop->pathinfo.node_access;
</font>     fat_file_fd_t     *tmp_fat_fd = NULL;
     struct dirent      tmp_dirent;
     uint32_t           start = 0;
<font color='#997700'>@@ -591,7 +591,7 @@
</font> {
     int                rc = RC_OK;
     rtems_status_code  sc = RTEMS_SUCCESSFUL;
<font color='#880000'>-    fat_file_fd_t     *fat_fd = iop->file_info;
</font><font color='#000088'>+    fat_file_fd_t     *fat_fd = iop->pathinfo.node_access;
</font>     msdos_fs_info_t   *fs_info = iop->pathinfo.mt_entry->fs_info;
 
     sc = rtems_semaphore_obtain(fs_info->vol_sema, RTEMS_WAIT,

<font color='#006600'>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
</font><font color='#997700'>@@ -47,7 +47,7 @@
</font>     int                rc = RC_OK;
     rtems_status_code  sc = RTEMS_SUCCESSFUL;
     msdos_fs_info_t   *fs_info = iop->pathinfo.mt_entry->fs_info;
<font color='#880000'>-    fat_file_fd_t     *fat_fd = iop->file_info;
</font><font color='#000088'>+    fat_file_fd_t     *fat_fd = iop->pathinfo.node_access;
</font> 
     sc = rtems_semaphore_obtain(fs_info->vol_sema, RTEMS_WAIT,
                                 MSDOS_VOLUME_SEMAPHORE_TIMEOUT);
<font color='#997700'>@@ -88,7 +88,7 @@
</font>     int                rc = RC_OK;
     rtems_status_code  sc = RTEMS_SUCCESSFUL;
     msdos_fs_info_t   *fs_info = iop->pathinfo.mt_entry->fs_info;
<font color='#880000'>-    fat_file_fd_t     *fat_fd = iop->file_info;
</font><font color='#000088'>+    fat_file_fd_t     *fat_fd = iop->pathinfo.node_access;
</font> 
     sc = rtems_semaphore_obtain(fs_info->vol_sema, RTEMS_WAIT,
                                 MSDOS_VOLUME_SEMAPHORE_TIMEOUT);
<font color='#997700'>@@ -148,7 +148,7 @@
</font>     ssize_t            ret = 0;
     rtems_status_code  sc = RTEMS_SUCCESSFUL;
     msdos_fs_info_t   *fs_info = iop->pathinfo.mt_entry->fs_info;
<font color='#880000'>-    fat_file_fd_t     *fat_fd = iop->file_info;
</font><font color='#000088'>+    fat_file_fd_t     *fat_fd = iop->pathinfo.node_access;
</font> 
     sc = rtems_semaphore_obtain(fs_info->vol_sema, RTEMS_WAIT,
                                 MSDOS_VOLUME_SEMAPHORE_TIMEOUT);
<font color='#997700'>@@ -181,7 +181,7 @@
</font>     ssize_t            ret = 0;
     rtems_status_code  sc = RTEMS_SUCCESSFUL;
     msdos_fs_info_t   *fs_info = iop->pathinfo.mt_entry->fs_info;
<font color='#880000'>-    fat_file_fd_t     *fat_fd = iop->file_info;
</font><font color='#000088'>+    fat_file_fd_t     *fat_fd = iop->pathinfo.node_access;
</font> 
     sc = rtems_semaphore_obtain(fs_info->vol_sema, RTEMS_WAIT,
                                 MSDOS_VOLUME_SEMAPHORE_TIMEOUT);
<font color='#997700'>@@ -228,7 +228,7 @@
</font>     int                rc = RC_OK;
     rtems_status_code  sc = RTEMS_SUCCESSFUL;
     msdos_fs_info_t   *fs_info = iop->pathinfo.mt_entry->fs_info;
<font color='#880000'>-    fat_file_fd_t     *fat_fd = iop->file_info;
</font><font color='#000088'>+    fat_file_fd_t     *fat_fd = iop->pathinfo.node_access;
</font>     uint32_t           real_size = 0;
 
     sc = rtems_semaphore_obtain(fs_info->vol_sema, RTEMS_WAIT,
<font color='#997700'>@@ -306,7 +306,7 @@
</font>     int                rc = RC_OK;
     rtems_status_code  sc = RTEMS_SUCCESSFUL;
     msdos_fs_info_t   *fs_info = iop->pathinfo.mt_entry->fs_info;
<font color='#880000'>-    fat_file_fd_t     *fat_fd = iop->file_info;
</font><font color='#000088'>+    fat_file_fd_t     *fat_fd = iop->pathinfo.node_access;
</font> 
     if (length >= fat_fd->fat_file_size)
         return RC_OK;
<font color='#997700'>@@ -349,7 +349,7 @@
</font> {
     int                rc = RC_OK;
     rtems_status_code  sc = RTEMS_SUCCESSFUL;
<font color='#880000'>-    fat_file_fd_t     *fat_fd = iop->file_info;
</font><font color='#000088'>+    fat_file_fd_t     *fat_fd = iop->pathinfo.node_access;
</font>     msdos_fs_info_t   *fs_info = iop->pathinfo.mt_entry->fs_info;
 
     sc = rtems_semaphore_obtain(fs_info->vol_sema, RTEMS_WAIT,
<font color='#997700'>@@ -409,7 +409,7 @@
</font> {
     int                rc = RC_OK;
     rtems_status_code  sc = RTEMS_SUCCESSFUL;
<font color='#880000'>-    fat_file_fd_t     *fat_fd = iop->file_info;
</font><font color='#000088'>+    fat_file_fd_t     *fat_fd = iop->pathinfo.node_access;
</font>     msdos_fs_info_t   *fs_info = iop->pathinfo.mt_entry->fs_info;
 
     sc = rtems_semaphore_obtain(fs_info->vol_sema, RTEMS_WAIT,

<font color='#006600'>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
</font><font color='#997700'>@@ -41,7 +41,7 @@
</font>   rtems_status_code              status;
   IMFS_jnode_t                  *the_jnode;
 
<font color='#880000'>-  the_jnode  = iop->file_info;
</font><font color='#000088'>+  the_jnode  = iop->pathinfo.node_access;
</font> 
   args.iop   = iop;
   args.flags = iop->flags;
<font color='#997700'>@@ -70,7 +70,7 @@
</font>   rtems_status_code              status;
   IMFS_jnode_t                  *the_jnode;
 
<font color='#880000'>-  the_jnode = iop->file_info;
</font><font color='#000088'>+  the_jnode = iop->pathinfo.node_access;
</font> 
   args.iop   = iop;
   args.flags = 0;
<font color='#997700'>@@ -103,7 +103,7 @@
</font>   rtems_status_code       status;
   IMFS_jnode_t           *the_jnode;
 
<font color='#880000'>-  the_jnode = iop->file_info;
</font><font color='#000088'>+  the_jnode = iop->pathinfo.node_access;
</font> 
   args.iop         = iop;
   args.offset      = iop->offset;
<font color='#997700'>@@ -140,7 +140,7 @@
</font>   rtems_status_code       status;
   IMFS_jnode_t           *the_jnode;
 
<font color='#880000'>-  the_jnode = iop->file_info;
</font><font color='#000088'>+  the_jnode = iop->pathinfo.node_access;
</font> 
   args.iop         = iop;
   args.offset      = iop->offset;
<font color='#997700'>@@ -181,7 +181,7 @@
</font>   args.command = command;
   args.buffer  = buffer;
 
<font color='#880000'>-  the_jnode = iop->file_info;
</font><font color='#000088'>+  the_jnode = iop->pathinfo.node_access;
</font> 
   status = rtems_io_control(
     the_jnode->info.device.major,

<font color='#006600'>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
</font><font color='#997700'>@@ -47,7 +47,7 @@
</font>   IMFS_jnode_t      *the_jnode;
 
   /* Is the node a directory ? */
<font color='#880000'>-  the_jnode = (IMFS_jnode_t *) iop->file_info;
</font><font color='#000088'>+  the_jnode = (IMFS_jnode_t *) iop->pathinfo.node_access;
</font> 
   if ( the_jnode->type != IMFS_DIRECTORY )
      return -1;      /* It wasn't a directory --> return error */
<font color='#997700'>@@ -90,7 +90,7 @@
</font>    int                  last_entry;
    struct dirent        tmp_dirent;
 
<font color='#880000'>-   the_jnode = (IMFS_jnode_t *)iop->file_info;
</font><font color='#000088'>+   the_jnode = (IMFS_jnode_t *)iop->pathinfo.node_access;
</font>    the_chain = &the_jnode->info.directory.Entries;
 
    if ( rtems_chain_is_empty( the_chain ) )

<font color='#006600'>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
</font><font color='#997700'>@@ -22,7 +22,7 @@
</font> 
 #define JNODE2PIPE(_jnode)  ( (_jnode)->info.fifo.pipe )
 
<font color='#880000'>-#define LIBIO2PIPE(_iop)  ( JNODE2PIPE((IMFS_jnode_t *)(_iop)->file_info) )
</font><font color='#000088'>+#define LIBIO2PIPE(_iop)  ( JNODE2PIPE((IMFS_jnode_t *)(_iop)->pathinfo.node_access) )
</font> 
 /* Set errno and return -1 if error, else return _err */
 #define IMFS_FIFO_RETURN(_err) \
<font color='#997700'>@@ -39,7 +39,7 @@
</font>   uint32_t       mode
 )
 {
<font color='#880000'>-  IMFS_jnode_t *jnode = iop->file_info;
</font><font color='#000088'>+  IMFS_jnode_t *jnode = iop->pathinfo.node_access;
</font> 
   int err = fifo_open(&JNODE2PIPE(jnode), iop);
   IMFS_FIFO_RETURN(err);
<font color='#997700'>@@ -49,7 +49,7 @@
</font>   rtems_libio_t *iop
 )
 {
<font color='#880000'>-  IMFS_jnode_t *jnode = iop->file_info;
</font><font color='#000088'>+  IMFS_jnode_t *jnode = iop->pathinfo.node_access;
</font> 
   int err = pipe_release(&JNODE2PIPE(jnode), iop);
 
<font color='#997700'>@@ -67,7 +67,7 @@
</font>   size_t         count
 )
 {
<font color='#880000'>-  IMFS_jnode_t *jnode = iop->file_info;
</font><font color='#000088'>+  IMFS_jnode_t *jnode = iop->pathinfo.node_access;
</font> 
   int err = pipe_read(JNODE2PIPE(jnode), buffer, count, iop);
   if (err > 0)
<font color='#997700'>@@ -82,7 +82,7 @@
</font>   size_t         count
 )
 {
<font color='#880000'>-  IMFS_jnode_t *jnode = iop->file_info;
</font><font color='#000088'>+  IMFS_jnode_t *jnode = iop->pathinfo.node_access;
</font> 
   int err = pipe_write(JNODE2PIPE(jnode), buffer, count, iop);
   if (err > 0) {

<font color='#006600'>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
</font><font color='#997700'>@@ -98,7 +98,7 @@
</font> {
   IMFS_jnode_t  *the_jnode;
 
<font color='#880000'>-  the_jnode = iop->file_info;
</font><font color='#000088'>+  the_jnode = iop->pathinfo.node_access;
</font> 
   /*
    * Perform 'copy on write' for linear files
<font color='#997700'>@@ -137,7 +137,7 @@
</font> {
   IMFS_jnode_t   *the_jnode;
 
<font color='#880000'>-  the_jnode = iop->file_info;
</font><font color='#000088'>+  the_jnode = iop->pathinfo.node_access;
</font> 
   if (iop->flags & LIBIO_FLAGS_APPEND)
     iop->offset = the_jnode->info.file.size;
<font color='#997700'>@@ -161,7 +161,7 @@
</font> {
   IMFS_jnode_t   *the_jnode;
 
<font color='#880000'>-  the_jnode = iop->file_info;
</font><font color='#000088'>+  the_jnode = iop->pathinfo.node_access;
</font> 
   return IMFS_memfile_read( the_jnode, iop->offset, buffer, count );
 }
<font color='#997700'>@@ -181,7 +181,7 @@
</font>   IMFS_jnode_t   *the_jnode;
   ssize_t         status;
 
<font color='#880000'>-  the_jnode = iop->file_info;
</font><font color='#000088'>+  the_jnode = iop->pathinfo.node_access;
</font> 
   status = IMFS_memfile_write( the_jnode, iop->offset, buffer, count );
   iop->size = the_jnode->info.file.size;
<font color='#997700'>@@ -205,7 +205,7 @@
</font> {
   IMFS_jnode_t   *the_jnode;
 
<font color='#880000'>-  the_jnode = iop->file_info;
</font><font color='#000088'>+  the_jnode = iop->pathinfo.node_access;
</font> 
   return 0;
 }
<font color='#997700'>@@ -224,7 +224,7 @@
</font> {
   IMFS_jnode_t   *the_jnode;
 
<font color='#880000'>-  the_jnode = iop->file_info;
</font><font color='#000088'>+  the_jnode = iop->pathinfo.node_access;
</font> 
   if (the_jnode->type == IMFS_LINEAR_FILE) {
     if (iop->offset > the_jnode->info.linearfile.size)
<font color='#997700'>@@ -258,7 +258,7 @@
</font> {
   IMFS_jnode_t   *the_jnode;
 
<font color='#880000'>-  the_jnode = iop->file_info;
</font><font color='#000088'>+  the_jnode = iop->pathinfo.node_access;
</font> 
   /*
    *  POSIX 1003.1b does not specify what happens if you truncate a file

<font color='#006600'>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
</font><font color='#997700'>@@ -2515,23 +2515,6 @@
</font>             'nfs_xxx'.
  *****************************************/
 
<font color='#880000'>-
-#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
-
</font> /* stateless NFS protocol makes this trivial */
 static int nfs_file_open(
        rtems_libio_t *iop,
<font color='#997700'>@@ -2540,14 +2523,13 @@
</font>   uint32_t      mode
 )
 {
<font color='#880000'>-   iop->file_info = 0;
</font>   return 0;
 }
 
 /* reading directories is not stateless; we must
  * remember the last 'read' position, i.e.
  * the server 'cookie'. We do manage this information
<font color='#880000'>- * attached to the iop->file_info.
</font><font color='#000088'>+ * attached to the pathinfo.node_access_2.
</font>  */
 static int nfs_dir_open(
        rtems_libio_t *iop,
<font color='#997700'>@@ -2560,11 +2542,11 @@
</font> DirInfo           di;
 
        /* create a readdirargs object and copy the file handle;
<font color='#880000'>-    * attach to the file_info.
</font><font color='#000088'>+       * attach to the pathinfo.node_access_2
</font>    */
 
        di = (DirInfo) malloc(sizeof(*di));
<font color='#880000'>-   iop->file_info = di;
</font><font color='#000088'>+      iop->pathinfo.node_access_2 = di;
</font> 
        if ( !di  ) {
                errno = ENOMEM;
<font color='#997700'>@@ -2598,8 +2580,8 @@
</font>   rtems_libio_t *iop
 )
 {
<font color='#880000'>-   free(iop->file_info);
-       iop->file_info = 0;
</font><font color='#000088'>+      free(iop->pathinfo.node_access_2);
+       iop->pathinfo.node_access_2 = 0;
</font>   return 0;
 }
 
<font color='#997700'>@@ -2656,7 +2638,7 @@
</font>   size_t        count
 )
 {
<font color='#880000'>-DirInfo                    di     = iop->file_info;
</font><font color='#000088'>+DirInfo                       di     = iop->pathinfo.node_access_2;
</font> RpcUdpServer      server = ((Nfs)iop->pathinfo.mt_entry->fs_info)->server;
 
        if ( di->eofreached )
<font color='#997700'>@@ -2814,7 +2796,7 @@
</font>   int            whence
 )
 {
<font color='#880000'>-DirInfo di = iop->file_info;
</font><font color='#000088'>+DirInfo di = iop->pathinfo.node_access_2;
</font> 
        /* we don't support anything other than
         * rewinding

<font color='#006600'>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
</font><font color='#997700'>@@ -70,7 +70,7 @@
</font>   if (rtems_rfs_rtems_trace (RTEMS_RFS_RTEMS_DEBUG_FILE_OPEN))
     printf("rtems-rfs: file-open: handle:%p\n", file);
   
<font color='#880000'>-  iop->file_info = file;
</font><font color='#000088'>+  iop->pathinfo.node_access = file;
</font>   
   rtems_rfs_rtems_unlock (fs);
   return 0;
<font color='#997700'>@@ -86,7 +86,7 @@
</font> static int
 rtems_rfs_rtems_file_close (rtems_libio_t* iop)
 {
<font color='#880000'>-  rtems_rfs_file_handle* file = iop->file_info;
</font><font color='#000088'>+  rtems_rfs_file_handle* file = iop->pathinfo.node_access;
</font>   rtems_rfs_file_system* fs = rtems_rfs_file_fs (file);
   int                    rc;
 
<font color='#997700'>@@ -116,7 +116,7 @@
</font>                            void*          buffer,
                            size_t         count)
 {
<font color='#880000'>-  rtems_rfs_file_handle* file = iop->file_info;
</font><font color='#000088'>+  rtems_rfs_file_handle* file = iop->pathinfo.node_access;
</font>   rtems_rfs_pos          pos;
   uint8_t*               data = buffer;
   ssize_t                read = 0;
<font color='#997700'>@@ -181,7 +181,7 @@
</font>                             const void*    buffer,
                             size_t         count)
 {
<font color='#880000'>-  rtems_rfs_file_handle* file = iop->file_info;
</font><font color='#000088'>+  rtems_rfs_file_handle* file = iop->pathinfo.node_access;
</font>   rtems_rfs_pos          pos;
   const uint8_t*         data = buffer;
   ssize_t                write = 0;
<font color='#997700'>@@ -271,7 +271,7 @@
</font>                             rtems_off64_t  offset,
                             int            whence)
 {
<font color='#880000'>-  rtems_rfs_file_handle* file = iop->file_info;
</font><font color='#000088'>+  rtems_rfs_file_handle* file = iop->pathinfo.node_access;
</font>   rtems_rfs_pos          pos;
   int                    rc;
 
<font color='#997700'>@@ -305,7 +305,7 @@
</font> rtems_rfs_rtems_file_ftruncate (rtems_libio_t* iop,
                                 rtems_off64_t  length)
 {
<font color='#880000'>-  rtems_rfs_file_handle* file = iop->file_info;
</font><font color='#000088'>+  rtems_rfs_file_handle* file = iop->pathinfo.node_access;
</font>   int                    rc;
 
   if (rtems_rfs_rtems_trace (RTEMS_RFS_RTEMS_DEBUG_FILE_FTRUNC))

<font color='#006600'>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
</font><font color='#997700'>@@ -194,7 +194,7 @@
</font>  * @return
  */
 #define rtems_rfs_rtems_get_iop_ino(_iop) \
<font color='#880000'>-  ((intptr_t)(_iop)->file_info)
</font><font color='#000088'>+  ((intptr_t)(_iop)->pathinfo.node_access)
</font> 
 /**
  * Create the name of the handler's table given the type of handlers.

<font color='#006600'>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
</font><font color='#997700'>@@ -958,7 +958,7 @@
</font>     ? "STOR "
     : "RETR ";
   uint32_t client_address = 0;
<font color='#880000'>-  char *location = iop->file_info;
</font><font color='#000088'>+  char *location = iop->pathinfo.node_access;
</font> 
   /* Invalidate data handle */
   iop->data1 = NULL;
<font color='#997700'>@@ -982,7 +982,7 @@
</font>        * This is an access to the root node that will be used for file system
        * option settings.
        */
<font color='#880000'>-      iop->handlers = &rtems_ftpfs_root_handlers;
</font><font color='#000088'>+      iop->pathinfo.handlers = &rtems_ftpfs_root_handlers;
</font> 
       return 0;
     } else {
<font color='#997700'>@@ -1166,7 +1166,7 @@
</font>   /*
    * 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
<font color='#880000'>-   * again.  The path is used in rtems_ftpfs_open() via iop->file_info.
</font><font color='#000088'>+   * again.  The path is used in rtems_ftpfs_open() via iop->pathinfo.node_access.
</font>    */
   char *pathname_dup = malloc(pathnamelen + 1);
 
</pre>
<p> </p>
<a name='cs2'></a>
<table border='0' cellspacing='0' cellpadding='5' width='100%' bgcolor='#eeeeee'>
<tr><td colspan='3' bgcolor='#dddddd'>
 <font color='#bb2222'><strong>sh</strong></font>
</td></tr>
<tr><td colspan='3' bgcolor='#dddddd'><pre>2010-07-16 Sebastian Huber <sebastian.huber@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.
</pre></td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/ChangeLog.diff?r1=text&tr1=1.2508&r2=text&tr2=1.2509&diff_format=h">M</a></td><td width='1%'>1.2509</td><td width='100%'>cpukit/ChangeLog</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libcsupport/Makefile.am.diff?r1=text&tr1=1.126&r2=text&tr2=1.127&diff_format=h">M</a></td><td width='1%'>1.127</td><td width='100%'>cpukit/libcsupport/Makefile.am</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libcsupport/include/rtems/libio_.h.diff?r1=text&tr1=1.39&r2=text&tr2=1.40&diff_format=h">M</a></td><td width='1%'>1.40</td><td width='100%'>cpukit/libcsupport/include/rtems/libio_.h</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libcsupport/src/fs_null_handlers.c?rev=1.7&content-type=text/vnd.viewcvs-markup">R</a></td><td width='1%'><font color="#880000">1.7</font></td><td width='100%'><font color="#880000">cpukit/libcsupport/src/fs_null_handlers.c</font></td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libfs/src/imfs/imfs_creat.c.diff?r1=text&tr1=1.17&r2=text&tr2=1.18&diff_format=h">M</a></td><td width='1%'>1.18</td><td width='100%'>cpukit/libfs/src/imfs/imfs_creat.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libfs/src/imfs/imfs_init.c.diff?r1=text&tr1=1.20&r2=text&tr2=1.21&diff_format=h">M</a></td><td width='1%'>1.21</td><td width='100%'>cpukit/libfs/src/imfs/imfs_init.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libfs/src/imfs/miniimfs_init.c.diff?r1=text&tr1=1.16&r2=text&tr2=1.17&diff_format=h">M</a></td><td width='1%'>1.17</td><td width='100%'>cpukit/libfs/src/imfs/miniimfs_init.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libfs/src/nfsclient/src/nfs.c.diff?r1=text&tr1=1.24&r2=text&tr2=1.25&diff_format=h">M</a></td><td width='1%'>1.25</td><td width='100%'>cpukit/libfs/src/nfsclient/src/nfs.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libnetworking/lib/ftpfs.c.diff?r1=text&tr1=1.32&r2=text&tr2=1.33&diff_format=h">M</a></td><td width='1%'>1.33</td><td width='100%'>cpukit/libnetworking/lib/ftpfs.c</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libnetworking/lib/tftpDriver.c.diff?r1=text&tr1=1.39&r2=text&tr2=1.40&diff_format=h">M</a></td><td width='1%'>1.40</td><td width='100%'>cpukit/libnetworking/lib/tftpDriver.c</td></tr>
</table>
<pre>
<font color='#006600'>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
</font><font color='#997700'>@@ -1,5 +1,17 @@
</font> 2010-07-16        Sebastian Huber <sebastian.huber@embedded-brains.de>
 
<font color='#000088'>+   * 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@embedded-brains.de>
+
</font>   * libcsupport/include/rtems/libio.h: Removed file_info and handlers
        fields in rtems_libio_t.
        * libcsupport/src/close.c, libcsupport/src/fcntl.c,

<font color='#006600'>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
</font><font color='#997700'>@@ -45,7 +45,7 @@
</font> 
 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 \
<font color='#880000'>-    src/eval.c src/fs_null_handlers.c src/privateenv.c \
</font><font color='#000088'>+    src/eval.c src/privateenv.c \
</font>     src/open_dev_console.c src/__usrenv.c src/rtems_mkdir.c
 
 if LIBNETWORKING

<font color='#006600'>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
</font><font color='#997700'>@@ -37,7 +37,6 @@
</font> #define RTEMS_LIBIO_IOP_SEM(n)  rtems_build_name('L', 'B', 'I', n)
 
 extern rtems_id                          rtems_libio_semaphore;
<font color='#880000'>-extern const rtems_filesystem_file_handlers_r rtems_filesystem_null_handlers;
</font> 
 /*
  *  File descriptor Table Information

<font color='#006600'>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
</font><font color='#997700'>@@ -54,7 +54,7 @@
</font>    *  Reject creation of FIFOs if support is disabled.
    */
   if ( type == IMFS_FIFO &&
<font color='#880000'>-       fs_info->fifo_handlers == &rtems_filesystem_null_handlers )
</font><font color='#000088'>+       fs_info->fifo_handlers == &rtems_filesystem_handlers_default )
</font>     return NULL;
 
   /*

<font color='#006600'>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
</font><font color='#997700'>@@ -56,6 +56,6 @@
</font>     &IMFS_ops,
     &IMFS_memfile_handlers,
     &IMFS_directory_handlers,
<font color='#880000'>-    &rtems_filesystem_null_handlers  /* for fifos */
</font><font color='#000088'>+    &rtems_filesystem_handlers_default  /* for fifos */
</font>   );
 }

<font color='#006600'>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
</font><font color='#997700'>@@ -54,8 +54,8 @@
</font>   return IMFS_initialize_support(
     mt_entry,
     &miniIMFS_ops,
<font color='#880000'>-    &rtems_filesystem_null_handlers, /* for memfiles */
-    &rtems_filesystem_null_handlers, /* for directories */
-    &rtems_filesystem_null_handlers  /* for fifos */
</font><font color='#000088'>+    &rtems_filesystem_handlers_default, /* for memfiles */
+    &rtems_filesystem_handlers_default, /* for directories */
+    &rtems_filesystem_handlers_default  /* for fifos */
</font>   );
 }

<font color='#006600'>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
</font><font color='#997700'>@@ -1616,7 +1616,7 @@
</font>                   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;
<font color='#880000'>-                   default:<span style="background-color: #FF0000"> </span>  pathloc->handlers = &rtems_filesystem_null_handlers; break;
</font><font color='#000088'>+                      default:<span style="background-color: #FF0000"> </span>  pathloc->handlers = &rtems_filesystem_handlers_default; break;
</font>           }
                pathloc->node_access = node;
 

<font color='#006600'>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
</font><font color='#997700'>@@ -1292,21 +1292,21 @@
</font> 
 static const rtems_filesystem_operations_table rtems_ftpfs_ops = {
   .evalpath_h = rtems_ftpfs_eval_path,
<font color='#880000'>-  .evalformake_h = NULL,
-  .link_h = NULL,
-  .unlink_h = NULL,
</font><font color='#000088'>+  .evalformake_h = rtems_filesystem_default_evalformake,
+  .link_h = rtems_filesystem_default_link,
+  .unlink_h = rtems_filesystem_default_unlink,
</font>   .node_type_h = rtems_ftpfs_node_type,
<font color='#880000'>-  .mknod_h = NULL,
-  .chown_h = NULL,
</font><font color='#000088'>+  .mknod_h = rtems_filesystem_default_mknod,
+  .chown_h = rtems_filesystem_default_chown,
</font>   .freenod_h = rtems_ftpfs_free_node,
<font color='#880000'>-  .mount_h = NULL,
</font><font color='#000088'>+  .mount_h = rtems_filesystem_default_mount,
</font>   .fsmount_me_h = rtems_ftpfs_initialize,
<font color='#880000'>-  .unmount_h = NULL,
</font><font color='#000088'>+  .unmount_h = rtems_filesystem_default_unmount,
</font>   .fsunmount_me_h = rtems_ftpfs_unmount_me,
<font color='#880000'>-  .utime_h = NULL,
-  .eval_link_h = NULL,
-  .symlink_h = NULL,
-  .readlink_h = NULL
</font><font color='#000088'>+  .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
</font> };
 
 static const rtems_filesystem_file_handlers_r rtems_ftpfs_handlers = {
<font color='#997700'>@@ -1314,31 +1314,31 @@
</font>   .close_h = rtems_ftpfs_close,
   .read_h = rtems_ftpfs_read,
   .write_h = rtems_ftpfs_write,
<font color='#880000'>-  .ioctl_h = NULL,
-  .lseek_h = NULL,
</font><font color='#000088'>+  .ioctl_h = rtems_filesystem_default_ioctl,
+  .lseek_h = rtems_filesystem_default_lseek,
</font>   .fstat_h = rtems_ftpfs_fstat,
<font color='#880000'>-  .fchmod_h = NULL,
</font><font color='#000088'>+  .fchmod_h = rtems_filesystem_default_fchmod,
</font>   .ftruncate_h = rtems_ftpfs_ftruncate,
<font color='#880000'>-  .fpathconf_h = NULL,
-  .fsync_h = NULL,
-  .fdatasync_h = NULL,
-  .fcntl_h = NULL,
-  .rmnod_h = NULL
</font><font color='#000088'>+  .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
</font> };
 
 static const rtems_filesystem_file_handlers_r rtems_ftpfs_root_handlers = {
<font color='#880000'>-  .open_h = NULL,
-  .close_h = NULL,
-  .read_h = NULL,
-  .write_h = NULL,
</font><font color='#000088'>+  .open_h = rtems_filesystem_default_open,
+  .close_h = rtems_filesystem_default_close,
+  .read_h = rtems_filesystem_default_read,
+  .write_h = rtems_filesystem_default_write,
</font>   .ioctl_h = rtems_ftpfs_ioctl,
<font color='#880000'>-  .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
</font><font color='#000088'>+  .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
</font> };

<font color='#006600'>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
</font><font color='#997700'>@@ -1083,37 +1083,37 @@
</font> 
 
 static const rtems_filesystem_operations_table  rtems_tftp_ops = {
<font color='#880000'>-    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 */
</font><font color='#000088'>+    .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
</font> };
 
 static const rtems_filesystem_file_handlers_r rtems_tftp_handlers = {
<font color='#880000'>-    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 */
</font><font color='#000088'>+   .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
</font> };
</pre>
<p> </p>
<a name='cs3'></a>
<table border='0' cellspacing='0' cellpadding='5' width='100%' bgcolor='#eeeeee'>
<tr><td colspan='3' bgcolor='#dddddd'>
 <font color='#bb2222'><strong>sh</strong></font>
</td></tr>
<tr><td colspan='3' bgcolor='#dddddd'><pre>2010-07-16 Sebastian Huber <sebastian.huber@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.
</pre></td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/ChangeLog.diff?r1=text&tr1=1.2509&r2=text&tr2=1.2510&diff_format=h">M</a></td><td width='1%'>1.2510</td><td width='100%'>cpukit/ChangeLog</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libfs/src/imfs/imfs.h.diff?r1=text&tr1=1.45&r2=text&tr2=1.46&diff_format=h">M</a></td><td width='1%'>1.46</td><td width='100%'>cpukit/libfs/src/imfs/imfs.h</td></tr>
<tr><td width='1%'><a href="http://www.rtems.com/cgi-bin/viewcvs.cgi//rtems/cpukit/libfs/src/imfs/imfs_debug.c.diff?r1=text&tr1=1.15&r2=text&tr2=1.16&diff_format=h">M</a></td><td width='1%'>1.16</td><td width='100%'>cpukit/libfs/src/imfs/imfs_debug.c</td></tr>
</table>
<pre>
<font color='#006600'>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
</font><font color='#997700'>@@ -1,5 +1,11 @@
</font> 2010-07-16        Sebastian Huber <sebastian.huber@embedded-brains.de>
 
<font color='#000088'>+   * 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@embedded-brains.de>
+
</font>   * libcsupport/include/rtems/libio_.h: Removed rtems_filesystem_null_handlers.
        * libcsupport/src/fs_null_handlers.c: Removed file.
        * libcsupport/Makefile.am: Reflect change above.

<font color='#006600'>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
</font><font color='#997700'>@@ -134,16 +134,15 @@
</font>  *  What types of IMFS file systems entities there can be.
  */
 
<font color='#880000'>-#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)
</font><font color='#000088'>+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;
</font> 
 typedef union {
   IMFS_directory_t   directory;

<font color='#006600'>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
</font><font color='#997700'>@@ -32,20 +32,6 @@
</font> #include <rtems/libio_.h>
 
 /*
<font color='#880000'>- *  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"
-};
-
-/*
</font>  *  IMFS_print_jnode
  *
  *  This routine prints the contents of the specified jnode.
</pre>
<p> </p>

<p>--<br />
<small>Generated by <a href="http://www.codewiz.org/projects/index.html#loginfo">Deluxe Loginfo</a> 2.122 by Bernardo Innocenti <bernie@develer.com></small></p>
</body>
</html>