- query_ports(dpif, &ports, &n_ports);
- for (i = 0; i < n_ports; i++) {
- if (!strcmp(name, ports[i].devname)) {
- *port = ports[i].port;
- free(ports);
- return true;
- }
+ if (!dpif_port_query_by_name(dpif, name, &odp_port)) {
+ *port = odp_port.port;
+ return true;
+ } else {
+ ovs_error(0, "no port named %s", name);
+ return false;