svn commit: r279590 - head/usr.sbin/ctld

Alexander Motin mav at FreeBSD.org
Wed Mar 4 14:12:39 UTC 2015


Author: mav
Date: Wed Mar  4 14:12:38 2015
New Revision: 279590
URL: https://svnweb.freebsd.org/changeset/base/279590

Log:
  If target name starts with "naa.", set it as WWNN for CTL port.
  
  MFC after:	1 week
  Sponsored by:	iXsystems, Inc.

Modified:
  head/usr.sbin/ctld/kernel.c

Modified: head/usr.sbin/ctld/kernel.c
==============================================================================
--- head/usr.sbin/ctld/kernel.c	Wed Mar  4 12:12:46 2015	(r279589)
+++ head/usr.sbin/ctld/kernel.c	Wed Mar  4 14:12:38 2015	(r279590)
@@ -935,9 +935,21 @@ kernel_port_add(struct port *port)
 			    req.status);
 			return (1);
 		}
-	} else if (port->p_pport)
+	} else if (port->p_pport) {
 		port->p_ctl_port = port->p_pport->pp_ctl_port;
 
+		if (strncmp(targ->t_name, "naa.", 4) == 0 &&
+		    strlen(targ->t_name) == 20) {
+			bzero(&entry, sizeof(entry));
+			entry.port_type = CTL_PORT_NONE;
+			entry.targ_port = port->p_ctl_port;
+			entry.flags |= CTL_PORT_WWNN_VALID;
+			entry.wwnn = strtoull(targ->t_name + 4, NULL, 16);
+			if (ioctl(ctl_fd, CTL_SET_PORT_WWNS, &entry) == -1)
+				log_warn("CTL_SET_PORT_WWNS ioctl failed");
+		}
+	}
+
 	/* Explicitly enable mapping to block any access except allowed. */
 	lm.port = port->p_ctl_port;
 	lm.plun = UINT32_MAX;


More information about the svn-src-head mailing list