WNM_DISASSOC_ADDR,
WNM_DISASSOC_DURATION,
WNM_DISASSOC_NEIGHBORS,
+ WNM_DISASSOC_ABRIDGED,
__WNM_DISASSOC_MAX,
};
[WNM_DISASSOC_ADDR] = { "addr", BLOBMSG_TYPE_STRING },
[WNM_DISASSOC_DURATION] { "duration", BLOBMSG_TYPE_INT32 },
[WNM_DISASSOC_NEIGHBORS] { "neighbors", BLOBMSG_TYPE_ARRAY },
+ [WNM_DISASSOC_ABRIDGED] { "abridged", BLOBMSG_TYPE_BOOL },
};
static int
if (nr)
req_mode |= WNM_BSS_TM_REQ_PREF_CAND_LIST_INCLUDED;
+ if (tb[WNM_DISASSOC_ABRIDGED] && blobmsg_get_bool(tb[WNM_DISASSOC_ABRIDGED]))
+ req_mode |= WNM_BSS_TM_REQ_ABRIDGED;
+
if (wnm_send_bss_tm_req(hapd, sta, req_mode, duration, 0, NULL,
NULL, nr, nr_len, NULL, 0))
return UBUS_STATUS_UNKNOWN_ERROR;
void hostapd_ubus_add(struct hapd_interfaces *interfaces)
{
struct ubus_object *obj = &interfaces->ubus;
- char *name;
- int name_len;
int ret;
if (!hostapd_ubus_init())
return;
- name_len = strlen("hostapd") + 1;
- if (interfaces->name)
- name_len += strlen(interfaces->name) + 1;
-
- name = malloc(name_len);
- strcpy(name, "hostapd");
- if (interfaces->name) {
- strcat(name, ".");
- strcat(name, interfaces->name);
- }
- obj->name = name;
+ obj->name = strdup("hostapd");
obj->type = &daemon_object_type;
obj->methods = daemon_object_type.methods;