Index: trunk/kernel/fs/vfs.h
===================================================================
--- trunk/kernel/fs/vfs.h	(revision 568)
+++ trunk/kernel/fs/vfs.h	(revision 598)
@@ -76,32 +76,4 @@
 
 /******************************************************************************************
- * This define the masks for the POSIX access rights to inodes
- *****************************************************************************************/
-
-#define VFS_ISUID	         0x0004000
-#define VFS_ISGID	         0x0002000
-#define VFS_ISVTX	         0x0001000
-
-#define VFS_IRWXU            0x0000700
-#define VFS_IRUSR            0x0000400
-#define VFS_IWUSR            0x0000200
-#define VFS_IXUSR            0x0000100
-
-#define VFS_IRWXG            0x0000070
-#define VFS_IRGRP            0x0000040
-#define VFS_IWGRP            0x0000020
-#define VFS_IXGRP            0x0000010
-
-#define VFS_IRWXO            0x0000007
-#define VFS_IROTH            0x0000004
-#define VFS_IWOTH            0x0000002
-#define VFS_IXOTH            0x0000001
-
-#define VFS_IREAD            VFS_IRUSR
-#define VFS_IWRITE           VFS_IWUSR
-#define VFS_IEXEC            VFS_IXUSR
-
-
-/******************************************************************************************
  * This structure defines a VFS context, that contains informations common to all inodes
  * and dentries for a given file system. As it is declared as a global variable in the
@@ -155,13 +127,14 @@
 
 /* this enum define the VFS inode types values */
+/* WARNING : this enum must be kept consistent with macros in <shared_stat.h> file */
 
 typedef enum   
 {
-    INODE_TYPE_FILE  =     0,           /*! file                                         */
+    INODE_TYPE_FILE  =     0,           /*! regular file                                 */
     INODE_TYPE_DIR   =     1,           /*! directory                                    */
     INODE_TYPE_FIFO  =     2,           /*! POSIX named pipe                             */
     INODE_TYPE_PIPE  =     3,           /*! POSIX anonymous pipe                         */
     INODE_TYPE_SOCK  =     4,           /*! POSIX socket                                 */
-    INODE_TYPE_DEV   =     5,           /*! device channel                               */
+    INODE_TYPE_DEV   =     5,           /*! character device                             */
     INODE_TYPE_SYML  =     6,           /*! symbolic link                                */
 }
@@ -187,6 +160,6 @@
 	uint32_t           size;             /*! number of bytes                             */
 	uint32_t           links;            /*! number of alias dentry                      */
-	uid_t              uid;              /*! user owner identifier                       */
-	gid_t              gid;              /*! group owner identifier                      */
+	uint32_t           uid;              /*! user owner identifier                       */
+	uint32_t           gid;              /*! group owner identifier                      */
     uint32_t           rights;           /*! access rights                               */
 	uint32_t	       refcount;         /*! reference counter (all pointers)            */
@@ -201,4 +174,25 @@
 }
 vfs_inode_t;
+
+/* This define the masks for the inode <rights> field  */
+
+#define VFS_ISUID	   0x0004000
+#define VFS_ISGID	   0x0002000
+#define VFS_ISVTX	   0x0001000
+
+#define VFS_IRWXU      0x0000700
+#define VFS_IRUSR      0x0000400
+#define VFS_IWUSR      0x0000200
+#define VFS_IXUSR      0x0000100
+
+#define VFS_IRWXG      0x0000070
+#define VFS_IRGRP      0x0000040
+#define VFS_IWGRP      0x0000020
+#define VFS_IXGRP      0x0000010
+
+#define VFS_IRWXO      0x0000007
+#define VFS_IROTH      0x0000004
+#define VFS_IWOTH      0x0000002
+#define VFS_IXOTH      0x0000001
 
 /******************************************************************************************
@@ -514,4 +508,9 @@
 /******************* Inode-Tree related functions ****************************************/ 
 /*****************************************************************************************/ 
+
+/****************************************************************************************** 
+ * This function returns a printable string for the inode type.
+ *****************************************************************************************/
+const char * vfs_inode_type_str( vfs_inode_type_t type );
 
 /****************************************************************************************** 
@@ -712,14 +711,14 @@
 
 /****************************************************************************************** 
- * This function returns, in the structure pointed by the <k_stat> kernel pointer,
- * various informations on the file descriptor identified by the <file_xp> argument.
- * TODO not implemented yet...
- ******************************************************************************************
- * @ file_xp    : extended pointer on the file descriptor of the searched directory .
- * @ k_stat     : local pointer on the stat structure in kernel space.
+ * This function returns, in the structure pointed by the <st> pointer,
+ * various informations on the inode identified by the <inode_xp> argument.
+ * TODO : only partially implemented yet...
+ ******************************************************************************************
+ * @ inode_xp   : extended pointer on the remote inode.
+ * @ st         : local pointer on the stat structure in kernel space.
  * @ returns 0 if success / -1 if error.
  *****************************************************************************************/
-error_t vfs_stat( xptr_t        file_xp,
-                  struct stat * k_stat );
+error_t vfs_stat( xptr_t        inode_xp,
+                  struct stat * st );
 
 /****************************************************************************************** 
