From: Ben Pfaff Date: Mon, 12 Sep 2011 17:57:28 +0000 (-0700) Subject: classifier: Change cls_rule_set_nd_target() to take a pointer. X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e7ed3a3a5f87d20f0cc632ae23adba6f30a4e19d;p=openvswitch classifier: Change cls_rule_set_nd_target() to take a pointer. The other cls_rule_*() functions that take IPv6 addresses take a pointer to an in6_addr, so cls_rule_set_nd_target() should as well for consistency. Possibly this is more efficient also, although I guess it doesn't really make much of a difference either way. --- diff --git a/lib/classifier.c b/lib/classifier.c index d1f9d5dd..fef4014d 100644 --- a/lib/classifier.c +++ b/lib/classifier.c @@ -390,10 +390,10 @@ cls_rule_set_ipv6_dst_masked(struct cls_rule *rule, const struct in6_addr *dst, } void -cls_rule_set_nd_target(struct cls_rule *rule, const struct in6_addr target) +cls_rule_set_nd_target(struct cls_rule *rule, const struct in6_addr *target) { rule->wc.wildcards &= ~FWW_ND_TARGET; - rule->flow.nd_target = target; + rule->flow.nd_target = *target; } /* Returns true if 'a' and 'b' have the same priority, wildcard the same diff --git a/lib/classifier.h b/lib/classifier.h index 0dfb1e7f..20b95909 100644 --- a/lib/classifier.h +++ b/lib/classifier.h @@ -115,7 +115,7 @@ bool cls_rule_set_ipv6_src_masked(struct cls_rule *, const struct in6_addr *, void cls_rule_set_ipv6_dst(struct cls_rule *, const struct in6_addr *); bool cls_rule_set_ipv6_dst_masked(struct cls_rule *, const struct in6_addr *, const struct in6_addr *); -void cls_rule_set_nd_target(struct cls_rule *, const struct in6_addr); +void cls_rule_set_nd_target(struct cls_rule *, const struct in6_addr *); bool cls_rule_equal(const struct cls_rule *, const struct cls_rule *); uint32_t cls_rule_hash(const struct cls_rule *, uint32_t basis); diff --git a/lib/ofp-parse.c b/lib/ofp-parse.c index e352bd43..2d4f0119 100644 --- a/lib/ofp-parse.c +++ b/lib/ofp-parse.c @@ -813,7 +813,7 @@ parse_field_value(struct cls_rule *rule, enum field_index index, case F_ND_TARGET: str_to_ipv6(value, &ipv6, NULL); - cls_rule_set_nd_target(rule, ipv6); + cls_rule_set_nd_target(rule, &ipv6); break; case F_ND_SLL: