struct wpas_dbus_priv * wpas_dbus_init(struct wpa_global *global) { struct wpas_dbus_priv *priv; priv = os_zalloc(sizeof(*priv)); if (priv == NULL) return NULL; priv->global = global; if (wpas_dbus_init_common(priv) < 0) { wpas_dbus_deinit(priv); return NULL; } #ifdef CONFIG_CTRL_IFACE_DBUS_NEW if (wpas_dbus_ctrl_iface_init(priv) < 0) { wpas_dbus_deinit(priv); return NULL; } #endif /* CONFIG_CTRL_IFACE_DBUS_NEW */ #ifdef CONFIG_CTRL_IFACE_DBUS if (wpa_supplicant_dbus_ctrl_iface_init(priv) < 0) { wpas_dbus_deinit(priv); return NULL; } #endif /* CONFIG_CTRL_IFACE_DBUS */ if (wpas_dbus_init_common_finish(priv) < 0) { wpas_dbus_deinit(priv); return NULL; } return priv; }
void wpas_notify_supplicant_deinitialized(struct wpa_global *global) { #ifdef CONFIG_DBUS if (global->dbus) wpas_dbus_deinit(global->dbus); #endif /* CONFIG_DBUS */ }