svn commit: trunk/busybox/util-linux

landley at busybox.net landley at busybox.net
Fri Sep 8 00:41:48 UTC 2006


Author: landley
Date: 2006-09-07 17:41:48 -0700 (Thu, 07 Sep 2006)
New Revision: 16068

Log:
A quick cleanup pass of some low-hanging mess.


Modified:
   trunk/busybox/util-linux/nfsmount.c


Changeset:
Modified: trunk/busybox/util-linux/nfsmount.c
===================================================================
--- trunk/busybox/util-linux/nfsmount.c	2006-09-08 00:01:02 UTC (rev 16067)
+++ trunk/busybox/util-linux/nfsmount.c	2006-09-08 00:41:48 UTC (rev 16068)
@@ -41,52 +41,8 @@
 #endif
 
 
-/*
- * NFS stats. The good thing with these values is that NFSv3 errors are
- * a superset of NFSv2 errors (with the exception of NFSERR_WFLUSH which
- * no-one uses anyway), so we can happily mix code as long as we make sure
- * no NFSv3 errors are returned to NFSv2 clients.
- * Error codes that have a `--' in the v2 column are not part of the
- * standard, but seem to be widely used nevertheless.
- */
-enum nfs_stat {
-	NFS_OK = 0,			/* v2 v3 */
-	NFSERR_PERM = 1,		/* v2 v3 */
-	NFSERR_NOENT = 2,		/* v2 v3 */
-	NFSERR_IO = 5,			/* v2 v3 */
-	NFSERR_NXIO = 6,		/* v2 v3 */
-	NFSERR_EAGAIN = 11,		/* v2 v3 */
-	NFSERR_ACCES = 13,		/* v2 v3 */
-	NFSERR_EXIST = 17,		/* v2 v3 */
-	NFSERR_XDEV = 18,		/*    v3 */
-	NFSERR_NODEV = 19,		/* v2 v3 */
-	NFSERR_NOTDIR = 20,		/* v2 v3 */
-	NFSERR_ISDIR = 21,		/* v2 v3 */
-	NFSERR_INVAL = 22,		/* v2 v3 that Sun forgot */
-	NFSERR_FBIG = 27,		/* v2 v3 */
-	NFSERR_NOSPC = 28,		/* v2 v3 */
-	NFSERR_ROFS = 30,		/* v2 v3 */
-	NFSERR_MLINK = 31,		/*    v3 */
-	NFSERR_OPNOTSUPP = 45,		/* v2 v3 */
-	NFSERR_NAMETOOLONG = 63,	/* v2 v3 */
-	NFSERR_NOTEMPTY = 66,		/* v2 v3 */
-	NFSERR_DQUOT = 69,		/* v2 v3 */
-	NFSERR_STALE = 70,		/* v2 v3 */
-	NFSERR_REMOTE = 71,		/* v2 v3 */
-	NFSERR_WFLUSH = 99,		/* v2    */
-	NFSERR_BADHANDLE = 10001,	/*    v3 */
-	NFSERR_NOT_SYNC = 10002,	/*    v3 */
-	NFSERR_BAD_COOKIE = 10003,	/*    v3 */
-	NFSERR_NOTSUPP = 10004,		/*    v3 */
-	NFSERR_TOOSMALL = 10005,	/*    v3 */
-	NFSERR_SERVERFAULT = 10006,	/*    v3 */
-	NFSERR_BADTYPE = 10007,		/*    v3 */
-	NFSERR_JUKEBOX = 10008		/*    v3 */
-};
 
-#define NFS_PROGRAM	100003
 
-
 enum {
 #ifndef NFS_FHSIZE
 	NFS_FHSIZE = 32,
@@ -97,14 +53,14 @@
 };
 
 /* Disable the nls stuff */
-# undef bindtextdomain
-# define bindtextdomain(Domain, Directory) /* empty */
-# undef textdomain
-# define textdomain(Domain) /* empty */
+//# undef bindtextdomain
+//# define bindtextdomain(Domain, Directory) /* empty */
+//# undef textdomain
+//# define textdomain(Domain) /* empty */
 
-enum {
-	S_QUOTA = 128,     /* Quota initialized for file/directory/symlink */
-};
+//enum {
+//	S_QUOTA = 128,     /* Quota initialized for file/directory/symlink */
+//};
 
 
 /*
@@ -117,10 +73,6 @@
  * so it is easiest to ignore the kernel altogether (at compile time).
  */
 
