diff options
Diffstat (limited to 'src/vnet/interface_api.c')
-rw-r--r-- | src/vnet/interface_api.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/vnet/interface_api.c b/src/vnet/interface_api.c index 4d5dab30f38..b24c2a1cb52 100644 --- a/src/vnet/interface_api.c +++ b/src/vnet/interface_api.c @@ -202,6 +202,8 @@ send_sw_interface_details (vpe_api_main_t * am, { vnet_hw_interface_t *hi = vnet_get_sup_hw_interface (am->vnet_main, swif->sw_if_index); + vnet_device_class_t *dev_class = + vnet_get_device_class (am->vnet_main, hi->dev_class_index); vl_api_sw_interface_details_t *mp = vl_msg_api_alloc (sizeof (*mp)); clib_memset (mp, 0, sizeof (*mp)); @@ -245,6 +247,10 @@ send_sw_interface_details (vpe_api_main_t * am, strncpy ((char *) mp->interface_name, (char *) interface_name, ARRAY_LEN (mp->interface_name) - 1); + if (dev_class && dev_class->name) + strncpy ((char *) mp->interface_dev_type, (char *) dev_class->name, + ARRAY_LEN (mp->interface_dev_type) - 1); + /* Send the L2 address for ethernet physical intfcs */ if (swif->sup_sw_if_index == swif->sw_if_index && hi->hw_class_index == ethernet_hw_interface_class.index) |