Lines Matching refs:build
2423 struct ieee80211_fast_tx build = {}, *fast_tx = NULL, *old; in ieee80211_check_fast_xmit() local
2426 struct ieee80211_hdr *hdr = (void *)build.hdr; in ieee80211_check_fast_xmit()
2474 build.band = chanctx_conf->def.chan->band; in ieee80211_check_fast_xmit()
2482 build.da_offs = offsetof(struct ieee80211_hdr, addr1); in ieee80211_check_fast_xmit()
2483 build.sa_offs = offsetof(struct ieee80211_hdr, addr2); in ieee80211_check_fast_xmit()
2485 build.hdr_len = 24; in ieee80211_check_fast_xmit()
2490 build.da_offs = offsetof(struct ieee80211_hdr, addr1); in ieee80211_check_fast_xmit()
2491 build.sa_offs = offsetof(struct ieee80211_hdr, addr2); in ieee80211_check_fast_xmit()
2493 build.hdr_len = 24; in ieee80211_check_fast_xmit()
2504 build.da_offs = offsetof(struct ieee80211_hdr, addr3); in ieee80211_check_fast_xmit()
2505 build.sa_offs = offsetof(struct ieee80211_hdr, addr4); in ieee80211_check_fast_xmit()
2506 build.hdr_len = 30; in ieee80211_check_fast_xmit()
2512 build.da_offs = offsetof(struct ieee80211_hdr, addr3); in ieee80211_check_fast_xmit()
2513 build.sa_offs = offsetof(struct ieee80211_hdr, addr2); in ieee80211_check_fast_xmit()
2514 build.hdr_len = 24; in ieee80211_check_fast_xmit()
2523 build.da_offs = offsetof(struct ieee80211_hdr, addr3); in ieee80211_check_fast_xmit()
2524 build.sa_offs = offsetof(struct ieee80211_hdr, addr4); in ieee80211_check_fast_xmit()
2525 build.hdr_len = 30; in ieee80211_check_fast_xmit()
2532 build.da_offs = offsetof(struct ieee80211_hdr, addr1); in ieee80211_check_fast_xmit()
2534 build.sa_offs = offsetof(struct ieee80211_hdr, addr3); in ieee80211_check_fast_xmit()
2535 build.hdr_len = 24; in ieee80211_check_fast_xmit()
2543 build.hdr_len += 2; in ieee80211_check_fast_xmit()
2552 build.key = rcu_access_pointer(sta->ptk[sta->ptk_idx]); in ieee80211_check_fast_xmit()
2553 if (!build.key) in ieee80211_check_fast_xmit()
2554 build.key = rcu_access_pointer(sdata->default_unicast_key); in ieee80211_check_fast_xmit()
2555 if (build.key) { in ieee80211_check_fast_xmit()
2558 gen_iv = build.key->conf.flags & IEEE80211_KEY_FLAG_GENERATE_IV; in ieee80211_check_fast_xmit()
2559 iv_spc = build.key->conf.flags & IEEE80211_KEY_FLAG_PUT_IV_SPACE; in ieee80211_check_fast_xmit()
2560 mmic = build.key->conf.flags & IEEE80211_KEY_FLAG_GENERATE_MMIC; in ieee80211_check_fast_xmit()
2563 if (!(build.key->flags & KEY_FLAG_UPLOADED_TO_HARDWARE)) in ieee80211_check_fast_xmit()
2566 switch (build.key->conf.cipher) { in ieee80211_check_fast_xmit()
2571 (build.hdr + build.hdr_len)[3] = in ieee80211_check_fast_xmit()
2572 0x20 | (build.key->conf.keyidx << 6); in ieee80211_check_fast_xmit()
2573 build.pn_offs = build.hdr_len; in ieee80211_check_fast_xmit()
2576 build.hdr_len += IEEE80211_CCMP_HDR_LEN; in ieee80211_check_fast_xmit()
2582 (build.hdr + build.hdr_len)[3] = in ieee80211_check_fast_xmit()
2583 0x20 | (build.key->conf.keyidx << 6); in ieee80211_check_fast_xmit()
2584 build.pn_offs = build.hdr_len; in ieee80211_check_fast_xmit()
2587 build.hdr_len += IEEE80211_GCMP_HDR_LEN; in ieee80211_check_fast_xmit()
2594 build.hdr_len += IEEE80211_TKIP_IV_LEN; in ieee80211_check_fast_xmit()
2602 build.hdr_len += IEEE80211_WEP_IV_LEN; in ieee80211_check_fast_xmit()
2610 build.key->conf.cipher); in ieee80211_check_fast_xmit()
2617 if (!(build.key->flags & KEY_FLAG_CIPHER_SCHEME)) in ieee80211_check_fast_xmit()
2621 build.key->conf.iv_len > IEEE80211_FAST_XMIT_MAX_IV) in ieee80211_check_fast_xmit()
2624 build.hdr_len += build.key->conf.iv_len; in ieee80211_check_fast_xmit()
2632 memcpy(build.hdr + build.hdr_len, in ieee80211_check_fast_xmit()
2634 build.hdr_len += sizeof(rfc1042_header); in ieee80211_check_fast_xmit()
2636 fast_tx = kmemdup(&build, sizeof(build), GFP_ATOMIC); in ieee80211_check_fast_xmit()