Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 21 Nov 2013 02:54:58 +0000 (UTC)
From:      "Andrey V. Elsukov" <ae@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-user@freebsd.org
Subject:   svn commit: r258416 - user/ae/inet6/sys/net
Message-ID:  <201311210254.rAL2swHK087564@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: ae
Date: Thu Nov 21 02:54:58 2013
New Revision: 258416
URL: http://svnweb.freebsd.org/changeset/base/258416

Log:
  Check and initialize zone ids of src/dst addresses before calling
  gif_set_tunnel. Also remove sa6_embedscope() calls.

Modified:
  user/ae/inet6/sys/net/if_gif.c

Modified: user/ae/inet6/sys/net/if_gif.c
==============================================================================
--- user/ae/inet6/sys/net/if_gif.c	Thu Nov 21 02:45:36 2013	(r258415)
+++ user/ae/inet6/sys/net/if_gif.c	Thu Nov 21 02:54:58 2013	(r258416)
@@ -747,6 +747,10 @@ gif_ioctl(ifp, cmd, data)
 		case AF_INET6:
 			if (src->sa_len != sizeof(struct sockaddr_in6))
 				return EINVAL;
+			error = sa6_checkzone_ifp(ifp,
+			    (struct sockaddr_in6 *)src);
+			if (error)
+				return (error);
 			break;
 #endif
 		default:
@@ -763,6 +767,10 @@ gif_ioctl(ifp, cmd, data)
 		case AF_INET6:
 			if (dst->sa_len != sizeof(struct sockaddr_in6))
 				return EINVAL;
+			error = sa6_checkzone_ifp(ifp,
+			    (struct sockaddr_in6 *)dst);
+			if (error)
+				return (error);
 			break;
 #endif
 		default:
@@ -985,16 +993,6 @@ gif_set_tunnel(ifp, src, dst)
 #endif
 #ifdef INET6
 	case AF_INET6:
-		/*
-		 * Check validity of the scope zone ID of the addresses, and
-		 * convert it into the kernel internal form if necessary.
-		 */
-		error = sa6_embedscope((struct sockaddr_in6 *)sc->gif_psrc, 0);
-		if (error != 0)
-			break;
-		error = sa6_embedscope((struct sockaddr_in6 *)sc->gif_pdst, 0);
-		if (error != 0)
-			break;
 		error = in6_gif_attach(sc);
 		break;
 #endif



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201311210254.rAL2swHK087564>