summaryrefslogtreecommitdiff
path: root/lib/netdev-vport.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/netdev-vport.c')
-rw-r--r--lib/netdev-vport.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/lib/netdev-vport.c b/lib/netdev-vport.c
index d11c5ccdd..64a3ba3c4 100644
--- a/lib/netdev-vport.c
+++ b/lib/netdev-vport.c
@@ -857,7 +857,7 @@ get_pt_mode(const struct netdev *netdev)
#ifdef __linux__
static int
-netdev_vport_get_ifindex(const struct netdev *netdev_)
+netdev_vport_get_ifindex__(const struct netdev *netdev_)
{
char buf[NETDEV_VPORT_NAME_BUFSIZE];
const char *name = netdev_vport_get_dpif_port(netdev_, buf, sizeof(buf));
@@ -865,6 +865,15 @@ netdev_vport_get_ifindex(const struct netdev *netdev_)
return linux_get_ifindex(name);
}
+static int
+netdev_vport_get_ifindex(const struct netdev *netdev_)
+{
+ if (netdev_is_flow_api_enabled())
+ return netdev_vport_get_ifindex__(netdev_);
+ else
+ return -EOPNOTSUPP;
+}
+
#define NETDEV_VPORT_GET_IFINDEX netdev_vport_get_ifindex
#define NETDEV_FLOW_OFFLOAD_API LINUX_FLOW_OFFLOAD_API
#else /* !__linux__ */