-/* NOTE: Do not make this into a 'static const int' because the pre-processor
- * needs to test this value in some #if statements. */
-#define NFS_MOUNT_VERSION 4
-
 struct nfs2_fh {
 	char                    data[32];
 };
@@ -216,7 +168,7 @@
 	if (kernel_version)
 		return;
 
-	nfs_mount_version = NFS_MOUNT_VERSION; /* default */
+	nfs_mount_version = 4; /* default */
 
 	kernel_version = get_linux_version_code();
 	if (kernel_version) {
@@ -229,8 +181,8 @@
 		else
 			nfs_mount_version = 4; /* since 2.3.99pre4 */
 	}
-	if (nfs_mount_version > NFS_MOUNT_VERSION)
-		nfs_mount_version = NFS_MOUNT_VERSION;
+	if (nfs_mount_version > 4)
+		nfs_mount_version = 4;
 }
 
 static struct pmap *
@@ -399,9 +351,7 @@
 	data.acregmax	= 60;
 	data.acdirmin	= 30;
 	data.acdirmax	= 60;
-#if NFS_MOUNT_VERSION >= 2
 	data.namlen	= NAME_MAX;
-#endif
 
 	bg = 0;
 	soft = 0;
@@ -417,7 +367,7 @@
 	mountvers = 0;
 	port = 0;
 	mountport = 0;
-	nfsprog = NFS_PROGRAM;
+	nfsprog = 100003;
 	nfsvers = 0;
 
 	/* parse options */
@@ -474,11 +424,9 @@
 				else
 					printf("Warning: Unrecognized proto= option.\n");
 			} else if (!strcmp(opt, "namlen")) {
-#if NFS_MOUNT_VERSION >= 2
 				if (nfs_mount_version >= 2)
 					data.namlen = val;
 				else
-#endif
 				printf("Warning: Option namlen is not supported.\n");
 			} else if (!strcmp(opt, "addr"))
 				/* ignore */;
@@ -531,14 +479,10 @@
 		| (posix ? NFS_MOUNT_POSIX : 0)
 		| (nocto ? NFS_MOUNT_NOCTO : 0)
 		| (noac ? NFS_MOUNT_NOAC : 0);
-#if NFS_MOUNT_VERSION >= 2
 	if (nfs_mount_version >= 2)
 		data.flags |= (tcp ? NFS_MOUNT_TCP : 0);
-#endif
-#if NFS_MOUNT_VERSION >= 3
 	if (nfs_mount_version >= 3)
 		data.flags |= (nolock ? NFS_MOUNT_NONLM : 0);
-#endif
 	if (nfsvers > MAX_NFSPROT || mountvers > MAX_NFSPROT) {
 		bb_error_msg("NFSv%d not supported!", nfsvers);
 		return 1;
@@ -568,11 +512,9 @@
 		(data.flags & NFS_MOUNT_POSIX) != 0,
 		(data.flags & NFS_MOUNT_NOCTO) != 0,
 		(data.flags & NFS_MOUNT_NOAC) != 0);
-#if NFS_MOUNT_VERSION >= 2
 	printf("tcp = %d\n",
 		(data.flags & NFS_MOUNT_TCP) != 0);
 #endif
-#endif
 
 	data.version = nfs_mount_version;
 
@@ -746,14 +688,11 @@
 		memcpy(data.root.data,
 		       (char *) status.nfsv2.fhstatus_u.fhs_fhandle,
 		       NFS_FHSIZE);
-#if NFS_MOUNT_VERSION >= 4
 		data.root.size = NFS_FHSIZE;
 		memcpy(data.old_root.data,
 		       (char *) status.nfsv2.fhstatus_u.fhs_fhandle,
 		       NFS_FHSIZE);
