Print this page
4838 Fix for 4596 has some inverted booleans
Reviewed by: Josef 'Jeff' Sipek <jeffpc@josefsipek.net>

*** 2731,2741 **** if (v4mapped) ixa->ixa_flags |= IXAF_IS_IPV4; else ixa->ixa_flags &= ~IXAF_IS_IPV4; if (srcid != 0 && IN6_IS_ADDR_UNSPECIFIED(&v6src)) { ! if (ip_srcid_find_id(srcid, &v6src, IPCL_ZONEID(connp), v4mapped, connp->conn_netstack)) { /* Mismatch - v4mapped/v6 specified by srcid. */ mutex_exit(&connp->conn_lock); error = EADDRNOTAVAIL; goto failed; /* Does freemsg() and mib. */ --- 2731,2741 ---- if (v4mapped) ixa->ixa_flags |= IXAF_IS_IPV4; else ixa->ixa_flags &= ~IXAF_IS_IPV4; if (srcid != 0 && IN6_IS_ADDR_UNSPECIFIED(&v6src)) { ! if (!ip_srcid_find_id(srcid, &v6src, IPCL_ZONEID(connp), v4mapped, connp->conn_netstack)) { /* Mismatch - v4mapped/v6 specified by srcid. */ mutex_exit(&connp->conn_lock); error = EADDRNOTAVAIL; goto failed; /* Does freemsg() and mib. */
*** 3752,3762 **** if (v4mapped) ixa->ixa_flags |= IXAF_IS_IPV4; else ixa->ixa_flags &= ~IXAF_IS_IPV4; if (srcid != 0 && IN6_IS_ADDR_UNSPECIFIED(&v6src)) { ! if (ip_srcid_find_id(srcid, &v6src, IPCL_ZONEID(connp), v4mapped, connp->conn_netstack)) { /* Mismatched v4mapped/v6 specified by srcid. */ mutex_exit(&connp->conn_lock); error = EADDRNOTAVAIL; goto ud_error; --- 3752,3762 ---- if (v4mapped) ixa->ixa_flags |= IXAF_IS_IPV4; else ixa->ixa_flags &= ~IXAF_IS_IPV4; if (srcid != 0 && IN6_IS_ADDR_UNSPECIFIED(&v6src)) { ! if (!ip_srcid_find_id(srcid, &v6src, IPCL_ZONEID(connp), v4mapped, connp->conn_netstack)) { /* Mismatched v4mapped/v6 specified by srcid. */ mutex_exit(&connp->conn_lock); error = EADDRNOTAVAIL; goto ud_error;
*** 5569,5579 **** v6dst = sin6->sin6_addr; dstport = sin6->sin6_port; srcid = sin6->__sin6_src_id; v4mapped = IN6_IS_ADDR_V4MAPPED(&v6dst); if (srcid != 0 && IN6_IS_ADDR_UNSPECIFIED(&v6src)) { ! if (ip_srcid_find_id(srcid, &v6src, IPCL_ZONEID(connp), v4mapped, connp->conn_netstack)) { /* Mismatch v4mapped/v6 specified by srcid. */ return (EADDRNOTAVAIL); } } --- 5569,5579 ---- v6dst = sin6->sin6_addr; dstport = sin6->sin6_port; srcid = sin6->__sin6_src_id; v4mapped = IN6_IS_ADDR_V4MAPPED(&v6dst); if (srcid != 0 && IN6_IS_ADDR_UNSPECIFIED(&v6src)) { ! if (!ip_srcid_find_id(srcid, &v6src, IPCL_ZONEID(connp), v4mapped, connp->conn_netstack)) { /* Mismatch v4mapped/v6 specified by srcid. */ return (EADDRNOTAVAIL); } }