On Thu, 30 Apr 2015 10:21:13 -0600, "Todd C. Miller" wrote: > Merge two identical if() statements. The change in ip_spd.c 1.59 > makes it appear that there is a cut & pasto. We should merge the > two identical and adjacent if() statements to avoid confusing people > (and static analyzers).
Forgot the INET6 hunk in the last diff. - todd Index: sys/netinet/ip_spd.c =================================================================== RCS file: /cvs/src/sys/netinet/ip_spd.c,v retrieving revision 1.83 diff -u -p -r1.83 ip_spd.c --- sys/netinet/ip_spd.c 16 Apr 2015 19:24:13 -0000 1.83 +++ sys/netinet/ip_spd.c 30 Apr 2015 16:22:25 -0000 @@ -687,15 +687,13 @@ ipsp_acquire_sa(struct ipsec_policy *ipo if (ipsp_is_unspecified(ipo->ipo_dst)) { ipa->ipa_info.sen_ip_src = ddst->sen_ip_src; ipa->ipa_mask.sen_ip_src.s_addr = INADDR_BROADCAST; - } else { - ipa->ipa_info.sen_ip_src = ipo->ipo_addr.sen_ip_src; - ipa->ipa_mask.sen_ip_src = ipo->ipo_mask.sen_ip_src; - } - if (ipsp_is_unspecified(ipo->ipo_dst)) { ipa->ipa_info.sen_ip_dst = ddst->sen_ip_dst; ipa->ipa_mask.sen_ip_dst.s_addr = INADDR_BROADCAST; } else { + ipa->ipa_info.sen_ip_src = ipo->ipo_addr.sen_ip_src; + ipa->ipa_mask.sen_ip_src = ipo->ipo_mask.sen_ip_src; + ipa->ipa_info.sen_ip_dst = ipo->ipo_addr.sen_ip_dst; ipa->ipa_mask.sen_ip_dst = ipo->ipo_mask.sen_ip_dst; } @@ -723,15 +721,13 @@ ipsp_acquire_sa(struct ipsec_policy *ipo if (ipsp_is_unspecified(ipo->ipo_dst)) { ipa->ipa_info.sen_ip6_src = ddst->sen_ip6_src; ipa->ipa_mask.sen_ip6_src = in6mask128; - } else { - ipa->ipa_info.sen_ip6_src = ipo->ipo_addr.sen_ip6_src; - ipa->ipa_mask.sen_ip6_src = ipo->ipo_mask.sen_ip6_src; - } - if (ipsp_is_unspecified(ipo->ipo_dst)) { ipa->ipa_info.sen_ip6_dst = ddst->sen_ip6_dst; ipa->ipa_mask.sen_ip6_dst = in6mask128; } else { + ipa->ipa_info.sen_ip6_src = ipo->ipo_addr.sen_ip6_src; + ipa->ipa_mask.sen_ip6_src = ipo->ipo_mask.sen_ip6_src; + ipa->ipa_info.sen_ip6_dst = ipo->ipo_addr.sen_ip6_dst; ipa->ipa_mask.sen_ip6_dst = ipo->ipo_mask.sen_ip6_dst; }