-#endif
 	} else {
-#if NFS_MOUNT_VERSION >= 4
 		fhandle3 *my_fhandle;
 		if (status.nfsv3.fhs_status != 0) {
 			bb_error_msg("%s:%s failed, reason given by server: %s",
@@ -770,7 +709,6 @@
 		       my_fhandle->fhandle3_len);
 
 		data.flags |= NFS_MOUNT_VER3;
-#endif
 	}
 
 	/* create nfs socket for kernel */
@@ -862,39 +800,19 @@
 #define EDQUOT	ENOSPC
 #endif
 
+// Convert each NFSERR_BLAH into EBLAH
+
 static const struct {
-	enum nfs_stat stat;
+	int stat;
 	int errnum;
 } nfs_errtbl[] = {
-	{ NFS_OK,		0		},
-	{ NFSERR_PERM,		EPERM		},
-	{ NFSERR_NOENT,		ENOENT		},
-	{ NFSERR_IO,		EIO		},
-	{ NFSERR_NXIO,		ENXIO		},
-	{ NFSERR_ACCES,		EACCES		},
-	{ NFSERR_EXIST,		EEXIST		},
-	{ NFSERR_NODEV,		ENODEV		},
-	{ NFSERR_NOTDIR,	ENOTDIR		},
-	{ NFSERR_ISDIR,		EISDIR		},
-#ifdef NFSERR_INVAL
-	{ NFSERR_INVAL,		EINVAL		},	/* that Sun forgot */
-#endif
-	{ NFSERR_FBIG,		EFBIG		},
-	{ NFSERR_NOSPC,		ENOSPC		},
-	{ NFSERR_ROFS,		EROFS		},
-	{ NFSERR_NAMETOOLONG,	ENAMETOOLONG	},
-	{ NFSERR_NOTEMPTY,	ENOTEMPTY	},
-	{ NFSERR_DQUOT,		EDQUOT		},
-	{ NFSERR_STALE,		ESTALE		},
-#ifdef EWFLUSH
-	{ NFSERR_WFLUSH,	EWFLUSH		},
-#endif
-	/* Throw in some NFSv3 values for even more fun (HP returns these) */
-	{ 71,			EREMOTE		},
-
-	{ -1,			EIO		}
+	{0,0}, {1,EPERM}, {2,ENOENT}, {5,EIO}, {6,ENXIO}, {13,EACCES}, {17,EEXIST},
+	{19,ENODEV}, {20,ENOTDIR}, {21,EISDIR}, {22,EINVAL}, {27,EFBIG},
+	{28,ENOSPC}, {30,EROFS}, {63,ENAMETOOLONG}, {66,ENOTEMPTY}, {69,EDQUOT},
+	{70,ESTALE}, {71,EREMOTE}, {-1,EIO}
 };
 
+
 static char *nfs_strerror(int status)
 {
 	int i;
@@ -908,16 +826,14 @@
 	return buf;
 }
 
-static bool_t
-xdr_fhandle (XDR *xdrs, fhandle objp)
+static bool_t xdr_fhandle (XDR *xdrs, fhandle objp)
 {
 	 if (!xdr_opaque (xdrs, objp, FHSIZE))
 		 return FALSE;
 	return TRUE;
 }
 
-bool_t
-xdr_fhstatus (XDR *xdrs, fhstatus *objp)
+bool_t xdr_fhstatus (XDR *xdrs, fhstatus *objp)
 {
 	 if (!xdr_u_int (xdrs, &objp->fhs_status))
 		 return FALSE;
@@ -932,24 +848,21 @@
 	return TRUE;
 }
 
-bool_t
-xdr_dirpath (XDR *xdrs, dirpath *objp)
+bool_t xdr_dirpath (XDR *xdrs, dirpath *objp)
 {
 	 if (!xdr_string (xdrs, objp, MNTPATHLEN))
 		 return FALSE;
 	return TRUE;
 }
 
-bool_t
-xdr_fhandle3 (XDR *xdrs, fhandle3 *objp)
+bool_t xdr_fhandle3 (XDR *xdrs, fhandle3 *objp)
 {
 	 if (!xdr_bytes (xdrs, (char **)&objp->fhandle3_val, (unsigned int *) &objp->fhandle3_len, FHSIZE3))
 		 return FALSE;
 	return TRUE;
 }
 
-bool_t
-xdr_mountres3_ok (XDR *xdrs, mountres3_ok *objp)
+bool_t xdr_mountres3_ok (XDR *xdrs, mountres3_ok *objp)
 {
 	 if (!xdr_fhandle3 (xdrs, &objp->fhandle))
 		 return FALSE;
@@ -959,16 +872,14 @@
 	return TRUE;
 }
 
-bool_t
-xdr_mountstat3 (XDR *xdrs, mountstat3 *objp)
+bool_t xdr_mountstat3 (XDR *xdrs, mountstat3 *objp)
 {
 	 if (!xdr_enum (xdrs, (enum_t *) objp))
 		 return FALSE;
 	return TRUE;
 }
 
-bool_t
-xdr_mountres3 (XDR *xdrs, mountres3 *objp)
+bool_t xdr_mountres3 (XDR *xdrs, mountres3 *objp)
 {
 	 if (!xdr_mountstat3 (xdrs, &objp->fhs_status))
 		 return FALSE;




More information about the busybox-cvs mailing list