/* callback for bridge netdev's parameter set */ static int netdev_bridge_set_handler(sd_netlink *rtnl, sd_netlink_message *m, NetDev *netdev) { int r; assert(netdev); assert(m); r = sd_netlink_message_get_errno(m); if (r < 0) { log_netdev_warning_errno(netdev, r, "Bridge parameters could not be set: %m"); return 1; } log_netdev_debug(netdev, "Bridge parameters set success"); return 1; }
/* callback for brige netdev's parameter set */ static int netdev_bridge_set_handler(sd_netlink *rtnl, sd_netlink_message *m, void *userdata) { _cleanup_netdev_unref_ NetDev *netdev = userdata; int r; assert(netdev); assert(m); r = sd_netlink_message_get_errno(m); if (r < 0) { log_netdev_warning_errno(netdev, r, "Bridge parameters could not be set: %m"); return 1; } log_netdev_debug(netdev, "Bridge parametres set success"); return 1; }
/* callback for geneve netdev's created without a backing Link */ static int geneve_netdev_create_handler(sd_netlink *rtnl, sd_netlink_message *m, NetDev *netdev) { int r; assert(netdev); assert(netdev->state != _NETDEV_STATE_INVALID); r = sd_netlink_message_get_errno(m); if (r == -EEXIST) log_netdev_info(netdev, "Geneve netdev exists, using existing without changing its parameters"); else if (r < 0) { log_netdev_warning_errno(netdev, r, "Geneve netdev could not be created: %m"); netdev_drop(netdev); return 1; } log_netdev_debug(netdev, "Geneve created"); return 1; }