diff options
Diffstat (limited to 'src/vnet/devices/af_packet/device.c')
-rw-r--r-- | src/vnet/devices/af_packet/device.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/vnet/devices/af_packet/device.c b/src/vnet/devices/af_packet/device.c index 0542b165a3a..8e4bc2b6b7f 100644 --- a/src/vnet/devices/af_packet/device.c +++ b/src/vnet/devices/af_packet/device.c @@ -339,6 +339,14 @@ static clib_error_t *af_packet_set_mac_address_function int rv, fd = socket (AF_UNIX, SOCK_DGRAM, 0); struct ifreq ifr; + if (apif->mode == AF_PACKET_IF_MODE_IP) + { + vlib_log_warn (apm->log_class, "af_packet_%s interface is in IP mode", + apif->host_if_name); + return clib_error_return (0, + " MAC update failed, interface is in IP mode"); + } + if (0 > fd) { vlib_log_warn (apm->log_class, "af_packet_%s could not open socket", |