change log for rtems (2010-07-15)

rtems-vc at rtems.org rtems-vc at rtems.org
Thu Jul 15 08:10:34 UTC 2010


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

	* libcsupport/include/rtems/libio.h: Changed
	rtems_filesystem_node_types_t to an enum.  Declare
	rtems_filesystem_handlers_default,
	rtems_filesystem_operations_default,
	rtems_filesystem_default_evalpath(),
	rtems_filesystem_default_evalformake, and
	rtems_filesystem_default_node_type().
	* libfs/src/dosfs/msdos.h: Fixed msdos_node_type() prototype.
	* libfs/src/defaults/default_evalformake.c,
	libfs/src/defaults/default_handlers.c,
	libfs/src/defaults/default_node_type.c,
	libfs/src/defaults/default_ops.c: New files.
	* libfs/Makefile.am: Reflect changes above.

M 1.2505  cpukit/ChangeLog
M   1.77  cpukit/libcsupport/include/rtems/libio.h
M   1.46  cpukit/libfs/Makefile.am
A    1.1  cpukit/libfs/src/defaults/default_evalformake.c
A    1.1  cpukit/libfs/src/defaults/default_handlers.c
A    1.1  cpukit/libfs/src/defaults/default_node_type.c
A    1.1  cpukit/libfs/src/defaults/default_ops.c
M   1.25  cpukit/libfs/src/dosfs/msdos.h

diff -u rtems/cpukit/ChangeLog:1.2504 rtems/cpukit/ChangeLog:1.2505
--- rtems/cpukit/ChangeLog:1.2504	Wed Jul 14 10:49:12 2010
+++ rtems/cpukit/ChangeLog	Thu Jul 15 02:36:37 2010
@@ -1,3 +1,19 @@
+2010-07-16	Sebastian Huber <sebastian.huber at embedded-brains.de>
+
+	* libcsupport/include/rtems/libio.h: Changed
+	rtems_filesystem_node_types_t to an enum.  Declare
+	rtems_filesystem_handlers_default,
+	rtems_filesystem_operations_default,
+	rtems_filesystem_default_evalpath(),
+	rtems_filesystem_default_evalformake, and
+	rtems_filesystem_default_node_type().
+	* libfs/src/dosfs/msdos.h: Fixed msdos_node_type() prototype.
+	* libfs/src/defaults/default_evalformake.c,
+	libfs/src/defaults/default_handlers.c,
+	libfs/src/defaults/default_node_type.c,
+	libfs/src/defaults/default_ops.c: New files.
+	* libfs/Makefile.am: Reflect changes above.
+
 2010-07-14	Joel Sherrill <joel.sherrill at oarcorp.com>
 
 	* libnetworking/rtems/rtems_syscall.c: Fix warning.

diff -u rtems/cpukit/libcsupport/include/rtems/libio.h:1.76 rtems/cpukit/libcsupport/include/rtems/libio.h:1.77
--- rtems/cpukit/libcsupport/include/rtems/libio.h:1.76	Sat Jul  3 14:13:25 2010
+++ rtems/cpukit/libcsupport/include/rtems/libio.h	Thu Jul 15 02:36:37 2010
@@ -56,20 +56,16 @@
 typedef _off64_t rtems_off64_t;
 
 /**
- * @name File System Node Types
- *
- * @{
+ * @brief File system node types.
  */
-
-#define RTEMS_FILESYSTEM_DIRECTORY   1
-#define RTEMS_FILESYSTEM_DEVICE      2
-#define RTEMS_FILESYSTEM_HARD_LINK   3
-#define RTEMS_FILESYSTEM_SYM_LINK    4
-#define RTEMS_FILESYSTEM_MEMORY_FILE 5
-
-/** @} */
-
-typedef int rtems_filesystem_node_types_t;
+typedef enum {
+  RTEMS_FILESYSTEM_INVALID_NODE_TYPE,
+  RTEMS_FILESYSTEM_DIRECTORY,
+  RTEMS_FILESYSTEM_DEVICE,
+  RTEMS_FILESYSTEM_HARD_LINK,
+  RTEMS_FILESYSTEM_SYM_LINK,
+  RTEMS_FILESYSTEM_MEMORY_FILE
+} rtems_filesystem_node_types_t;
 
 /**
  * @name File System Node Operations
@@ -360,6 +356,10 @@
    */
   rtems_filesystem_rmnod_t        rmnod_h;
 };
