{
struct wpas_dbus_priv *ctrl_iface;
struct wpa_dbus_object_desc *obj_desc;
-
struct network_handler_args *arg = NULL;
-
- char *net_obj_path;
+ char net_obj_path[WPAS_DBUS_OBJECT_PATH_MAX];
/* Do nothing if the control interface is not turned on */
if (wpa_s == NULL || wpa_s->global == NULL)
if (ctrl_iface == NULL)
return 0;
- net_obj_path = os_zalloc(WPAS_DBUS_OBJECT_PATH_MAX);
- if (net_obj_path == NULL)
- return -1;
os_snprintf(net_obj_path, WPAS_DBUS_OBJECT_PATH_MAX,
"%s/" WPAS_DBUS_NEW_NETWORKS_PART "/%u",
wpa_s->dbus_new_path, ssid->id);
wpas_dbus_signal_network_added(wpa_s, ssid->id);
- os_free(net_obj_path);
return 0;
err:
- os_free(net_obj_path);
os_free(obj_desc);
os_free(arg);
return -1;
int wpas_dbus_unregister_network(struct wpa_supplicant *wpa_s, int nid)
{
struct wpas_dbus_priv *ctrl_iface;
- char *net_obj_path;
+ char net_obj_path[WPAS_DBUS_OBJECT_PATH_MAX];
int ret;
/* Do nothing if the control interface is not turned on */
if (ctrl_iface == NULL)
return 0;
- net_obj_path = os_zalloc(WPAS_DBUS_OBJECT_PATH_MAX);
- if (net_obj_path == NULL)
- return -1;
os_snprintf(net_obj_path, WPAS_DBUS_OBJECT_PATH_MAX,
"%s/" WPAS_DBUS_NEW_NETWORKS_PART "/%u",
wpa_s->dbus_new_path, nid);
if (!ret)
wpas_dbus_signal_network_removed(wpa_s, nid);
- os_free(net_obj_path);
return ret;
}
u8 bssid[ETH_ALEN], unsigned int id)
{
struct wpas_dbus_priv *ctrl_iface;
- char *bss_obj_path;
+ char bss_obj_path[WPAS_DBUS_OBJECT_PATH_MAX];
/* Do nothing if the control interface is not turned on */
if (wpa_s == NULL || wpa_s->global == NULL)
if (ctrl_iface == NULL)
return 0;
- bss_obj_path = os_zalloc(WPAS_DBUS_OBJECT_PATH_MAX);
- if (bss_obj_path == NULL)
- return -1;
-
os_snprintf(bss_obj_path, WPAS_DBUS_OBJECT_PATH_MAX,
"%s/" WPAS_DBUS_NEW_BSSIDS_PART "/%u",
wpa_s->dbus_new_path, id);
wpa_printf(MSG_DEBUG, "dbus: Unregister BSS object '%s'",
bss_obj_path);
if (wpa_dbus_unregister_object_per_iface(ctrl_iface, bss_obj_path)) {
- wpa_printf(MSG_ERROR,
- "Cannot unregister BSSID dbus object %s.",
+ wpa_printf(MSG_ERROR, "dbus: Cannot unregister BSS object %s",
bss_obj_path);
- os_free(bss_obj_path);
return -1;
}
wpas_dbus_signal_bss_removed(wpa_s, bss_obj_path);
- os_free(bss_obj_path);
return 0;
}
{
struct wpas_dbus_priv *ctrl_iface;
struct wpa_dbus_object_desc *obj_desc;
- char *bss_obj_path;
-
+ char bss_obj_path[WPAS_DBUS_OBJECT_PATH_MAX];
struct bss_handler_args *arg = NULL;
/* Do nothing if the control interface is not turned on */
if (ctrl_iface == NULL)
return 0;
- bss_obj_path = os_zalloc(WPAS_DBUS_OBJECT_PATH_MAX);
- if (bss_obj_path == NULL)
- return -1;
-
os_snprintf(bss_obj_path, WPAS_DBUS_OBJECT_PATH_MAX,
"%s/" WPAS_DBUS_NEW_BSSIDS_PART "/%u",
wpa_s->dbus_new_path, id);
wpas_dbus_signal_bss_added(wpa_s, bss_obj_path);
- os_free(bss_obj_path);
return 0;
err:
- os_free(bss_obj_path);
os_free(obj_desc);
os_free(arg);
return -1;
DBusMessage *reply = NULL;
DBusMessageIter iter;
struct wpa_ssid *ssid = NULL;
- char *path = NULL;
-
- path = os_zalloc(WPAS_DBUS_OBJECT_PATH_MAX);
- if (path == NULL) {
- reply = dbus_message_new_error(message, DBUS_ERROR_NO_MEMORY,
- NULL);
- goto err;
- }
+ char path_buf[WPAS_DBUS_OBJECT_PATH_MAX], *path = path_buf;
dbus_message_iter_init(message, &iter);
goto err;
}
- os_free(path);
return reply;
err:
wpas_notify_network_removed(wpa_s, ssid);
wpa_config_remove_network(wpa_s->conf, ssid->id);
}
- os_free(path);
return reply;
}
DBusMessage * wpas_dbus_getter_current_bss(DBusMessage *message,
struct wpa_supplicant *wpa_s)
{
- DBusMessage *reply = NULL;
- char *bss_obj_path = os_zalloc(WPAS_DBUS_OBJECT_PATH_MAX);
-
- if (bss_obj_path == NULL)
- return dbus_message_new_error(message, DBUS_ERROR_NO_MEMORY,
- NULL);
+ DBusMessage *reply;
+ char path_buf[WPAS_DBUS_OBJECT_PATH_MAX], *bss_obj_path = path_buf;
if (wpa_s->current_bss)
os_snprintf(bss_obj_path, WPAS_DBUS_OBJECT_PATH_MAX,
DBUS_TYPE_OBJECT_PATH,
&bss_obj_path);
- os_free(bss_obj_path);
return reply;
}
DBusMessage * wpas_dbus_getter_current_network(DBusMessage *message,
struct wpa_supplicant *wpa_s)
{
- DBusMessage *reply = NULL;
- char *net_obj_path = os_zalloc(WPAS_DBUS_OBJECT_PATH_MAX);
-
- if (net_obj_path == NULL)
- return dbus_message_new_error(message, DBUS_ERROR_NO_MEMORY,
- NULL);
+ DBusMessage *reply;
+ char path_buf[WPAS_DBUS_OBJECT_PATH_MAX], *net_obj_path = path_buf;
if (wpa_s->current_ssid)
os_snprintf(net_obj_path, WPAS_DBUS_OBJECT_PATH_MAX,
DBUS_TYPE_OBJECT_PATH,
&net_obj_path);
- os_free(net_obj_path);
return reply;
}
paths, wpa_s->num_bss);
out:
- while(i)
+ while (i)
os_free(paths[--i]);
os_free(paths);
return reply;