X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=lib%2Fnx-match.c;h=34c8354bc265038fe84893b0d8d59d6d3c340484;hb=79d4ffe2c977c9750b77f869be185b5bedd08c2d;hp=0e61d35254de2b66c419d2444fb48bf509c454b3;hpb=2e0525bcf5ba3f348795f303f8cb69c9fc033ff3;p=openvswitch diff --git a/lib/nx-match.c b/lib/nx-match.c index 0e61d352..34c8354b 100644 --- a/lib/nx-match.c +++ b/lib/nx-match.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2010, 2011, 2012 Nicira Networks. + * Copyright (c) 2010, 2011, 2012 Nicira, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -471,7 +471,7 @@ nx_put_match(struct ofpbuf *b, const struct cls_rule *cr, int match_len; int i; - BUILD_ASSERT_DECL(FLOW_WC_SEQ == 9); + BUILD_ASSERT_DECL(FLOW_WC_SEQ == 10); /* Metadata. */ if (!(wc & FWW_IN_PORT)) { @@ -514,10 +514,8 @@ nx_put_match(struct ofpbuf *b, const struct cls_rule *cr, if (flow->nw_proto == IPPROTO_ICMPV6 && (flow->tp_src == htons(ND_NEIGHBOR_SOLICIT) || flow->tp_src == htons(ND_NEIGHBOR_ADVERT))) { - if (!(wc & FWW_ND_TARGET)) { - nxm_put_ipv6(b, NXM_NX_ND_TARGET, &flow->nd_target, - &in6addr_exact); - } + nxm_put_ipv6(b, NXM_NX_ND_TARGET, &flow->nd_target, + &cr->wc.nd_target_mask); if (!(wc & FWW_ARP_SHA) && flow->tp_src == htons(ND_NEIGHBOR_SOLICIT)) { nxm_put_eth(b, NXM_NX_ND_SLL, flow->arp_sha);