Author: markj
Date: Mon Oct 22 16:09:01 2018
New Revision: 339598
URL: https://svnweb.freebsd.org/changeset/base/339598

Log:
  Fix style bugs in in6_pcblookup_lbgroup().
  
  This should have been a part of r338470.  No functional changes
  intended.
  
  Reported by:  gallatin
  Reviewed by:  gallatin, Johannes Lundberg <johal...@gmail.com>
  MFC after:    2 weeks
  Sponsored by: The FreeBSD Foundation
  Differential Revision:        https://reviews.freebsd.org/D17109

Modified:
  head/sys/netinet6/in6_pcb.c

Modified: head/sys/netinet6/in6_pcb.c
==============================================================================
--- head/sys/netinet6/in6_pcb.c Mon Oct 22 15:54:28 2018        (r339597)
+++ head/sys/netinet6/in6_pcb.c Mon Oct 22 16:09:01 2018        (r339598)
@@ -873,10 +873,9 @@ in6_pcblookup_lbgroup(const struct inpcbinfo *pcbinfo,
     const struct in6_addr *laddr, uint16_t lport, const struct in6_addr *faddr,
     uint16_t fport, int lookupflags)
 {
-       struct inpcb *local_wild = NULL;
+       struct inpcb *local_wild;
        const struct inpcblbgrouphead *hdr;
        struct inpcblbgroup *grp;
-       struct inpcblbgroup *grp_local_wild;
        uint32_t idx;
 
        INP_HASH_LOCK_ASSERT(pcbinfo);
@@ -893,33 +892,24 @@ in6_pcblookup_lbgroup(const struct inpcbinfo *pcbinfo,
         * - Load balanced group does not contain jailed sockets.
         * - Load balanced does not contain IPv4 mapped INET6 wild sockets.
         */
+       local_wild = NULL;
        CK_LIST_FOREACH(grp, hdr, il_list) {
 #ifdef INET
                if (!(grp->il_vflag & INP_IPV6))
                        continue;
 #endif
-               if (grp->il_lport == lport) {
-                       idx = 0;
-                       int pkt_hash = INP_PCBLBGROUP_PKTHASH(
-                           INP6_PCBHASHKEY(faddr), lport, fport);
+               if (grp->il_lport != lport)
+                       continue;
 
-                       idx = pkt_hash % grp->il_inpcnt;
-
-                       if (IN6_ARE_ADDR_EQUAL(&grp->il6_laddr, laddr)) {
-                               return (grp->il_inp[idx]);
-                       } else {
-                               if (IN6_IS_ADDR_UNSPECIFIED(&grp->il6_laddr) &&
-                                   (lookupflags & INPLOOKUP_WILDCARD)) {
-                                       local_wild = grp->il_inp[idx];
-                                       grp_local_wild = grp;
-                               }
-                       }
-               }
+               idx = INP_PCBLBGROUP_PKTHASH(INP6_PCBHASHKEY(faddr), lport,
+                   fport) % grp->il_inpcnt;
+               if (IN6_ARE_ADDR_EQUAL(&grp->il6_laddr, laddr))
+                       return (grp->il_inp[idx]);
+               if (IN6_IS_ADDR_UNSPECIFIED(&grp->il6_laddr) &&
+                   (lookupflags & INPLOOKUP_WILDCARD) != 0)
+                       local_wild = grp->il_inp[idx];
        }
-       if (local_wild != NULL) {
-               return (local_wild);
-       }
-       return (NULL);
+       return (local_wild);
 }
 
 #ifdef PCBGROUP
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to