diff options
author | Ben Pfaff <blp@ovn.org> | 2017-04-30 13:53:24 -0700 |
---|---|---|
committer | Ben Pfaff <blp@ovn.org> | 2017-05-03 16:18:44 -0700 |
commit | bed7aef90248573307020b545711b72b4d868011 (patch) | |
tree | dd177a15466d8cc7ba38c13b95adc55c36a823e8 /ovn | |
parent | 682b4171532c00a258f497b122550c3c5c4dbf41 (diff) | |
download | openvswitch-bed7aef90248573307020b545711b72b4d868011.tar.gz |
ovn-sbctl: Get rid of redundant code by using function from db-ctl-base.
This renames get_row() to ctl_get_row() and makes it public. It's
unfortunate that it adds a cast, but getting rid of redundant code seems
worth it to me.
Signed-off-by: Ben Pfaff <blp@ovn.org>
Acked-by: Andy Zhou <azhou@ovn.org>
Diffstat (limited to 'ovn')
-rw-r--r-- | ovn/utilities/ovn-sbctl.c | 31 |
1 files changed, 3 insertions, 28 deletions
diff --git a/ovn/utilities/ovn-sbctl.c b/ovn/utilities/ovn-sbctl.c index c77121e39..69f461176 100644 --- a/ovn/utilities/ovn-sbctl.c +++ b/ovn/utilities/ovn-sbctl.c @@ -736,39 +736,14 @@ is_partial_uuid_match(const struct uuid *uuid, const char *match) return !strncmp(s1, s2, strlen(s2)); } -static const struct sbrec_datapath_binding * -lookup_datapath(struct ovsdb_idl *idl, const char *s) -{ - struct uuid uuid; - if (uuid_from_string(&uuid, s)) { - const struct sbrec_datapath_binding *datapath; - datapath = sbrec_datapath_binding_get_for_uuid(idl, &uuid); - if (datapath) { - return datapath; - } - } - - const struct sbrec_datapath_binding *found = NULL; - const struct sbrec_datapath_binding *datapath; - SBREC_DATAPATH_BINDING_FOR_EACH (datapath, idl) { - const char *name = smap_get(&datapath->external_ids, "name"); - if (name && !strcmp(name, s)) { - if (!found) { - found = datapath; - } else { - ctl_fatal("%s: multiple datapaths with this name", s); - } - } - } - return found; -} - static void cmd_lflow_list(struct ctl_context *ctx) { const struct sbrec_datapath_binding *datapath = NULL; if (ctx->argc > 1) { - datapath = lookup_datapath(ctx->idl, ctx->argv[1]); + datapath = (const struct sbrec_datapath_binding *) + ctl_get_row(ctx, &sbrec_table_datapath_binding, + ctx->argv[1], false); if (datapath) { ctx->argc--; ctx->argv++; |