diff --git a/src/cntlr_cmdu.c b/src/cntlr_cmdu.c index bfb4bf03723e20719299e676ca11bdb667bcb14d..69a0c88263572c0fe6569d221863162135559072 100644 --- a/src/cntlr_cmdu.c +++ b/src/cntlr_cmdu.c @@ -558,7 +558,7 @@ struct cmdu_buff *cntlr_gen_ap_autoconfig_response(struct controller *c, if (ret) goto out; #endif - ret = cntlr_gen_cntlr_capability(c, resp); + ret = cntlr_gen_cntlr_capability(c, resp, 0x00); if (ret) goto out; } diff --git a/src/cntlr_tlv.c b/src/cntlr_tlv.c index 6f2122acee5cd3f304c3b5b18977106c175c43b7..99d75343ca0a474ecddf7642b7db4f9426201854 100644 --- a/src/cntlr_tlv.c +++ b/src/cntlr_tlv.c @@ -1848,7 +1848,7 @@ int cntlr_gen_dpp_bootstrapping_uri_notif(struct controller *c, return 0; } -int cntlr_gen_cntlr_capability(struct controller *c, struct cmdu_buff *frm) +int cntlr_gen_cntlr_capability(struct controller *c, struct cmdu_buff *frm, uint8_t caps) { struct tlv *t; struct tlv_controller_cap *data; @@ -1860,8 +1860,7 @@ int cntlr_gen_cntlr_capability(struct controller *c, struct cmdu_buff *frm) t->type = MAP_TLV_CONTROLLER_CAPS; data = (struct tlv_controller_cap *)t->data; - /* TODO: fill proper values */ - data->flag = 0x00; + data->flag = caps; t->len = sizeof(*data); if (cmdu_put_tlv(frm, t)) diff --git a/src/cntlr_tlv.h b/src/cntlr_tlv.h index a04286ef27564f7cae0ee11ca8b77f4a85def0e1..6848abbe270317384f198661cd819f9dc4878a10 100644 --- a/src/cntlr_tlv.h +++ b/src/cntlr_tlv.h @@ -131,7 +131,7 @@ int cntlr_gen_device_1905_layer_security_cap(struct controller *c, int cntlr_gen_dpp_bootstrapping_uri_notif(struct controller *c, struct cmdu_buff *frm, uint8_t *radio, uint8_t *bssid, uint8_t *bsta, int uri_len, char *dpp_uri); -int cntlr_gen_cntlr_capability(struct controller *c, struct cmdu_buff *frm); +int cntlr_gen_cntlr_capability(struct controller *c, struct cmdu_buff *frm, uint8_t caps); int cntlr_gen_agent_list_tlv(struct controller *c, struct cmdu_buff *frm); #endif /* EASYMESH_VERSION > 2 */