From: Steve Dickson <SteveD@redhat.com>
To: Steve Dickson <steved@redhat.com>
Cc: Linux NFS Mailing list <linux-nfs@vger.kernel.org>
Subject: Re: [PATCH 2/2] rpc.nfsd: Allow v4.2 server support with the -V option
Date: Mon, 19 Aug 2013 14:26:02 -0400 [thread overview]
Message-ID: <5212633A.4090700@RedHat.com> (raw)
In-Reply-To: <1375036598-31090-2-git-send-email-steved@redhat.com>
On 28/07/13 14:36, Steve Dickson wrote:
> Signed-off-by: Steve Dickson <steved@redhat.com>
> ---
> support/include/nfs/nfs.h | 4 ++++
> utils/nfsd/nfsd.c | 12 ++++++------
> utils/nfsd/nfssvc.c | 11 +++++++----
> 3 files changed, 17 insertions(+), 10 deletions(-)
Committed...
steved.
>
> diff --git a/support/include/nfs/nfs.h b/support/include/nfs/nfs.h
> index 5fd86f6..38db5b5 100644
> --- a/support/include/nfs/nfs.h
> +++ b/support/include/nfs/nfs.h
> @@ -15,6 +15,10 @@
> #define NFSD_MINVERS 2
> #define NFSD_MAXVERS 4
>
> +#define NFS4_MINMINOR 1
> +#define NFS4_MAXMINOR 2
> +#define NFS4_VERDEFAULT 0x1 /* minor verion 1 */
> +
> struct nfs_fh_len {
> int fh_size;
> u_int8_t fh_handle[NFS3_FHSIZE];
> diff --git a/utils/nfsd/nfsd.c b/utils/nfsd/nfsd.c
> index df48392..6db92f0 100644
> --- a/utils/nfsd/nfsd.c
> +++ b/utils/nfsd/nfsd.c
> @@ -99,7 +99,7 @@ main(int argc, char **argv)
> char *p, *progname, *port;
> char *haddr = NULL;
> int socket_up = 0;
> - int minorvers41 = 0; /* nfsv4 minor version */
> + int minorvers = NFS4_VERDEFAULT; /* nfsv4 minor version */
> unsigned int versbits = NFSCTL_VERDEFAULT;
> unsigned int protobits = NFSCTL_ALLBITS;
> unsigned int proto4 = 0;
> @@ -160,11 +160,11 @@ main(int argc, char **argv)
> case 4:
> if (*p == '.') {
> int i = atoi(p+1);
> - if (i != 1) {
> + if (i > 2) {
> fprintf(stderr, "%s: unsupported minor version\n", optarg);
> exit(1);
> }
> - minorvers41 = -1;
> + NFSCTL_VERUNSET(minorvers, i);
> break;
> }
> case 3:
> @@ -181,11 +181,11 @@ main(int argc, char **argv)
> case 4:
> if (*p == '.') {
> int i = atoi(p+1);
> - if (i != 1) {
> + if (i > 2) {
> fprintf(stderr, "%s: unsupported minor version\n", optarg);
> exit(1);
> }
> - minorvers41 = 1;
> + NFSCTL_VERSET(minorvers, i);
> break;
> }
> case 3:
> @@ -282,7 +282,7 @@ main(int argc, char **argv)
> * registered with rpcbind. Note that on older kernels w/o the right
> * interfaces, these are a no-op.
> */
> - nfssvc_setvers(versbits, minorvers41);
> + nfssvc_setvers(versbits, minorvers);
>
> error = nfssvc_set_sockets(AF_INET, proto4, haddr, port);
> if (!error)
> diff --git a/utils/nfsd/nfssvc.c b/utils/nfsd/nfssvc.c
> index 683008e..8b85846 100644
> --- a/utils/nfsd/nfssvc.c
> +++ b/utils/nfsd/nfssvc.c
> @@ -269,7 +269,7 @@ nfssvc_set_sockets(const int family, const unsigned int protobits,
> }
>
> void
> -nfssvc_setvers(unsigned int ctlbits, int minorvers41)
> +nfssvc_setvers(unsigned int ctlbits, int minorvers)
> {
> int fd, n, off;
> char *ptr;
> @@ -280,9 +280,12 @@ nfssvc_setvers(unsigned int ctlbits, int minorvers41)
> if (fd < 0)
> return;
>
> - if (minorvers41)
> - off += snprintf(ptr+off, sizeof(buf) - off, "%c4.1",
> - minorvers41 > 0 ? '+' : '-');
> + for (n = NFS4_MINMINOR; n <= NFS4_MAXMINOR; n++) {
> + if (NFSCTL_VERISSET(minorvers, n))
> + off += snprintf(ptr+off, sizeof(buf) - off, "+4.%d ", n);
> + else
> + off += snprintf(ptr+off, sizeof(buf) - off, "-4.%d ", n);
> + }
> for (n = NFSD_MINVERS; n <= NFSD_MAXVERS; n++) {
> if (NFSCTL_VERISSET(ctlbits, n))
> off += snprintf(ptr+off, sizeof(buf) - off, "+%d ", n);
>
next prev parent reply other threads:[~2013-08-19 18:26 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-07-28 18:36 [PATCH 1/2] rpc.nfsd: No longer advertise NFS v2 support Steve Dickson
2013-07-28 18:36 ` [PATCH 2/2] rpc.nfsd: Allow v4.2 server support with the -V option Steve Dickson
2013-07-30 15:59 ` J. Bruce Fields
2013-07-30 16:09 ` Myklebust, Trond
2013-07-30 20:29 ` J. Bruce Fields
2013-08-19 18:26 ` Steve Dickson [this message]
2013-07-30 15:51 ` [PATCH 1/2] rpc.nfsd: No longer advertise NFS v2 support J. Bruce Fields
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5212633A.4090700@RedHat.com \
--to=steved@redhat.com \
--cc=linux-nfs@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.