NFS update
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4831 42af7a65-404d-4744-a932-0658087f49c3
This commit is contained in:
parent
6a0e4e78a6
commit
b8b535ec17
@ -282,35 +282,28 @@ static int nfs_filecreate(FAR struct nfsmount *nmp, struct nfsnode *np,
|
||||
|
||||
/* Set the user ID to zero */
|
||||
|
||||
*ptr++ = nfs_true; /* True: Uid value follows */
|
||||
reqlen += sizeof(uint32_t);
|
||||
|
||||
*ptr++ = 0;
|
||||
reqlen += sizeof(uint32_t);
|
||||
*ptr++ = nfs_true; /* True: Uid value follows */
|
||||
*ptr++ = 0; /* UID = 0 (nobody) */
|
||||
reqlen += 2*sizeof(uint32_t);
|
||||
|
||||
/* Set the group ID to one */
|
||||
|
||||
*ptr++ = nfs_true; /* True: Gid value follows */
|
||||
reqlen += sizeof(uint32_t);
|
||||
|
||||
*ptr++ = HTONL(1);
|
||||
reqlen += sizeof(uint32_t);
|
||||
*ptr++ = nfs_true; /* True: Gid value follows */
|
||||
*ptr++ = HTONL(1); /* GID = 1 (nogroup) */
|
||||
reqlen += 2*sizeof(uint32_t);
|
||||
|
||||
/* Set the size to zero */
|
||||
|
||||
*ptr++ = nfs_true; /* True: Size value follows */
|
||||
reqlen += sizeof(uint32_t);
|
||||
|
||||
*ptr++ = nfs_true; /* True: Size value follows */
|
||||
*ptr++ = 0; /* Size = 0 */
|
||||
*ptr++ = 0;
|
||||
reqlen += sizeof(uint32_t);
|
||||
reqlen += 3*sizeof(uint32_t);
|
||||
|
||||
/* Don't change times */
|
||||
|
||||
*ptr++ = HTONL(NFSV3SATTRTIME_DONTCHANGE); /* Don't change atime */
|
||||
reqlen += sizeof(uint32_t);
|
||||
|
||||
*ptr++ = HTONL(NFSV3SATTRTIME_DONTCHANGE); /* Don't change mtime */
|
||||
reqlen += sizeof(uint32_t);
|
||||
reqlen += 2*sizeof(uint32_t);
|
||||
}
|
||||
|
||||
/* Send the NFS request. Note there is special logic here to handle version 3
|
||||
@ -936,7 +929,7 @@ static ssize_t nfs_write(FAR struct file *filep, const char *buffer,
|
||||
/* Copy the file offset */
|
||||
|
||||
txdr_hyper((uint64_t)filep->f_pos, ptr);
|
||||
ptr += 2;
|
||||
ptr += 2;
|
||||
reqlen += 2*sizeof(uint32_t);
|
||||
|
||||
/* Copy the count and stable values */
|
||||
@ -2082,19 +2075,15 @@ static int nfs_mkdir(struct inode *mountpt, const char *relpath, mode_t mode)
|
||||
|
||||
/* Set the user ID to zero */
|
||||
|
||||
*ptr++ = nfs_true; /* True: Uid value follows */
|
||||
reqlen += sizeof(uint32_t);
|
||||
|
||||
*ptr++ = 0;
|
||||
reqlen += sizeof(uint32_t);
|
||||
*ptr++ = nfs_true; /* True: Uid value follows */
|
||||
*ptr++ = 0; /* UID = 0 (nobody) */
|
||||
reqlen += 2*sizeof(uint32_t);
|
||||
|
||||
/* Set the group ID to one */
|
||||
|
||||
*ptr++ = nfs_true; /* True: Gid value follows */
|
||||
reqlen += sizeof(uint32_t);
|
||||
|
||||
*ptr++ = HTONL(1);
|
||||
reqlen += sizeof(uint32_t);
|
||||
*ptr++ = nfs_true; /* True: Gid value follows */
|
||||
*ptr++ = HTONL(1); /* GID = 1 (nogroup) */
|
||||
reqlen += 2*sizeof(uint32_t);
|
||||
|
||||
/* No size */
|
||||
|
||||
@ -2104,10 +2093,8 @@ static int nfs_mkdir(struct inode *mountpt, const char *relpath, mode_t mode)
|
||||
/* Don't change times */
|
||||
|
||||
*ptr++ = HTONL(NFSV3SATTRTIME_DONTCHANGE); /* Don't change atime */
|
||||
reqlen += sizeof(uint32_t);
|
||||
|
||||
*ptr++ = HTONL(NFSV3SATTRTIME_DONTCHANGE); /* Don't change mtime */
|
||||
reqlen += sizeof(uint32_t);
|
||||
reqlen += 2*sizeof(uint32_t);
|
||||
|
||||
/* Perform the MKDIR RPC */
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user