From 3863f6d2bb45c63c0deeab1d9da3766a133e87fd Mon Sep 17 00:00:00 2001 From: Andrew Zaborowski Date: Tue, 26 Jul 2016 14:42:20 +0200 Subject: [PATCH] netdev: Allow ERFKILL during initial bring up If initial bring up returns ERFKILL proceed and the inteface can be explicitly brought up by the client once rfkill is disabled. Also fix the error number returned to netdev_set_powered callback to be negative as expected by netdev_initial_up_cb. --- src/netdev.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/netdev.c b/src/netdev.c index 024b127e..292c37ae 100644 --- a/src/netdev.c +++ b/src/netdev.c @@ -199,7 +199,7 @@ static void netdev_set_powered_result(int error, uint16_t type, if (!cb_data) return; - cb_data->callback(cb_data->netdev, error, cb_data->user_data); + cb_data->callback(cb_data->netdev, -error, cb_data->user_data); } static void netdev_set_powered_destroy(void *user_data) @@ -1263,7 +1263,8 @@ static void netdev_initial_up_cb(struct netdev *netdev, int result, l_error("Error bringing interface %i up: %s", netdev->index, strerror(-result)); - return; + if (result != -ERFKILL) + return; } netdev_set_linkmode_and_operstate(netdev->index, 1,