]> Zhao Yanbai Git Server - minix.git/commitdiff
Message type for VFS_FCHDIR
authorLionel Sambuc <lionel@minix3.org>
Mon, 12 May 2014 14:58:19 +0000 (16:58 +0200)
committerLionel Sambuc <lionel@minix3.org>
Mon, 28 Jul 2014 15:05:34 +0000 (17:05 +0200)
Change-Id: Ie7de90d37a39e89f35438a5b01a9e878a06194b2

include/minix/callnr.h
include/minix/ipc.h
lib/libc/sys-minix/chdir.c
servers/vfs/stadir.c

index b847bf96b68bfe3b855602c2c28533b1286cd419..7548a1e85df912ac9999bc6d7d56d5d402a3a694 100644 (file)
 
 #define NR_VFS_CALLS           49      /* highest number from base plus one */
 
-/* Field names for the fchdir(2) call. */
-#define VFS_FCHDIR_FD          m1_i1   /* int */
-
 /* Field names for the fchmod(2) call. */
 #define VFS_FCHMOD_FD          m1_i1   /* int */
 #define VFS_FCHMOD_MODE                m1_i2   /* mode_t */
index d4ba5793d6688f4d36fdc6b333f68b08c9d47439..8f9278f4a4fcc396773757d0be89cf5ca0a3a928 100644 (file)
@@ -166,6 +166,13 @@ typedef struct {
 } mess_lc_vfs_creat;
 _ASSERT_MSG_SIZE(mess_lc_vfs_creat);
 
+typedef struct {
+       int fd;
+
+       uint8_t padding[52];
+} mess_lc_vfs_fchdir;
+_ASSERT_MSG_SIZE(mess_lc_vfs_fchdir);
+
 typedef struct {
        int fd;
        int cmd;
@@ -829,6 +836,7 @@ typedef struct {
 
                mess_lc_vfs_chown       m_lc_vfs_chown;
                mess_lc_vfs_creat       m_lc_vfs_creat;
+               mess_lc_vfs_fchdir      m_lc_vfs_fchdir;
                mess_lc_vfs_fcntl       m_lc_vfs_fcntl;
                mess_lc_vfs_fstat       m_lc_vfs_fstat;
                mess_lc_vfs_fsync       m_lc_vfs_fsync;
index 0554a70977d87e29cd2427b07dc57a7f2c8688c7..01d8949a54f83adfa500c2ee2b4784422679082f 100644 (file)
@@ -21,6 +21,6 @@ int fd;
   message m;
 
   memset(&m, 0, sizeof(m));
-  m.VFS_FCHDIR_FD = fd;
+  m.m_lc_vfs_fchdir.fd = fd;
   return(_syscall(VFS_PROC_NR, VFS_FCHDIR, &m));
 }
index c57de4fd626d22a7d920f2ddb5d8518b0afb2fef..f7d8d3ace80197622a4552aa8f185ad539b5bfd5 100644 (file)
@@ -35,7 +35,7 @@ int do_fchdir(void)
   struct filp *rfilp;
   int r, rfd;
 
-  rfd = job_m_in.VFS_FCHDIR_FD;
+  rfd = job_m_in.m_lc_vfs_fchdir.fd;
 
   /* Is the file descriptor valid? */
   if ((rfilp = get_filp(rfd, VNODE_READ)) == NULL) return(err_code);