summaryrefslogtreecommitdiffstats
path: root/utils
diff options
context:
space:
mode:
authorChuck Lever <chuck.lever@oracle.com>2007-07-28 17:50:35 -0400
committerNeil Brown <neilb@suse.de>2007-07-30 16:12:53 +1000
commitb6e4ddd10b3c67ef210e572dec956cb35ce96440 (patch)
treeb3e64f11e9aa89eeca054c5087b3575cf6304d16 /utils
parent3eb619857b2f2fe896877c903a2c2eb28b632945 (diff)
downloadnfs-utils-b6e4ddd10b3c67ef210e572dec956cb35ce96440.tar.gz
nfs-utils-b6e4ddd10b3c67ef210e572dec956cb35ce96440.tar.xz
nfs-utils-b6e4ddd10b3c67ef210e572dec956cb35ce96440.zip
libnfs.a: move more mount-only functions out of libnfs.a
Continue clean-up with nfsvers_to_mnt() and mntvers_to_nfs(). Signed-off-by: Chuck Lever <chuck.lever@oracle.com> Signed-off-by: Neil Brown <neilb@suse.de>
Diffstat (limited to 'utils')
-rw-r--r--utils/mount/network.c34
-rw-r--r--utils/mount/network.h2
2 files changed, 36 insertions, 0 deletions
diff --git a/utils/mount/network.c b/utils/mount/network.c
index 08b1f99..c092571 100644
--- a/utils/mount/network.c
+++ b/utils/mount/network.c
@@ -57,6 +57,40 @@ extern int nfs_mount_data_version;
extern char *progname;
extern int verbose;
+static const unsigned long nfs_to_mnt[] = {
+ 0,
+ 0,
+ 1,
+ 3,
+};
+
+static const unsigned long mnt_to_nfs[] = {
+ 0,
+ 2,
+ 2,
+ 3,
+};
+
+/*
+ * Map an NFS version into the corresponding Mountd version
+ */
+unsigned long nfsvers_to_mnt(const unsigned long vers)
+{
+ if (vers <= 3)
+ return nfs_to_mnt[vers];
+ return 0;
+}
+
+/*
+ * Map a Mountd version into the corresponding NFS version
+ */
+static unsigned long mntvers_to_nfs(const unsigned long vers)
+{
+ if (vers <= 3)
+ return mnt_to_nfs[vers];
+ return 0;
+}
+
static const unsigned int probe_udp_only[] = {
IPPROTO_UDP,
0,
diff --git a/utils/mount/network.h b/utils/mount/network.h
index 81a59da..b3a5525 100644
--- a/utils/mount/network.h
+++ b/utils/mount/network.h
@@ -33,5 +33,7 @@ int nfs_call_umount(clnt_addr_t *, dirpath *);
int start_statd(void);
+unsigned long nfsvers_to_mnt(const unsigned long);
+
CLIENT *mnt_openclnt(clnt_addr_t *, int *);
void mnt_closeclnt(CLIENT *, int);