All of lore.kernel.org
 help / color / mirror / Atom feed
From: Kelly Anderson <kelly-lACMDn57031vQQPgy9v2K1aTQe2KTcn/@public.gmane.org>
To: nfs@lists.sourceforge.net
Subject: [NFS] Nfs4 over Ipv6 patch to fix ipv6 subnetting in /etc/exports
Date: Wed, 02 Dec 2009 15:50:49 -0700	[thread overview]
Message-ID: <4B16EF49.8040106@silka.with-linux.com> (raw)

[-- Attachment #1: Type: text/plain, Size: 898 bytes --]

Hopefully this mail gets through to someone who can apply this patch to 
NfsUtils git.

I have been trying on and off for a year or so to get Nfs4 mounts to 
work over Ipv6.  Finally with the latest git it seemed to work.  That 
is, it worked when you wildcard all internet addresses.

/home/nfs4  *(rw,fsid=0,sync,root_squash,no_all_squash,no_subtree_check)

Unfortunately subnetting wasn't working, so I dug into the code to 
figure out why.  It turned out that it was something simple (once I 
managed to get my head into the code).  I've attached a patch against 
the current git that fixes it.  With the patch applied, ipv6 subnetting 
such as the following works.

/home/nfs4  
2001:470:b:3e::/64(rw,fsid=0,sync,root_squash,no_all_squash,no_subtree_check)
/home/nfs4  
2001:470:b:3e::/ffff:ffff:ffff:ffff::(rw,fsid=0,sync,root_squash,no_all_squash,no_subtree_check)

Regards,

Kelly Anderson

[-- Attachment #2: NfsUtils-check_subnet_v6.patch --]
[-- Type: text/x-patch, Size: 884 bytes --]

--- ./support/export/client.c.orig	2009-11-30 08:06:18.000000000 -0700
+++ ./support/export/client.c	2009-12-02 15:16:55.361725808 -0700
@@ -505,16 +505,16 @@ check_subnet_v6(const struct sockaddr_in
 			continue;
 
 		if (mask_match(address->sin6_addr.s6_addr32[0],
-				sin6->sin6_addr.s6_addr[0],
+				sin6->sin6_addr.s6_addr32[0],
 		      		mask->sin6_addr.s6_addr32[0]) &&
 		    mask_match(address->sin6_addr.s6_addr32[1],
-				sin6->sin6_addr.s6_addr[1],
+				sin6->sin6_addr.s6_addr32[1],
 		      		mask->sin6_addr.s6_addr32[1]) &&
 		    mask_match(address->sin6_addr.s6_addr32[2],
-				sin6->sin6_addr.s6_addr[2],
+				sin6->sin6_addr.s6_addr32[2],
 		      		mask->sin6_addr.s6_addr32[2]) &&
 		    mask_match(address->sin6_addr.s6_addr32[3],
-				sin6->sin6_addr.s6_addr[3],
+				sin6->sin6_addr.s6_addr32[3],
 		      		mask->sin6_addr.s6_addr32[3]))
 			return 1;
 	}

[-- Attachment #3: Type: text/plain, Size: 300 bytes --]

------------------------------------------------------------------------------
Join us December 9, 2009 for the Red Hat Virtual Experience,
a free event focused on virtualization and cloud computing. 
Attend in-depth sessions from your desk. Your couch. Anywhere.
http://p.sf.net/sfu/redhat-sfdev2dev

[-- Attachment #4: Type: text/plain, Size: 362 bytes --]

_______________________________________________
NFS maillist  -  NFS@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nfs
_______________________________________________
Please note that nfs@lists.sourceforge.net is being discontinued.
Please subscribe to linux-nfs@vger.kernel.org instead.
    http://vger.kernel.org/vger-lists.html#linux-nfs

             reply	other threads:[~2009-12-02 23:08 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-12-02 22:50 Kelly Anderson [this message]
     [not found] ` <4B16EF49.8040106-lACMDn57031vQQPgy9v2K1aTQe2KTcn/@public.gmane.org>
2009-12-02 23:32   ` [NFS] Nfs4 over Ipv6 patch to fix ipv6 subnetting in /etc/exports Chuck Lever
2009-12-03  0:16     ` Kelly Anderson
     [not found]       ` <4B170344.9070205-lACMDn57031vQQPgy9v2K1aTQe2KTcn/@public.gmane.org>
2009-12-03  0:25         ` Chuck Lever
2009-12-11 18:19   ` Steve Dickson
     [not found]     ` <4B228D4B.7000007-AfCzQyP5zfLQT0dZR+AlfA@public.gmane.org>
2009-12-11 18:24       ` Chuck Lever

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=4B16EF49.8040106@silka.with-linux.com \
    --to=kelly-lacmdn57031vqqpgy9v2k1atqe2ktcn/@public.gmane.org \
    --cc=nfs@lists.sourceforge.net \
    /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.