[ovs-dev] [ovn-ipv6 12/26] ovn-util: Remove 'store_ipv6' argument from extract_lsp_addresses().
Justin Pettit
jpettit at ovn.org
Tue Jul 12 06:56:42 UTC 2016
With the addition of IPv6 routing, there won't be much need to
special-case not parsing IPv6 addresses.
Signed-off-by: Justin Pettit <jpettit at ovn.org>
---
ovn/controller/pinctrl.c | 2 +-
ovn/lib/ovn-util.c | 22 +++-------------------
ovn/lib/ovn-util.h | 3 +--
ovn/northd/ovn-northd.c | 10 ++++------
4 files changed, 9 insertions(+), 28 deletions(-)
diff --git a/ovn/controller/pinctrl.c b/ovn/controller/pinctrl.c
index 5f0fd81..1370301 100644
--- a/ovn/controller/pinctrl.c
+++ b/ovn/controller/pinctrl.c
@@ -734,7 +734,7 @@ send_garp_update(const struct sbrec_port_binding *binding_rec,
int i;
for (i = 0; i < binding_rec->n_mac; i++) {
struct lport_addresses laddrs;
- if (!extract_lsp_addresses(binding_rec->mac[i], &laddrs, false)
+ if (!extract_lsp_addresses(binding_rec->mac[i], &laddrs)
|| !laddrs.n_ipv4_addrs) {
continue;
}
diff --git a/ovn/lib/ovn-util.c b/ovn/lib/ovn-util.c
index 5499c45..f732b85 100644
--- a/ovn/lib/ovn-util.c
+++ b/ovn/lib/ovn-util.c
@@ -23,30 +23,14 @@ VLOG_DEFINE_THIS_MODULE(ovn_util);
* Extracts the mac, ipv4 and ipv6 addresses from the input param 'address'
* which should be of the format 'MAC [IP1 IP2 ..]" where IPn should be
* a valid IPv4 or IPv6 address and stores them in the 'ipv4_addrs' and
- * 'ipv6_addrs' fields of input param 'laddrs'. If input param
- * 'store_ipv6' is true only then extracted ipv6 addresses are stored in
- * 'ipv6_addrs' fields.
+ * 'ipv6_addrs' fields of input param 'laddrs'.
*
* Return true if at least 'MAC' is found in 'address', false otherwise.
*
* The caller must call destroy_lport_addresses().
- *
- * Eg 1.
- * If 'address' = '00:00:00:00:00:01 10.0.0.4 fe80::ea2a:eaff:fe28:3390/64
- * 30.0.0.3/23' and 'store_ipv6' = true
- * then returns true with laddrs->n_ipv4_addrs = 2, naddrs->n_ipv6_addrs = 1.
- *
- * Eg. 2
- * If 'address' = '00:00:00:00:00:01 10.0.0.4 fe80::ea2a:eaff:fe28:3390/64
- * 30.0.0.3/23' and 'store_ipv6' = false
- * then returns true with laddrs->n_ipv4_addrs = 2, naddrs->n_ipv6_addrs = 0.
- *
- * Eg 3. If 'address' = '00:00:00:00:00:01 10.0.0.4 addr 30.0.0.4', then
- * returns true with laddrs->n_ipv4_addrs = 1 and laddrs->n_ipv6_addrs = 0.
*/
bool
-extract_lsp_addresses(char *address, struct lport_addresses *laddrs,
- bool store_ipv6)
+extract_lsp_addresses(char *address, struct lport_addresses *laddrs)
{
memset(laddrs, 0, sizeof *laddrs);
@@ -95,7 +79,7 @@ extract_lsp_addresses(char *address, struct lport_addresses *laddrs,
}
free(error);
error = ipv6_parse_cidr_len(buf, &buf_index, &ip6, &plen);
- if (!error && store_ipv6) {
+ if (!error) {
laddrs->n_ipv6_addrs++;
laddrs->ipv6_addrs = xrealloc(
laddrs->ipv6_addrs,
diff --git a/ovn/lib/ovn-util.h b/ovn/lib/ovn-util.h
index 318b082..83bfbb3 100644
--- a/ovn/lib/ovn-util.h
+++ b/ovn/lib/ovn-util.h
@@ -49,8 +49,7 @@ struct lport_addresses {
};
-bool extract_lsp_addresses(char *address, struct lport_addresses *laddrs,
- bool store_ipv6);
+bool extract_lsp_addresses(char *address, struct lport_addresses *);
void destroy_lport_addresses(struct lport_addresses *);
char *alloc_nat_zone_key(const char *key, const char *type);
diff --git a/ovn/northd/ovn-northd.c b/ovn/northd/ovn-northd.c
index de88806..2fba68f 100644
--- a/ovn/northd/ovn-northd.c
+++ b/ovn/northd/ovn-northd.c
@@ -1101,7 +1101,7 @@ build_port_security_nd(struct ovn_port *op, struct hmap *lflows)
{
for (size_t i = 0; i < op->nbs->n_port_security; i++) {
struct lport_addresses ps;
- if (!extract_lsp_addresses(op->nbs->port_security[i], &ps, true)) {
+ if (!extract_lsp_addresses(op->nbs->port_security[i], &ps)) {
static struct vlog_rate_limit rl = VLOG_RATE_LIMIT_INIT(1, 1);
VLOG_INFO_RL(&rl, "invalid syntax '%s' in port security. No MAC"
" address found", op->nbs->port_security[i]);
@@ -1195,7 +1195,7 @@ build_port_security_ip(enum ovn_pipeline pipeline, struct ovn_port *op,
for (size_t i = 0; i < op->nbs->n_port_security; i++) {
struct lport_addresses ps;
- if (!extract_lsp_addresses(op->nbs->port_security[i], &ps, true)) {
+ if (!extract_lsp_addresses(op->nbs->port_security[i], &ps)) {
continue;
}
@@ -1831,8 +1831,7 @@ build_lswitch_flows(struct hmap *datapaths, struct hmap *ports,
for (size_t i = 0; i < op->nbs->n_addresses; i++) {
struct lport_addresses laddrs;
- if (!extract_lsp_addresses(op->nbs->addresses[i], &laddrs,
- true)) {
+ if (!extract_lsp_addresses(op->nbs->addresses[i], &laddrs)) {
continue;
}
for (size_t j = 0; j < laddrs.n_ipv4_addrs; j++) {
@@ -2550,8 +2549,7 @@ build_lrouter_flows(struct hmap *datapaths, struct hmap *ports,
for (size_t i = 0; i < op->nbs->n_addresses; i++) {
struct lport_addresses laddrs;
- if (!extract_lsp_addresses(op->nbs->addresses[i], &laddrs,
- false)) {
+ if (!extract_lsp_addresses(op->nbs->addresses[i], &laddrs)) {
continue;
}
--
1.9.1
More information about the dev
mailing list