Lines Matching refs:attrs
157 if (info->attrs[IEEE802154_ATTR_DEV_NAME]) { in ieee802154_nl_get_dev()
160 nla_strlcpy(name, info->attrs[IEEE802154_ATTR_DEV_NAME], in ieee802154_nl_get_dev()
163 } else if (info->attrs[IEEE802154_ATTR_DEV_INDEX]) { in ieee802154_nl_get_dev()
165 nla_get_u32(info->attrs[IEEE802154_ATTR_DEV_INDEX])); in ieee802154_nl_get_dev()
188 if (!info->attrs[IEEE802154_ATTR_CHANNEL] || in ieee802154_associate_req()
189 !info->attrs[IEEE802154_ATTR_COORD_PAN_ID] || in ieee802154_associate_req()
190 (!info->attrs[IEEE802154_ATTR_COORD_HW_ADDR] && in ieee802154_associate_req()
191 !info->attrs[IEEE802154_ATTR_COORD_SHORT_ADDR]) || in ieee802154_associate_req()
192 !info->attrs[IEEE802154_ATTR_CAPABILITY]) in ieee802154_associate_req()
201 if (info->attrs[IEEE802154_ATTR_COORD_HW_ADDR]) { in ieee802154_associate_req()
204 info->attrs[IEEE802154_ATTR_COORD_HW_ADDR]); in ieee802154_associate_req()
208 info->attrs[IEEE802154_ATTR_COORD_SHORT_ADDR]); in ieee802154_associate_req()
211 info->attrs[IEEE802154_ATTR_COORD_PAN_ID]); in ieee802154_associate_req()
213 if (info->attrs[IEEE802154_ATTR_PAGE]) in ieee802154_associate_req()
214 page = nla_get_u8(info->attrs[IEEE802154_ATTR_PAGE]); in ieee802154_associate_req()
219 nla_get_u8(info->attrs[IEEE802154_ATTR_CHANNEL]), in ieee802154_associate_req()
221 nla_get_u8(info->attrs[IEEE802154_ATTR_CAPABILITY])); in ieee802154_associate_req()
234 if (!info->attrs[IEEE802154_ATTR_STATUS] || in ieee802154_associate_resp()
235 !info->attrs[IEEE802154_ATTR_DEST_HW_ADDR] || in ieee802154_associate_resp()
236 !info->attrs[IEEE802154_ATTR_DEST_SHORT_ADDR]) in ieee802154_associate_resp()
247 info->attrs[IEEE802154_ATTR_DEST_HW_ADDR]); in ieee802154_associate_resp()
253 nla_get_shortaddr(info->attrs[IEEE802154_ATTR_DEST_SHORT_ADDR]), in ieee802154_associate_resp()
254 nla_get_u8(info->attrs[IEEE802154_ATTR_STATUS])); in ieee802154_associate_resp()
267 if ((!info->attrs[IEEE802154_ATTR_DEST_HW_ADDR] && in ieee802154_disassociate_req()
268 !info->attrs[IEEE802154_ATTR_DEST_SHORT_ADDR]) || in ieee802154_disassociate_req()
269 !info->attrs[IEEE802154_ATTR_REASON]) in ieee802154_disassociate_req()
278 if (info->attrs[IEEE802154_ATTR_DEST_HW_ADDR]) { in ieee802154_disassociate_req()
281 info->attrs[IEEE802154_ATTR_DEST_HW_ADDR]); in ieee802154_disassociate_req()
285 info->attrs[IEEE802154_ATTR_DEST_SHORT_ADDR]); in ieee802154_disassociate_req()
292 nla_get_u8(info->attrs[IEEE802154_ATTR_REASON])); in ieee802154_disassociate_req()
313 if (!info->attrs[IEEE802154_ATTR_COORD_PAN_ID] || in ieee802154_start_req()
314 !info->attrs[IEEE802154_ATTR_COORD_SHORT_ADDR] || in ieee802154_start_req()
315 !info->attrs[IEEE802154_ATTR_CHANNEL] || in ieee802154_start_req()
316 !info->attrs[IEEE802154_ATTR_BCN_ORD] || in ieee802154_start_req()
317 !info->attrs[IEEE802154_ATTR_SF_ORD] || in ieee802154_start_req()
318 !info->attrs[IEEE802154_ATTR_PAN_COORD] || in ieee802154_start_req()
319 !info->attrs[IEEE802154_ATTR_BAT_EXT] || in ieee802154_start_req()
320 !info->attrs[IEEE802154_ATTR_COORD_REALIGN] in ieee802154_start_req()
338 info->attrs[IEEE802154_ATTR_COORD_SHORT_ADDR]); in ieee802154_start_req()
340 info->attrs[IEEE802154_ATTR_COORD_PAN_ID]); in ieee802154_start_req()
342 channel = nla_get_u8(info->attrs[IEEE802154_ATTR_CHANNEL]); in ieee802154_start_req()
343 bcn_ord = nla_get_u8(info->attrs[IEEE802154_ATTR_BCN_ORD]); in ieee802154_start_req()
344 sf_ord = nla_get_u8(info->attrs[IEEE802154_ATTR_SF_ORD]); in ieee802154_start_req()
345 pan_coord = nla_get_u8(info->attrs[IEEE802154_ATTR_PAN_COORD]); in ieee802154_start_req()
346 blx = nla_get_u8(info->attrs[IEEE802154_ATTR_BAT_EXT]); in ieee802154_start_req()
347 coord_realign = nla_get_u8(info->attrs[IEEE802154_ATTR_COORD_REALIGN]); in ieee802154_start_req()
349 if (info->attrs[IEEE802154_ATTR_PAGE]) in ieee802154_start_req()
350 page = nla_get_u8(info->attrs[IEEE802154_ATTR_PAGE]); in ieee802154_start_req()
384 if (!info->attrs[IEEE802154_ATTR_SCAN_TYPE] || in ieee802154_scan_req()
385 !info->attrs[IEEE802154_ATTR_CHANNELS] || in ieee802154_scan_req()
386 !info->attrs[IEEE802154_ATTR_DURATION]) in ieee802154_scan_req()
395 type = nla_get_u8(info->attrs[IEEE802154_ATTR_SCAN_TYPE]); in ieee802154_scan_req()
396 channels = nla_get_u32(info->attrs[IEEE802154_ATTR_CHANNELS]); in ieee802154_scan_req()
397 duration = nla_get_u8(info->attrs[IEEE802154_ATTR_DURATION]); in ieee802154_scan_req()
399 if (info->attrs[IEEE802154_ATTR_PAGE]) in ieee802154_scan_req()
400 page = nla_get_u8(info->attrs[IEEE802154_ATTR_PAGE]); in ieee802154_scan_req()
498 if (!info->attrs[IEEE802154_ATTR_LBT_ENABLED] && in ieee802154_set_macparams()
499 !info->attrs[IEEE802154_ATTR_CCA_MODE] && in ieee802154_set_macparams()
500 !info->attrs[IEEE802154_ATTR_CCA_ED_LEVEL] && in ieee802154_set_macparams()
501 !info->attrs[IEEE802154_ATTR_CSMA_RETRIES] && in ieee802154_set_macparams()
502 !info->attrs[IEEE802154_ATTR_CSMA_MIN_BE] && in ieee802154_set_macparams()
503 !info->attrs[IEEE802154_ATTR_CSMA_MAX_BE] && in ieee802154_set_macparams()
504 !info->attrs[IEEE802154_ATTR_FRAME_RETRIES]) in ieee802154_set_macparams()
513 if (info->attrs[IEEE802154_ATTR_TXPOWER]) in ieee802154_set_macparams()
514 params.transmit_power = nla_get_s8(info->attrs[IEEE802154_ATTR_TXPOWER]) * 100; in ieee802154_set_macparams()
516 if (info->attrs[IEEE802154_ATTR_LBT_ENABLED]) in ieee802154_set_macparams()
517 params.lbt = nla_get_u8(info->attrs[IEEE802154_ATTR_LBT_ENABLED]); in ieee802154_set_macparams()
519 if (info->attrs[IEEE802154_ATTR_CCA_MODE]) in ieee802154_set_macparams()
520 params.cca.mode = nla_get_u8(info->attrs[IEEE802154_ATTR_CCA_MODE]); in ieee802154_set_macparams()
522 if (info->attrs[IEEE802154_ATTR_CCA_ED_LEVEL]) in ieee802154_set_macparams()
523 params.cca_ed_level = nla_get_s32(info->attrs[IEEE802154_ATTR_CCA_ED_LEVEL]) * 100; in ieee802154_set_macparams()
525 if (info->attrs[IEEE802154_ATTR_CSMA_RETRIES]) in ieee802154_set_macparams()
526 params.csma_retries = nla_get_u8(info->attrs[IEEE802154_ATTR_CSMA_RETRIES]); in ieee802154_set_macparams()
528 if (info->attrs[IEEE802154_ATTR_CSMA_MIN_BE]) in ieee802154_set_macparams()
529 params.min_be = nla_get_u8(info->attrs[IEEE802154_ATTR_CSMA_MIN_BE]); in ieee802154_set_macparams()
531 if (info->attrs[IEEE802154_ATTR_CSMA_MAX_BE]) in ieee802154_set_macparams()
532 params.max_be = nla_get_u8(info->attrs[IEEE802154_ATTR_CSMA_MAX_BE]); in ieee802154_set_macparams()
534 if (info->attrs[IEEE802154_ATTR_FRAME_RETRIES]) in ieee802154_set_macparams()
535 params.frame_retries = nla_get_s8(info->attrs[IEEE802154_ATTR_FRAME_RETRIES]); in ieee802154_set_macparams()
556 if (!info->attrs[IEEE802154_ATTR_LLSEC_KEY_MODE]) in ieee802154_llsec_parse_key_id()
559 desc->mode = nla_get_u8(info->attrs[IEEE802154_ATTR_LLSEC_KEY_MODE]); in ieee802154_llsec_parse_key_id()
562 if (!info->attrs[IEEE802154_ATTR_PAN_ID] && in ieee802154_llsec_parse_key_id()
563 !(info->attrs[IEEE802154_ATTR_SHORT_ADDR] || in ieee802154_llsec_parse_key_id()
564 info->attrs[IEEE802154_ATTR_HW_ADDR])) in ieee802154_llsec_parse_key_id()
567 desc->device_addr.pan_id = nla_get_shortaddr(info->attrs[IEEE802154_ATTR_PAN_ID]); in ieee802154_llsec_parse_key_id()
569 if (info->attrs[IEEE802154_ATTR_SHORT_ADDR]) { in ieee802154_llsec_parse_key_id()
571 desc->device_addr.short_addr = nla_get_shortaddr(info->attrs[IEEE802154_ATTR_SHORT_ADDR]); in ieee802154_llsec_parse_key_id()
574 desc->device_addr.extended_addr = nla_get_hwaddr(info->attrs[IEEE802154_ATTR_HW_ADDR]); in ieee802154_llsec_parse_key_id()
579 !info->attrs[IEEE802154_ATTR_LLSEC_KEY_ID]) in ieee802154_llsec_parse_key_id()
583 !info->attrs[IEEE802154_ATTR_LLSEC_KEY_SOURCE_SHORT]) in ieee802154_llsec_parse_key_id()
587 !info->attrs[IEEE802154_ATTR_LLSEC_KEY_SOURCE_EXTENDED]) in ieee802154_llsec_parse_key_id()
591 desc->id = nla_get_u8(info->attrs[IEEE802154_ATTR_LLSEC_KEY_ID]); in ieee802154_llsec_parse_key_id()
596 u32 source = nla_get_u32(info->attrs[IEEE802154_ATTR_LLSEC_KEY_SOURCE_SHORT]); in ieee802154_llsec_parse_key_id()
602 desc->extended_source = nla_get_hwaddr(info->attrs[IEEE802154_ATTR_LLSEC_KEY_SOURCE_EXTENDED]); in ieee802154_llsec_parse_key_id()
717 if (!info->attrs[IEEE802154_ATTR_LLSEC_ENABLED] && in ieee802154_llsec_setparams()
718 !info->attrs[IEEE802154_ATTR_LLSEC_KEY_MODE] && in ieee802154_llsec_setparams()
719 !info->attrs[IEEE802154_ATTR_LLSEC_SECLEVEL]) in ieee802154_llsec_setparams()
728 if (info->attrs[IEEE802154_ATTR_LLSEC_SECLEVEL] && in ieee802154_llsec_setparams()
729 nla_get_u8(info->attrs[IEEE802154_ATTR_LLSEC_SECLEVEL]) > 7) in ieee802154_llsec_setparams()
732 if (info->attrs[IEEE802154_ATTR_LLSEC_ENABLED]) { in ieee802154_llsec_setparams()
733 params.enabled = nla_get_u8(info->attrs[IEEE802154_ATTR_LLSEC_ENABLED]); in ieee802154_llsec_setparams()
737 if (info->attrs[IEEE802154_ATTR_LLSEC_KEY_MODE]) { in ieee802154_llsec_setparams()
744 if (info->attrs[IEEE802154_ATTR_LLSEC_SECLEVEL]) { in ieee802154_llsec_setparams()
745 params.out_level = nla_get_u8(info->attrs[IEEE802154_ATTR_LLSEC_SECLEVEL]); in ieee802154_llsec_setparams()
749 if (info->attrs[IEEE802154_ATTR_LLSEC_FRAME_COUNTER]) { in ieee802154_llsec_setparams()
750 u32 fc = nla_get_u32(info->attrs[IEEE802154_ATTR_LLSEC_FRAME_COUNTER]); in ieee802154_llsec_setparams()
847 if (!info->attrs[IEEE802154_ATTR_LLSEC_KEY_USAGE_FRAME_TYPES] || in ieee802154_llsec_parse_key()
848 !info->attrs[IEEE802154_ATTR_LLSEC_KEY_BYTES]) in ieee802154_llsec_parse_key()
851 frames = nla_get_u8(info->attrs[IEEE802154_ATTR_LLSEC_KEY_USAGE_FRAME_TYPES]); in ieee802154_llsec_parse_key()
853 !info->attrs[IEEE802154_ATTR_LLSEC_KEY_USAGE_COMMANDS]) in ieee802154_llsec_parse_key()
856 if (info->attrs[IEEE802154_ATTR_LLSEC_KEY_USAGE_COMMANDS]) { in ieee802154_llsec_parse_key()
858 info->attrs[IEEE802154_ATTR_LLSEC_KEY_USAGE_COMMANDS], in ieee802154_llsec_parse_key()
871 nla_memcpy(key->key, info->attrs[IEEE802154_ATTR_LLSEC_KEY_BYTES], in ieee802154_llsec_parse_key()
988 if (!info->attrs[IEEE802154_ATTR_LLSEC_FRAME_COUNTER] || in llsec_parse_dev()
989 !info->attrs[IEEE802154_ATTR_HW_ADDR] || in llsec_parse_dev()
990 !info->attrs[IEEE802154_ATTR_LLSEC_DEV_OVERRIDE] || in llsec_parse_dev()
991 !info->attrs[IEEE802154_ATTR_LLSEC_DEV_KEY_MODE] || in llsec_parse_dev()
992 (!!info->attrs[IEEE802154_ATTR_PAN_ID] != in llsec_parse_dev()
993 !!info->attrs[IEEE802154_ATTR_SHORT_ADDR])) in llsec_parse_dev()
996 if (info->attrs[IEEE802154_ATTR_PAN_ID]) { in llsec_parse_dev()
997 dev->pan_id = nla_get_shortaddr(info->attrs[IEEE802154_ATTR_PAN_ID]); in llsec_parse_dev()
998 dev->short_addr = nla_get_shortaddr(info->attrs[IEEE802154_ATTR_SHORT_ADDR]); in llsec_parse_dev()
1003 dev->hwaddr = nla_get_hwaddr(info->attrs[IEEE802154_ATTR_HW_ADDR]); in llsec_parse_dev()
1004 dev->frame_counter = nla_get_u32(info->attrs[IEEE802154_ATTR_LLSEC_FRAME_COUNTER]); in llsec_parse_dev()
1005 dev->seclevel_exempt = !!nla_get_u8(info->attrs[IEEE802154_ATTR_LLSEC_DEV_OVERRIDE]); in llsec_parse_dev()
1006 dev->key_mode = nla_get_u8(info->attrs[IEEE802154_ATTR_LLSEC_DEV_KEY_MODE]); in llsec_parse_dev()
1039 if (!info->attrs[IEEE802154_ATTR_HW_ADDR]) in llsec_del_dev()
1042 devaddr = nla_get_hwaddr(info->attrs[IEEE802154_ATTR_HW_ADDR]); in llsec_del_dev()
1119 if (!info->attrs[IEEE802154_ATTR_LLSEC_FRAME_COUNTER] || in llsec_add_devkey()
1120 !info->attrs[IEEE802154_ATTR_HW_ADDR] || in llsec_add_devkey()
1124 devaddr = nla_get_hwaddr(info->attrs[IEEE802154_ATTR_HW_ADDR]); in llsec_add_devkey()
1125 key.frame_counter = nla_get_u32(info->attrs[IEEE802154_ATTR_LLSEC_FRAME_COUNTER]); in llsec_add_devkey()
1145 if (!info->attrs[IEEE802154_ATTR_HW_ADDR] || in llsec_del_devkey()
1149 devaddr = nla_get_hwaddr(info->attrs[IEEE802154_ATTR_HW_ADDR]); in llsec_del_devkey()
1234 if (!info->attrs[IEEE802154_ATTR_LLSEC_FRAME_TYPE] || in llsec_parse_seclevel()
1235 !info->attrs[IEEE802154_ATTR_LLSEC_SECLEVELS] || in llsec_parse_seclevel()
1236 !info->attrs[IEEE802154_ATTR_LLSEC_DEV_OVERRIDE]) in llsec_parse_seclevel()
1239 sl->frame_type = nla_get_u8(info->attrs[IEEE802154_ATTR_LLSEC_FRAME_TYPE]); in llsec_parse_seclevel()
1241 if (!info->attrs[IEEE802154_ATTR_LLSEC_CMD_FRAME_ID]) in llsec_parse_seclevel()
1244 sl->cmd_frame_id = nla_get_u8(info->attrs[IEEE802154_ATTR_LLSEC_CMD_FRAME_ID]); in llsec_parse_seclevel()
1247 sl->sec_levels = nla_get_u8(info->attrs[IEEE802154_ATTR_LLSEC_SECLEVELS]); in llsec_parse_seclevel()
1248 sl->device_override = nla_get_u8(info->attrs[IEEE802154_ATTR_LLSEC_DEV_OVERRIDE]); in llsec_parse_seclevel()