From: Christos Zoulas Date: Fri, 9 Jan 2009 19:03:51 +0000 (+0000) Subject: Add 2 more members on linux nfs_args, pseudoflavor and context. Explicitly X-Git-Url: https://git.fsl.cs.sunysb.edu/?a=commitdiff_plain;h=68b790ad22edb8c4e3b71de49e6897c9aeba3527;p=am-utils-6.0.git Add 2 more members on linux nfs_args, pseudoflavor and context. Explicitly initialize them to 0, otherwise on 2.6.26.x mount returns EINVAL if context is not 0. --- diff --git a/conf/mount/mount_linux.c b/conf/mount/mount_linux.c index 827f9e7..961f312 100644 --- a/conf/mount/mount_linux.c +++ b/conf/mount/mount_linux.c @@ -326,6 +326,14 @@ mount_linux_nfs(MTYPE_TYPE type, mntent_t *mnt, int flags, caddr_t data) mnt_data->namlen = NAME_MAX; /* 256 bytes */ #endif /* HAVE_NFS_ARGS_T_NAMELEN */ +#ifdef HAVE_NFS_ARGS_T_PSEUDOFLAVOR + mnt_data->pseudoflavor = 0; +#endif /* HAVE_NFS_ARGS_T_PSEUDOFLAVOR */ + +#ifdef HAVE_NFS_ARGS_T_CONTEXT + memset(mnt_data->context, 0, sizeof(mnt_data->context)); +#endif /* HAVE_NFS_ARGS_T_CONTEXT */ + mnt_data->fd = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP); if (mnt_data->fd < 0) { plog(XLOG_ERROR, "Can't create socket for kernel"); diff --git a/conf/nfs_prot/nfs_prot_linux.h b/conf/nfs_prot/nfs_prot_linux.h index a27292f..73d35f4 100644 --- a/conf/nfs_prot/nfs_prot_linux.h +++ b/conf/nfs_prot/nfs_prot_linux.h @@ -259,6 +259,8 @@ struct nfs_args { int namlen; /* 2 */ unsigned int bsize; /* 3 */ struct nfs3_fh root; /* 4 */ + int pseudoflavor; /* 5 */ + char context[256 + 1];/* 6 */ }; typedef struct nfs_args nfs_args_t; diff --git a/configure.in b/configure.in index af09c83..ddabce3 100644 --- a/configure.in +++ b/configure.in @@ -55,7 +55,7 @@ AH_BOTTOM([ dnl dnl AC_CONFIG_AUX_DIR(m4) AC_PREREQ(2.52) -AC_REVISION($Revision: 1.133 $) +AC_REVISION($Revision: 1.134 $) AC_COPYRIGHT([Copyright (c) 1997-2007 Erez Zadok]) dnl find out system type AC_MSG_NOTICE(*** SYSTEM TYPES ***) @@ -965,6 +965,8 @@ AMU_CHECK_FIELD(nfs_args_t.pathconf) AMU_CHECK_FIELD(nfs_args_t.proto) AMU_CHECK_FIELD(nfs_args_t.sotype) AMU_CHECK_FIELD(nfs_args_t.version) +AMU_CHECK_FIELD(nfs_args_t.pseudoflavor) +AMU_CHECK_FIELD(nfs_args_t.context) AMU_CHECK_FIELD(struct ifreq.ifr_addr) AMU_CHECK_FIELD(struct ifaddrs.ifa_next) AMU_CHECK_FIELD(struct sockaddr.sa_len)