+
+extern const rtems_filesystem_file_handlers_r
+rtems_filesystem_handlers_default;
+
 /**
  *  This method defines the interface to the default open(2) 
  *  system call support which is provided by a file system 
@@ -892,10 +892,29 @@
     rtems_filesystem_statvfs_t       statvfs_h;
 };
 
-/*
- * @brief Default filesystem evalpath
+extern const rtems_filesystem_operations_table
+rtems_filesystem_operations_default;
+
+/**
+ * @brief Provides a defualt routine for filesystem
+ * implementation of path evaluation.
  */
+int rtems_filesystem_default_evalpath(
+  const char *pathname,
+  size_t pathnamelen,
+  int flags,
+  rtems_filesystem_location_info_t *pathloc
+);
 
+/**
+ * @brief Provides a defualt routine for filesystem
+ * implementation of path evaluation for make.
+ */
+int rtems_filesystem_default_evalformake(
+   const char *path,
+   rtems_filesystem_location_info_t *pathloc,
+   const char **name
+);
 
 /**
  * @brief Provides a defualt routine for filesystem
@@ -918,6 +937,14 @@
 
 /**
  * @brief Provides a defualt routine for filesystem
+ * implementation to determine the node type.
+ */
+rtems_filesystem_node_types_t rtems_filesystem_default_node_type(
+  rtems_filesystem_location_info_t *pathloc
+);
+
+/**
+ * @brief Provides a defualt routine for filesystem
  * implementation to create a new node.
  */
 int rtems_filesystem_default_mknod(

diff -u rtems/cpukit/libfs/Makefile.am:1.45 rtems/cpukit/libfs/Makefile.am:1.46
--- rtems/cpukit/libfs/Makefile.am:1.45	Wed Jul 14 10:44:43 2010
+++ rtems/cpukit/libfs/Makefile.am	Thu Jul 15 02:36:37 2010
@@ -30,7 +30,9 @@
     src/defaults/default_write.c src/defaults/default_fpathconf.c \
     src/defaults/default_unmount.c src/defaults/default_evaluate_link.c \
     src/defaults/default_open.c src/defaults/default_close.c \
-    src/defaults/default_fsunmount.c src/defaults/default_mknod.c
+    src/defaults/default_fsunmount.c src/defaults/default_mknod.c \
+    src/defaults/default_node_type.c src/defaults/default_evalformake.c \
+    src/defaults/default_handlers.c src/defaults/default_ops.c
 
 noinst_LIBRARIES += libimfs.a
 libimfs_a_SOURCES =

diff -u /dev/null rtems/cpukit/libfs/src/defaults/default_evalformake.c:1.1
--- /dev/null	Thu Jul 15 03:10:32 2010
+++ rtems/cpukit/libfs/src/defaults/default_evalformake.c	Thu Jul 15 02:36:37 2010
@@ -0,0 +1,32 @@
+/**
+ * @file
+ *
+ * @ingroup LibIO
+ *
+ * @brief rtems_filesystem_default_evalformake() implementation.
+ */
+
+/*
+ * Copyright (c) 2010
+ * embedded brains GmbH
+ * Obere Lagerstr. 30
+ * D-82178 Puchheim
+ * Germany
+ * <rtems at embedded-brains.de>
+ *
+ * The license and distribution terms for this file may be
+ * found in the file LICENSE in this distribution or at
+ * http://www.rtems.com/license/LICENSE.
+ */
+
+#include <rtems/libio.h>
+#include <rtems/seterr.h>
+
+int rtems_filesystem_default_evalformake(
+   const char *path,
+   rtems_filesystem_location_info_t *pathloc,
+   const char **name
+)
+{
+  rtems_set_errno_and_return_minus_one( ENOTSUP );
+}

diff -u /dev/null rtems/cpukit/libfs/src/defaults/default_handlers.c:1.1
--- /dev/null	Thu Jul 15 03:10:33 2010
+++ rtems/cpukit/libfs/src/defaults/default_handlers.c	Thu Jul 15 02:36:37 2010
@@ -0,0 +1,39 @@
+/**
+ * @file
+ *
+ * @ingroup LibIO
+ *
+ * @brief rtems_filesystem_handlers_default definition.
+ */
+
+/*
+ * Copyright (c) 2010
+ * embedded brains GmbH
+ * Obere Lagerstr. 30
+ * D-82178 Puchheim
+ * Germany
+ * <rtems at embedded-brains.de>
+ *
+ * The license and distribution terms for this file may be
+ * found in the file LICENSE in this distribution or at
+ * http://www.rtems.com/license/LICENSE.
+ */
+
+#include <rtems/libio.h>
+
+const rtems_filesystem_file_handlers_r rtems_filesystem_handlers_default = {
+  .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_filesystem_default_ioctl,
+  .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 /dev/null rtems/cpukit/libfs/src/defaults/default_node_type.c:1.1
--- /dev/null	Thu Jul 15 03:10:33 2010
+++ rtems/cpukit/libfs/src/defaults/default_node_type.c	Thu Jul 15 02:36:37 2010
@@ -0,0 +1,29 @@
+/**
+ * @file
+ *
+ * @ingroup LibIO
+ *
+ * @brief rtems_filesystem_default_node_type() implementation.
+ */
+
+/*
+ * Copyright (c) 2010
+ * embedded brains GmbH
+ * Obere Lagerstr. 30
+ * D-82178 Puchheim
+ * Germany
+ * <rtems at embedded-brains.de>
+ *
+ * The license and distribution terms for this file may be
+ * found in the file LICENSE in this distribution or at
+ * http://www.rtems.com/license/LICENSE.
+ */
+
+#include <rtems/libio.h>
+
+rtems_filesystem_node_types_t rtems_filesystem_default_node_type(
+  rtems_filesystem_location_info_t *pathloc
+)
+{
+  return RTEMS_FILESYSTEM_INVALID_NODE_TYPE;
+}

diff -u /dev/null rtems/cpukit/libfs/src/defaults/default_ops.c:1.1
--- /dev/null	Thu Jul 15 03:10:33 2010
+++ rtems/cpukit/libfs/src/defaults/default_ops.c	Thu Jul 15 02:36:37 2010
@@ -0,0 +1,43 @@
+/**
+ * @file
+ *
+ * @ingroup LibIO
+ *
+ * @brief rtems_filesystem_operations_default definition.
+ */
+
+/*
+ * Copyright (c) 2010
+ * embedded brains GmbH
+ * Obere Lagerstr. 30
+ * D-82178 Puchheim
+ * Germany
+ * <rtems at embedded-brains.de>
+ *
+ * The license and distribution terms for this file may be
+ * found in the file LICENSE in this distribution or at
+ * http://www.rtems.com/license/LICENSE.
+ */
+
+#include <rtems/libio.h>
+
+const rtems_filesystem_operations_table rtems_filesystem_operations_default = {
+  .evalpath_h = rtems_filesystem_default_evalpath,
+  .evalformake_h = rtems_filesystem_default_evalformake,
+  .link_h = rtems_filesystem_default_link,
+  .unlink_h = rtems_filesystem_default_unlink,
+  .node_type_h = rtems_filesystem_default_node_type,
+  .mknod_h = rtems_filesystem_default_mknod,
+  .chown_h = rtems_filesystem_default_chown,
+  .freenod_h = rtems_filesystem_default_freenode,
+  .mount_h = rtems_filesystem_default_mount,
+  .fsmount_me_h = rtems_filesystem_default_fsmount,
+  .unmount_h = rtems_filesystem_default_unmount,
+  .fsunmount_me_h = rtems_filesystem_default_fsunmount,
+  .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,
+  .rename_h = rtems_filesystem_default_rename,
+  .statvfs_h = rtems_filesystem_default_statvfs
+};

diff -u rtems/cpukit/libfs/src/dosfs/msdos.h:1.24 rtems/cpukit/libfs/src/dosfs/msdos.h:1.25
--- rtems/cpukit/libfs/src/dosfs/msdos.h:1.24	Mon May 31 08:56:36 2010
+++ rtems/cpukit/libfs/src/dosfs/msdos.h	Thu Jul 15 02:36:37 2010
@@ -242,7 +242,7 @@
 
 int msdos_free_node_info(rtems_filesystem_location_info_t *pathloc /* IN */);
 
-int msdos_node_type(rtems_filesystem_location_info_t    *pathloc);
+rtems_filesystem_node_types_t msdos_node_type(rtems_filesystem_location_info_t    *pathloc);
 
 int msdos_mknod(
   const char                       *path,   /* IN */


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

	* score/include/rtems/seterr.h: Include <errno.h>.

M 1.2506  cpukit/ChangeLog
M    1.9  cpukit/score/include/rtems/seterr.h

diff -u rtems/cpukit/ChangeLog:1.2505 rtems/cpukit/ChangeLog:1.2506
--- rtems/cpukit/ChangeLog:1.2505	Thu Jul 15 02:36:37 2010
+++ rtems/cpukit/ChangeLog	Thu Jul 15 02:40:27 2010
@@ -1,5 +1,9 @@
 2010-07-16	Sebastian Huber <sebastian.huber at embedded-brains.de>
 
+	* score/include/rtems/seterr.h: Include <errno.h>.
+
+2010-07-16	Sebastian Huber <sebastian.huber at embedded-brains.de>
+
 	* libcsupport/include/rtems/libio.h: Changed
 	rtems_filesystem_node_types_t to an enum.  Declare
 	rtems_filesystem_handlers_default,

diff -u rtems/cpukit/score/include/rtems/seterr.h:1.8 rtems/cpukit/score/include/rtems/seterr.h:1.9
--- rtems/cpukit/score/include/rtems/seterr.h:1.8	Mon Jan 16 09:13:58 2006
+++ rtems/cpukit/score/include/rtems/seterr.h	Thu Jul 15 02:40:28 2010
@@ -19,6 +19,8 @@
 #ifndef _RTEMS_SETERR_H
 #define _RTEMS_SETERR_H
 
+#include <errno.h>
+
 /**
  *  This is a helper macro which will set the variable errno and return
  *  -1 to the caller.  This pattern is common to many POSIX methods.


 *sh*:
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.

M 1.2507  cpukit/ChangeLog
M    1.9  cpukit/libfs/src/devfs/devfs.h
M    1.3  cpukit/libfs/src/devfs/devfs_node_type.c

diff -u rtems/cpukit/ChangeLog:1.2506 rtems/cpukit/ChangeLog:1.2507
--- rtems/cpukit/ChangeLog:1.2506	Thu Jul 15 02:40:27 2010
+++ rtems/cpukit/ChangeLog	Thu Jul 15 02:59:56 2010
@@ -1,5 +1,10 @@
 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.
+
+2010-07-16	Sebastian Huber <sebastian.huber at embedded-brains.de>
+
 	* score/include/rtems/seterr.h: Include <errno.h>.
 
 2010-07-16	Sebastian Huber <sebastian.huber at embedded-brains.de>

diff -u rtems/cpukit/libfs/src/devfs/devfs.h:1.8 rtems/cpukit/libfs/src/devfs/devfs.h:1.9
--- rtems/cpukit/libfs/src/devfs/devfs.h:1.8	Sat Jun 12 00:18:02 2010
+++ rtems/cpukit/libfs/src/devfs/devfs.h	Thu Jul 15 02:59:57 2010
@@ -158,7 +158,7 @@
  *  @retval always returns RTEMS_FILESYSTEM_DEVICE
  */
 
-extern int devFS_node_type(
+extern rtems_filesystem_node_types_t devFS_node_type(
   rtems_filesystem_location_info_t  *pathloc
 );
 

diff -u rtems/cpukit/libfs/src/devfs/devfs_node_type.c:1.2 rtems/cpukit/libfs/src/devfs/devfs_node_type.c:1.3
--- rtems/cpukit/libfs/src/devfs/devfs_node_type.c:1.2	Sun Nov 29 07:18:56 2009
+++ rtems/cpukit/libfs/src/devfs/devfs_node_type.c	Thu Jul 15 02:59:57 2010
@@ -12,7 +12,7 @@
 
 #include "devfs.h"
 
-int devFS_node_type(
+rtems_filesystem_node_types_t devFS_node_type(
   rtems_filesystem_location_info_t  *pathloc
 )
 {



--

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/3a25c33a/attachment.html>


More information about the vc mailing list