]> git.proxmox.com Git - mirror_ovs.git/commitdiff
lib: rename ovs_nd_opt to ovs_nd_lla_opt
authorZong Kai LI <zealokii@gmail.com>
Thu, 4 May 2017 15:12:54 +0000 (20:42 +0530)
committerBen Pfaff <blp@ovn.org>
Thu, 4 May 2017 23:44:11 +0000 (16:44 -0700)
Since ovs_nd_mtu_opt and ovs_nd_prefix_opt is introducted, rename
ovs_nd_opt to ovs_nd_lla_opt to specify it's Source/Target Link-layer
Address Option.

Signed-off-by: Zongkai LI <zealokii@gmail.com>
Signed-off-by: Numan Siddique <nusiddiq@redhat.com>
Signed-off-by: Ben Pfaff <blp@ovn.org>
lib/flow.c
lib/odp-execute.c
lib/packets.c
lib/packets.h

index 69362229a66b96fa045854b0278297ffe07ae48a..7f98a46ae737b151cdd3ed69f629b165e2bef019 100644 (file)
@@ -415,8 +415,8 @@ parse_icmpv6(const void **datap, size_t *sizep, const struct icmp6_hdr *icmp,
     while (*sizep >= 8) {
         /* The minimum size of an option is 8 bytes, which also is
          * the size of Ethernet link-layer options. */
-        const struct ovs_nd_opt *nd_opt = *datap;
-        int opt_len = nd_opt->nd_opt_len * ND_OPT_LEN;
+        const struct ovs_nd_lla_opt *lla_opt = *datap;
+        int opt_len = lla_opt->len * ND_LLA_OPT_LEN;
 
         if (!opt_len || opt_len > *sizep) {
             return true;
@@ -425,17 +425,15 @@ parse_icmpv6(const void **datap, size_t *sizep, const struct icmp6_hdr *icmp,
         /* Store the link layer address if the appropriate option is
          * provided.  It is considered an error if the same link
          * layer option is specified twice. */
-        if (nd_opt->nd_opt_type == ND_OPT_SOURCE_LINKADDR
-            && opt_len == 8) {
+        if (lla_opt->type == ND_OPT_SOURCE_LINKADDR && opt_len == 8) {
             if (OVS_LIKELY(eth_addr_is_zero(arp_buf[0]))) {
-                arp_buf[0] = nd_opt->nd_opt_mac;
+                arp_buf[0] = lla_opt->mac;
             } else {
                 goto invalid;
             }
-        } else if (nd_opt->nd_opt_type == ND_OPT_TARGET_LINKADDR
-                   && opt_len == 8) {
+        } else if (lla_opt->type == ND_OPT_TARGET_LINKADDR && opt_len == 8) {
             if (OVS_LIKELY(eth_addr_is_zero(arp_buf[1]))) {
-                arp_buf[1] = nd_opt->nd_opt_mac;
+                arp_buf[1] = lla_opt->mac;
             } else {
                 goto invalid;
             }
@@ -2555,7 +2553,7 @@ flow_compose_l4(struct dp_packet *p, const struct flow *flow)
                 (icmp->icmp6_type == ND_NEIGHBOR_SOLICIT ||
                  icmp->icmp6_type == ND_NEIGHBOR_ADVERT)) {
                 struct in6_addr *nd_target;
-                struct ovs_nd_opt *nd_opt;
+                struct ovs_nd_lla_opt *lla_opt;
 
                 l4_len += sizeof *nd_target;
                 nd_target = dp_packet_put_zeros(p, sizeof *nd_target);
@@ -2563,17 +2561,17 @@ flow_compose_l4(struct dp_packet *p, const struct flow *flow)
 
                 if (!eth_addr_is_zero(flow->arp_sha)) {
                     l4_len += 8;
-                    nd_opt = dp_packet_put_zeros(p, 8);
-                    nd_opt->nd_opt_len = 1;
-                    nd_opt->nd_opt_type = ND_OPT_SOURCE_LINKADDR;
-                    nd_opt->nd_opt_mac = flow->arp_sha;
+                    lla_opt = dp_packet_put_zeros(p, 8);
+                    lla_opt->len = 1;
+                    lla_opt->type = ND_OPT_SOURCE_LINKADDR;
+                    lla_opt->mac = flow->arp_sha;
                 }
                 if (!eth_addr_is_zero(flow->arp_tha)) {
                     l4_len += 8;
-                    nd_opt = dp_packet_put_zeros(p, 8);
-                    nd_opt->nd_opt_len = 1;
-                    nd_opt->nd_opt_type = ND_OPT_TARGET_LINKADDR;
-                    nd_opt->nd_opt_mac = flow->arp_tha;
+                    lla_opt = dp_packet_put_zeros(p, 8);
+                    lla_opt->len = 1;
+                    lla_opt->type = ND_OPT_TARGET_LINKADDR;
+                    lla_opt->mac = flow->arp_tha;
                 }
             }
         }
index c4563b1f8249fe1f318d626453cad589f90881af..53d76a2914ed6db5942ba3c8896a7762343a80eb 100644 (file)
@@ -233,33 +233,33 @@ odp_set_nd(struct dp_packet *packet, const struct ovs_key_nd *key,
            const struct ovs_key_nd *mask)
 {
     const struct ovs_nd_msg *ns = dp_packet_l4(packet);
-    const struct ovs_nd_opt *nd_opt = dp_packet_get_nd_payload(packet);
+    const struct ovs_nd_lla_opt *lla_opt = dp_packet_get_nd_payload(packet);
 
-    if (OVS_LIKELY(ns && nd_opt)) {
+    if (OVS_LIKELY(ns && lla_opt)) {
         int bytes_remain = dp_packet_l4_size(packet) - sizeof(*ns);
         struct in6_addr tgt_buf;
         struct eth_addr sll_buf = eth_addr_zero;
         struct eth_addr tll_buf = eth_addr_zero;
 
-        while (bytes_remain >= ND_OPT_LEN && nd_opt->nd_opt_len != 0) {
-            if (nd_opt->nd_opt_type == ND_OPT_SOURCE_LINKADDR
-                && nd_opt->nd_opt_len == 1) {
-                sll_buf = nd_opt->nd_opt_mac;
+        while (bytes_remain >= ND_LLA_OPT_LEN && lla_opt->len != 0) {
+            if (lla_opt->type == ND_OPT_SOURCE_LINKADDR
+                && lla_opt->len == 1) {
+                sll_buf = lla_opt->mac;
                 ether_addr_copy_masked(&sll_buf, key->nd_sll, mask->nd_sll);
 
                 /* A packet can only contain one SLL or TLL option */
                 break;
-            } else if (nd_opt->nd_opt_type == ND_OPT_TARGET_LINKADDR
-                       && nd_opt->nd_opt_len == 1) {
-                tll_buf = nd_opt->nd_opt_mac;
+            } else if (lla_opt->type == ND_OPT_TARGET_LINKADDR
+                       && lla_opt->len == 1) {
+                tll_buf = lla_opt->mac;
                 ether_addr_copy_masked(&tll_buf, key->nd_tll, mask->nd_tll);
 
                 /* A packet can only contain one SLL or TLL option */
                 break;
             }
 
-            nd_opt += nd_opt->nd_opt_len;
-            bytes_remain -= nd_opt->nd_opt_len * ND_OPT_LEN;
+            lla_opt += lla_opt->len;
+            bytes_remain -= lla_opt->len * ND_LLA_OPT_LEN;
         }
 
         packet_set_nd(packet,
index efcd5c8cf741b383b9cc58d404462ae69a9ed3ee..42d48207cc22bfc698890f98cde2ebef59638449 100644 (file)
@@ -1167,7 +1167,7 @@ packet_set_nd(struct dp_packet *packet, const struct in6_addr *target,
               const struct eth_addr sll, const struct eth_addr tll)
 {
     struct ovs_nd_msg *ns;
-    struct ovs_nd_opt *nd_opt;
+    struct ovs_nd_lla_opt *opt;
     int bytes_remain = dp_packet_l4_size(packet);
 
     if (OVS_UNLIKELY(bytes_remain < sizeof(*ns))) {
@@ -1175,7 +1175,7 @@ packet_set_nd(struct dp_packet *packet, const struct in6_addr *target,
     }
 
     ns = dp_packet_l4(packet);
-    nd_opt = &ns->options[0];
+    opt = &ns->options[0];
     bytes_remain -= sizeof(*ns);
 
     if (memcmp(&ns->target, target, sizeof(ovs_be32[4]))) {
@@ -1183,33 +1183,31 @@ packet_set_nd(struct dp_packet *packet, const struct in6_addr *target,
                              true);
     }
 
-    while (bytes_remain >= ND_OPT_LEN && nd_opt->nd_opt_len != 0) {
-        if (nd_opt->nd_opt_type == ND_OPT_SOURCE_LINKADDR
-            && nd_opt->nd_opt_len == 1) {
-            if (!eth_addr_equals(nd_opt->nd_opt_mac, sll)) {
+    while (bytes_remain >= ND_LLA_OPT_LEN && opt->len != 0) {
+        if (opt->type == ND_OPT_SOURCE_LINKADDR && opt->len == 1) {
+            if (!eth_addr_equals(opt->mac, sll)) {
                 ovs_be16 *csum = &(ns->icmph.icmp6_cksum);
 
-                *csum = recalc_csum48(*csum, nd_opt->nd_opt_mac, sll);
-                nd_opt->nd_opt_mac = sll;
+                *csum = recalc_csum48(*csum, opt->mac, sll);
+                opt->mac = sll;
             }
 
             /* A packet can only contain one SLL or TLL option */
             break;
-        } else if (nd_opt->nd_opt_type == ND_OPT_TARGET_LINKADDR
-                   && nd_opt->nd_opt_len == 1) {
-            if (!eth_addr_equals(nd_opt->nd_opt_mac, tll)) {
+        } else if (opt->type == ND_OPT_TARGET_LINKADDR && opt->len == 1) {
+            if (!eth_addr_equals(opt->mac, tll)) {
                 ovs_be16 *csum = &(ns->icmph.icmp6_cksum);
 
-                *csum = recalc_csum48(*csum, nd_opt->nd_opt_mac, tll);
-                nd_opt->nd_opt_mac = tll;
+                *csum = recalc_csum48(*csum, opt->mac, tll);
+                opt->mac = tll;
             }
 
             /* A packet can only contain one SLL or TLL option */
             break;
         }
 
-        nd_opt += nd_opt->nd_opt_len;
-        bytes_remain -= nd_opt->nd_opt_len * ND_OPT_LEN;
+        opt += opt->len;
+        bytes_remain -= opt->len * ND_LLA_OPT_LEN;
     }
 }
 
@@ -1376,7 +1374,7 @@ compose_nd_ns(struct dp_packet *b, const struct eth_addr eth_src,
     struct in6_addr sn_addr;
     struct eth_addr eth_dst;
     struct ovs_nd_msg *ns;
-    struct ovs_nd_opt *nd_opt;
+    struct ovs_nd_lla_opt *lla_opt;
     uint32_t icmp_csum;
 
     in6_addr_solicited_node(&sn_addr, ipv6_dst);
@@ -1384,22 +1382,22 @@ compose_nd_ns(struct dp_packet *b, const struct eth_addr eth_src,
 
     eth_compose(b, eth_dst, eth_src, ETH_TYPE_IPV6, IPV6_HEADER_LEN);
     ns = compose_ipv6(b, IPPROTO_ICMPV6, ipv6_src, &sn_addr,
-                      0, 0, 255, ND_MSG_LEN + ND_OPT_LEN);
+                      0, 0, 255, ND_MSG_LEN + ND_LLA_OPT_LEN);
 
     ns->icmph.icmp6_type = ND_NEIGHBOR_SOLICIT;
     ns->icmph.icmp6_code = 0;
     put_16aligned_be32(&ns->rso_flags, htonl(0));
 
-    nd_opt = &ns->options[0];
-    nd_opt->nd_opt_type = ND_OPT_SOURCE_LINKADDR;
-    nd_opt->nd_opt_len = 1;
+    lla_opt = &ns->options[0];
+    lla_opt->type = ND_OPT_SOURCE_LINKADDR;
+    lla_opt->len = 1;
 
     packet_set_nd(b, ipv6_dst, eth_src, eth_addr_zero);
 
     ns->icmph.icmp6_cksum = 0;
     icmp_csum = packet_csum_pseudoheader6(dp_packet_l3(b));
-    ns->icmph.icmp6_cksum = csum_finish(csum_continue(icmp_csum, ns,
-                                                      ND_MSG_LEN + ND_OPT_LEN));
+    ns->icmph.icmp6_cksum = csum_finish(
+        csum_continue(icmp_csum, ns, ND_MSG_LEN + ND_LLA_OPT_LEN));
 }
 
 /* Compose an IPv6 Neighbor Discovery Neighbor Advertisement message. */
@@ -1410,27 +1408,27 @@ compose_nd_na(struct dp_packet *b,
               ovs_be32 rso_flags)
 {
     struct ovs_nd_msg *na;
-    struct ovs_nd_opt *nd_opt;
+    struct ovs_nd_lla_opt *lla_opt;
     uint32_t icmp_csum;
 
     eth_compose(b, eth_dst, eth_src, ETH_TYPE_IPV6, IPV6_HEADER_LEN);
     na = compose_ipv6(b, IPPROTO_ICMPV6, ipv6_src, ipv6_dst,
-                      0, 0, 255, ND_MSG_LEN + ND_OPT_LEN);
+                      0, 0, 255, ND_MSG_LEN + ND_LLA_OPT_LEN);
 
     na->icmph.icmp6_type = ND_NEIGHBOR_ADVERT;
     na->icmph.icmp6_code = 0;
     put_16aligned_be32(&na->rso_flags, rso_flags);
 
-    nd_opt = &na->options[0];
-    nd_opt->nd_opt_type = ND_OPT_TARGET_LINKADDR;
-    nd_opt->nd_opt_len = 1;
+    lla_opt = &na->options[0];
+    lla_opt->type = ND_OPT_TARGET_LINKADDR;
+    lla_opt->len = 1;
 
     packet_set_nd(b, ipv6_src, eth_addr_zero, eth_src);
 
     na->icmph.icmp6_cksum = 0;
     icmp_csum = packet_csum_pseudoheader6(dp_packet_l3(b));
-    na->icmph.icmp6_cksum = csum_finish(csum_continue(icmp_csum, na,
-                                                      ND_MSG_LEN + ND_OPT_LEN));
+    na->icmph.icmp6_cksum = csum_finish(csum_continue(
+        icmp_csum, na, ND_MSG_LEN + ND_LLA_OPT_LEN));
 }
 
 /* Compose an IPv6 Neighbor Discovery Router Advertisement message with
@@ -1454,7 +1452,7 @@ compose_nd_ra(struct dp_packet *b,
 
     struct ovs_ra_msg *ra = compose_ipv6(
         b, IPPROTO_ICMPV6, ipv6_src, ipv6_dst, 0, 0, 255,
-        RA_MSG_LEN + ND_OPT_LEN + mtu_opt_len);
+        RA_MSG_LEN + ND_LLA_OPT_LEN + mtu_opt_len);
     ra->icmph.icmp6_type = ND_ROUTER_ADVERT;
     ra->icmph.icmp6_code = 0;
     ra->cur_hop_limit = cur_hop_limit;
@@ -1463,13 +1461,13 @@ compose_nd_ra(struct dp_packet *b,
     ra->reachable_time = reachable_time;
     ra->retrans_timer = retrans_timer;
 
-    struct ovs_nd_opt *lla_opt = ra->options;
-    lla_opt->nd_opt_type = ND_OPT_SOURCE_LINKADDR;
-    lla_opt->nd_opt_len = 1;
-    lla_opt->nd_opt_mac = eth_src;
+    struct ovs_nd_lla_opt *lla_opt = ra->options;
+    lla_opt->type = ND_OPT_SOURCE_LINKADDR;
+    lla_opt->len = 1;
+    lla_opt->mac = eth_src;
 
     if (with_mtu) {
-        /* ovs_nd_mtu_opt has the same size with ovs_nd_opt. */
+        /* ovs_nd_mtu_opt has the same size with ovs_nd_lla_opt. */
         struct ovs_nd_mtu_opt *mtu_opt
             = (struct ovs_nd_mtu_opt *)(lla_opt + 1);
         mtu_opt->type = ND_OPT_MTU;
@@ -1481,7 +1479,7 @@ compose_nd_ra(struct dp_packet *b,
     ra->icmph.icmp6_cksum = 0;
     uint32_t icmp_csum = packet_csum_pseudoheader6(dp_packet_l3(b));
     ra->icmph.icmp6_cksum = csum_finish(csum_continue(
-        icmp_csum, ra, RA_MSG_LEN + ND_OPT_LEN + mtu_opt_len));
+        icmp_csum, ra, RA_MSG_LEN + ND_LLA_OPT_LEN + mtu_opt_len));
 }
 
 /* Append an IPv6 Neighbor Discovery Prefix Information option to a
index 55781626c4b11231a944f4032e9c02e1ff945b59..87f063f7b522737a6f2875181f19be20edef274e 100644 (file)
@@ -895,13 +895,13 @@ uint16_t packet_csum_upperlayer6(const struct ovs_16aligned_ip6_hdr *,
 
 /* Neighbor Discovery option field.
  * ND options are always a multiple of 8 bytes in size. */
-#define ND_OPT_LEN 8
-struct ovs_nd_opt {
-    uint8_t  nd_opt_type;       /* One of ND_OPT_*. */
-    uint8_t  nd_opt_len;
-    struct eth_addr nd_opt_mac;
+#define ND_LLA_OPT_LEN 8
+struct ovs_nd_lla_opt {
+    uint8_t type;               /* One of ND_OPT_*_LINKADDR. */
+    uint8_t len;
+    struct eth_addr mac;
 };
-BUILD_ASSERT_DECL(ND_OPT_LEN == sizeof(struct ovs_nd_opt));
+BUILD_ASSERT_DECL(ND_LLA_OPT_LEN == sizeof(struct ovs_nd_lla_opt));
 
 /* Neighbor Discovery option: Prefix Information. */
 #define ND_PREFIX_OPT_LEN 32
@@ -937,7 +937,7 @@ struct ovs_nd_msg {
     struct icmp6_header icmph;
     ovs_16aligned_be32 rso_flags;
     union ovs_16aligned_in6_addr target;
-    struct ovs_nd_opt options[0];
+    struct ovs_nd_lla_opt options[0];
 };
 BUILD_ASSERT_DECL(ND_MSG_LEN == sizeof(struct ovs_nd_msg));
 
@@ -954,7 +954,7 @@ struct ovs_ra_msg {
     ovs_be16 router_lifetime;
     ovs_be32 reachable_time;
     ovs_be32 retrans_timer;
-    struct ovs_nd_opt options[0];
+    struct ovs_nd_lla_opt options[0];
 };
 BUILD_ASSERT_DECL(RA_MSG_LEN == sizeof(struct ovs_ra_msg));