linux/net/wireless/lib80211_crypt_tkip.c
<<
on> 12"/spav3. 12"/form3. 12"a on> 12 href="../linux+v3.7.5/net/wireless/lib80211_crypt_tkip.c">on> 12"img src="../.static/gfx/right.png" alt=">>">on"/spav3.on"spav class="lxr_search">on> on> 12"input typ18.hidden" nam18.navtarget" v3.18.">on> 12"input typ18.text" nam18.search" id8.search">on> 12"butt> typ18.submit">Search 3. 12"/form3. "/spav3.on"spav class="lxr_prefs"3. 12"a href="+prefs?return= > v4.4.12oti12otion> 2oti1on> 2oti16o2on Bcludksearch(thajax"a hre(nput typ18P hre "/spaon"spav clas6o2onspadivas6o2onsp"+search" metajax+*st" onsubmit="return do_search(thfalseput t.hidden" nam18.navtarget" ajax"lookup">on> ajax"lookup"> 12"input 6o2onspav3.on" 6o2onspdivprefs"3.headingboormmav3.divas6o2o3.divas6o2o 2onspdivpon> 12"but_results"prefs"3.12"but_results" "/as6o2onspadivas pdivpon> contenutts pdivpon> file_contenuef=on> 01/3c/1028e4a9654d1508de513d81264e418b3a3c_3/0f= 2oti1on> 2o#L1">on> L1">refs"3. ine">get" L1">ons1paon"lxr_prefs"3.commenutt/*pav clas 2oti1on> 2o#L2">on> L2">refs"3. ine">get" L2">ons2paon"lxr_prefs"3.commenutt * 2ot 1on> : ht="-based TKIP en1on> 2otiimplemenua 2otiv3. 2otpav clas 2oti1on> 2o#L3">on> L3">refs"3. ine">get" L3">ons3paon"lxr_prefs"3.commenutt *pav clas 2oti1on> 2o#L4">on> L4">refs"3. ine">get" L4">ons4paon"lxr_prefs"3.commenutt * Copylt="& (c) 2003-2004, Jouni Ma inen <j@w1.fi"/sppav clas 2oti1on> 2o#L5">on> L5">refs"3. ine">get" L5">ons5paon"lxr_prefs"3.commenutt * Copylt="& (c) 2008, John W. Linville <linville@tuxdriver.com"/sppav clas 2oti1on> 2o#L6">on> L6">refs"3. ine">get" L6">ons6paon"lxr_prefs"3.commenutt *pav clas 2oti1on> 2o#L7">on> L7">refs"3. ine">get" L7">ons7paon"lxr_prefs"3.commenutt * T2"i program "i free software; you cr_predistri/foe it and/3. modifypav clas 2oti1on> 2o#L8">on> L8">refs"3. ine">get" L8">ons8paon"lxr_prefs"3.commenutt * it under the terms of the GNU General Publud License vers2oti2 aspav clas 2oti1on> 2o#L9">on> L9">refs"3. ine">get" L9">ons9paon"lxr_prefs"3.commenutt * publushed by the Free Software Founda 2ot. See README and COPYINGiv3.pav clas 2oti1on> 2o#L10">on> L10">refs"3. ine">get" L10">on18.1on"lxr_prefs"3.commenutt * more details.pav clas 2oti1on> 2o#L11">on> L11">refs"3. ine">get" L11">on11paon"lxr_prefs"3.commenutt */pav clas 2oti1on> 2o#L12">on> L12">refs"3. ine">get" L12">on12paons 2oti1on> 2o#L13">on> L13">refs"3. ine">get" L13">on13paon#definerefs?returncode=pr_fmt"prefs"3.1ret">pr_fmtpaon(efs?returncode=fmt"prefs"3.1ret">fmtpaon)refs?returncode=KBUILD_MODNAME"prefs"3.1ret">KBUILD_MODNAMEpaon "lxr_prefs"3.stri;&g>": "pav clarefs?returncode=fmt"prefs"3.1ret">fmtpaons 2oti1on> 2o#L14">on> L14">refs"3. ine">get" L14">on14paons 2oti1on> 2o#L15">on> L15">refs"3. ine">get" L15">on15paon#iBclude <refs"3.fret">/net//err.hpaon"/sps 2oti1on> 2o#L16">on> L16">refs"3. ine">get" L16">on16paon#iBclude <refs"3.fret">/net//module.hpaon"/sps 2oti1on> 2o#L17">on> L17">refs"3. ine">get" L17">on17paon#iBclude <refs"3.fret">/net//init.hpaon"/sps 2oti1on> 2o#L18">on> L18">refs"3. ine">get" L18">on18paon#iBclude <refs"3.fret">/net//slab.hpaon"/sps 2oti1on> 2o#L19">on> L19">refs"3. ine">get" L19">on19paon#iBclude <refs"3.fret">/net//random.hpaon"/sps 2oti1on> 2o#L20">on> L20">refs"3. ine">get" L20">on20paon#iBclude <refs"3.fret">/net//scatterlust.hpaon"/sps 2oti1on> 2o#L21">on> L21">refs"3. ine">get" L21">on21paon#iBclude <refs"3.fret">/net//skbuff.hpaon"/sps 2oti1on> 2o#L22">on> L22">refs"3. ine">get" L22">on22paon#iBclude <refs"3.fret">/net//2otdevice.hpaon"/sps 2oti1on> 2o#L23">on> L23">refs"3. ine">get" L23">on23paon#iBclude <refs"3.fret">/net//mm.hpaon"/sps 2oti1on> 2o#L24">on> L24">refs"3. ine">get" L24">on24paon#iBclude <refs"3.fret">/net//if_ether.hpaon"/sps 2oti1on> 2o#L25">on> L25">refs"3. ine">get" L25">on25paon#iBclude <refs"3.fret">/net//if_arp.hpaon"/sps 2oti1on> 2o#L26">on> L26">refs"3. ine">get" L26">on26paon#iBclude <refs"3.faluttasm/stri;&.hpaon"/sps 2oti1on> 2o#L27">on> L27">refs"3. ine">get" L27">on27paons 2oti1on> 2o#L28">on> L28">refs"3. ine">get" L28">on28paon#iBclude <.h">refs"3.fret">/net//12otion>.hpaon"/sps 2oti1on> 2o#L29">on> L29">refs"3. ine">get" L29">on29paon#iBclude <refs"3.fret">/net//ieee 2ot.hpaon"/sps 2oti1on> 2o#L30">on> L30">refs"3. ine">get" L30">on30paon#iBclude <refs"3.fret">2otiiw_handler.hpaon"/sps 2oti1on> 2o#L31">on> L31">refs"3. ine">get" L31">on31paons 2oti1on> 2o#L32">on> L32">refs"3. ine">get" L32">on32paon#iBclude < o.h">refs"3.fret">/net//1on> o.hpaon"/sps 2oti1on> 2o#L33">on> L33">refs"3. ine">get" L33">on33paon#iBclude <refs"3.fret">/net//1oc32.hpaon"/sps 2oti1on> 2o#L34">on> L34">refs"3. ine">get" L34">on34paons 2oti1on> 2o#L35">on> L35">refs"3. ine">get" L35">on35paon#iBclude <refs"3.fret">2oti 2ot.hpaon"/sps 2oti1on> 2o#L36">on> L36">refs"3. ine">get" L36">on36paons 2oti1on> 2o#L37">on> L37">refs"3. ine">get" L37">on37paon"fs?returncode=MODULE_AUTHOR"prefs"3.1ret">MODULE_AUTHORpaon(elxr_prefs"3.stri;&g>"Jouni Ma inen"pav cla)ps 2oti1on> 2o#L38">on> L38">refs"3. ine">get" L38">on38paon"fs?returncode=MODULE_DESCRIPTION"prefs"3.1ret">MODULE_DESCRIPTIONpaon(elxr_prefs"3.stri;&g>" 2ot 1on> : TKIP"pav cla)ps 2oti1on> 2o#L39">on> L39">refs"3. ine">get" L39">on39paon"fs?returncode=MODULE_LICENSE"prefs"3.1ret">MODULE_LICENSEpaon(elxr_prefs"3.stri;&g>"GPL"pav cla)ps 2oti1on> 2o#L40">on> L40">refs"3. ine">get" L40">on40paons 2oti1on> 2o#L41">on> L41">refs"3. ine">get" L41">on41paon#definerefs?returncode=TKIP_HDR_LEN"prefs"3.1ret">TKIP_HDR_LENpaon 8s 2oti1on> 2o#L42">on> L42">refs"3. ine">get" L42">on42paons 2oti1on> 2o#L43">on> L43">refs"3. ine">get" L43">on43paonstructrefs?returncode= 2oti _data"prefs"3.1ret"> 2oti _datapaon {s 2oti1on> 2o#L44">on> L44">refs"3. ine">get" L44">on44paon#definerefs?returncode=TKIP_KEY_LEN"prefs"3.1ret">TKIP_KEY_LENpaon 32s 2oti1on> 2o#L45">on> L45">refs"3. ine">get" L45">on45paon efs?returncode=u8"prefs"3.1ret">u8paon "fs?returncode=key"prefs"3.1ret">keypaon[efs?returncode=TKIP_KEY_LEN"prefs"3.1ret">TKIP_KEY_LENpaon]ps 2oti1on> 2o#L46">on> L46">refs"3. ine">get" L46">on46paon intrefs?returncode=key_set"prefs"3.1ret">key_setpaonps 2oti1on> 2o#L47">on> L47">refs"3. ine">get" L47">on47paons 2oti1on> 2o#L48">on> L48">refs"3. ine">get" L48">on48paon efs?returncode=u32">refs"3.1ret">u32paon efs?returncode=tx_iv32">refs"3.1ret">tx_iv32paonps 2oti1on> 2o#L49">on> L49">refs"3. ine">get" L49">on49paon efs?returncode=u16">refs"3.1ret">u16paon efs?returncode=tx_iv16">refs"3.1ret">tx_iv16paonps 2oti1on> 2o#L50">on> L50">refs"3. ine">get" L50">on50paon efs?returncode=u16">refs"3.1ret">u16paon efs?returncode=tx_ttak">refs"3.1ret">tx_ttakpaon[5]ps 2oti1on> 2o#L51">on> L51">refs"3. ine">get" L51">on51paon intrefs?returncode=tx_phase1_done">refs"3.1ret">tx_phase1_donepaonps 2oti1on> 2o#L52">on> L52">refs"3. ine">get" L52">on52paons 2oti1on> 2o#L53">on> L53">refs"3. ine">get" L53">on53paon efs?returncode=u32">refs"3.1ret">u32paon efs?returncode=rx_iv32">refs"3.1ret">rx_iv32paonps 2oti1on> 2o#L54">on> L54">refs"3. ine">get" L54">on54paon efs?returncode=u16">refs"3.1ret">u16paon efs?returncode=rx_iv16">refs"3.1ret">rx_iv16paonps 2oti1on> 2o#L55">on> L55">refs"3. ine">get" L55">on55paon efs?returncode=u16">refs"3.1ret">u16paon efs?returncode=rx_ttak">refs"3.1ret">rx_ttakpaon[5]ps 2oti1on> 2o#L56">on> L56">refs"3. ine">get" L56">on56paon intrefs?returncode=rx_phase1_done">refs"3.1ret">rx_phase1_donepaonps 2oti1on> 2o#L57">on> L57">refs"3. ine">get" L57">on57paon efs?returncode=u32">refs"3.1ret">u32paon efs?returncode=rx_iv32_new">refs"3.1ret">rx_iv32_newpaonps 2oti1on> 2o#L58">on> L58">refs"3. ine">get" L58">on58paon efs?returncode=u16">refs"3.1ret">u16paon efs?returncode=rx_iv16_new">refs"3.1ret">rx_iv16_newpaonps 2oti1on> 2o#L59">on> L59">refs"3. ine">get" L59">on59paons 2oti1on> 2o#L60">on> L60">refs"3. ine">get" L60">on60paon efs?returncode=u32">refs"3.1ret">u32paon efs?returncode=dot11RSNAStatsTKIPReplays">refs"3.1ret">dot11RSNAStatsTKIPReplayspaonps 2oti1on> 2o#L61">on> L61">refs"3. ine">get" L61">on61paon efs?returncode=u32">refs"3.1ret">u32paon efs?returncode=dot11RSNAStatsTKIPICVErrors">refs"3.1ret">dot11RSNAStatsTKIPICVErrorspaonps 2oti1on> 2o#L62">on> L62">refs"3. ine">get" L62">on62paon efs?returncode=u32">refs"3.1ret">u32paon efs?returncode=dot11RSNAStatsTKIPLocalMICFailures">refs"3.1ret">dot11RSNAStatsTKIPLocalMICFailurespaonps 2oti1on> 2o#L63">on> L63">refs"3. ine">get" L63">on63paons 2oti1on> 2o#L64">on> L64">refs"3. ine">get" L64">on64paon intrefs?returncode=key_idx"prefs"3.1ret">key_idxpaonps 2oti1on> 2o#L65">on> L65">refs"3. ine">get" L65">on65paons 2oti1on> 2o#L66">on> L66">refs"3. ine">get" L66">on66paon structrefs?returncode=1on> o_blkcipher"prefs"3.1ret">1on> o_blkcipherpaon *efs?returncode=rx_tfm_arc4">refs"3.1ret">rx_tfm_arc4paonps 2oti1on> 2o#L67">on> L67">refs"3. ine">get" L67">on67paon structrefs?returncode=1on> o_hash"prefs"3.1ret">1on> o_hashpaon *efs?returncode=rx_tfm_michael">refs"3.1ret">rx_tfm_michaelpaonps 2oti1on> 2o#L68">on> L68">refs"3. ine">get" L68">on68paon structrefs?returncode=1on> o_blkcipher"prefs"3.1ret">1on> o_blkcipherpaon *efs?returncode=tx_tfm_arc4">refs"3.1ret">tx_tfm_arc4paonps 2oti1on> 2o#L69">on> L69">refs"3. ine">get" L69">on69paon structrefs?returncode=1on> o_hash"prefs"3.1ret">1on> o_hashpaon *efs?returncode=tx_tfm_michael">refs"3.1ret">tx_tfm_michaelpaonps 2oti1on> 2o#L70">on> L70">refs"3. ine">get" L70">on70paons 2oti1on> 2o#L71">on> L71">refs"3. ine">get" L71">on71paon elxr_prefs"3.commenutt/* scratch buffersiv3. vir o_page() (1on> o API) */pav clas 2oti1on> 2o#L72">on> L72">refs"3. ine">get" L72">on72paon efs?returncode=u8"prefs"3.1ret">u8paon "fs?returncode=rx_hdr"prefs"3.1ret">rx_hdrpaon[16],refs?returncode=tx_hdr"prefs"3.1ret">tx_hdrpaon[16]ps 2oti1on> 2o#L73">on> L73">refs"3. ine">get" L73">on73paons 2oti1on> 2o#L74">on> L74">refs"3. ine">get" L74">on74paon unsigned longrefs?returncode=flags">refs"3.1ret">flagspaonps 2oti1on> 2o#L75">on> L75">refs"3. ine">get" L75">on75paon}ps 2oti1on> 2o#L76">on> L76">refs"3. ine">get" L76">on76paons 2oti1on> 2o#L77">on> L77">refs"3. ine">get" L77">on77paonstht.p unsigned longrefs?returncode= 2oti _set_flags">refs"3.1ret"> 2oti _set_flagspaon(unsigned longrefs?returncode=flags">refs"3.1ret">flagspaon, void *efs?returncode=priv">refs"3.1ret">privpaon)s 2oti1on> 2o#L78">on> L78">refs"3. ine">get" L78">on78paon{s 2oti1on> 2o#L79">on> L79">refs"3. ine">get" L79">on79paon structrefs?returncode= 2oti _data"prefs"3.1ret"> 2oti _datapaon *efs?returncode=_priv">refs"3.1ret">_privpaon =refs?returncode=priv">refs"3.1ret">privpaonps 2oti1on> 2o#L80">on> L80">refs"3. ine">get" L80">on80paon unsigned longrefs?returncode=old_flags">refs"3.1ret">old_flagspaon =refs?returncode=_priv">refs"3.1ret">_privpaon-"/sppfs?returncode=flags">refs"3.1ret">flagspaonps 2oti1on> 2o#L81">on> L81">refs"3. ine">get" L81">on81paon efs?returncode=_priv">refs"3.1ret">_privpaon-"/sppfs?returncode=flags">refs"3.1ret">flagspaon =refs?returncode=flags">refs"3.1ret">flagspaonps 2oti1on> 2o#L82">on> L82">refs"3. ine">get" L82">on82paon arch(thefs?returncode=old_flags">refs"3.1ret">old_flagspaonps 2oti1on> 2o#L83">on> L83">refs"3. ine">get" L83">on83paon}s 2oti1on> 2o#L84">on> L84">refs"3. ine">get" L84">on84paons 2oti1on> 2o#L85">on> L85">refs"3. ine">get" L85">on85paonstht.p unsigned longrefs?returncode= 2oti _get_flags">refs"3.1ret"> 2oti _get_flagspaon(void *efs?returncode=priv">refs"3.1ret">privpaon)s 2oti1on> 2o#L86">on> L86">refs"3. ine">get" L86">on86paon{s 2oti1on> 2o#L87">on> L87">refs"3. ine">get" L87">on87paon structrefs?returncode= 2oti _data"prefs"3.1ret"> 2oti _datapaon *efs?returncode=_priv">refs"3.1ret">_privpaon =refs?returncode=priv">refs"3.1ret">privpaonps 2oti1on> 2o#L88">on> L88">refs"3. ine">get" L88">on88paon arch(thefs?returncode=_priv">refs"3.1ret">_privpaon-"/sppfs?returncode=flags">refs"3.1ret">flagspaonps 2oti1on> 2o#L89">on> L89">refs"3. ine">get" L89">on89paon}s 2oti1on> 2o#L90">on> L90">refs"3. ine">get" L90">on90paons 2oti1on> 2o#L91">on> L91">refs"3. ine">get" L91">on91paonstht.p void *efs?returncode= 2oti _init"prefs"3.1ret"> 2oti _initpaon(intrefs?returncode=key_idx"prefs"3.1ret">key_idxpaon)s 2oti1on> 2o#L92">on> L92">refs"3. ine">get" L92">on92paon{s 2oti1on> 2o#L93">on> L93">refs"3. ine">get" L93">on93paon structrefs?returncode= 2oti _data"prefs"3.1ret"> 2oti _datapaon *efs?returncode=priv">refs"3.1ret">privpaonps 2oti1on> 2o#L94">on> L94">refs"3. ine">get" L94">on94paons 2oti1on> 2o#L95">on> L95">refs"3. ine">get" L95">on95paon efs?returncode=priv">refs"3.1ret">privpaon =refs?returncode=kzalloc"prefs"3.1ret">kzallocpaon(sizeof(*efs?returncode=priv">refs"3.1ret">privpaon),refs?returncode=GFP_ATOMIC">refs"3.1ret">GFP_ATOMICpaon)ps 2oti1on> 2o#L96">on> L96">refs"3. ine">get" L96">on96paon if (efs?returncode=priv">refs"3.1ret">privpaon ==refs?returncode=NULL">refs"3.1ret">NULLpaon)s 2oti1on> 2o#L97">on> L97">refs"3. ine">get" L97">on97paon gotorefs?returncode=fail">refs"3.1ret">failpaonps 2oti1on> 2o#L98">on> L98">refs"3. ine">get" L98">on98paons 2oti1on> 2o#L99">on> L99">refs"3. ine">get" L99">on99paon efs?returncode=priv">refs"3.1ret">privpaon-"/sppfs?returncode=key_idx"prefs"3.1ret">key_idxpaon =refs?returncode=key_idx"prefs"3.1ret">key_idxpaonps 2oti1on> 2o#L100">on> L100">refs"3. ine">get" L100">o100paons 2oti1on> 2o#L101">on> L101">refs"3. ine">get" L101">o101paon efs?returncode=priv">refs"3.1ret">privpaon-"/sppfs?returncode=tx_tfm_arc4">refs"3.1ret">tx_tfm_arc4paon =refs?returncode=1on> o_alloc_blkcipher"prefs"3.1ret">1on> o_alloc_blkcipherpaon(elxr_prefs"3.stri;&g>"ecb(arc4)"pav cla, 0,s 2oti1on> 2o#L102">on> L102">refs"3. ine">get" L102">o102paon efs?returncode=CRYPTO_ALG_ASYNC">refs"3.1ret">CRYPTO_ALG_ASYNCpaon)ps 2oti1on> 2o#L103">on> L103">refs"3. ine">get" L103">o103paon if (efs?returncode=IS_ERR"prefs"3.1ret">IS_ERRpaon(efs?returncode=priv">refs"3.1ret">privpaon-"/sppfs?returncode=tx_tfm_arc4">refs"3.1ret">tx_tfm_arc4paon)) {s 2oti1on> 2o#L104">on> L104">refs"3. ine">get" L104">o104paon efs?returncode=priv">refs"3.1ret">privpaon-"/sppfs?returncode=tx_tfm_arc4">refs"3.1ret">tx_tfm_arc4paon =refs?returncode=NULL">refs"3.1ret">NULLpaonps 2oti1on> 2o#L105">on> L105">refs"3. ine">get" L105">o105paon gotorefs?returncode=fail">refs"3.1ret">failpaonps 2oti1on> 2o#L106">on> L106">refs"3. ine">get" L106">o106paon }s 2oti1on> 2o#L107">on> L107">refs"3. ine">get" L107">o107paons 2oti1on> 2o#L108">on> L108">refs"3. ine">get" L108">o108paon efs?returncode=priv">refs"3.1ret">privpaon-"/sppfs?returncode=tx_tfm_michael">refs"3.1ret">tx_tfm_michaelpaon =refs?returncode=1on> o_alloc_hash"prefs"3.1ret">1on> o_alloc_hashpaon(elxr_prefs"3.stri;&g>"michael_mic"pav cla, 0,s 2oti1on> 2o#L109">on> L109">refs"3. ine">get" L109">o109paon efs?returncode=CRYPTO_ALG_ASYNC">refs"3.1ret">CRYPTO_ALG_ASYNCpaon)ps 2oti1on> 2o#L110">on> L110">refs"3. ine">get" L110">o110paon if (efs?returncode=IS_ERR"prefs"3.1ret">IS_ERRpaon(efs?returncode=priv">refs"3.1ret">privpaon-"/sppfs?returncode=tx_tfm_michael">refs"3.1ret">tx_tfm_michaelpaon)) {s 2oti1on> 2o#L111">on> L111">refs"3. ine">get" L111">o111paon efs?returncode=priv">refs"3.1ret">privpaon-"/sppfs?returncode=tx_tfm_michael">refs"3.1ret">tx_tfm_michaelpaon =refs?returncode=NULL">refs"3.1ret">NULLpaonps 2oti1on> 2o#L112">on> L112">refs"3. ine">get" L112">o112paon gotorefs?returncode=fail">refs"3.1ret">failpaonps 2oti1on> 2o#L113">on> L113">refs"3. ine">get" L113">o113paon }s 2oti1on> 2o#L114">on> L114">refs"3. ine">get" L114">o114paons 2oti1on> 2o#L115">on> L115">refs"3. ine">get" L115">o115paon efs?returncode=priv">refs"3.1ret">privpaon-"/sppfs?returncode=rx_tfm_arc4">refs"3.1ret">rx_tfm_arc4paon =refs?returncode=1on> o_alloc_blkcipher"prefs"3.1ret">1on> o_alloc_blkcipherpaon(elxr_prefs"3.stri;&g>"ecb(arc4)"pav cla, 0,s 2oti1on> 2o#L116">on> L116">refs"3. ine">get" L116">o116paon efs?returncode=CRYPTO_ALG_ASYNC">refs"3.1ret">CRYPTO_ALG_ASYNCpaon)ps 2oti1on> 2o#L117">on> L117">refs"3. ine">get" L117">o117paon if (efs?returncode=IS_ERR"prefs"3.1ret">IS_ERRpaon(efs?returncode=priv">refs"3.1ret">privpaon-"/sppfs?returncode=rx_tfm_arc4">refs"3.1ret">rx_tfm_arc4paon)) {s 2oti1on> 2o#L118">on> L118">refs"3. ine">get" L118">o118paon efs?returncode=priv">refs"3.1ret">privpaon-"/sppfs?returncode=rx_tfm_arc4">refs"3.1ret">rx_tfm_arc4paon =refs?returncode=NULL">refs"3.1ret">NULLpaonps 2oti1on> 2o#L119">on> L119">refs"3. ine">get" L119">o119paon gotorefs?returncode=fail">refs"3.1ret">failpaonps 2oti1on> 2o#L120">on> L120">refs"3. ine">get" L120">o120paon }s 2oti1on> 2o#L121">on> L121">refs"3. ine">get" L121">o121paons 2oti1on> 2o#L122">on> L122">refs"3. ine">get" L122">o122paon efs?returncode=priv">refs"3.1ret">privpaon-"/sppfs?returncode=rx_tfm_michael">refs"3.1ret">rx_tfm_michaelpaon =refs?returncode=1on> o_alloc_hash"prefs"3.1ret">1on> o_alloc_hashpaon(elxr_prefs"3.stri;&g>"michael_mic"pav cla, 0,s 2oti1on> 2o#L123">on> L123">refs"3. ine">get" L123">o123paon efs?returncode=CRYPTO_ALG_ASYNC">refs"3.1ret">CRYPTO_ALG_ASYNCpaon)ps 2oti1on> 2o#L124">on> L124">refs"3. ine">get" L124">o124paon if (efs?returncode=IS_ERR"prefs"3.1ret">IS_ERRpaon(efs?returncode=priv">refs"3.1ret">privpaon-"/sppfs?returncode=rx_tfm_michael">refs"3.1ret">rx_tfm_michaelpaon)) {s 2oti1on> 2o#L125">on> L125">refs"3. ine">get" L125">o125paon efs?returncode=priv">refs"3.1ret">privpaon-"/sppfs?returncode=rx_tfm_michael">refs"3.1ret">rx_tfm_michaelpaon =refs?returncode=NULL">refs"3.1ret">NULLpaonps 2oti1on> 2o#L126">on> L126">refs"3. ine">get" L126">o126paon gotorefs?returncode=fail">refs"3.1ret">failpaonps 2oti1on> 2o#L127">on> L127">refs"3. ine">get" L127">o127paon }s 2oti1on> 2o#L128">on> L128">refs"3. ine">get" L128">o128paons 2oti1on> 2o#L129">on> L129">refs"3. ine">get" L129">o129paon arch(thefs?returncode=priv">refs"3.1ret">privpaonps 2oti1on> 2o#L130">on> L130">refs"3. ine">get" L130">o130paons 2oti1on> 2o#L131">on> L131">refs"3. ine">get" L131">o131paon efs?returncode=fail">refs"3.1ret">failpaon:s 2oti1on> 2o#L132">on> L132">refs"3. ine">get" L132">o132paon if (efs?returncode=priv">refs"3.1ret">privpaon) {s 2oti1on> 2o#L133">on> L133">refs"3. ine">get" L133">o133paon if (efs?returncode=priv">refs"3.1ret">privpaon-"/sppfs?returncode=tx_tfm_michael">refs"3.1ret">tx_tfm_michaelpaon)s 2oti1on> 2o#L134">on> L134">refs"3. ine">get" L134">o134paon efs?returncode=1on> o_free_hash"prefs"3.1ret">1on> o_free_hashpaon(efs?returncode=priv">refs"3.1ret">privpaon-"/sppfs?returncode=tx_tfm_michael">refs"3.1ret">tx_tfm_michaelpaon)ps 2oti1on> 2o#L135">on> L135">refs"3. ine">get" L135">o135paon if (efs?returncode=priv">refs"3.1ret">privpaon-"/sppfs?returncode=tx_tfm_arc4">refs"3.1ret">tx_tfm_arc4paon)s 2oti1on> 2o#L136">on> L136">refs"3. ine">get" L136">o136paon efs?returncode=1on> o_free_blkcipher"prefs"3.1ret">1on> o_free_blkcipherpaon(efs?returncode=priv">refs"3.1ret">privpaon-"/sppfs?returncode=tx_tfm_arc4">refs"3.1ret">tx_tfm_arc4paon)ps 2oti1on> 2o#L137">on> L137">refs"3. ine">get" L137">o137paon if (efs?returncode=priv">refs"3.1ret">privpaon-"/sppfs?returncode=rx_tfm_michael">refs"3.1ret">rx_tfm_michaelpaon)s 2oti1on> 2o#L138">on> L138">refs"3. ine">get" L138">o138paon efs?returncode=1on> o_free_hash"prefs"3.1ret">1on> o_free_hashpaon(efs?returncode=priv">refs"3.1ret">privpaon-"/sppfs?returncode=rx_tfm_michael">refs"3.1ret">rx_tfm_michaelpaon)ps 2oti1on> 2o#L139">on> L139">refs"3. ine">get" L139">o139paon if (efs?returncode=priv">refs"3.1ret">privpaon-"/sppfs?returncode=rx_tfm_arc4">refs"3.1ret">rx_tfm_arc4paon)s 2oti1on> 2o#L140">on> L140">refs"3. ine">get" L140">o140paon efs?returncode=1on> o_free_blkcipher"prefs"3.1ret">1on> o_free_blkcipherpaon(efs?returncode=priv">refs"3.1ret">privpaon-"/sppfs?returncode=rx_tfm_arc4">refs"3.1ret">rx_tfm_arc4paon)ps 2oti1on> 2o#L141">on> L141">refs"3. ine">get" L141">o141paon efs?returncode=kfree"prefs"3.1ret">kfreepaon(efs?returncode=priv">refs"3.1ret">privpaon)ps 2oti1on> 2o#L142">on> L142">refs"3. ine">get" L142">o142paon }s 2oti1on> 2o#L143">on> L143">refs"3. ine">get" L143">o143paons 2oti1on> 2o#L144">on> L144">refs"3. ine">get" L144">o144paon arch(thefs?returncode=NULL">refs"3.1ret">NULLpaonps 2oti1on> 2o#L145">on> L145">refs"3. ine">get" L145">o145paon}s 2oti1on> 2o#L146">on> L146">refs"3. ine">get" L146">o146paons 2oti1on> 2o#L147">on> L147">refs"3. ine">get" L147">o147paonstht.p void efs?returncode= 2oti _deinit"prefs"3.1ret"> 2oti _deinitpaon(void *efs?returncode=priv">refs"3.1ret">privpaon)s 2oti1on> 2o#L148">on> L148">refs"3. ine">get" L148">o148paon{s 2oti1on> 2o#L149">on> L149">refs"3. ine">get" L149">o149paon structrefs?returncode= 2oti _data"prefs"3.1ret"> 2oti _datapaon *efs?returncode=_priv">refs"3.1ret">_privpaon =refs?returncode=priv">refs"3.1ret">privpaonps 2oti1on> 2o#L150">on> L150">refs"3. ine">get" L150">o150paon if (efs?returncode=_priv">refs"3.1ret">_privpaon) {s 2oti1on> 2o#L151">on> L151">refs"3. ine">get" L151">o151paon if (efs?returncode=_priv">refs"3.1ret">_privpaon-"/sppfs?returncode=tx_tfm_michael">refs"3.1ret">tx_tfm_michaelpaon)s 2oti1on> 2o#L152">on> L152">refs"3. ine">get" L152">o152paon efs?returncode=1on> o_free_hash"prefs"3.1ret">1on> o_free_hashpaon(efs?returncode=_priv">refs"3.1ret">_privpaon-"/sppfs?returncode=tx_tfm_michael">refs"3.1ret">tx_tfm_michaelpaon)ps 2oti1on> 2o#L153">on> L153">refs"3. ine">get" L153">o153paon if (efs?returncode=_priv">refs"3.1ret">_privpaon-"/sppfs?returncode=tx_tfm_arc4">refs"3.1ret">tx_tfm_arc4paon)s 2oti1on> 2o#L154">on> L154">refs"3. ine">get" L154">o154paon efs?returncode=1on> o_free_blkcipher"prefs"3.1ret">1on> o_free_blkcipherpaon(efs?returncode=_priv">refs"3.1ret">_privpaon-"/sppfs?returncode=tx_tfm_arc4">refs"3.1ret">tx_tfm_arc4paon)ps 2oti1on> 2o#L155">on> L155">refs"3. ine">get" L155">o155paon if (efs?returncode=_priv">refs"3.1ret">_privpaon-"/sppfs?returncode=rx_tfm_michael">refs"3.1ret">rx_tfm_michaelpaon)s 2oti1on> 2o#L156">on> L156">refs"3. ine">get" L156">o156paon efs?returncode=1on> o_free_hash"prefs"3.1ret">1on> o_free_hashpaon(efs?returncode=_priv">refs"3.1ret">_privpaon-"/sppfs?returncode=rx_tfm_michael">refs"3.1ret">rx_tfm_michaelpaon)ps 2oti1on> 2o#L157">on> L157">refs"3. ine">get" L157">o157paon if (efs?returncode=_priv">refs"3.1ret">_privpaon-"/sppfs?returncode=rx_tfm_arc4">refs"3.1ret">rx_tfm_arc4paon)s 2oti1on> 2o#L158">on> L158">refs"3. ine">get" L158">o158paon efs?returncode=1on> o_free_blkcipher"prefs"3.1ret">1on> o_free_blkcipherpaon(efs?returncode=_priv">refs"3.1ret">_privpaon-"/sppfs?returncode=rx_tfm_arc4">refs"3.1ret">rx_tfm_arc4paon)ps 2oti1on> 2o#L159">on> L159">refs"3. ine">get" L159">o159paon }s 2oti1on> 2o#L160">on> L160">refs"3. ine">get" L160">o160paon efs?returncode=kfree"prefs"3.1ret">kfreepaon(efs?returncode=priv">refs"3.1ret">privpaon)ps 2oti1on> 2o#L161">on> L161">refs"3. ine">get" L161">o161paon}s 2oti1on> 2o#L162">on> L162">refs"3. ine">get" L162">o162paons 2oti1on> 2o#L163">on> L163">refs"3. ine">get" L163">o163paonstht.p efs?returncode=in ine">refs"3.1ret">in inepaon efs?returncode=u16">refs"3.1ret">u16paon efs?returncode=RotR1">refs"3.1ret">RotR1paon(efs?returncode=u16">refs"3.1ret">u16paon efs?returncode=val">refs"3.1ret">valpaon)s 2oti1on> 2o#L164">on> L164">refs"3. ine">get" L164">o164paon{s 2oti1on> 2o#L165">on> L165">refs"3. ine">get" L165">o165paon arch(th(efs?returncode=val">refs"3.1ret">valpaon a>on"/sp 1) |h(efs?returncode=val">refs"3.1ret">valpaon alon"lsp 15)ps 2oti1on> 2o#L166">on> L166">refs"3. ine">get" L166">o166paon}s 2oti1on> 2o#L167">on> L167">refs"3. ine">get" L167">o167paons 2oti1on> 2o#L168">on> L168">refs"3. ine">get" L168">o168paonstht.p efs?returncode=in ine">refs"3.1ret">in inepaon efs?returncode=u8"prefs"3.1ret">u8paon "fs?returncode=Lo8"prefs"3.1ret">Lo8paon(efs?returncode=u16">refs"3.1ret">u16paon efs?returncode=val">refs"3.1ret">valpaon)s 2oti1on> 2o#L169">on> L169">refs"3. ine">get" L169">o169paon{s 2oti1on> 2o#L170">on> L170">refs"3. ine">get" L170">o170paon arch(thefs?returncode=val">refs"3.1ret">valpaon aamp; 0xffps 2oti1on> 2o#L171">on> L171">refs"3. ine">get" L171">o171paon}s 2oti1on> 2o#L172">on> L172">refs"3. ine">get" L172">o172paons 2oti1on> 2o#L173">on> L173">refs"3. ine">get" L173">o173paonstht.p efs?returncode=in ine">refs"3.1ret">in inepaon efs?returncode=u8"prefs"3.1ret">u8paon "fs?returncode=Hi8"prefs"3.1ret">Hi8paon(efs?returncode=u16">refs"3.1ret">u16paon efs?returncode=val">refs"3.1ret">valpaon)s 2oti1on> 2o#L174">on> L174">refs"3. ine">get" L174">o174paon{s 2oti1on> 2o#L175">on> L175">refs"3. ine">get" L175">o175paon arch(thefs?returncode=val">refs"3.1ret">valpaon a>on"/sp 8ps 2oti1on> 2o#L176">on> L176">refs"3. ine">get" L176">o176paon}s 2oti1on> 2o#L177">on> L177">refs"3. ine">get" L177">o177paons 2oti1on> 2o#L178">on> L178">refs"3. ine">get" L178">o178paonstht.p efs?returncode=in ine">refs"3.1ret">in inepaon efs?returncode=u16">refs"3.1ret">u16paon efs?returncode=Lo16">refs"3.1ret">Lo16paon(efs?returncode=u32">refs"3.1ret">u32paon efs?returncode=val">refs"3.1ret">valpaon)s 2oti1on> 2o#L179">on> L179">refs"3. ine">get" L179">o179paon{s 2oti1on> 2o#L180">on> L180">refs"3. ine">get" L180">o180paon arch(thefs?returncode=val">refs"3.1ret">valpaon aamp; 0xffffps 2oti1on> 2o#L181">on> L181">refs"3. ine">get" L181">o181paon}s 2oti1on> 2o#L182">on> L182">refs"3. ine">get" L182">o182paons 2oti1on> 2o#L183">on> L183">refs"3. ine">get" L183">o183paonstht.p efs?returncode=in ine">refs"3.1ret">in inepaon efs?returncode=u16">refs"3.1ret">u16paon efs?returncode=Hi16">refs"3.1ret">Hi16paon(efs?returncode=u32">refs"3.1ret">u32paon efs?returncode=val">refs"3.1ret">valpaon)s 2oti1on> 2o#L184">on> L184">refs"3. ine">get" L184">o184paon{s 2oti1on> 2o#L185">on> L185">refs"3. ine">get" L185">o185paon arch(thefs?returncode=val">refs"3.1ret">valpaon a>on"/sp 16ps 2oti1on> 2o#L186">on> L186">refs"3. ine">get" L186">o186paon}s 2oti1on> 2o#L187">on> L187">refs"3. ine">get" L187">o187paons 2oti1on> 2o#L188">on> L188">refs"3. ine">get" L188">o188paonstht.p efs?returncode=in ine">refs"3.1ret">in inepaon efs?returncode=u16">refs"3.1ret">u16paon efs?returncode=Mk16">refs"3.1ret">Mk16paon(efs?returncode=u8"prefs"3.1ret">u8paon "fs?returncode=hi"prefs"3.1ret">hipaon,refs?returncode=u8"prefs"3.1ret">u8paon "fs?returncode=lo"prefs"3.1ret"> opaon)s 2oti1on> 2o#L189">on> L189">refs"3. ine">get" L189">o189paon{s 2oti1on> 2o#L190">on> L190">refs"3. ine">get" L190">o190paon arch(thefs?returncode=lo"prefs"3.1ret"> opaon |h(((efs?returncode=u16">refs"3.1ret">u16paon)refs?returncode=hi"prefs"3.1ret">hipaon) alon"lsp 8)ps 2oti1on> 2o#L191">on> L191">refs"3. ine">get" L191">o191paon}s 2oti1on> 2o#L192">on> L192">refs"3. ine">get" L192">o192paons 2oti1on> 2o#L193">on> L193">refs"3. ine">get" L193">o193paonstht.p efs?returncode=in ine">refs"3.1ret">in inepaon efs?returncode=u16">refs"3.1ret">u16paon efs?returncode=Mk16_le">refs"3.1ret">Mk16_lepaon(efs?returncode=__le16">refs"3.1ret">__le16paon *hefs?returncode=v">refs"3.1ret">vpaon)s 2oti1on> 2o#L194">on> L194">refs"3. ine">get" L194">o194paon{s 2oti1on> 2o#L195">on> L195">refs"3. ine">get" L195">o195paon arch(thefs?returncode=le16 o_cpu"prefs"3.1ret"> e16 o_cpupaon(*efs?returncode=v">refs"3.1ret">vpaon)ps 2oti1on> 2o#L196">on> L196">refs"3. ine">get" L196">o196paon}s 2oti1on> 2o#L197">on> L197">refs"3. ine">get" L197">o197paons 2oti1on> 2o#L198">on> L198">refs"3. ine">get" L198">o198paonstht.p constrefs?returncode=u16">refs"3.1ret">u16paon efs?returncode=Sbox"prefs"3.1ret">Sboxpaon[256] = {s 2oti1on> 2o#L199">on> L199">refs"3. ine">get" L199">o199paon 0xC6A5, 0xF884, 0xEE99, 0xF68D, 0xFF0D, 0xD6BD, 0xDEB1, 0x9154,s 2oti1on> 2o#L200">on> L200">refs"3. ine">get" L200">o200paon 0x6050, 0x0203, 0xCEA9, 0x567D, 0xE719, 0xB562, 0x4DE6, 0xEC9A,s 2oti1on> 2o#L201">on> L201">refs"3. ine">get" L201">o201paon 0x8F45, 0x1F9D, 0x8940, 0xFA87, 0xEF15, 0xB2EB, 0x8EC9, 0xFB0B,s 2oti1on> 2o#L202">on> L202">refs"3. ine">get" L202">o202paon 0x41EC, 0xB367, 0x5FFD, 0x45EA, 0x23BF, 0x53F7, 0xE496, 0x9B5B,s 2oti1on> 2o#L203">on> L203">refs"3. ine">get" L203">o203paon 0x75C2, 0xE11C, 0x3DAE, 0x4C6A, 0x6C5A, 0x7E41, 0xF502, 0x834F,s 2oti1on> 2o#L204">on> L204">refs"3. ine">get" L204">o204paon 0x685C, 0x51F4, 0xD134, 0xF908, 0xE293, 0xAB73, 0x6253, 0x2A3F,s 2oti1on> 2o#L205">on> L205">refs"3. ine">get" L205">o205paon 0x080C, 0x9552, 0x4665, 0x9D5E, 0x3028, 0x37A1, 0x0A0F, 0x2FB5,s 2oti1on> 2o#L206">on> L206">refs"3. ine">get" L206">o206paon 0x0E09, 0x2436, 0x1B9B, 0xDF3D, 0xCD26, 0x4E69, 0x7FCD, 0xEA9F,s 2oti1on> 2o#L207">on> L207">refs"3. ine">get" L207">o207paon 0x121B, 0x1D9E, 0x5874, 0x342E, 0x362D, 0xDCB2, 0xB4EE, 0x5BFB,s 2oti1on> 2o#L208">on> L208">refs"3. ine">get" L208">o208paon 0xA4F6, 0x764D, 0xB761, 0x7DCE, 0x527B, 0xDD3E, 0x5E71, 0x1397,s 2oti1on> 2o#L209">on> L209">refs"3. ine">get" L209">o209paon 0xA6F5, 0xB968, 0x0000, 0xC12C, 0x4060, 0xE31F, 0x79C8, 0xB6ED,s 2oti1on> 2o#L210">on> L210">refs"3. ine">get" L210">o210paon 0xD4BE, 0x8D46, 0x67D9, 0x724B, 0x94DE, 0x98D4, 0xB0E8, 0x854A,s 2oti1on> 2o#L211">on> L211">refs"3. ine">get" L211">o211paon 0xBB6B, 0xC52A, 0x4FE5, 0xED16, 0x86C5, 0x9AD7, 0x6655, 0x1194,s 2oti1on> 2o#L212">on> L212">refs"3. ine">get" L212">o212paon 0x8ACF, 0xE910, 0x0406, 0xFE81, 0xA0F0, 0x7844, 0x25BA, 0x4BE3,s 2oti1on> 2o#L213">on> L213">refs"3. ine">get" L213">o213paon 0xA2F3, 0x5DFE, 0x80C0, 0x058A, 0x3FAD, 0x21BC, 0x7048, 0xF104,s 2oti1on> 2o#L214">on> L214">refs"3. ine">get" L214">o214paon 0x63DF, 0x77C1, 0xAF75, 0x4263, 0x2030, 0xE51A, 0xFD0E, 0xBF6D,s 2oti1on> 2o#L215">on> L215">refs"3. ine">get" L215">o215paon 0x814C, 0x1814, 0x2635, 0xC32F, 0xBEE1, 0x35A2, 0x88CC, 0x2E39,s 2oti1on> 2o#L216">on> L216">refs"3. ine">get" L216">o216paon 0x9357, 0x55F2, 0xFC82, 0x7A47, 0xC8AC, 0xBAE7, 0x322B, 0xE695,s 2oti1on> 2o#L217">on> L217">refs"3. ine">get" L217">o217paon 0xC0A0, 0x1998, 0x9ED1, 0xA37F, 0x4466, 0x547E, 0x3BAB, 0x0B83,s 2oti1on> 2o#L218">on> L218">refs"3. ine">get" L218">o218paon 0x8CCA, 0xC729, 0x6BD3, 0x283C, 0xA779, 0xBCE2, 0x161D, 0xAD76,s 2oti1on> 2o#L219">on> L219">refs"3. ine">get" L219">o219paon 0xDB3B, 0x6456, 0x744E, 0x141E, 0x92DB, 0x0C0A, 0x486C, 0xB8E4,s 2oti1on> 2o#L220">on> L220">refs"3. ine">get" L220">o220paon 0x9F5D, 0xBD6E, 0x43EF, 0xC4A6, 0x39A8, 0x31A4, 0xD337, 0xF28B,s 2oti1on> 2o#L221">on> L221">refs"3. ine">get" L221">o221paon 0xD532, 0x8B43, 0x6E59, 0xDAB7, 0x018C, 0xB164, 0x9CD2, 0x49E0,s 2oti1on> 2o#L222">on> L222">refs"3. ine">get" L222">o222paon 0xD8B4, 0xACFA, 0xF307, 0xCF25, 0xCAAF, 0xF48E, 0x47E9, 0x1018,s 2oti1on> 2o#L223">on> L223">refs"3. ine">get" L223">o223paon 0x6FD5, 0xF088, 0x4A6F, 0x5C72, 0x3824, 0x57F1, 0x73C7, 0x9751,s 2oti1on> 2o#L224">on> L224">refs"3. ine">get" L224">o224paon 0xCB23, 0xA17C, 0xE89C, 0x3E21, 0x96DD, 0x61DC, 0x0D86, 0x0F85,s 2oti1on> 2o#L225">on> L225">refs"3. ine">get" L225">o225paon 0xE090, 0x7C42, 0x71C4, 0xCCAA, 0x90D8, 0x0605, 0xF701, 0x1C12,s 2oti1on> 2o#L226">on> L226">refs"3. ine">get" L226">o226paon 0xC2A3, 0x6A5F, 0xAEF9, 0x69D0, 0x1791, 0x9958, 0x3A27, 0x27B9,s 2oti1on> 2o#L227">on> L227">refs"3. ine">get" L227">o227paon 0xD938, 0xEB13, 0x2BB3, 0x2233, 0xD2BB, 0xA970, 0x0789, 0x33A7,s 2oti1on> 2o#L228">on> L228">refs"3. ine">get" L228">o228paon 0x2DB6, 0x3C22, 0x1592, 0xC920, 0x8749, 0xAAFF, 0x5078, 0xA57A,s 2oti1on> 2o#L229">on> L229">refs"3. ine">get" L229">o229paon 0x038F, 0x59F8, 0x0980, 0x1A17, 0x65DA, 0xD731, 0x84C6, 0xD0B8,s 2oti1on> 2o#L230">on> L230">refs"3. ine">get" L230">o230paon 0x82C3, 0x29B0, 0x5A77, 0x1E11, 0x7BCB, 0xA8FC, 0x6DD6, 0x2C3A,s 2oti1on> 2o#L231">on> L231">refs"3. ine">get" L231">o231paon}ps 2oti1on> 2o#L232">on> L232">refs"3. ine">get" L232">o232paons 2oti1on> 2o#L233">on> L233">refs"3. ine">get" L233">o233paonstht.p efs?returncode=in ine">refs"3.1ret">in inepaon efs?returncode=u16">refs"3.1ret">u16paon efs?returncode=_S_">refs"3.1ret">_S_paon(efs?returncode=u16">refs"3.1ret">u16paon efs?returncode=v">refs"3.1ret">vpaon)s 2oti1on> 2o#L234">on> L234">refs"3. ine">get" L234">o234paon{s 2oti1on> 2o#L235">on> L235">refs"3. ine">get" L235">o235paon efs?returncode=u16">refs"3.1ret">u16paon efs?returncode=t"prefs"3.1ret">tpaon =refs?returncode=Sbox"prefs"3.1ret">Sboxpaon["fs?returncode=Hi8"prefs"3.1ret">Hi8paon(efs?returncode=v">refs"3.1ret">vpaon)]ps 2oti1on> 2o#L236">on> L236">refs"3. ine">get" L236">o236paon arch(thefs?returncode=Sbox"prefs"3.1ret">Sboxpaon["fs?returncode=Lo8"prefs"3.1ret">Lo8paon(efs?returncode=v">refs"3.1ret">vpaon)] ^ ((efs?returncode=t"prefs"3.1ret">tpaon alon"lsp 8) |h(efs?returncode=t"prefs"3.1ret">tpaon a>on"/sp 8))ps 2oti1on> 2o#L237">on> L237">refs"3. ine">get" L237">o237paon}s 2oti1on> 2o#L238">on> L238">refs"3. ine">get" L238">o238paons 2oti1on> 2o#L239">on> L239">refs"3. ine">get" L239">o239paon#definehefs?returncode=PHASE1_LOOP_COUNT"prefs"3.1ret">PHASE1_LOOP_COUNTpaon 8s 2oti1on> 2o#L240">on> L240">refs"3. ine">get" L240">o240paons 2oti1on> 2o#L241">on> L241">refs"3. ine">get" L241">o241paonstht.p void efs?returncode=t _mixing_phase1">refs"3.1ret">t _mixing_phase1paon(efs?returncode=u16">refs"3.1ret">u16paon *hefs?returncode=TTAK">refs"3.1ret">TTAKpaon,rconstrefs?returncode=u8"prefs"3.1ret">u8paon *hefs?returncode=TK">refs"3.1ret">TKpaon,rconstrefs?returncode=u8"prefs"3.1ret">u8paon *hefs?returncode=TA">refs"3.1ret">TApaon,s 2oti1on> 2o#L242">on> L242">refs"3. ine">get" L242">o242paon efs?returncode=u32">refs"3.1ret">u32paon efs?returncode=IV32">refs"3.1ret">IV32paon)s 2oti1on> 2o#L243">on> L243">refs"3. ine">get" L243">o243paon{s 2oti1on> 2o#L244">on> L244">refs"3. ine">get" L244">o244paon intrefs?returncode=i"prefs"3.1ret">ipaon,refs?returncode=j"prefs"3.1ret">jpaonps 2oti1on> 2o#L245">on> L245">refs"3. ine">get" L245">o245paons 2oti1on> 2o#L246">on> L246">refs"3. ine">get" L246">o246paon elxr_prefs"3.commenutt/* Initialize the 80-bit TTAK from TSC (IV32) and TA[0..5] */pav clas 2oti1on> 2o#L247">on> L247">refs"3. ine">get" L247">o247paon efs?returncode=TTAK">refs"3.1ret">TTAKpaon[0] =refs?returncode=Lo16">refs"3.1ret">Lo16paon(efs?returncode=IV32">refs"3.1ret">IV32paon)ps 2oti1on> 2o#L248">on> L248">refs"3. ine">get" L248">o248paon efs?returncode=TTAK">refs"3.1ret">TTAKpaon[1] =refs?returncode=Hi16">refs"3.1ret">Hi16paon(efs?returncode=IV32">refs"3.1ret">IV32paon)ps 2oti1on> 2o#L249">on> L249">refs"3. ine">get" L249">o249paon efs?returncode=TTAK">refs"3.1ret">TTAKpaon[2] =refs?returncode=Mk16">refs"3.1ret">Mk16paon(efs?returncode=TA">refs"3.1ret">TApaon[1],refs?returncode=TA">refs"3.1ret">TApaon[0])ps 2oti1on> 2o#L250">on> L250">refs"3. ine">get" L250">o250paon efs?returncode=TTAK">refs"3.1ret">TTAKpaon[3] =refs?returncode=Mk16">refs"3.1ret">Mk16paon(efs?returncode=TA">refs"3.1ret">TApaon[3],refs?returncode=TA">refs"3.1ret">TApaon[2])ps 2oti1on> 2o#L251">on> L251">refs"3. ine">get" L251">o251paon efs?returncode=TTAK">refs"3.1ret">TTAKpaon[4] =refs?returncode=Mk16">refs"3.1ret">Mk16paon(efs?returncode=TA">refs"3.1ret">TApaon[5],refs?returncode=TA">refs"3.1ret">TApaon[4])ps 2oti1on> 2o#L252">on> L252">refs"3. ine">get" L252">o252paons 2oti1on> 2o#L253">on> L253">refs"3. ine">get" L253">o253paon forh(efs?returncode=i"prefs"3.1ret">ipaon =r0;refs?returncode=i"prefs"3.1ret">ipaon alonhefs?returncode=PHASE1_LOOP_COUNT"prefs"3.1ret">PHASE1_LOOP_COUNTpaon;refs?returncode=i"prefs"3.1ret">ipaon++) {s 2oti1on> 2o#L254">on> L254">refs"3. ine">get" L254">o254paon efs?returncode=j"prefs"3.1ret">jpaon =r2 *h(efs?returncode=i"prefs"3.1ret">ipaon aamp; 1)ps 2oti1on> 2o#L255">on> L255">refs"3. ine">get" L255">o255paon efs?returncode=TTAK">refs"3.1ret">TTAKpaon[0] +=refs?returncode=_S_">refs"3.1ret">_S_paon(efs?returncode=TTAK">refs"3.1ret">TTAKpaon[4] ^refs?returncode=Mk16">refs"3.1ret">Mk16paon(efs?returncode=TK">refs"3.1ret">TKpaon[1 + efs?returncode=j"prefs"3.1ret">jpaon],refs?returncode=TK">refs"3.1ret">TKpaon[0 + efs?returncode=j"prefs"3.1ret">jpaon]))ps 2oti1on> 2o#L256">on> L256">refs"3. ine">get" L256">o256paon efs?returncode=TTAK">refs"3.1ret">TTAKpaon[1] +=refs?returncode=_S_">refs"3.1ret">_S_paon(efs?returncode=TTAK">refs"3.1ret">TTAKpaon[0] ^refs?returncode=Mk16">refs"3.1ret">Mk16paon(efs?returncode=TK">refs"3.1ret">TKpaon[5 + efs?returncode=j"prefs"3.1ret">jpaon],refs?returncode=TK">refs"3.1ret">TKpaon[4 + efs?returncode=j"prefs"3.1ret">jpaon]))ps 2oti1on> 2o#L257">on> L257">refs"3. ine">get" L257">o257paon efs?returncode=TTAK">refs"3.1ret">TTAKpaon[2] +=refs?returncode=_S_">refs"3.1ret">_S_paon(efs?returncode=TTAK">refs"3.1ret">TTAKpaon[1] ^refs?returncode=Mk16">refs"3.1ret">Mk16paon(efs?returncode=TK">refs"3.1ret">TKpaon[9 + efs?returncode=j"prefs"3.1ret">jpaon],refs?returncode=TK">refs"3.1ret">TKpaon[8 + efs?returncode=j"prefs"3.1ret">jpaon]))ps 2oti1on> 2o#L258">on> L258">refs"3. ine">get" L258">o258paon efs?returncode=TTAK">refs"3.1ret">TTAKpaon[3] +=refs?returncode=_S_">refs"3.1ret">_S_paon(efs?returncode=TTAK">refs"3.1ret">TTAKpaon[2] ^refs?returncode=Mk16">refs"3.1ret">Mk16paon(efs?returncode=TK">refs"3.1ret">TKpaon[13 + efs?returncode=j"prefs"3.1ret">jpaon],refs?returncode=TK">refs"3.1ret">TKpaon[12 + efs?returncode=j"prefs"3.1ret">jpaon]))ps 2oti1on> 2o#L259">on> L259">refs"3. ine">get" L259">o259paon efs?returncode=TTAK">refs"3.1ret">TTAKpaon[4] +=refs?returncode=_S_">refs"3.1ret">_S_paon(efs?returncode=TTAK">refs"3.1ret">TTAKpaon[3] ^refs?returncode=Mk16">refs"3.1ret">Mk16paon(efs?returncode=TK">refs"3.1ret">TKpaon[1 + efs?returncode=j"prefs"3.1ret">jpaon],refs?returncode=TK">refs"3.1ret">TKpaon[0 + efs?returncode=j"prefs"3.1ret">jpaon])) + efs?returncode=i"prefs"3.1ret">ipaonps 2oti1on> 2o#L260">on> L260">refs"3. ine">get" L260">o260paon }s 2oti1on> 2o#L261">on> L261">refs"3. ine">get" L261">o261paon}s 2oti1on> 2o#L262">on> L262">refs"3. ine">get" L262">o262paons 2oti1on> 2o#L263">on> L263">refs"3. ine">get" L263">o263paonstht.p void efs?returncode=t _mixing_phase2">refs"3.1ret">t _mixing_phase2paon(efs?returncode=u8"prefs"3.1ret">u8paon *hefs?returncode=WEPSeed"prefs"3.1ret">WEPSeedpaon,rconstrefs?returncode=u8"prefs"3.1ret">u8paon *hefs?returncode=TK">refs"3.1ret">TKpaon,rconstrefs?returncode=u16">refs"3.1ret">u16paon *hefs?returncode=TTAK">refs"3.1ret">TTAKpaon,s 2oti1on> 2o#L264">on> L264">refs"3. ine">get" L264">o264paon efs?returncode=u16">refs"3.1ret">u16paon efs?returncode=IV16">refs"3.1ret">IV16paon)s 2oti1on> 2o#L265">on> L265">refs"3. ine">get" L265">o265paon{s 2oti1on> 2o#L266">on> L266">refs"3. ine">get" L266">o266paon elxr_prefs"3.commenutt/* Make temporary area overlap WEP seed so that the finalrcopy cr_pbepav clas 2oti1on> 2o#L267">on> L267">refs"3. ine">get" L267">o267paonelxr_prefs"3.commenutt * avoided on little endir_phosts. */pav clas 2oti1on> 2o#L268">on> L268">refs"3. ine">get" L268">o268paon efs?returncode=u16">refs"3.1ret">u16paon *efs?returncode=PPK">refs"3.1ret">PPKpaon =r(efs?returncode=u16">refs"3.1ret">u16paon *) aamp; efs?returncode=WEPSeed"prefs"3.1ret">WEPSeedpaon[4]ps 2oti1on> 2o#L269">on> L269">refs"3. ine">get" L269">o269paons 2oti1on> 2o#L270">on> L270">refs"3. ine">get" L270">o270paon elxr_prefs"3.commenutt/* Step 1 - make copy of TTAK and bri;& in TSC */pav clas 2oti1on> 2o#L271">on> L271">refs"3. ine">get" L271">o271paon efs?returncode=PPK">refs"3.1ret">PPKpaon[0] =refs?returncode=TTAK">refs"3.1ret">TTAKpaon[0]ps 2oti1on> 2o#L272">on> L272">refs"3. ine">get" L272">o272paon efs?returncode=PPK">refs"3.1ret">PPKpaon[1] =refs?returncode=TTAK">refs"3.1ret">TTAKpaon[1]ps 2oti1on> 2o#L273">on> L273">refs"3. ine">get" L273">o273paon efs?returncode=PPK">refs"3.1ret">PPKpaon[2] =refs?returncode=TTAK">refs"3.1ret">TTAKpaon[2]ps 2oti1on> 2o#L274">on> L274">refs"3. ine">get" L274">o274paon efs?returncode=PPK">refs"3.1ret">PPKpaon[3] =refs?returncode=TTAK">refs"3.1ret">TTAKpaon[3]ps 2oti1on> 2o#L275">on> L275">refs"3. ine">get" L275">o275paon efs?returncode=PPK">refs"3.1ret">PPKpaon[4] =refs?returncode=TTAK">refs"3.1ret">TTAKpaon[4]ps 2oti1on> 2o#L276">on> L276">refs"3. ine">get" L276">o276paon efs?returncode=PPK">refs"3.1ret">PPKpaon[5] =refs?returncode=TTAK">refs"3.1ret">TTAKpaon[4] + efs?returncode=IV16">refs"3.1ret">IV16paonps 2oti1on> 2o#L277">on> L277">refs"3. ine">get" L277">o277paons 2oti1on> 2o#L278">on> L278">refs"3. ine">get" L278">o278paon elxr_prefs"3.commenutt/* Step 2 - 96-bit bijective mixing using S-box */pav clas 2oti1on> 2o#L279">on> L279">refs"3. ine">get" L279">o279paon efs?returncode=PPK">refs"3.1ret">PPKpaon[0] +=refs?returncode=_S_">refs"3.1ret">_S_paon(efs?returncode=PPK">refs"3.1ret">PPKpaon[5] ^refs?returncode=Mk16_le">refs"3.1ret">Mk16_lepaon((efs?returncode=__le16">refs"3.1ret">__le16paon *) aamp; efs?returncode=TK">refs"3.1ret">TKpaon[0]))ps 2oti1on> 2o#L280">on> L280">refs"3. ine">get" L280">o280paon efs?returncode=PPK">refs"3.1ret">PPKpaon[1] +=refs?returncode=_S_">refs"3.1ret">_S_paon(efs?returncode=PPK">refs"3.1ret">PPKpaon[0] ^refs?returncode=Mk16_le">refs"3.1ret">Mk16_lepaon((efs?returncode=__le16">refs"3.1ret">__le16paon *) aamp; efs?returncode=TK">refs"3.1ret">TKpaon[2]))ps 2oti1on> 2o#L281">on> L281">refs"3. ine">get" L281">o281paon efs?returncode=PPK">refs"3.1ret">PPKpaon[2] +=refs?returncode=_S_">refs"3.1ret">_S_paon(efs?returncode=PPK">refs"3.1ret">PPKpaon[1] ^refs?returncode=Mk16_le">refs"3.1ret">Mk16_lepaon((efs?returncode=__le16">refs"3.1ret">__le16paon *) aamp; efs?returncode=TK">refs"3.1ret">TKpaon[4]))ps 2oti1on> 2o#L282">on> L282">refs"3. ine">get" L282">o282paon efs?returncode=PPK">refs"3.1ret">PPKpaon[3] +=refs?returncode=_S_">refs"3.1ret">_S_paon(efs?returncode=PPK">refs"3.1ret">PPKpaon[2] ^refs?returncode=Mk16_le">refs"3.1ret">Mk16_lepaon((efs?returncode=__le16">refs"3.1ret">__le16paon *) aamp; efs?returncode=TK">refs"3.1ret">TKpaon[6]))ps 2oti1on> 2o#L283">on> L283">refs"3. ine">get" L283">o283paon efs?returncode=PPK">refs"3.1ret">PPKpaon[4] +=refs?returncode=_S_">refs"3.1ret">_S_paon(efs?returncode=PPK">refs"3.1ret">PPKpaon[3] ^refs?returncode=Mk16_le">refs"3.1ret">Mk16_lepaon((efs?returncode=__le16">refs"3.1ret">__le16paon *) aamp; efs?returncode=TK">refs"3.1ret">TKpaon[8]))ps 2oti1on> 2o#L284">on> L284">refs"3. ine">get" L284">o284paon efs?returncode=PPK">refs"3.1ret">PPKpaon[5] +=refs?returncode=_S_">refs"3.1ret">_S_paon(efs?returncode=PPK">refs"3.1ret">PPKpaon[4] ^refs?returncode=Mk16_le">refs"3.1ret">Mk16_lepaon((efs?returncode=__le16">refs"3.1ret">__le16paon *) aamp; efs?returncode=TK">refs"3.1ret">TKpaon[10]))ps 2oti1on> 2o#L285">on> L285">refs"3. ine">get" L285">o285paons 2oti1on> 2o#L286">on> L286">refs"3. ine">get" L286">o286paon efs?returncode=PPK">refs"3.1ret">PPKpaon[0] +=refs?returncode=RotR1">refs"3.1ret">RotR1paon(efs?returncode=PPK">refs"3.1ret">PPKpaon[5] ^refs?returncode=Mk16_le">refs"3.1ret">Mk16_lepaon((efs?returncode=__le16">refs"3.1ret">__le16paon *) aamp; efs?returncode=TK">refs"3.1ret">TKpaon[12]))ps 2oti1on> 2o#L287">on> L287">refs"3. ine">get" L287">o287paon efs?returncode=PPK">refs"3.1ret">PPKpaon[1] +=refs?returncode=RotR1">refs"3.1ret">RotR1paon(efs?returncode=PPK">refs"3.1ret">PPKpaon[0] ^refs?returncode=Mk16_le">refs"3.1ret">Mk16_lepaon((efs?returncode=__le16">refs"3.1ret">__le16paon *) aamp; efs?returncode=TK">refs"3.1ret">TKpaon[14]))ps 2oti1on> 2o#L288">on> L288">refs"3. ine">get" L288">o288paon efs?returncode=PPK">refs"3.1ret">PPKpaon[2] +=refs?returncode=RotR1">refs"3.1ret">RotR1paon(efs?returncode=PPK">refs"3.1ret">PPKpaon[1])ps 2oti1on> 2o#L289">on> L289">refs"3. ine">get" L289">o289paon efs?returncode=PPK">refs"3.1ret">PPKpaon[3] +=refs?returncode=RotR1">refs"3.1ret">RotR1paon(efs?returncode=PPK">refs"3.1ret">PPKpaon[2])ps 2oti1on> 2o#L290">on> L290">refs"3. ine">get" L290">o290paon efs?returncode=PPK">refs"3.1ret">PPKpaon[4] +=refs?returncode=RotR1">refs"3.1ret">RotR1paon(efs?returncode=PPK">refs"3.1ret">PPKpaon[3])ps 2oti1on> 2o#L291">on> L291">refs"3. ine">get" L291">o291paon efs?returncode=PPK">refs"3.1ret">PPKpaon[5] +=refs?returncode=RotR1">refs"3.1ret">RotR1paon(efs?returncode=PPK">refs"3.1ret">PPKpaon[4])ps 2oti1on> 2o#L292">on> L292">refs"3. ine">get" L292">o292paons 2oti1on> 2o#L293">on> L293">refs"3. ine">get" L293">o293paon elxr_prefs"3.commenutt/* Step 3 - bri;& in efst of TK bits, fs"ign 24-bit WEP IV valuepav clas 2oti1on> 2o#L294">on> L294">refs"3. ine">get" L294">o294paonelxr_prefs"3.commenutt * WEPSeed[0..2] is transmitted fs WEP IV */pav clas 2oti1on> 2o#L295">on> L295">refs"3. ine">get" L295">o295paon efs?returncode=WEPSeed"prefs"3.1ret">WEPSeedpaon[0] =refs?returncode=Hi8"prefs"3.1ret">Hi8paon(efs?returncode=IV16">refs"3.1ret">IV16paon)ps 2oti1on> 2o#L296">on> L296">refs"3. ine">get" L296">o296paon efs?returncode=WEPSeed"prefs"3.1ret">WEPSeedpaon[1] =r(efs?returncode=Hi8"prefs"3.1ret">Hi8paon(efs?returncode=IV16">refs"3.1ret">IV16paon) | 0x20) aamp; 0x7Fps 2oti1on> 2o#L297">on> L297">refs"3. ine">get" L297">o297paon efs?returncode=WEPSeed"prefs"3.1ret">WEPSeedpaon[2] =refs?returncode=Lo8"prefs"3.1ret">Lo8paon(efs?returncode=IV16">refs"3.1ret">IV16paon)ps 2oti1on> 2o#L298">on> L298">refs"3. ine">get" L298">o298paon efs?returncode=WEPSeed"prefs"3.1ret">WEPSeedpaon[3] =refs?returncode=Lo8"prefs"3.1ret">Lo8paon((efs?returncode=PPK">refs"3.1ret">PPKpaon[5] ^refs?returncode=Mk16_le">refs"3.1ret">Mk16_lepaon((efs?returncode=__le16">refs"3.1ret">__le16paon *) aamp; efs?returncode=TK">refs"3.1ret">TKpaon[0])) a>on"/sp 1)ps 2oti1on> 2o#L299">on> L299">refs"3. ine">get" L299">o299paons 2oti1on> 2o#L300">on> L300">refs"3. ine">get" L300">o300paon#ifdefrefs?returncode=__BIG_ENDIAN">refs"3.1ret">__BIG_ENDIANpaons 2oti1on> 2o#L301">on> L301">refs"3. ine">get" L301">o301paon {s 2oti1on> 2o#L302">on> L302">refs"3. ine">get" L302">o302paon intrefs?returncode=i"prefs"3.1ret">ipaonps 2oti1on> 2o#L303">on> L303">refs"3. ine">get" L303">o303paon forh(efs?returncode=i"prefs"3.1ret">ipaon =r0;refs?returncode=i"prefs"3.1ret">ipaon alonh6;refs?returncode=i"prefs"3.1ret">ipaon++)s 2oti1on> 2o#L304">on> L304">refs"3. ine">get" L304">o304paon efs?returncode=PPK">refs"3.1ret">PPKpaon[efs?returncode=i"prefs"3.1ret">ipaon] =r(efs?returncode=PPK">refs"3.1ret">PPKpaon[efs?returncode=i"prefs"3.1ret">ipaon] alon"lsp 8) |h(efs?returncode=PPK">refs"3.1ret">PPKpaon[efs?returncode=i"prefs"3.1ret">ipaon] a>on"/sp 8)ps 2oti1on> 2o#L305">on> L305">refs"3. ine">get" L305">o305paon }s 2oti1on> 2o#L306">on> L306">refs"3. ine">get" L306">o306paon#endifs 2oti1on> 2o#L307">on> L307">refs"3. ine">get" L307">o307paon}s 2oti1on> 2o#L308">on> L308">refs"3. ine">get" L308">o308paons 2oti1on> 2o#L309">on> L309">refs"3. ine">get" L309">o309paonstht.p intrefs?returncode= 2otit _hdr"prefs"3.1ret"> 2otit _hdrpaon(structrefs?returncode=sk_buff"prefs"3.1ret">sk_buffpaon *efs?returncode=skb"prefs"3.1ret">skbpaon, intrefs?returncode=hdr_len"prefs"3.1ret">hdr_lenpaon,s 2oti1on> 2o#L310">on> L310">refs"3. ine">get" L310">o310paon efs?returncode=u8"prefs"3.1ret">u8paon *hefs?returncode=rc4key"prefs"3.1ret">rc4keypaon, intrefs?returncode=keylen"prefs"3.1ret">keylenpaon, void *efs?returncode=priv">refs"3.1ret">privpaon)s 2oti1on> 2o#L311">on> L311">refs"3. ine">get" L311">o311paon{s 2oti1on> 2o#L312">on> L312">refs"3. ine">get" L312">o312paon structrefs?returncode= 2otit _data"prefs"3.1ret"> 2otit _datapaon *efs?returncode=tkey"prefs"3.1ret">tkeypaon =refs?returncode=priv">refs"3.1ret">privpaonps 2oti1on> 2o#L313">on> L313">refs"3. ine">get" L313">o313paon efs?returncode=u8"prefs"3.1ret">u8paon *efs?returncode=pos">refs"3.1ret">pospaonps 2oti1on> 2o#L314">on> L314">refs"3. ine">get" L314">o314paon structrefs?returncode=ieee 2otihdr"prefs"3.1ret">ieee 2otihdrpaon *efs?returncode=hdr"prefs"3.1ret">hdrpaonps 2oti1on> 2o#L315">on> L315">refs"3. ine">get" L315">o315paons 2oti1on> 2o#L316">on> L316">refs"3. ine">get" L316">o316paon efs?returncode=hdr"prefs"3.1ret">hdrpaon =r(structrefs?returncode=ieee 2otihdr"prefs"3.1ret">ieee 2otihdrpaon *)efs?returncode=skb"prefs"3.1ret">skbpaon-"/sppfs?returncode=data"prefs"3.1ret">datapaonps 2oti1on> 2o#L317">on> L317">refs"3. ine">get" L317">o317paons 2oti1on> 2o#L318">on> L318">refs"3. ine">get" L318">o318paon if (efs?returncode=skb_headroom"prefs"3.1ret">skb_headroompaon(efs?returncode=skb"prefs"3.1ret">skbpaon) alonhefs?returncode=TKIP_HDR_LEN">refs"3.1ret">TKIP_HDR_LENpaon ||refs?returncode=skb"prefs"3.1ret">skbpaon-"/sppfs?returncode=len"prefs"3.1ret">lenpaon alonhefs?returncode=hdr_len"prefs"3.1ret">hdr_lenpaon)s 2oti1on> 2o#L319">on> L319">refs"3. ine">get" L319">o319paon arch(th-1ps 2oti1on> 2o#L320">on> L320">refs"3. ine">get" L320">o320paons 2oti1on> 2o#L321">on> L321">refs"3. ine">get" L321">o321paon if (efs?returncode=rc4key"prefs"3.1ret">rc4keypaon ==refs?returncode=NULL"prefs"3.1ret">NULLpaon ||refs?returncode=keylen"prefs"3.1ret">keylenpaon alonh16)s 2oti1on> 2o#L322">on> L322">refs"3. ine">get" L322">o322paon arch(th-1ps 2oti1on> 2o#L323">on> L323">refs"3. ine">get" L323">o323paons 2oti1on> 2o#L324">on> L324">refs"3. ine">get" L324">o324paon if (!efs?returncode=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=tx_phase1_done">refs"3.1ret">tx_phase1_donepaon) {s 2oti1on> 2o#L325">on> L325">refs"3. ine">get" L325">o325paon efs?returncode=t _mixing_phase1">refs"3.1ret">t _mixing_phase1paon(efs?returncode=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=tx_ttak">refs"3.1ret">tx_ttakpaon, efs?returncode=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=key"prefs"3.1ret">keypaon, efs?returncode=hdr"prefs"3.1ret">hdrpaon-"/sppfs?returncode=addr2">refs"3.1ret">addr2paon,s 2oti1on> 2o#L326">on> L326">refs"3. ine">get" L326">o326paon efs?returncode=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=tx_iv32">refs"3.1ret">tx_iv32paon)ps 2oti1on> 2o#L327">on> L327">refs"3. ine">get" L327">o327paon efs?returncode=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=tx_phase1_done">refs"3.1ret">tx_phase1_donepaon =r1ps 2oti1on> 2o#L328">on> L328">refs"3. ine">get" L328">o328paon }s 2oti1on> 2o#L329">on> L329">refs"3. ine">get" L329">o329paon efs?returncode=t _mixing_phase2">refs"3.1ret">t _mixing_phase2paon(efs?returncode=rc4key"prefs"3.1ret">rc4keypaon, efs?returncode=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=key"prefs"3.1ret">keypaon, efs?returncode=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=tx_ttak">refs"3.1ret">tx_ttakpaon, efs?returncode=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=tx_iv16">refs"3.1ret">tx_iv16paon)ps 2oti1on> 2o#L330">on> L330">refs"3. ine">get" L330">o330paons 2oti1on> 2o#L331">on> L331">refs"3. ine">get" L331">o331paon efs?returncode=pos">refs"3.1ret">pospaon =refs?returncode=skb_push"prefs"3.1ret">skb_pushpaon(efs?returncode=skb"prefs"3.1ret">skbpaon,refs?returncode=TKIP_HDR_LEN">refs"3.1ret">TKIP_HDR_LENpaon)ps 2oti1on> 2o#L332">on> L332">refs"3. ine">get" L332">o332paon efs?returncode=memmove">refs"3.1ret">memmovepaon(efs?returncode=pos">refs"3.1ret">pospaon,refs?returncode=pos">refs"3.1ret">pospaon + efs?returncode=TKIP_HDR_LEN">refs"3.1ret">TKIP_HDR_LENpaon, efs?returncode=hdr_len"prefs"3.1ret">hdr_lenpaon)ps 2oti1on> 2o#L333">on> L333">refs"3. ine">get" L333">o333paon efs?returncode=pos">refs"3.1ret">pospaon +=refs?returncode=hdr_len"prefs"3.1ret">hdr_lenpaonps 2oti1on> 2o#L334">on> L334">refs"3. ine">get" L334">o334paons 2oti1on> 2o#L335">on> L335">refs"3. ine">get" L335">o335paon *efs?returncode=pos">refs"3.1ret">pospaon++ =r*efs?returncode=rc4key"prefs"3.1ret">rc4keypaonps 2oti1on> 2o#L336">on> L336">refs"3. ine">get" L336">o336paon *efs?returncode=pos">refs"3.1ret">pospaon++ =r*(efs?returncode=rc4key"prefs"3.1ret">rc4keypaon + 1)ps 2oti1on> 2o#L337">on> L337">refs"3. ine">get" L337">o337paon *efs?returncode=pos">refs"3.1ret">pospaon++ =r*(efs?returncode=rc4key"prefs"3.1ret">rc4keypaon + 2)ps 2oti1on> 2o#L338">on> L338">refs"3. ine">get" L338">o338paon *efs?returncode=pos">refs"3.1ret">pospaon++ =r(efs?returncode=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=key_idx"prefs"3.1ret">key_idxpaon alonalonh6) |h(1 alonalonh5) elxr_prefs"3.commenutt/* Ext IV included */pav cla ps 2oti1on> 2o#L339">on> L339">refs"3. ine">get" L339">o339paon *efs?returncode=pos">refs"3.1ret">pospaon++ =refs?returncode=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=tx_iv32">refs"3.1ret">tx_iv32paon aamp; 0xffps 2oti1on> 2o#L340">on> L340">refs"3. ine">get" L340">o340paon *efs?returncode=pos">refs"3.1ret">pospaon++ =r(efs?returncode=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=tx_iv32">refs"3.1ret">tx_iv32paon a>on"/sp 8) aamp; 0xffps 2oti1on> 2o#L341">on> L341">refs"3. ine">get" L341">o341paon *efs?returncode=pos">refs"3.1ret">pospaon++ =r(efs?returncode=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=tx_iv32">refs"3.1ret">tx_iv32paon a>on"/sp 16) aamp; 0xffps 2oti1on> 2o#L342">on> L342">refs"3. ine">get" L342">o342paon *efs?returncode=pos">refs"3.1ret">pospaon++ =r(efs?returncode=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=tx_iv32">refs"3.1ret">tx_iv32paon a>on"/sp 24) aamp; 0xffps 2oti1on> 2o#L343">on> L343">refs"3. ine">get" L343">o343paons 2oti1on> 2o#L344">on> L344">refs"3. ine">get" L344">o344paon efs?returncode=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=tx_iv16">refs"3.1ret">tx_iv16paon++ps 2oti1on> 2o#L345">on> L345">refs"3. ine">get" L345">o345paon if (efs?returncode=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=tx_iv16">refs"3.1ret">tx_iv16paon ==r0) {s 2oti1on> 2o#L346">on> L346">refs"3. ine">get" L346">o346paon efs?returncode=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=tx_phase1_done">refs"3.1ret">tx_phase1_donepaon =r0ps 2oti1on> 2o#L347">on> L347">refs"3. ine">get" L347">o347paon efs?returncode=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=tx_iv32">refs"3.1ret">tx_iv32paon++ps 2oti1on> 2o#L348">on> L348">refs"3. ine">get" L348">o348paon }s 2oti1on> 2o#L349">on> L349">refs"3. ine">get" L349">o349paons 2oti1on> 2o#L350">on> L350">refs"3. ine">get" L350">o350paon arch(thefs?returncode=TKIP_HDR_LEN">refs"3.1ret">TKIP_HDR_LENpaonps 2oti1on> 2o#L351">on> L351">refs"3. ine">get" L351">o351paon}s 2oti1on> 2o#L352">on> L352">refs"3. ine">get" L352">o352paons 2oti1on> 2o#L353">on> L353">refs"3. ine">get" L353">o353paonstht.p intrefs?returncode= 2otit _en1on> "prefs"3.1ret"> 2otit _en1on> paon(structrefs?returncode=sk_buff"prefs"3.1ret">sk_buffpaon *efs?returncode=skb"prefs"3.1ret">skbpaon, intrefs?returncode=hdr_len"prefs"3.1ret">hdr_lenpaon, void *efs?returncode=priv">refs"3.1ret">privpaon)s 2oti1on> 2o#L354">on> L354">refs"3. ine">get" L354">o354paon{s 2oti1on> 2o#L355">on> L355">refs"3. ine">get" L355">o355paon structrefs?returncode= 2otit _data"prefs"3.1ret"> 2otit _datapaon *efs?returncode=tkey"prefs"3.1ret">tkeypaon =refs?returncode=priv">refs"3.1ret">privpaonps 2oti1on> 2o#L356">on> L356">refs"3. ine">get" L356">o356paon structrefs?returncode=blkcipher_desc">refs"3.1ret">blkcipher_descpaon pfs?returncode=desc">refs"3.1ret">descpaon = { .efs?returncode=tfm"prefs"3.1ret">tfmpaon =refs?returncode=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=tx_tfm_arc4">refs"3.1ret">tx_tfm_arc4paon }ps 2oti1on> 2o#L357">on> L357">refs"3. ine">get" L357">o357paon intrefs?returncode= en"prefs"3.1ret">lenpaonps 2oti1on> 2o#L358">on> L358">refs"3. ine">get" L358">o358paon efs?returncode=u8"prefs"3.1ret">u8paon efs?returncode=rc4key"prefs"3.1ret">rc4keypaon[16], *efs?returncode=pos">refs"3.1ret">pospaon, *efs?returncode=icv">refs"3.1ret">icvpaonps 2oti1on> 2o#L359">on> L359">refs"3. ine">get" L359">o359paon efs?returncode=u32">refs"3.1ret">u32paon efs?returncode=crc">refs"3.1ret">crcpaonps 2oti1on> 2o#L360">on> L360">refs"3. ine">get" L360">o360paon structrefs?returncode=scatterlis "prefs"3.1ret">scatterlis paon efs?returncode=sg"prefs"3.1ret">sgpaonps 2oti1on> 2o#L361">on> L361">refs"3. ine">get" L361">o361paons 2oti1on> 2o#L362">on> L362">refs"3. ine">get" L362">o362paon if (efs?returncode=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=flags">refs"3.1ret">flagspaon aamp; pfs?returncode=IEEE 2otiCRYPTO_TKIP_COUNTERMEASURES">refs"3.1ret">IEEE 2otiCRYPTO_TKIP_COUNTERMEASURESpaon) {s 2oti1on> 2o#L363">on> L363">refs"3. ine">get" L363">o363paon structrefs?returncode=ieee 2otihdr"prefs"3.1ret">ieee 2otihdrpaon *efs?returncode=hdr"prefs"3.1ret">hdrpaon =r(structrefs?returncode=ieee 2otihdr"prefs"3.1ret">ieee 2otihdrpaon *)efs?returncode=skb"prefs"3.1ret">skbpaon-"/sppfs?returncode=data"prefs"3.1ret">datapaonps 2oti1on> 2o#L364">on> L364">refs"3. ine">get" L364">o364paon pfs?returncode=2ot_dbg_ratelimited"prefs"3.1ret">2ot_dbg_ratelimitedpaon(elxr_prefs"3.string">"TKIP countermeasures: dropped TX packet to %pM\n"pav cla,s 2oti1on> 2o#L365">on> L365">refs"3. ine">get" L365">o365paon efs?returncode=hdr"prefs"3.1ret">hdrpaon-"/sppfs?returncode=addr1">refs"3.1ret">addr1paon)ps 2oti1on> 2o#L366">on> L366">refs"3. ine">get" L366">o366paon arch(th-1ps 2oti1on> 2o#L367">on> L367">refs"3. ine">get" L367">o367paon }s 2oti1on> 2o#L368">on> L368">refs"3. ine">get" L368">o368paons 2oti1on> 2o#L369">on> L369">refs"3. ine">get" L369">o369paon if (efs?returncode=skb_tailroom"prefs"3.1ret">skb_tailroompaon(efs?returncode=skb"prefs"3.1ret">skbpaon) alonh4 ||refs?returncode=skb"prefs"3.1ret">skbpaon-"/sppfs?returncode=len"prefs"3.1ret">lenpaon alonhefs?returncode=hdr_len"prefs"3.1ret">hdr_lenpaon)s 2oti1on> 2o#L370">on> L370">refs"3. ine">get" L370">o370paon arch(th-1ps 2oti1on> 2o#L371">on> L371">refs"3. ine">get" L371">o371paons 2oti1on> 2o#L372">on> L372">refs"3. ine">get" L372">o372paon efs?returncode=len"prefs"3.1ret">lenpaon =refs?returncode=skb"prefs"3.1ret">skbpaon-"/sppfs?returncode=len"prefs"3.1ret">lenpaon -refs?returncode=hdr_len"prefs"3.1ret">hdr_lenpaonps 2oti1on> 2o#L373">on> L373">refs"3. ine">get" L373">o373paon efs?returncode=pos">refs"3.1ret">pospaon =refs?returncode=skb"prefs"3.1ret">skbpaon-"/sppfs?returncode=data"prefs"3.1ret">datapaon + efs?returncode=hdr_len"prefs"3.1ret">hdr_lenpaonps 2oti1on> 2o#L374">on> L374">refs"3. ine">get" L374">o374paons 2oti1on> 2o#L375">on> L375">refs"3. ine">get" L375">o375paon if ((efs?returncode= 2otit _hdr"prefs"3.1ret"> 2otit _hdrpaon(efs?returncode=skb"prefs"3.1ret">skbpaon, efs?returncode=hdr_len"prefs"3.1ret">hdr_lenpaon, efs?returncode=rc4key"prefs"3.1ret">rc4keypaon, 16,refs?returncode=priv">refs"3.1ret">privpaon)) alonh0)s 2oti1on> 2o#L376">on> L376">refs"3. ine">get" L376">o376paon arch(th-1ps 2oti1on> 2o#L377">on> L377">refs"3. ine">get" L377">o377paons 2oti1on> 2o#L378">on> L378">refs"3. ine">get" L378">o378paon efs?returncode=crc">refs"3.1ret">crcpaon =r~efs?returncode=crc32_le">refs"3.1ret">crc32_lepaon(~0,refs?returncode=pos">refs"3.1ret">pospaon,refs?returncode=len"prefs"3.1ret">lenpaon)ps 2oti1on> 2o#L379">on> L379">refs"3. ine">get" L379">o379paon efs?returncode=icv">refs"3.1ret">icvpaon =refs?returncode=skb_pu "prefs"3.1ret">skb_pu paon(efs?returncode=skb"prefs"3.1ret">skbpaon, 4)ps 2oti1on> 2o#L380">on> L380">refs"3. ine">get" L380">o380paon efs?returncode=icv">refs"3.1ret">icvpaon[0] =refs?returncode=crc">refs"3.1ret">crcpaonps 2oti1on> 2o#L381">on> L381">refs"3. ine">get" L381">o381paon efs?returncode=icv">refs"3.1ret">icvpaon[1] =refs?returncode=crc">refs"3.1ret">crcpaon a>on"/sp 8ps 2oti1on> 2o#L382">on> L382">refs"3. ine">get" L382">o382paon efs?returncode=icv">refs"3.1ret">icvpaon[2] =refs?returncode=crc">refs"3.1ret">crcpaon a>on"/sp 16ps 2oti1on> 2o#L383">on> L383">refs"3. ine">get" L383">o383paon efs?returncode=icv">refs"3.1ret">icvpaon[3] =refs?returncode=crc">refs"3.1ret">crcpaon a>on"/sp 24ps 2oti1on> 2o#L384">on> L384">refs"3. ine">get" L384">o384paons 2oti1on> 2o#L385">on> L385">refs"3. ine">get" L385">o385paon efs?returncode=1on> o_blkcipher_setkey"prefs"3.1ret">1on> o_blkcipher_setkeypaon(efs?returncode=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=tx_tfm_arc4">refs"3.1ret">tx_tfm_arc4paon, efs?returncode=rc4key"prefs"3.1ret">rc4keypaon, 16)ps 2oti1on> 2o#L386">on> L386">refs"3. ine">get" L386">o386paon efs?returncode=sg_init_one">refs"3.1ret">sg_init_onepaon(aamp;efs?returncode=sg"prefs"3.1ret">sgpaon,refs?returncode=pos">refs"3.1ret">pospaon,refs?returncode=len"prefs"3.1ret">lenpaon + 4)ps 2oti1on> 2o#L387">on> L387">refs"3. ine">get" L387">o387paon arch(thefs?returncode=1on> o_blkcipher_en1on> "prefs"3.1ret">1on> o_blkcipher_en1on> paon(aamp;efs?returncode=desc">refs"3.1ret">descpaon, aamp;efs?returncode=sg"prefs"3.1ret">sgpaon,raamp;efs?returncode=sg"prefs"3.1ret">sgpaon,refs?returncode=len"prefs"3.1ret">lenpaon + 4)ps 2oti1on> 2o#L388">on> L388">refs"3. ine">get" L388">o388paon}s 2oti1on> 2o#L389">on> L389">refs"3. ine">get" L389">o389paons 2oti1on> 2o#L390">on> L390">refs"3. ine">get" L390">o390paonelxr_prefs"3.commenutt/*pav clas 2oti1on> 2o#L391">on> L391">refs"3. ine">get" L391">o391paonelxr_prefs"3.commenutt * deal with seq counter wrappi;& correctly.pav clas 2oti1on> 2o#L392">on> L392">refs"3. ine">get" L392">o392paonelxr_prefs"3.commenutt * reter to timer_after() forhjiffies wrappi;& hand ingpav clas 2oti1on> 2o#L393">on> L393">refs"3. ine">get" L393">o393paonelxr_prefs"3.commenutt */pav clas 2oti1on> 2o#L394">on> L394">refs"3. ine">get" L394">o394paonstht.p efs?returncode=in ine">refs"3.1ret">in inepaon intrefs?returncode=t _replay_check">refs"3.1ret">t _replay_checkpaon(efs?returncode=u32">refs"3.1ret">u32paon efs?returncode=iv32_n"prefs"3.1ret">iv32_npaon,refs?returncode=u16">refs"3.1ret">u16paon efs?returncode=iv16_n"prefs"3.1ret">iv16_npaon,s 2oti1on> 2o#L395">on> L395">refs"3. ine">get" L395">o395paon efs?returncode=u32">refs"3.1ret">u32paon efs?returncode=iv32_o"prefs"3.1ret">iv32_opaon,refs?returncode=u16">refs"3.1ret">u16paon efs?returncode=iv16_o"prefs"3.1ret">iv16_opaon)s 2oti1on> 2o#L396">on> L396">refs"3. ine">get" L396">o396paon{s 2oti1on> 2o#L397">on> L397">refs"3. ine">get" L397">o397paon if ((efs?returncode=s32">refs"3.1ret">s32paon)efs?returncode=iv32_n"prefs"3.1ret">iv32_npaon - (efs?returncode=s32">refs"3.1ret">s32paon)efs?returncode=iv32_o"prefs"3.1ret">iv32_opaon alonh0 ||s 2oti1on> 2o#L398">on> L398">refs"3. ine">get" L398">o398paon (efs?returncode=iv32_n"prefs"3.1ret">iv32_npaon ==refs?returncode=iv32_o"prefs"3.1ret">iv32_opaon aamp;aamp; pfs?returncode=iv16_n"prefs"3.1ret">iv16_npaon alon=refs?returncode=iv16_o"prefs"3.1ret">iv16_opaon))s 2oti1on> 2o#L399">on> L399">refs"3. ine">get" L399">o399paon arch(th1ps 2oti1on> 2o#L400">on> L400">refs"3. ine">get" L400">o400paon arch(th0ps 2oti1on> 2o#L401">on> L401">refs"3. ine">get" L401">o401paon}s 2oti1on> 2o#L402">on> L402">refs"3. ine">get" L402">o402paons 2oti1on> 2o#L403">on> L403">refs"3. ine">get" L403">o403paonstht.p intrefs?returncode= 2otit _de1on> "prefs"3.1ret"> 2otit _de1on> paon(structrefs?returncode=sk_buff"prefs"3.1ret">sk_buffpaon *efs?returncode=skb"prefs"3.1ret">skbpaon, intrefs?returncode=hdr_len"prefs"3.1ret">hdr_lenpaon, void *efs?returncode=priv">refs"3.1ret">privpaon)s 2oti1on> 2o#L404">on> L404">refs"3. ine">get" L404">o404paon{s 2oti1on> 2o#L405">on> L405">refs"3. ine">get" L405">o405paon structrefs?returncode= 2otit _data"prefs"3.1ret"> 2otit _datapaon *efs?returncode=tkey"prefs"3.1ret">tkeypaon =refs?returncode=priv">refs"3.1ret">privpaonps 2oti1on> 2o#L406">on> L406">refs"3. ine">get" L406">o406paon structrefs?returncode=blkcipher_desc">refs"3.1ret">blkcipher_descpaon pfs?returncode=desc">refs"3.1ret">descpaon = { .efs?returncode=tfm"prefs"3.1ret">tfmpaon =refs?returncode=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=rx_tfm_arc4">refs"3.1ret">rx_tfm_arc4paon }ps 2oti1on> 2o#L407">on> L407">refs"3. ine">get" L407">o407paon efs?returncode=u8"prefs"3.1ret">u8paon efs?returncode=rc4key"prefs"3.1ret">rc4keypaon[16]ps 2oti1on> 2o#L408">on> L408">refs"3. ine">get" L408">o408paon efs?returncode=u8"prefs"3.1ret">u8paon efs?returncode=keyidx"prefs"3.1ret">keyidxpaon, *efs?returncode=pos">refs"3.1ret">pospaonps 2oti1on> 2o#L409">on> L409">refs"3. ine">get" L409">o409paon efs?returncode=u32">refs"3.1ret">u32paon efs?returncode=iv32">refs"3.1ret">iv32paonps 2oti1on> 2o#L410">on> L410">refs"3. ine">get" L410">o410paon efs?returncode=u16">refs"3.1ret">u16paon efs?returncode=iv16"prefs"3.1ret">iv16paonps 2oti1on> 2o#L411">on> L411">refs"3. ine">get" L411">o411paon structrefs?returncode=ieee 2otihdr"prefs"3.1ret">ieee 2otihdrpaon *efs?returncode=hdr"prefs"3.1ret">hdrpaonps 2oti1on> 2o#L412">on> L412">refs"3. ine">get" L412">o412paon efs?returncode=u8"prefs"3.1ret">u8paon efs?returncode=icv">refs"3.1ret">icvpaon[4]ps 2oti1on> 2o#L413">on> L413">refs"3. ine">get" L413">o413paon efs?returncode=u32">refs"3.1ret">u32paon efs?returncode=crc">refs"3.1ret">crcpaonps 2oti1on> 2o#L414">on> L414">refs"3. ine">get" L414">o414paon structrefs?returncode=scatterlis "prefs"3.1ret">scatterlis paon efs?returncode=sg"prefs"3.1ret">sgpaonps 2oti1on> 2o#L415">on> L415">refs"3. ine">get" L415">o415paon intrefs?returncode=plen"prefs"3.1ret">plenpaonps 2oti1on> 2o#L416">on> L416">refs"3. ine">get" L416">o416paons 2oti1on> 2o#L417">on> L417">refs"3. ine">get" L417">o417paon efs?returncode=hdr"prefs"3.1ret">hdrpaon =r(structrefs?returncode=ieee 2otihdr"prefs"3.1ret">ieee 2otihdrpaon *)efs?returncode=skb"prefs"3.1ret">skbpaon-"/sppfs?returncode=data"prefs"3.1ret">datapaonps 2oti1on> 2o#L418">on> L418">refs"3. ine">get" L418">o418paons 2oti1on> 2o#L419">on> L419">refs"3. ine">get" L419">o419paon if (efs?returncode=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=flags">refs"3.1ret">flagspaon aamp; pfs?returncode=IEEE 2otiCRYPTO_TKIP_COUNTERMEASURES">refs"3.1ret">IEEE 2otiCRYPTO_TKIP_COUNTERMEASURESpaon) {s 2oti1on> 2o#L420">on> L420">refs"3. ine">get" L420">o420paon pfs?returncode=2ot_dbg_ratelimited"prefs"3.1ret">2ot_dbg_ratelimitedpaon(elxr_prefs"3.string">"TKIP countermeasures: dropped received packet from %pM\n"pav cla,s 2oti1on> 2o#L421">on> L421">refs"3. ine">get" L421">o421paon efs?returncode=hdr"prefs"3.1ret">hdrpaon-"/sppfs?returncode=addr2">refs"3.1ret">addr2paon)ps 2oti1on> 2o#L422">on> L422">refs"3. ine">get" L422">o422paon arch(th-1ps 2oti1on> 2o#L423">on> L423">refs"3. ine">get" L423">o423paon }s 2oti1on> 2o#L424">on> L424">refs"3. ine">get" L424">o424paons 2oti1on> 2o#L425">on> L425">refs"3. ine">get" L425">o425paon if (efs?returncode=skb"prefs"3.1ret">skbpaon-"/sppfs?returncode=len"prefs"3.1ret">lenpaon alonhefs?returncode=hdr_len"prefs"3.1ret">hdr_lenpaon + efs?returncode=TKIP_HDR_LEN">refs"3.1ret">TKIP_HDR_LENpaon + 4)s 2oti1on> 2o#L426">on> L426">refs"3. ine">get" L426">o426paon arch(th-1ps 2oti1on> 2o#L427">on> L427">refs"3. ine">get" L427">o427paons 2oti1on> 2o#L428">on> L428">refs"3. ine">get" L428">o428paon efs?returncode=pos">refs"3.1ret">pospaon =refs?returncode=skb"prefs"3.1ret">skbpaon-"/sppfs?returncode=data"prefs"3.1ret">datapaon + efs?returncode=hdr_len"prefs"3.1ret">hdr_lenpaonps 2oti1on> 2o#L429">on> L429">refs"3. ine">get" L429">o429paon efs?returncode=keyidx"prefs"3.1ret">keyidxpaon =refs?returncode=pos">refs"3.1ret">pospaon[3]ps 2oti1on> 2o#L430">on> L430">refs"3. ine">get" L430">o430paon if (!(efs?returncode=keyidx"prefs"3.1ret">keyidxpaon aamp; (1 alonalonh5))) {s 2oti1on> 2o#L431">on> L431">refs"3. ine">get" L431">o431paon pfs?returncode=2ot_dbg_ratelimited"prefs"3.1ret">2ot_dbg_ratelimitedpaon(elxr_prefs"3.string">"TKIP: received packet without ExtIV flag from %pM\n"pav cla,s 2oti1on> 2o#L432">on> L432">refs"3. ine">get" L432">o432paon efs?returncode=hdr"prefs"3.1ret">hdrpaon-"/sppfs?returncode=addr2">refs"3.1ret">addr2paon)ps 2oti1on> 2o#L433">on> L433">refs"3. ine">get" L433">o433paon arch(th-2ps 2oti1on> 2o#L434">on> L434">refs"3. ine">get" L434">o434paon }s 2oti1on> 2o#L435">on> L435">refs"3. ine">get" L435">o435paon efs?returncode=keyidx"prefs"3.1ret">keyidxpaon a>on"/sp= 6ps 2oti1on> 2o#L436">on> L436">refs"3. ine">get" L436">o436paon if (efs?returncode=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=key_idx"prefs"3.1ret">key_idxpaon !=refs?returncode=keyidx"prefs"3.1ret">keyidxpaon) {s 2oti1on> 2o#L437">on> L437">refs"3. ine">get" L437">o437paon efs?returncode=printk">refs"3.1ret">printkpaon(efs?returncode=KERN_DEBUG">refs"3.1ret">KERN_DEBUGpaon elxr_prefs"3.string">"TKIP: RX tkey-"/spkey_idx=%d fret" "pav clas 2oti1on> 2o#L438">on> L438">refs"3. ine">get" L438">o438paon elxr_prefs"3.string">"keyidx=%d priv=%p\n"pav cla, efs?returncode=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=key_idx"prefs"3.1ret">key_idxpaon, efs?returncode=keyidx"prefs"3.1ret">keyidxpaon, efs?returncode=priv">refs"3.1ret">privpaon)ps 2oti1on> 2o#L439">on> L439">refs"3. ine">get" L439">o439paon arch(th-6ps 2oti1on> 2o#L440">on> L440">refs"3. ine">get" L440">o440paon }s 2oti1on> 2o#L441">on> L441">refs"3. ine">get" L441">o441paon if (!efs?returncode=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=key_se "prefs"3.1ret">key_se paon) {s 2oti1on> 2o#L442">on> L442">refs"3. ine">get" L442">o442paon pfs?returncode=2ot_dbg_ratelimited"prefs"3.1ret">2ot_dbg_ratelimitedpaon(elxr_prefs"3.string">"TKIP: received packet from %pM with keyid=%d that does not have a configured key\n"pav cla,s 2oti1on> 2o#L443">on> L443">refs"3. ine">get" L443">o443paon efs?returncode=hdr"prefs"3.1ret">hdrpaon-"/sppfs?returncode=addr2">refs"3.1ret">addr2paon, efs?returncode=keyidx"prefs"3.1ret">keyidxpaon)ps 2oti1on> 2o#L444">on> L444">refs"3. ine">get" L444">o444paon arch(th-3ps 2oti1on> 2o#L445">on> L445">refs"3. ine">get" L445">o445paon }s 2oti1on> 2o#L446">on> L446">refs"3. ine">get" L446">o446paon efs?returncode=iv16"prefs"3.1ret">iv16paon =r(efs?returncode=pos">refs"3.1ret">pospaon[0] alon"lsp 8) |hefs?returncode=pos">refs"3.1ret">pospaon[2]ps 2oti1on> 2o#L447">on> L447">refs"3. ine">get" L447">o447paon efs?returncode=iv32">refs"3.1ret">iv32paon =refs?returncode=pos">refs"3.1ret">pospaon[4] |h(efs?returncode=pos">refs"3.1ret">pospaon[5] alon"lsp 8) |h(efs?returncode=pos">refs"3.1ret">pospaon[6] alon"lsp 16) |h(efs?returncode=pos">refs"3.1ret">pospaon[7] alon"lsp 24)ps 2oti1on> 2o#L448">on> L448">refs"3. ine">get" L448">o448paon efs?returncode=pos">refs"3.1ret">pospaon +=refs?returncode=TKIP_HDR_LEN">refs"3.1ret">TKIP_HDR_LENpaonps 2oti1on> 2o#L449">on> L449">refs"3. ine">get" L449">o449paons 2oti1on> 2o#L450">on> L450">refs"3. ine">get" L450">o450paon if (efs?returncode=tk _replay_check">refs"3.1ret">t _replay_checkpaon(efs?returncode=iv32">refs"3.1ret">iv32paon, efs?returncode=iv16"prefs"3.1ret">iv16paon, efs?returncode=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=rx_iv32">refs"3.1ret">rx_iv32paon, efs?returncode=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=rx_iv16"prefs"3.1ret">rx_iv16paon)) {s 2oti1on> 2o#L451">on> L451">refs"3. ine">get" L451">o451paon#ifdefrefs?returncode=CONFIG_LIB 2otiDEBUG">refs"3.1ret">CONFIG_LIB 2otiDEBUGpaons 2oti1on> 2o#L452">on> L452">refs"3. ine">get" L452">o452paon pfs?returncode=2ot_dbg_ratelimited"prefs"3.1ret">2ot_dbg_ratelimitedpaon(elxr_prefs"3.string">"TKIP: replay detected: STA=%pM previous TSC %08x%04x received TSC %08x%04x\n"pav cla,s 2oti1on> 2o#L453">on> L453">refs"3. ine">get" L453">o453paon efs?returncode=hdr"prefs"3.1ret">hdrpaon-"/sppfs?returncode=addr2">refs"3.1ret">addr2paon, efs?returncode=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=rx_iv32">refs"3.1ret">rx_iv32paon, efs?returncode=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=rx_iv16"prefs"3.1ret">rx_iv16paon,s 2oti1on> 2o#L454">on> L454">refs"3. ine">get" L454">o454paon efs?returncode=iv32">refs"3.1ret">iv32paon, efs?returncode=iv16"prefs"3.1ret">iv16paon)ps 2oti1on> 2o#L455">on> L455">refs"3. ine">get" L455">o455paon#endifs 2oti1on> 2o#L456">on> L456">refs"3. ine">get" L456">o456paon efs?returncode=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=dot11RSNAStatsTKIPReplays">refs"3.1ret">dot11RSNAStatsTKIPReplayspaon++ps 2oti1on> 2o#L457">on> L457">refs"3. ine">get" L457">o457paon arch(th-4ps 2oti1on> 2o#L458">on> L458">refs"3. ine">get" L458">o458paon }s 2oti1on> 2o#L459">on> L459">refs"3. ine">get" L459">o459paons 2oti1on> 2o#L460">on> L460">refs"3. ine">get" L460">o460paon if (efs?returncode=iv32">refs"3.1ret">iv32paon !=refs?returncode=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=rx_iv32">refs"3.1ret">rx_iv32paon ||r!efs?returncode=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=rx_phase1_done">refs"3.1ret">rx_phase1_donepaon) {s 2oti1on> 2o#L461">on> L461">refs"3. ine">get" L461">o461paon pfs?returncode=t _mixing_phase1">refs"3.1ret">t _mixing_phase1paon(efs?returncode=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=rx_ttak">refs"3.1ret">rx_ttakpaon, efs?returncode=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=key"prefs"3.1ret">keypaon, efs?returncode=hdr"prefs"3.1ret">hdrpaon-"/sppfs?returncode=addr2">refs"3.1ret">addr2paon, efs?returncode=iv32">refs"3.1ret">iv32paon)ps 2oti1on> 2o#L462">on> L462">refs"3. ine">get" L462">o462paon pfs?returncode=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=rx_phase1_done">refs"3.1ret">rx_phase1_donepaon =r1ps 2oti1on> 2o#L463">on> L463">refs"3. ine">get" L463">o463paon }s 2oti1on> 2o#L464">on> L464">refs"3. ine">get" L464">o464paon efs?returncode=tk _mixing_phase2">refs"3.1ret">t _mixing_phase2paon(efs?returncode=rc4key"prefs"3.1ret">rc4keypaon, efs?returncode=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=key"prefs"3.1ret">keypaon, efs?returncode=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=rx_ttak">refs"3.1ret">rx_ttakpaon, efs?returncode=iv16"prefs"3.1ret">iv16paon)ps 2oti1on> 2o#L465">on> L465">refs"3. ine">get" L465">o465paons 2oti1on> 2o#L466">on> L466">refs"3. ine">get" L466">o466paon efs?returncode=plen"prefs"3.1ret">plenpaon =refs?returncode=skb"prefs"3.1ret">skbpaon-"/sppfs?returncode=len"prefs"3.1ret">lenpaon -refs?returncode=hdr_len"prefs"3.1ret">hdr_lenpaon -r12ps 2oti1on> 2o#L467">on> L467">refs"3. ine">get" L467">o467paons 2oti1on> 2o#L468">on> L468">refs"3. ine">get" L468">o468paon efs?returncode=crn> o_blkcipher_setkey"prefs"3.1ret">1on> o_blkcipher_setkeypaon(efs?returncode=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=rx_tfm_arc4">refs"3.1ret">rx_tfm_arc4paon, efs?returncode=rc4key"prefs"3.1ret">rc4keypaon, 16)ps 2oti1on> 2o#L469">on> L469">refs"3. ine">get" L469">o469paon efs?returncode=sg_init_one">refs"3.1ret">sg_init_onepaon(aamp;efs?returncode=sg"prefs"3.1ret">sgpaon,refs?returncode=pos">refs"3.1ret">pospaon,refs?returncode=plen"prefs"3.1ret">plenpaon + 4)ps 2oti1on> 2o#L470">on> L470">refs"3. ine">get" L470">o470paon if (efs?returncode=1on> o_blkcipher_de1on> "prefs"3.1ret">1on> o_blkcipher_de1on> paon(aamp;efs?returncode=desc">refs"3.1ret">descpaon, aamp;efs?returncode=sg"prefs"3.1ret">sgpaon,raamp;efs?returncode=sg"prefs"3.1ret">sgpaon,refs?returncode=plen"prefs"3.1ret">plenpaon + 4)) {s 2oti1on> 2o#L471">on> L471">refs"3. ine">get" L471">o471paon pfs?returncode=2ot_dbg_ratelimited"prefs"3.1ret">2ot_dbg_ratelimitedpaon(elxr_prefs"3.string">"TKIP: failed to de1on> received packet from %pM\n"pav cla,s 2oti1on> 2o#L472">on> L472">refs"3. ine">get" L472">o472paon efs?returncode=hdr"prefs"3.1ret">hdrpaon-"/sppfs?returncode=addr2">refs"3.1ret">addr2paon)ps 2oti1on> 2o#L473">on> L473">refs"3. ine">get" L473">o473paon arch(th-7ps 2oti1on> 2o#L474">on> L474">refs"3. ine">get" L474">o474paon }s 2oti1on> 2o#L475">on> L475">refs"3. ine">get" L475">o475paons 2oti1on> 2o#L476">on> L476">refs"3. ine">get" L476">o476paon efs?returncode=crc">refs"3.1ret">crcpaon =r~efs?returncode=crc32_le">refs"3.1ret">crc32_lepaon(~0,refs?returncode=pos">refs"3.1ret">pospaon,refs?returncode=plen"prefs"3.1ret">plenpaon)ps 2oti1on> 2o#L477">on> L477">refs"3. ine">get" L477">o477paon efs?returncode=icv">refs"3.1ret">icvpaon[0] =refs?returncode=crc">refs"3.1ret">crcpaonps 2oti1on> 2o#L478">on> L478">refs"3. ine">get" L478">o478paon efs?returncode=icv">refs"3.1ret">icvpaon[1] =refs?returncode=crc">refs"3.1ret">crcpaon a>on"/sp 8ps 2oti1on> 2o#L479">on> L479">refs"3. ine">get" L479">o479paon efs?returncode=icv">refs"3.1ret">icvpaon[2] =refs?returncode=crc">refs"3.1ret">crcpaon a>on"/sp 16ps 2oti1on> 2o#L480">on> L480">refs"3. ine">get" L480">o480paon efs?returncode=icv">refs"3.1ret">icvpaon[3] =refs?returncode=crc">refs"3.1ret">crcpaon a>on"/sp 24ps 2oti1on> 2o#L481">on> L481">refs"3. ine">get" L481">o481paon if (efs?returncode=memcmp">refs"3.1ret">memcmppaon(efs?returncode=icv">refs"3.1ret">icvpaon,refs?returncode=pos">refs"3.1ret">pospaon + efs?returncode=plen"prefs"3.1ret">plenpaon, 4) !=r0) {s 2oti1on> 2o#L482">on> L482">refs"3. ine">get" L482">o482paon if (efs?returncode=iv32">refs"3.1ret">iv32paon !=refs?returncode=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=rx_iv32">refs"3.1ret">rx_iv32paon) {s 2oti1on> 2o#L483">on> L483">refs"3. ine">get" L483">o483paon elxr_prefs"3.commenutt/* Previously cached Phase1 arsult was already lost, sopav clas 2oti1on> 2o#L484">on> L484">refs"3. ine">get" L484">o484paonelxr_prefs"3.commenutt * it needs to be recalculated forhthe next packet. */pav clas 2oti1on> 2o#L485">on> L485">refs"3. ine">get" L485">o485paon pfs?returncode=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=rx_phase1_done">refs"3.1ret">rx_phase1_donepaon =r0ps 2oti1on> 2o#L486">on> L486">refs"3. ine">get" L486">o486paon }s 2oti1on> 2o#L487">on> L487">refs"3. ine">get" L487">o487paon#ifdefrefs?returncode=CONFIG_LIB 2otiDEBUG">refs"3.1ret">CONFIG_LIB 2otiDEBUGpaons 2oti1on> 2o#L488">on> L488">refs"3. ine">get" L488">o488paon pfs?returncode=2ot_dbg_ratelimited"prefs"3.1ret">2ot_dbg_ratelimitedpaon(elxr_prefs"3.string">"TKIP: ICV errorhdetected: STA=%pM\n"pav cla,s 2oti1on> 2o#L489">on> L489">refs"3. ine">get" L489">o489paon pfs?returncode=hdr"prefs"3.1ret">hdrpaon-"/sppfs?returncode=addr2">refs"3.1ret">addr2paon)ps 2oti1on> 2o#L490">on> L490">refs"3. ine">get" L490">o490paon#endifs 2oti1on> 2o#L491">on> L491">refs"3. ine">get" L491">o491paon pfs?returncode=t ey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=dot11RSNAStatsTKIPICVErrors">refs"3.1ret">dot11RSNAStatsTKIPICVErrorspaon++ps 2oti1on> 2o#L492">on> L492">refs"3. ine">get" L492">o492paon arch(th-5ps 2oti1on> 2o#L493">on> L493">refs"3. ine">get" L493">o493paon }s 2oti1on> 2o#L494">on> L494">refs"3. ine">get" L494">o494paons 2oti1on> 2o#L495">on> L495">refs"3. ine">get" L495">o495paon elxr_prefs"3.commenutt/* Update aral counters only after Michael MIC verification haspav clas 2oti1on> 2o#L496">on> L496">refs"3. ine">get" L496">o496paonelxr_prefs"3.commenutt * completed */pav clas 2oti1on> 2o#L497">on> L497">refs"3. ine">get" L497">o497paon efs?returncode=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=rx_iv32_new">refs"3.1ret">rx_iv32_newpaon =refs?returncode=iv32">refs"3.1ret">iv32paonps 2oti1on> 2o#L498">on> L498">refs"3. ine">get" L498">o498paon efs?returncode=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=rx_iv16_new">refs"3.1ret">rx_iv16_newpaon =refs?returncode=iv16"prefs"3.1ret">iv16paonps 2oti1on> 2o#L499">on> L499">refs"3. ine">get" L499">o499paons 2oti1on> 2o#L500">on> L500">refs"3. ine">get" L500">o500paon elxr_prefs"3.commenutt/* Remove IV and ICV */pav clas 2oti1on> 2o#L501">on> L501">refs"3. ine">get" L501">o501paon efs?returncode=memmove">refs"3.1ret">memmovepaon(efs?returncode=skb"prefs"3.1ret">skbpaon-"/sppfs?returncode=data"prefs"3.1ret">datapaon + efs?returncode=TKIP_HDR_LEN">refs"3.1ret">TKIP_HDR_LENpaon,refs?returncode=skb"prefs"3.1ret">skbpaon-"/sppfs?returncode=data"prefs"3.1ret">datapaon, efs?returncode=hdr_len"prefs"3.1ret">hdr_lenpaon)ps 2oti1on> 2o#L502">on> L502">refs"3. ine">get" L502">o502paon efs?returncode=skb_pull"prefs"3.1ret">skb_pullpaon(efs?returncode=skb"prefs"3.1ret">skbpaon, efs?returncode=TKIP_HDR_LEN">refs"3.1ret">TKIP_HDR_LENpaon)ps 2oti1on> 2o#L503">on> L503">refs"3. ine">get" L503">o503paon efs?returncode=skb_trim"prefs"3.1ret">skb_trimpaon(efs?returncode=skb"prefs"3.1ret">skbpaon, efs?returncode=skb"prefs"3.1ret">skbpaon-"/sppfs?returncode=len"prefs"3.1ret">lenpaon -r4)ps 2oti1on> 2o#L504">on> L504">refs"3. ine">get" L504">o504paons 2oti1on> 2o#L505">on> L505">refs"3. ine">get" L505">o505paon arch(thefs?returncode=keyidx"prefs"3.1ret">keyidxpaonps 2oti1on> 2o#L506">on> L506">refs"3. ine">get" L506">o506paon}s 2oti1on> 2o#L507">on> L507">refs"3. ine">get" L507">o507paons 2oti1on> 2o#L508">on> L508">refs"3. ine">get" L508">o508paonstht.p intrefs?returncode=michael_mic">refs"3.1ret">michael_micpaon(structrefs?returncode=1on> o_hash"prefs"3.1ret">1on> o_hashpaon *efs?returncode=tfm_michael"prefs"3.1ret">tfm_michaelpaon, efs?returncode=u8"prefs"3.1ret">u8paon *hefs?returncode=key"prefs"3.1ret">keypaon, efs?returncode=u8"prefs"3.1ret">u8paon *hefs?returncode=hdr"prefs"3.1ret">hdrpaon,s 2oti1on> 2o#L509">on> L509">refs"3. ine">get" L509">o509paon efs?returncode=u8"prefs"3.1ret">u8paon *hefs?returncode=data"prefs"3.1ret">datapaon, efs?returncode=size_ "prefs"3.1ret">size_ paon efs?returncode=data_len"prefs"3.1ret">data_lenpaon, efs?returncode=u8"prefs"3.1ret">u8paon *hefs?returncode=mic">refs"3.1ret">micpaon)s 2oti1on> 2o#L510">on> L510">refs"3. ine">get" L510">o510paon{s 2oti1on> 2o#L511">on> L511">refs"3. ine">get" L511">o511paon structrefs?returncode=hash_desc">refs"3.1ret">hash_descpaon efs?returncode=desc">refs"3.1ret">descpaonps 2oti1on> 2o#L512">on> L512">refs"3. ine">get" L512">o512paon structrefs?returncode=scatterlis "prefs"3.1ret">scatterlis paon efs?returncode=sg"prefs"3.1ret">sgpaon[2]ps 2oti1on> 2o#L513">on> L513">refs"3. ine">get" L513">o513paons 2oti1on> 2o#L514">on> L514">refs"3. ine">get" L514">o514paon if (efs?returncode=tfm_michael"prefs"3.1ret">tfm_michaelpaon ==refs?returncode=NULL"prefs"3.1ret">NULLpaon) {s 2oti1on> 2o#L515">on> L515">refs"3. ine">get" L515">o515paon efs?returncode=pr_warn"prefs"3.1ret">pr_warnpaon(elxr_prefs"3.string">"%s(): tfm_michael ==rNULL\n"pav cla, efs?returncode=__func__"prefs"3.1ret">__func__paon)ps 2oti1on> 2o#L516">on> L516">refs"3. ine">get" L516">o516paon arch(th-1ps 2oti1on> 2o#L517">on> L517">refs"3. ine">get" L517">o517paon }s 2oti1on> 2o#L518">on> L518">refs"3. ine">get" L518">o518paon efs?returncode=sg_init_table">refs"3.1ret">sg_init_tablepaon(efs?returncode=sg"prefs"3.1ret">sgpaon,r2)ps 2oti1on> 2o#L519">on> L519">refs"3. ine">get" L519">o519paon efs?returncode=sg_set_buf">refs"3.1ret">sg_set_bufpaon(aamp;efs?returncode=sg"prefs"3.1ret">sgpaon[0], efs?returncode=hdr"prefs"3.1ret">hdrpaon, 16)ps 2oti1on> 2o#L520">on> L520">refs"3. ine">get" L520">o520paon efs?returncode=sg_set_buf">refs"3.1ret">sg_set_bufpaon(aamp;efs?returncode=sg"prefs"3.1ret">sgpaon[1], efs?returncode=data"prefs"3.1ret">datapaon, efs?returncode=data_len"prefs"3.1ret">data_lenpaon)ps 2oti1on> 2o#L521">on> L521">refs"3. ine">get" LD">on>0ret">hash_descpaocode=hdr"prefs"3.1ret">hdrpaon-"/sppfs?returncode=addr2">refs"3.1ret">addr2paon, efs?rei12otion> 2oti1on> 3 2o#L442">on> L442">r1ret"4">on> L521">refs"3. ine"52s"3ne">g16"prefs"3.1ret">iv16pao2otihdretur2oti12otion> ine">get" L445">o445paon }srefs"3.1ret">dn-"/sppfs?returncode=addr2">refs"3.1ret">addr2paon, efs?reppfs?returncode42otihpso424paons 2oti1on> 2o#L425">on> L425">refs"3. 5ne">get" 5L425">o425paon if5(efs?52code=keyidx"prefs"3.1ret">kepaonpsfs"3.1ret">tfmpaon =refs?returncode=tkey"prefs"3.1ret">tkeypdretur2oti12otion> ine">get" L445fs?retur2oti12310r_prefs"3.string"52paon, e445paoe">get" L426">o426paon 5 52code=crc">refs"3.1ret">crcpapaonpsfs"3.1ret">tfmpagspaon aamp; pfs?returncode=IEon> 2oti1on> 2o#L486">on> L486">refs"3. 5ne">get" 5L427">o427paons o_blkcipher_en1on> "prefsncode=igerlis paon efs?ret "prefsncode=igerle=sg"prefs"3.1ret">sgpaonpaon, aamp;efs?returncode=sg""3.1ret">sgpaon,r2)psdata_lenpaon)psrefs"3.1ret">privon)s 2oti1on> 2o#L486">on> L486">refs"3. 5ne">get" L428">o428paon ef5?retu52tion> 2oti1on> 2o#L389">on> L389">refs"3. 5ne">get" 5L429">o429paon ef5?retu52ion> 2oti1on> 2o#L500">on> L500">refs"3. ine">get" 5L430">o430paon if5(!(ef5?returde=michiv">rmic">refs"3.1ret">michael_ 2otihdrpaon *)efst">michael_ 2oode=1on> o_hash"prefs"3.1rek_buffpaon *efs?returncode=skb"prefs"3.1ret">skbpaon, intrefs?returncode=hdr_"3.1ret">u8paon *hefs?returncode=hdr"prefs"3.1ret">hdrpaon,son pfs?returncode=desc">refs"3.1ret">dn-"/sppfs?ne">get" 5L431">o431paon 5 5fs?ret 2oti1on> 2o#L515">on> L515">refs"3. ine">get" 5L432">o432paon 5 53?returncode=scatterlis "prefs"3.1reret">ieee 2otihdrpaon *efs?returncode=hdr"prefs"3.1ret">hdrpaonp1xing_phase1paon(onp1xL445fs?retur2oti12310r_prefs"3.string"52paon, e445pane">get" 5L433">o433paon 5 53ion> 2oti1on> 2o#L514">on> L514">refs"3. ine">get" 5L434">o434paon }s5fs?re53code=tk _mixing_phase2">refonp1xing_phase1paon(onp1xL445de=ieee 2otihdr"prefs"3.1ret">ieee 2otihdrpaon *)efs?returncode=skb"prefs"3.1ret">skbpaon-"/sppfs?returncode=data"prefs"3.1ret">datapaonps 2oti1on> 2o#L418">on> L418">refs"3. 5ne">get" 5L435">o435paon ef5?retu53ion> 2oti1on> 2o#L476">on> L476">refs"3. 5ne">get" 5L436">o436paon if5(efs?5eturncode=tkeyswitch2o#L442">on> L442le16_efscpu-r4)psiv16pao2otionp1xing_phase1paon(onp1xL445gs">refs"3.1ret">flagretu_controi12otion> gretu_controiotion>prefs 2oti1on> 2o#L476">on> L476">refs"3. 5ne">get" 5L437">o437paon 5 5fs?returncode=printk">ret">iv16pao2otiOUNTERMEASFCTL_FROMDotiCRYPTO_TKIP_COUNTERMEASFCTL_FROMDo?retuefs"3.1ret">pospaOUNTERMEASFCTL_TODotiCRYPTO_TKIP_COUNTERMEASFCTL_TODootionn> 2oti1on> 2o#L515">on> L515">refs"3. ine">get" 5L438">o438paon 5 5 elxr_precasefs"3.1ret">pospaOUNTERMEASFCTL_TODotiCRYPTO_TKIP_COUNTERMEASFCTL_TODootio: 2oti1on> 2o#L515">on> L515">refs"3. ine">get" 5L439">o439paon 5 5rch(th-6psrefs"3.1ret">memmcpsiv16pao2otionp 16)psiv16pao2otionp1xing_phase1paon(onp1xL445gs">refs"3.1ret">flati123ing_phase1paon(ti123i12otiet">iv16pao2otiETH_AHDR_LENpaon)ps r2ot> Remove IV and ICV */pavDAi12otion> 2oti1on> 2o#L501">on> L501">refs"3. ine">get" 5L440">o440paon }s5fs?re54s?returncode=2ot_dbg_ratelimited"preemmcpsiv16pao2otionp 16)psrefs"3.1rETH_AHDR_LENpaon)pstiet">iv16pao2otionp1xing_phase1paon(onp1xL445gs">refs"3.1ret">flati12on, efs?returncode=iv32">refs"3.1ret">iv32ETH_AHDR_LENpaon)ps r> Remove IV and ICV */pavSAi12otion> 2oti1on> 2o#L501">on> L501">refs"3. ine">get" 5L441">o441paon if5(!efs54s?returncode=t ey"prebreaks 2oti1on> 2o#L476">on> L476">refs"3. 5ne">get" 5L442">o442paon 5 5fs?returncode=casefs"3.1ret">pospaOUNTERMEASFCTL_FROMDotiCRYPTO_TKIP_COUNTERMEASFCTL_FROMDo?ret: 2oti1on> 2o#L515">on> L515">refs"3. ine">get" 5L443">o443paon 5 5 efs>refs"3.1ret">memmcpsiv16pao2otionp 16)psiv16pao2otionp1xing_phase1paon(onp1xL445gs">refs"3.1ret">flati12xing_phase1paon(ti12xi12otiet">iv16pao2otiETH_AHDR_LENpaon)ps r2ot> Remove IV and ICV */pavDAi12otion> 2oti1on> 2o#L501">on> L501">refs"3. ine">get" 5L444">o444paon 5 5rch(th-3psiv16pao2otionp 16)psrefs"3.1rETH_AHDR_LENpaon)pstiet">iv16pao2otionp1xing_phase1paon(onp1xL445gs">refs"3.1ret">flati123ing_phase1paon(ti123i12otiet">iv16pao2otiETH_AHDR_LENpaon)ps r> Remove IV and ICV */pavSAi12otion> 2oti1on> 2o#L501">on> L501">refs"3. ine">get" 5L445">o445paon }s5fs?re54s?returncode=pr_warn"breaks 2oti1on> 2o#L476">on> L476">refs"3. 5ne">get" 5L446">o446paon ef5?retu5ncode=iv16"precasefs"3.1ret">pospaOUNTERMEASFCTL_FROMDotiCRYPTO_TKIP_COUNTERMEASFCTL_FROMDo?retuefs"3.1ret">pospaOUNTERMEASFCTL_TODotiCRYPTO_TKIP_COUNTERMEASFCTL_TODootio: 2oti1on> 2o#L515">on> L515">refs"3. ine">get" 5L447">o447paon ef5?retu54s?returncode=printk">refs"3.1ret">premmcpsiv16pao2otionp 16)psiv16pao2otionp1xing_phase1paon(onp1xL445gs">refs"3.1ret">flati123ing_phase1paon(ti123i12otiet">iv16pao2otiETH_AHDR_LENpaon)ps r2ot> Remove IV and ICV */pavDAi12otion> 2oti1on> 2o#L501">on> L501">refs"3. ine">get" 5L448">o448paon ef5?retu54s?returncode=2ot_dbg_ratelimited"preemmcpsiv16pao2otionp 16)psrefs"3.1rETH_AHDR_LENpaon)pstiet">iv16pao2otionp1xing_phase1paon(onp1xL445gs">refs"3.1ret">flati12arc4paon, efs?reti12ai12otiet">iv16pao2otiETH_AHDR_LENpaon)ps r> Remove IV and ICV */pavSAi12otion> 2oti1on> 2o#L501">on> L501">refs"3. ine">get" 5L449">o449paons 2o#L476">on> L476">refs"3. 5ne">get" 5L450">o450paon if5(efs?5eturncode=tk casef0: 2oti1on> 2o#L515">on> L515">refs"3. ine">get" 5L451">o451paon#ifdefrefs5retur55s?returncode=t ey"prefs"3.1ret">tkeyemmcpsiv16pao2otionp 16)psiv16pao2otionp1xing_phase1paon(onp1xL445gs">refs"3.1ret">flati12xing_phase1paon(ti12xi12otiet">iv16pao2otiETH_AHDR_LENpaon)ps r2ot> Remove IV and ICV */pavDAi12otion> 2oti1on> 2o#L501">on> L501">refs"3. ine">get" 5L452">o452paon 5 5fs?returncode=2ot_dbg_ratelimited"preemmcpsiv16pao2otionp 16)psrefs"3.1rETH_AHDR_LENpaon)pstiet">iv16pao2otionp1xing_phase1paon(onp1xL445gs">refs"3.1ret">flati12on, efs?returncode=iv32">refs"3.1ret">iv32ETH_AHDR_LENpaon)ps r> Remove IV and ICV */pavSAi12otion> 2oti1on> 2o#L501">on> L501">refs"3. ine">get" 5L453">o453paon 5 5 efsbreaks 2oti1on> 2o#L476">on> L476">refs"3. 5ne">get" 5L454">o454paon 5 55r2oti12otion> 2oti1on> 2o#L475">on> L475">refs"3. 5ne">get" 5L455">o455paon#endifs 2oti1on> 2o#L476">on> L476">refs"3. 5ne">get" 5L456">o456paon 5 55turncode=tkey"prefs"3.1ret">tkey?returncodisde=tk_qn + efs?returncod?returncodisde=tk_qn "3.1ret">iv16pao2otionp1xing_phase1paon(onp1xL445gs">refs"3.1ret">flagretu_controi12otion> gretu_controiotionn> 2oti1on> 2o#L515">on> L515">refs"3. ine">get" 5L457">o457paon 5 5rch(th-4psiv16pao2otionp 16)psrefs"3.1ret">crcpale16_efscpu-r4)psiv16pao2oti__2o16-r4)psskbpa?returncodget_qn _cti12otion> ?returncodget_qn _cti"3.1ret">iv16pao2otionp1xing_phase1paon(onp1xL445)aon pfs?returncode=desc">refs"3.1ret">dn-"/sppfs?ne">get" 5L458">o458paon }s5fs?re55 elxr_prefs"3.string">&qEEE 2otiCRYPTO_TKIP_COUNTERMEASQOS_CTL_TID_MASKtiCRYPTO_TKIP_COUNTERMEASQOS_CTL_TID_MASKion> 2oti1on> 2o#L418">on> L418">refs"3. 5ne">get" 5L459">o459paons 2o#L418">on> L418">refs"3. 5ne">get" 5L460">o460paon if5(efs?56s?returncode=2ot_dbg_ratelimited"preonp 16)psref0;ode=2ot_dbg_r Remove IV and ICV */pavpriorityi12otion> 2oti1on> 2o#L501">on> L501">refs"3. ine">get" 5L461">o461paon 5 56r"prefs"3.1ret">hdrpaon-"/sppfs?returncode=addr2">rene">get" 5L462">o462paon 5 56code=skb_pull"prefs"3.1ret">onp 16)psrefs"3.1ret">crcpaonp 16)psrefs"3.1ret">crcpaonp 16)psref0;ode=2ot_r Remove IV and ICV */pavreservoti12otion> 2oti1on> 2o#L497">on> L497">refs"3. 5ne">get" 5L463">o463paon }s5fs?re5ur2oti 2oti1on> 2o#L475">on> L475">refs"3. 5ne">get" 5L464">o464paon ef5?retu56ion> 2oti1on> 2o#L425">on> L425">refs"3. 5ne">get" 5L465">o465paons de=michael_mic">refs"3.1re425">on> t">michael_ de=-r4)pson> t">michael_ de=ode=1on> o_hash"prefs"3.1rek_buffpaon *efs?returncode=skb"prefs"3.1ret">skbpaon, intrefs?returncode=hdr_ael_mic">refs"3.1redr_lenpaon)ps 2o#L509">on> L509">refs"3. ine">get" 5L466">o466paon ef5?retu56ch(th-1psrfs"3.1ret">skbpapaon)ps 2oti1on> 2o#L509">on> L509">refs"3. ine">get" 5L467">o467paons 2oti1on> 2o#L515">on> L515">refs"3. ine">get" 5L468">o468paon ef5?retu5ncode=crn> o_bon> o_hash"prefs"3.1re515">on> efs?rpaonpson> efs?rpaonb"prefs"3.1ret">skbpapaon-"/sppfs?returncode=rx_refs"3.1ret">pospaoaon)ps 2o#L418">on> L418">refs"3. 5ne">get" 5L469">o469paon ef5?retu5ncode=sg_init_one">refs"3.1re *hefs?returncode=hdr"pres"3.1ret">pospaon + efs?returncode=plen" 2oti1on> 2o#L418">on> L418">refs"3. 5ne">get" 5L470">o470paon if5(efs?5eturnc 2oti1on> 2o#L418">on> L418">refs"3. 5ne">get" 5L471">o471paon 5 57turncode=memcmp">refs"3.1ret">mecode=ailroompaon(efs?returncode=ailroom"3.1ret">iv16pao2otion, intrefs?returncode=hd)r_len"8y"prs"3.1ret">skbpaon-"/sppfs?returncode=data"prefs"3.1ret">dataon alonhefs?returncode=hdr_len"prefs"3.1ret">hdr_lenpaon + efs?returncode=TKIP_n> 2oti1on> 2o#L515">on> L515">refs"3. ine">get" 5L472">o472paon 5 5 efss"3.1ret">pospaoaokpaon(efs?returncode=KERN_DEBUG">refs"3.1ret">KERN_DEBUGpaon elxr_prefs"3.string">"TKIP: RX tkey-"/spkey_iInvali"pav oion haspav clade=r2oti12otion> 2oti1on> 2o#L438">on> L438">refs"3. 5ne">get" 5L473">o473paon 5 5rch(th-7ps 2oti1on> 2o#L489">on> L489">refs"3. 5ne">get" 5L474">o474paon }s5fs?re57 efs?returnrefs"3.1ret">mecode=ailroompaon(efs?returncode=ailroom"3.1ret">iv16pao2otion, intrefs?returncode=hd)n"prefs"3.1ret">hdr_lenpaon)psskbpaon-"/sppfs?returncode=len"prefs"3.1ret">lenpaon -r4)ps 2o#L486">on> L486">refs"3. 5ne">get" 5L475">o475paonsget" 5L476">o476paon ef5?retu5ncode=crc">ref 2oti1on> 2o#L475">on> L475">refs"3. 5ne">get" 5L477">o477paon ef5?retu57ion> 2oti1on> 2o#L508">on> L508">refs"3. ine">get" 5L478">o478paon ef5?retu5ncode=icv">refs"3.1ret">icvpat">michael_ 2otihdrpaon *)efst">michael_ 2oode=1s"3.1ret">skbpaon, intrefs?returncode=hdr_s"3.1ret">skbpapaon-"/sppfs?returncode=rx_"prefs"3.1ret">lenpatx 2otihdrpaon *)efstx 2oi12o 2oti1on> 2o#L486">on> L486">refs"3. 5ne">get" 5L479">o479paon ef5?retu5ncode=icv">refs"3.1ret">icvpaon + efs?returncode=plen"pefs"3.1ret">skbpaon-_pulis paon efs?retun-_pulode=1s"3.1ret">skbpaon, intrefs?returncode=hdr_8 2oti1on> 2o#L486">on> L486">refs"3. 5ne">get" 5L480">o480paon ef5?retu58turncode=1on> o_blkcipher_de1on>t">michael_micpaon(structrefs?returncode=1s"3.1ret">skbpapaon-"/sppfs?returncode=rx_"prefs"3.1ret">lenpatx pdretur2oti12otion> ix pdretur2otie=hdr_prefs"3.1ret">sgpaonpaon-"/sppfs?returncode=key"prefs"3.1ret">keypaon, efs?returncode=tkey"p[16prefs"3.1ret">datapaon-"/sppfs?returncode=rx_"prefs"3.1ret">lenpatx 2otihdrpaon *)efstx 2oi12o 2oti1on> 2o#L489">on> L489">refs"3. 5ne">get" 5L481">o481paon if5(efs?58s?returncode=t ey"pres?returnrefs"3.1ret">mecod"/sppfs?returncode=len"prefs"3.1ret">lenpapaon + efs?returncode=TKIP_HDR_LEN">refs"3.1rdr_lenpaon)psskbpaon-"/sppfs?returncode=len"prefs"3.1ret">lenpaon -r4)pshdr_lenpaon -r12pspospaon + efs?returncode=plen"aon pfs?returncode=desc">refs"3.1ret">dn-"/sppfs?ne">get" 5L482">o482paon 5 5f (efs?returncode=iv3242otihpsget" 5L483">o483paon 5 58ion> 2oti1on> 2o#L514">on> L514">refs"3. ine">get" 5L484">o484paonelxr_prefs53.com58 42otihp> 2oti1on> 2o#L486">on> L486">refs"3. 5ne">get" 5L485">o485paon 5 5 2oti1on> 2o#L475">on> L475">refs"3. 5ne">get" 5L486">o486paon 5 5s 2o#L475">on> L475">refs"3. 5ne">get" 5L487">o487paon#ifdefrefs5retur5code=Cde=michiv">rmic">refs"3.1re225">on> t">michael_ ved ur_tablepaon(efs?r225">on> t">michael_ ved ur_ode=1on> o_hash"prefs"3.1re(elxrevic_tablepaon(efs?r(elxrevic_dr"pres"3.1ret">posparev + efs?returncodevi12o 2oti1on> 2o#L489">on> L489">refs"3. 5ne">get" 5L488">o488paon 5 5fs?returncode=2ot_dbg___________________________catterlis "prefs"3.1reret">ieee 2otihdrpaon *efs?returncode=hdr"prefs"3.1ret">hdrpaonp 16)ps 2o#L489">on> L489">refs"3. 5ne">get" 5L489">o489paon 5 5 pfs?returncode=hdr"prefe=1on> el_mic">refs"3.1reyidxpaon)ps 2oti1on> 2o#L489">on> L489">refs"3. 5ne">get" 5L490">o490paon#endifs 2oti1on> 2o#L511">on> L511">refs"3. ine">get" 5L491">o491paon 5 5fs?returncode=unr2otis "prefs"3.1rerwreqrpaonps&qus "prefs"3.1rewrqu-r4)ps 2o#L418">on> L418">refs"3. 5ne">get" 5L492">o492paon 5 5rch(th-5psmicht">ved ur_tablepaon(efs?rrw t">micht">ved ur_g">&qus "prefs"3.1reev + efs?returncoeotion 2oti1on> 2o#L418">on> L418">refs"3. 5ne">get" 5L493">o493paon }s5fs?re59ion> 2oti1on> 2o#L514">on> L514">refs"3. ine">get" 5L494">o494paons 2oti1on> 2o#L497">on> L497">refs"3. 5ne">get" 5L495">o495paon el5r_pre59code=keyidx"prefs"3.1ret">kememselis paon efs?retmemselode=1prefs"3.1ret">sgpaonev + efs?returncoeotion, 0, de=dof1s"3.1ret">skbpaev + efs?returncoeotion) 2oti1on> 2o#L486">on> L486">refs"3. 5ne">get" 5L496">o496paonelxr_prefs53.com59code=crc">refs"3.1ret">crcpaev + efs?returncoeotionfs"3.1ret">tfmpagspaon aamp; pfs?returncode=IEonmic">refs"3.1reyidxpaon)ps 2o#L418">on> L418">refs"3. 5ne">get" 5L497">o497paon ef5?retu5ncode=tkey"pre o_blkcipher_de1on>on-"/sppfs?returncode=addr2">refs"3.1ret">addr2paxing_phase1paon(ti12xi12oc">rEE 2o0x01> 2oti1on> 2o#L489">on> L489">refs"3. 5ne">get" 5L498">o498paon ef5?retu59s?returncode=2ot_dbg_ratelimited"preev + efs?returncoeotionfs"3.1ret">tfmpagspaon aamp; pfs?returncode=IE|onmic">refs"3.1reOW_MICFAILURE_GROUPtiCRYPTO_TKIP_COW_MICFAILURE_GROUPtion 2oti1on> 2o#L418">on> L418">refs"3. 5ne">get" 5L499">o499paons 2o#L418">on> L418">refs"3. 6ne">get" 6L500">o500paon el6r_pre60s?returncode=2ot_dbg_ratelimited"preev + efs?returncoeotionfs"3.1ret">tfmpagspaon aamp; pfs?returncode=IE|onmic">refs"3.1reOW_MICFAILURE_PAIRWISEtiCRYPTO_TKIP_COW_MICFAILURE_PAIRWISEtion 2oti1on> 2o#L418">on> L418">refs"3. 6ne">get" 6L501">o501paon ef6?retu6ncode=memmove">refs"3.1ret">mev + efs?returncoeotionfs"3.1ret">tfmpasr_ de=-"/sppfs?returncsr_ de=-tionfs"3.1ret">tfmpasa vemiln-"/sppfs?returnsa vemilnde=IEonmic">refs"3.1reARPHRD_ETHER-"/sppfs?returnARPHRD_ETHERtion 2oti1on> 2o#L418">on> L418">refs"3. 6n2">get" 6L492">o492paon 6?retu6ncode=skb_pull"prefs"3.1ret">emmcpsiv16pao2otiev + efs?returncoeotionfs"3.1ret">tfmpasr_ de=-"/sppfs?returncsr_ de=-tionfs"3.1ret">tfmpasa paonpspospaon-"/sppfs?returncode=addr2">refs"3.1ret">addr2paon, efs?returncode=iv32">refs"3.1ret">iv32ETH_AHDR_LENpaon)ps 2oti1on> 2o#L418">on> L418">refs"3. 6n3">get" 6L493">o493paon }s6?retu6ncode=skb_trim"prefs"3.1ret">memselis paon efs?retmemselode=1prefs"3.1ret">sgpaonwrqu-r4)psskbpawrqu-r4)ps 2o#L486">on> L486">refs"3. 6ne">get" 6L504">o504paonsrefwrqu-r4)pstfmpapaon + efs?returncode=TKIP_fs"3.1ret">tfmpalengthashpaon *efs?relengthde=IEonde=dof1s"3.1ret">skbpaev + efs?returncoeotion) 2oti1on> 2o#L486">on> L486">refs"3. 6n5">get" 6L495">o495paon el6h(the60code=keyidx"prefs"3.1ret">ke 2o#_send_evCV *r4)psiv16pao2otirev + efs?returncodevi12o nmic">refs"3.1reOWEVMICHAELMICFAILUREtiCRYPTO_TKIP_COWEVMICHAELMICFAILUREe=hdr_prefs"3.1ret">sgpaonwrqu-r4)psmir *)prefs"3.1ret">sgpaonev + efs?returncoeotion) 2oti1on> 2o#L486">on> L486">refs"3. 6n6">get" 6L496">o496paonelxr_prefs62oti16otion> 2oti1on> 2o#L507">on> L507">refs"3. 6ne">get" 6L507">o507paons 2oti1on> 2o#L508">on> L508">refs"3. 6ne">get" 6L508">o508paonstht.p int6efs?r6turncode=michael_mic">refs"3.1re225">on> t">michael_ son> t">michael_ s o_hash"prefs"3.1rek_buffpaon *efs?returncode=skb"prefs"3.1ret">skbpaon, intrefs?returncode=hdr_ael_mic">refs"3.1reyidxpaon)ps 2o#L489">on> L489">refs"3. 6ne">get" 6L509">o509paon 6 6 efs?returncode=u8"prefssssssssssssssssssael_mic">refs"3.1redr_lenpaon)psrfs"3.1ret">skbpapaon)ps 2oti1on> 2o#L509">on> L509">refs"3. 6ne">get" 6L510">o510paon{s 2oti1on> 2o#L511">on> L511">refs"3. 6ne">get" 6L511">o511paon st6uctre6s?returncode=hash_desc">refs"3.1ret"515">on> efs?rpaonpson> efs?rpaonb"prefs"3.1ret">skbpapaon-"/sppfs?returncode=rx_refs"3.1ret">pospaoaon)ps 2o#L418">on> L418">refs"3. 6ne">get" 6L512">o512paon st6uctre61code=skb_pull"prefs"3.1ret"> *hefs?returncode=hdr"prlkcipher_de1on>t">micpaon(structrefsi12oc8> 2oti1on> 2o#L513">on> L513">refs"3. 6ne">get" 6L513">o513paons 2oti1on> 2o#L514">on> L514">refs"3. 6ne">get" 6L514">o514paon if6(efs?6eturncode=tfm_mich!"3.1ret">sgpaonpaon-"/sppfs?returncode=key"prefs"3.1ret">keypaon,_selis paon efs?reton,_seltion> 2oti1on> 2o#L509">on> L509">refs"3. 6n5">get" 6L515">o515paon 6 6fs?returncode=pr_warn"42otihpsget" 6L516">o516paon 6 61 2o#L475">on> L475">refs"3. 6ne">get" 6L517">o517paon }s6fs?re61code=tkey"prefs"3.1ret">tkeyt">michael_ 2otihdrpaon *)efst">michael_ 2oode=1s"3.1ret">skbpaon, intrefs?returncode=hdr_s"3.1ret">skbpapaon-"/sppfs?returncode=rx_"prefs"3.1ret">lenparx 2otihdrpaon *)efsrx 2oi12o 2oti1on> 2o#L486">on> L486">refs"3. 6ne">get" 6L518">o518paon ef6?retu6ncode=sg_init_ o_blkcipher_de1on>t">michael_micpaon(structrefs?returncode=1s"3.1ret">skbpapaon-"/sppfs?returncode=rx_"prefs"3.1ret">lenparx pdretur2oti12otion> rx pdretur2otie=hdr_prefs"3.1ret">sgpaonpaon-"/sppfs?returncode=key"prefs"3.1ret">keypaon, efs?returncode=tkey"p[24prefs"3.1ret">datapaon-"/sppfs?returncode=rx_"prefs"3.1ret">lenparx 2otihdrpaon *)efsrx 2oi12ot 2oti1on> 2o#L489">on> L489">refs"3. 6ne">get" 6L519">o519paon ef6?retu61 efs?returncode=u8"prefssrefs"3.1ret">mecod"/sppfs?returncode=len"prefs"3.1ret">lenpapaon + efs?returncode=TKIP_HDR_LEN">refs"3.1rdr_lenpaon)psskbpaon-"/sppfs?returncode=len"prefs"3.1ret">lenpaon -r4)pshdr_lenpaon psskbpaon)s > 2oti1on> 2o#L509">on> L509">refs"3. 6ne">get" 6L520">o520paon ef6?retu62s?returncode=2ot_dbg_42otihpsget" 6LD">on>0ret">hash_descpa6code=62turncode=memcmp">refs"3.1ret">memcmppaon(efs?returncode=icv">refs"3.1ret">icvpaon)sefs"3.1ret">skbpaon-"/sppfs?returncode=data"prefs"3.1ret">datapaon, efs?returncode=hdr_leHDR_LEN">refs"3.1ron-"/sppfs?returncode=len"prefs"3.1ret">lenpaon -r4)ps 2oti1on> 2o#L482">on> L482">refs"3. 6fs"3.1ret6>addr2paon, efs?rei12oti6n> 62 (efs?returncode=iv32catterlis "prefs"3.1reret">ieee 2otihdrpaon *efs?returncode=hdr"prefs"3.1ret">hdrpaonp 16)psget" 6=addr2">refs"3.1ret">add62paon6 efs?reppfs?returncodes"3.1ret">hdrpaonp 16)psieee 2otihdrpaon *)efs?returncode=skb"prefs"3.1ret">skbpaon-"/sppfs?returncode=data"prefs"3.1ret">datapaonps 2oti1on> 2o#L418">on> L418">refs"3. 6on retur6L424">o424paonsrefs"3.1ret">KERN_DEBUGpaon elxr_prefs"3.string">"TKIP: RX tkey-"/spkey_i=rNULL:on haspav clas 2oti1on> 2o#L438">on> L438">refs"3. 6ne">get" 6L425">o425paon if6(efs?62 pfs?returncode=tkey"pruot;TKIP: RX tkey-"/spkey_iMSDU from s 2oti1on> 2o#L489">on> L489">refs"3. 6oe">get" 6L426">o426paon 6 62ch(th-1psskbpaon-"/sppfs?returncode=data"prefs"3.1ret">datapev + efs?returncodevi12o ?ts"3.1ret">skbpaon-"/sppfs?returncode=data"prefs"3.1ret">datapev + efs?returncodevi12oa"prefs"3.1ret">data + efs?returnco i12o :ruot;TKIP: RX tkey-"/spkey_iN/Arncode=__func__"prefs"3.1ret">on-"/sppfs?returncode=addr2">refs"3.1ret">addr2paon, efs?returncode=iv32">r 2oti1on> 2o#L489">on> L489">refs"3. 6oe">get" 6L427">o427paonsskbpayidxpaon)ps 2oti1on> 2o#L418">on> L418">refs"3. 6oe">get" 6L428">o428paon ef6?retu62s?returncode=2ot_dbg_mp">refs"3.1ret">mecod"/sppfs?returncode=data"prefs"3.1ret">datapev + efs?returncodevi12o> 2oti1on> 2o#L509">on> L509">refs"3. 6ne">get" 6L429">o429paon ef6?retu62 efs?returncode=u8"prefssrefs"3.1ret">me225">on> t">michael_ ved ur_tablepaon(efs?r225">on> t">michael_ ved ur_ode=1refs"3.1ret">mecod"/sppfs?returncode=data"prefs"3.1ret">datapev + efs?returncodevi12oefs"3.1ret">hdrpaon, 16)psskbpayidxpaon)ps 2oti1on> 2o#L418">on> L418">refs"3. 6ne">get" 6L430">o430paon if6(!(ef63s?returncode=2ot_dbg_ratelimited"prepaon-"/sppfs?returncode=dot11RSNAStatsTKIPICVErrors">refs"3.1ret"LocalMICFed ur_NAStatsTKIPICVErrorspaon++ps 2oti1on> 2o#L492">on> L492">refs"3. 6ne">get" 6L431">o431paon 6 63s?returncode=t ey"pre42otihpsget" 6L432">o432paon 6 63?returncode=s 2oti1on> 2o#L507">on> L507">refs"3. 6ne">get" 6L433">o433paon 6 63ion> 2oti1on> 2o#L514">on> L514">refs"3. 6ne">get" 6L434">o434paon }s6fs?re63code=tk _mixi Remove IV and ICV */pavly aftequothael MIC pav RX now that thequot;pavs 2oti1on> 2o#L496">on> L496">refs"3. 6ne">get" 6L435">o435paon ef6?retu63ion> * completed */pav clas 2oti1on> 2o#L497">on> L497">refs"3. 6ne">get" 6L436">o436paon if6(efs?63code=crc">refs"3.1ret">crcpapaon-"/sppfs?returncode=rx_iv32_new">refs"3.1ret">rx_itihdrpaon *)efsrx 12otion>prefs"3.1ret">tkeypaon-"/sppfs?returncode=rx_iv32_new">refs"3.1ret">rx_iv32_newpaon =refs?returncode=iv32"fs?retur2oti12310r_prefs"3.string"52paon, e445p6ne">get" 6L437">o437paon 6 63code=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=rx_iv32_new">refs"3.1ret">rx16-r4)psrx16ion>prefs"3.1ret">tkeypaon-"/sppfs?returncode=rx_iv32_new">refs"3.1ret">rx_iv16_newpaon =refs?returncode=iv16"fs?retur2oti12310r_prefs"3.string"52paon, e445p6ne">get" 6L438">o438paon 6 6 s?retur2oti12310r_prefs"3.string"52paon, e445p6ne">get" 6L439">o439paon 6 63code=icv">refs"3.1ret">icvpaskb_trimpaon(efs?returncode=skb"prefs"3.1ret">skbpaon, efs?returncode=skb"prefs"3.1ret">skbpaon-"/sppfs?returncode=len"prefs"3.1ret">lenpaon -r4)ps 2o#L486">on> L486">refs"3. 6ne">get" 6L440">o440paon }s6fs?re64turnc 2oti1on> 2o#L418">on> L418">refs"3. 6ne">get" 6L441">o441paon if6(!efs64s?returncode=42otihp> 2oti1on> 2o#L486">on> L486">refs"3. 6ne">get" 6L442">o442paon 6 6fs?ret 2oti1on> 2o#L507">on> L507">refs"3. 6ne">get" 6L443">o443paon 6 64ion> 2oti1on> 2o#L514">on> L514">refs"3. 6ne">get" 6L444">o444paon 6 6rch(thde=michael_mic">refs"3.1re225">on> efs?rturnaon-"/sppfs?return225">on> efs?rturnaon"prefiv">rfs"3.1ret">skbpa }srefs"3.1re2n -r4)psu8paon *hefs?returncode=hdr"prefs"3.1ret">hdrpaseq"/sppfs?returncoeqtion tiv">rfs"3.1ret">skbpapaon)ps 2oti1on> 2o#L509">on> L509">refs"3. 6ne">get" 6L445">o445paon }s6fs?re64s?ret 2oti1on> 2o#L482">on> L482">refs"3. 6ne">get" 6L446">o446paon ef6?retu6ncode=iv16"preash_desc">refs"3.1ret"515">on> efs?rpaonpson> efs?rpaonb"prefs"3.1ret">skbpapaon-"/sppfs?returncode=rx_refs"3.1ret">pospaoaon)ps 2o#L418">on> L418">refs"3. 6ne">get" 6L447">o447paon ef6?retu64s?returncode=ael_mic">refs"3.1reyidxpaon)ps 2o#L418">on> L418">refs"3. 6ne">get" 6L448">o448paon ef6?retu64code=crn> o_bon> o_hash"prefs"3.1re "prefsncodon)psskbpapn =refs?returncode=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=rx_"prefs"3.1ret">lenpatx pdretur2oti12otion> ix pdretur2otie=hd 2oti1on> 2o#L418">on> L418">refs"3. 6ne">get" 6L449">o449paons o_hash"prefs"3.1re "prefsblkciphe, 16)psskbpapn itihdrpaon *)efspn ikey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=rx_"prefs"3.1ret">lenpatx pdrearcarc4paon, efs?retx pdrearcae=hd 2oti1on> 2o#L418">on> L418">refs"3. 6ne">get" 6L450">o450paon if6(efs?6eturncode=tk on> o_hash"prefs"3.1re "prefsncodon)psskbpapn 3ing_phase1paon(pn 3ion>prefs"3.1ret">tkeypaon-"/sppfs?returncode=rx_iv32_new">refs"3.1ret">pdretur2oti12otion> rx pdretur2otie=hd 2oti1on> 2o#L418">on> L418">refs"3. 6ne">get" 6L451">o451paon#ifdefrefs6retur65?returncode=hash_desc">refs"3.1ret" "prefsblkciphe, 16)psskbpapn arc4paon, efs?retn aion>prefs"3.1ret">tkeypaon-"/sppfs?returncode=rx_iv32_new">refs"3.1ret">pdrearcarc4paon, efs?rerx pdrearcae=hd 2oti1on> 2o#L418">on> L418">refs"3. 6ne">get" 6L452">o452paon 6 6fs?ret 2oti1on> 2o#L418">on> L418">refs"3. 6ne">get" 6L453">o453paon 6 65code=skb_trim"prefs"3.1ret">yidxpaon)pstkeypaon-"/sppfs?returncode=rx_iv32_new">refs"3.1reon,_xpaon)ps 2o#L418">on> L418">refs"3. 6ne">get" 6L454">o454paon 6 65code=tk _mixing_phase2">refmemselis paon efs?retmemselode=1fs"3.1ret">tkeypaon-"/sppfs?returncode=rx_, 0, de=dof1fs"3.1ret">skbpapaon-"/sppfs?returncode=rx_) 2oti1on> 2o#L486">on> L486">refs"3. 6ne">get" 6L455">o455paon#endifskepaon-"/sppfs?returncode=rx_iv32_new">refs"3.1reon,_xpaon)psrefs"3.1reyidxpaon)ps 2o#L486">on> L486">refs"3. 6ne">get" 6L456">o456paon 6 65code=crc">refs"3.1ret">crcpapaon-"/sppfs?returncode=rx_iv32_new">refs"3.1retx pdretur2oti12otion> ix pdretur2otie=hdprefs"3.1ret">tkeypdr=refs?returncode=tkey" 2oti1on> 2o#L486">on> L486">refs"3. 6ne">get" 6L457">o457paon 6 65code=tkey"prefs"3.1ret">tkeypaon-"/sppfs?returncode=rx_iv32_new">refs"3.1retx pdrearcarc4paon, efs?retx pdrearcae=hdprefs"3.1ret">tkeypdritihdrpaon *)efspn ikey" 2oti1on> 2o#L486">on> L486">refs"3. 6ne">get" 6L458">o458paon }s6fs?re65code=icv">refs"3.1ret">icvpapaon-"/sppfs?returncode=rx_iv32_new">refs"3.1ret">pdretur2oti12otion> rx pdretur2otie=hdprefs"3.1ret">tkeypdr3ing_phase1paon(pn 3ion> 2oti1on> 2o#L486">on> L486">refs"3. 6ne">get" 6L459">o459paonsrefs"3.1ret">icvpapaon-"/sppfs?returncode=rx_iv32_new">refs"3.1ret">pdrearcarc4paon, efs?rerx pdrearcae=hdprefs"3.1ret">tkeypdrarc4paon, efs?retn aion> 2oti1on> 2o#L486">on> L486">refs"3. 6ne">get" 6L460">o460paon if6(efs?66turncode=1on> o_blkcipher_de1on>on -r4)pstkeys?re_KEY_HDR_LENpaon)ps 2oti1on> 2o#L482">on> L482">refs"3. 6ne">get" 6L461">o461paon 6 66s?returncode=t ey"prefs"3.1ret">tkeyemmcpsiv16pao2otipaon-"/sppfs?returncode=key"prefs"3.1ret">keypaon, efs?returncode=tkey"p">o445paon }stkeys?re_KEY_HDR_LENpaon)ps 2o#L486">on> L486">refs"3. 6ne">get" 6L462">o462paon 6 66 (efs?returncode=iv32refs"3.1ret">kepaon-"/sppfs?returncode=rx_iv32_new">refs"3.1reon,_selis paon efs?reton,_seltionpreget" 6L463">o463paon }s6fs?re66efs?reppfs?returncodes"3.1ret">hdrpapaon-"/sppfs?returncode=rx_iv32_new">refs"3.1retx rx16-r4)psrx16ion>pre1;ode=2oi Remove IV and ICV */pavTSC is initiale=dd to 1t12otion> 2oti1on> 2o#L497">on> L497">refs"3. 6ne">get" 6L464">o464paon ef6?retu66ch(th-3psrefs"3.1ret">meceq"/sppfs?returncoeqtion)> 2oti1on> 2o#L482">on> L482">refs"3. 6ne">get" 6L465">o465paonscrcpapaon-"/sppfs?returncode=rx_iv32_new">refs"3.1ret">rx_itihdrpaon *)efsrx 12otion>pre>refs"3.1ret">meceq"/sppfs?returncoeqtion[5]r_len_len"24) |e>refs"3.1ret">meceq"/sppfs?returncoeqtion[4]r_len_len"16) | 2oti1on> 2o#L482">on> L482">refs"3. 6ne">get" 6L466">o466paon ef6?retu66ch(th-1psrefs"3.1ret">meceq"/sppfs?returncoeqtion[3]r_len_len"8)uefs"3.1ret">pospaceq"/sppfs?returncoeqtion[2> 2oti1on> 2o#L513">on> L513">refs"3. 6ne">get" 6L467">o467paonstkeypaon-"/sppfs?returncode=rx_iv32_new">refs"3.1ret">rx16-r4)psrx16ion>pre>refs"3.1ret">meceq"/sppfs?returncoeqtion[1]r_len_len"8)uefs"3.1ret">pospaceq"/sppfs?returncoeqtion[0> 2oti1on> 2o#L513">on> L513">refs"3. 6ne">get" 6L468">o468paon ef6?retu66s?returncode=2ot_dbg_ 2oti1on> 2o#L507">on> L507">refs"3. 6ne">get" 6L469">o469paon ef6?retu6ncode=sg_init_} else> o_blkcipher_de1on>on -r4)ps 2oti1on> 2o#L509">on> L509">refs"3. 6ne">get" 6L470">o470paon if6(efs?67s?returncode=2ot_dbg_ratelimited"prepaon-"/sppfs?returncode=dot11RSNAStatsTKIPICVEron,_selis paon efs?reton,_seltionpre> 2oti1on> 2o#L486">on> L486">refs"3. 6ne">get" 6L471">o471paon 6 67turncode=memcelse 2oti1on> 2o#L418">on> L418">refs"3. 6ne">get" 6L472">o472paon 6 6 efs42otihpsget" 6L473">o473paon 6 67ion> 2oti1on> 2o#L514">on> L514">refs"3. 6ne">get" 6L474">o474paon }s6fs?re67 42otihp> 2oti1on> 2o#L486">on> L486">refs"3. 6ne">get" 6L475">o475paons 2o#L475">on> L475">refs"3. 6ne">get" 6L476">o476paon ef6?retu67 2o#L475">on> L475">refs"3. 6ne">get" 6L477">o477paon ef6?retu67ode=Cde=michael_mic">refs"3.1re225">on> efs?rgurnaon-"/sppfs?return225">on> efs?rgurnaon"prefiv">rfs"3.1ret">skbpa }srefs"3.1re2n -r4)psu8paon *hefs?returncode=hdr"prefs"3.1ret">hdrpaseq"/sppfs?returncoeqtion tiv">rfs"3.1ret">skbpapaon)ps 2oti1on> 2o#L475">on> L475">refs"3. 6ne">get" 6L478">o478paon ef6?retu6ncode= 2oti1on> 2o#L482">on> L482">refs"3. 6ne">get" 6L479">o479paon ef6?retu67ch(th-6ps o_hash"prefs"3.1re515">on> efs?rpaonpson> efs?rpaonb"prefs"3.1ret">skbpapaon-"/sppfs?returncode=rx_refs"3.1ret">pospaoaon)ps 2o#L418">on> L418">refs"3. 6ne">get" 6L480">o480paon ef6?retu68turnc 2oti1on> 2o#L418">on> L418">refs"3. 6ne">get" 6L481">o481paon if6(efs?68turncode=memcmp">refs"3.1ret">meon alonhefs?returncode=hdr_len"prefs"3.1ret">hs?re_KEY_HDR_LENpaon)ps 2o#L418">on> L418">refs"3. 6ne">get" 6L482">o482paon 6 6f (efs?returncode=iv3242otihpsget" 6L483">o483paon 6 68ion> 2oti1on> 2o#L514">on> L514">refs"3. 6ne">get" 6L484">o484paonelxr_prefs63.com68turncode=tfm_mich!"3.1ret">sgpaonpaon-"/sppfs?returncode=key"prefs"3.1ret">keypaon,_selis paon efs?reton,_seltion> 2oti1on> 2o#L509">on> L509">refs"3. 6ne">get" 6L485">o485paon 6 68s?returncode=pr_warn"42otihp> 2oti1on> 2o#L486">on> L486">refs"3. 6ne">get" 6L486">o486paon 6 68code=crc">refs"3.1ret">crcpaemmcpsiv16pao2oti }stkeypaon-"/sppfs?returncode=key"prefs"3.1ret">keypaon, efs?returncode=tkey"p">o445paon s?re_KEY_HDR_LENpaon)ps 2o#L486">on> L486">refs"3. 6ne">get" 6L487">o487paon#ifdefrefs6retur68ion> 2oti1on> 2o#L508">on> L508">refs"3. 6ne">get" 6L488">o488paon 6 68code=sg_init_ o_blkcipher_de1on>ceq"/sppfs?returncoeqtion)> 2oti1on> 2o#L482">on> L482">refs"3. 6ne">get" 6L489">o489paon 6 6 pfsi Remove IV and ICV */pavR2otihptheqoequence number ofptheqe It transmitt */pretu.t12otion> 2oti1on> 2o#L497">on> L497">refs"3. 6ne">get" 6L490">o490paon#endifspratelimited"prerx16-r4)psprefs"3.1ret">tkeypaon-"/sppfs?returncode=rx_iv32_new">refs"3.1retx rx16-r4)psrx16ion> 2oti1on> 2o#L486">on> L486">refs"3. 6ne">get" 6L491">o491paon 6 69s?returncode=t ey"prefs"3.1ret">tkeyu_itihdrpaon *)efsuotion>pratelimited"prerx_itihdrpaon *)efs12otion>prefs"3.1ret">tkeypaon-"/sppfs?returncode=rx_iv32_new">refs"3.1ret">rx_itihdrpaon *)efstx 12otion> 2oti1on> 2o#L486">on> L486">refs"3. 6ne">get" 6L492">o492paon 6 69 (efs?returncode=iv32"prefs"3.1ret">tkey?x16-r4)psprre0> 2oti1on> 2o#L509">on> L509">refs"3. 6ne">get" 6L493">o493paon }s6fs?re69ch(th-7ps-- 2oti1on> 2o#L486">on> L486">refs"3. 6ne">get" 6L494">o494paons-- 2oti1on> 2o#L486">on> L486">refs"3. 6ne">get" 6L495">o495paon el6r_pre69s?returncode=pr_warn"s"3.1ret">pospaceq"/sppfs?returncoeqtion[0>prefs"3.1ret">tkeypaon-"/sppfs?returncode=rx_iv32_new">refs"3.1retx rx16-r4)psrx16ion> 2oti1on> 2o#L486">on> L486">refs"3. 6ne">get" 6L496">o496paonelxr_prefs63.com69ch(th-1psmeceq"/sppfs?returncoeqtion[1]rrefs"3.1ret">tkeypaon-"/sppfs?returncode=rx_iv32_new">refs"3.1retx rx16-r4)psrx16ion> v32_v32_ 8 2oti1on> 2o#L486">on> L486">refs"3. 6ne">get" 6L497">o497paon ef6?retu69ch(th-4psiv16pao2oticeq"/sppfs?returncoeqtion[2>prefs"3.1ret">tkeypaon-"/sppfs?returncode=rx_iv32_new">refs"3.1ret">rx_itihdrpaon *)efstx 12otion> 2oti1on> 2o#L486">on> L486">refs"3. 6ne">get" 6L498">o498paon ef6?retu69s?returncode=2ot_dbg_ratelimited"preceq"/sppfs?returncoeqtion[3]rrefs"3.1ret">tkeypaon-"/sppfs?returncode=rx_iv32_new">refs"3.1ret">rx_itihdrpaon *)efstx 12otion> v32_v32_ 8 2oti1on> 2o#L486">on> L486">refs"3. 6ne">get" 6L499">o499paonsmeceq"/sppfs?returncoeqtion[4]rrefs"3.1ret">tkeypaon-"/sppfs?returncode=rx_iv32_new">refs"3.1ret">rx_itihdrpaon *)efstx 12otion> v32_v32_ 16 2oti1on> 2o#L486">on> L486">refs"3. 7ne">get" 7L500">o500paon el7r_pre70s?returncode=2ot_dbg_ratelimited"preceq"/sppfs?returncoeqtion[5]rrefs"3.1ret">tkeypaon-"/sppfs?returncode=rx_iv32_new">refs"3.1ret">rx_itihdrpaon *)efstx 12otion> v32_v32_ 24 2oti1on> 2o#L486">on> L486">refs"3. 7n1">get" 7L491">o491paon 7?retu7ncode=memmove" 2oti1on> 2o#L475">on> L475">refs"3. 7n2">get" 7L492">o492paon 7?retu70s?ret 2oti1on> 2o#L418">on> L418">refs"3. 7n3">get" 7L493">o493paon }s7?retu7ncode=skb_trim42otihpo445paon s?re_KEY_HDR_LENpaon)ps 2o#L486">on> L486">refs"3. 7n4">get" 7L494">o494paons 2o#L475">on> L475">refs"3. 7n5">get" 7L495">o495paon el7h(the70ion> 2oti1on> 2o#L476">on> L476">refs"3. 7n6">get" 7L496">o496paonelxr_prefs72oti17otion>de=mich>mir *ash"prefs"3.1re515">on> efs?rde=KE_de=mNAStatsTKIPICVEr515">on> efs?rde=KE_de=mN"3.1r>mir *ash"prefs"3.1reaon(efs?returncoption tiv">rfs"3.1ret">skbpapaon)ps 2oti1on> 2o#L475">on> L475">refs"3. 7ne">get" 7L507">o507paons 2oti1on> 2o#L515">on> L515">refs"3. 7ne">get" 7L508">o508paonstht.p int7efs?r70code=crn> o_bon> o_hash"prefs"3.1re515">on> efs?rpaonpson> efs?rpaonb"prefs"3.1ret">skbpapaiaon(efs?returncopaia=rx_refs"3.1ret">pospaoaon)ps 2o#L418">on> L418">refs"3. 7ne">get" 7L509">o509paon 7 70code=icv">refs"3.1ret">icvpaaon(efs?returncoption +efs"3.1ret">skbpaode=KEpaon *efs?returncde=KEp"3.1ret">iv16pao2otiaon(efs?returncoption tuot;TKIP: RX tkey-"/spkey_iode[ve a c] alg s?re on,_selave a co2oti12otion> 2oti1on> 2o#L438">on> L438">refs"3. 7ne">get" 7L510">o510paon{srefsot;TKIP: RX tkey-"/spkey_itx pTave a 02xve a 02xve a 02xve a 02xve a 02xve a 02xo2oti12otion> 2oti1on> 2o#L438">on> L438">refs"3. 7n1">get" 7L511">o511paon st7uctre71s?returncode=t ey"pre">refsot;TKIP: RX tkey-"/spkey_irx pTave a 02xve a 02xve a 02xve a 02xve a 02xve a 02xo2oti12otion> 2oti1on> 2o#L438">on> L438">refs"3. 7n2">get" 7L512">o512paon st7uctre71 (efs?returncode=iv32">refsot;TKIP: RX tkey-"/spkey_ireplaysave a coicv_errorsave a colocalael_ ved ur_save a ctur2oti12otion> 2oti1on> 2o#L489">on> L489">refs"3. 7ne">get" 7L513">o513paonsskbpapaiaon(efs?returncopaia=rx_iv32_new">refs"3.1reon,_xpaon)pstkeypaiaon(efs?returncopaia=rx_iv32_new">refs"3.1reon,_selis paon efs?reton,_seltion 2oti1on> 2o#L489">on> L489">refs"3. 7n4">get" 7L514">o514paon if7(efs?71 efs?returet">iv16pao2otipaiaon(efs?returncopaia=rx_iv32_new">refs"3.1ret">rx_itihdrpaon *)efstx 12otion> v32_v32_ 24)rEE 2o0xff 2oti1on> 2o#L489">on> L489">refs"3. 7n5">get" 7L515">o515paon 7 7fs?returncode=pr_warn"?returet">iv16pao2otipaiaon(efs?returncopaia=rx_iv32_new">refs"3.1ret">rx_itihdrpaon *)efstx 12otion> v32_v32_ 16) EE 2o0xff 2oti1on> 2o#L489">on> L489">refs"3. 7n6">get" 7L516">o516paon 7 71ch(th-1psiv16pao2otipaiaon(efs?returncopaia=rx_iv32_new">refs"3.1ret">rx_itihdrpaon *)efstx 12otion> v32_v32_ 8) EE 2o0xff 2oti1on> 2o#L489">on> L489">refs"3. 7ne">get" 7L517">o517paon }s7fs?re71ch(th-4psiv16pao2otipaiaon(efs?returncopaia=rx_iv32_new">refs"3.1ret">rx_itihdrpaon *)efstx 12otion> vE 2o0xff 2oti1on> 2o#L489">on> L489">refs"3. 7ne">get" 7L518">o518paon ef7?retu71s?returncode=2ot_dbg______ret">iv16pao2otipaiaon(efs?returncopaia=rx_iv32_new">refs"3.1ret">rx16-r4)psrx16ion> v32_v32_ 8) EE 2o0xff 2oti1on> 2o#L489">on> L489">refs"3. 7ne">get" 7L519">o519paon ef7?retu71 efs?returncode=u8"preet">iv16pao2otipaiaon(efs?returncopaia=rx_iv32_new">refs"3.1ret">rx16-r4)psrx16ion> vE 2o0xff 2oti1on> 2o#L489">on> L489">refs"3. 7ne">get" 7L520">o520paon ef7?retu72s?returncode=2ot_dbg______ret">iv16pao2otipaiaon(efs?returncopaia=rx_iv32_new">refs"3.1ret">rx_itihdrpaon *)efsrx 12otion>pv32_v32_ 24)rEE 2o0xff 2oti1on> 2o#L489">on> L489">refs"3. 7ne">get" 7LD">on>0ret">hash_descpa7code=72s?returncode=t ey"pre">refret">iv16pao2otipaiaon(efs?returncopaia=rx_iv32_new">refs"3.1ret">rx_itihdrpaon *)efsrx 12otion>pv32_v32_ 16) EE 2o0xff 2oti1on> 2o#L489">on> L489">refs"3. 7fs"3.1ret7>addr2paon, efs?rei12oti7n> 72 (efs?returncode=iv32">refret">iv16pao2otipaiaon(efs?returncopaia=rx_iv32_new">refs"3.1ret">rx_itihdrpaon *)efsrx 12otion>pv32_v32_ 8) EE 2o0xff 2oti1on> 2o#L489">on> L489">refs"3. 7ne">get" 7=addr2">refs"3.1ret">add72paon7 efs?reppfs?returncode8"preet">iv16pao2otipaiaon(efs?returncopaia=rx_iv32_new">refs"3.1ret">rx_itihdrpaon *)efsrx 12otion>pvE 2o0xff 2oti1on> 2o#L489">on> L489">refs"3. 7n4">get" 7L424">o424paonsrefret">iv16pao2otipaiaon(efs?returncopaia=rx_iv32_new">refs"3.1ret">rx16-r4)psrx16ion>pv32_v32_ 8) EE 2o0xff 2oti1on> 2o#L489">on> L489">refs"3. 7n5">get" 7L425">o425paon if7(efs?72 pfs?returncode=tkey"et">iv16pao2otipaiaon(efs?returncopaia=rx_iv32_new">refs"3.1ret">rx16-r4)psrx16ion>pvE 2o0xff 2oti1on> 2o#L489">on> L489">refs"3. 7n6">get" 7L426">o426paon 7 72ch(th-1psiv16pao2otipaiaon(efs?returncopaia=rx_iv32_new">refs"3.1rerorspaon++ps 2o#L489">on> L489">refs"3. 7oe">get" 7L427">o427paonsiv16pao2otipaiaon(efs?returncopaia=rx_iv32_new">refs"3.1rerorspaon++ps 2o#L489">on> L489">refs"3. 7oe">get" 7L428">o428paon ef7?retu72s?returncode=2ot_dbg_tttttet">iv16pao2otipaiaon(efs?returncopaia=rx_iv32_new">refs"3.1rerorspaon++ps 2o#L486">on> L486">refs"3. 7ne">get" 7L429">o429paon ef7?retu72 efs?retu42otihpo445paon aon(efs?returncoption 2oti1on> 2o#L486">on> L486">refs"3. 7ne">get" 7L430">o430paon if7(!(ef73s?ret 2oti1on> 2o#L475">on> L475">refs"3. 7ne">get" 7L431">o431paon 7 73s?ret 2oti1on> 2o#L475">on> L475">refs"3. 7ns"3.1ret7L432">o432paon 7 7otion>de=michon> o_hash"prefs"3.1re515">on> "prefsopNAStatsTKIPICVEr515">on> "prefsopNion>pratelimited"pre475">on> L475">refsAStatsTKIPICVEr515">on> "pre_paia=rx_ref 2oti1on> 2o#L515">on> L515">refs"3. 7ne">get" 7L433">o433paon 7 73efs?reppfs?refs"3.1ret">tfmpa + efs?returnco i12o =fsot;TKIP: RX tkey-"/spkey_is?rer2oti12otion> 2oti1on> 2o#L489">on> L489">refs"3. 7ne">get" 7L434">o434paon }s7fs?re73code=tk _mixfs"3.1ret">tfmpainit-r4)pspospa515">on> efs?rinit-r4)pson> efs?rinittion 2oti1on> 2o#L489">on> L489">refs"3. 7ne">get" 7L435">o435paon ef7?retu735ode=tk _mixfs"3.1ret">tfmpadeinit-r4)pspospa515">on> efs?rdeinit-r4)pson> efs?rdeinittion 2oti1on> 2o#L489">on> L489">refs"3. 7n6">get" 7L436">o436paon if7(efs?73code=crc">reffs"3.1ret">tfmpaenL489">mpdu-r4)psmpdu=rx_refs"3.1ret">pospa515">on> efs?renL489"-r4)pson> efs?renL489"tion 2oti1on> 2o#L489">on> L489">refs"3. 7ne">get" 7L437">o437paon 7 73code=tkey"prefs"3.1ret">tfmpadeL489">mpdu-r4)psmpdu=rx_refs"3.1ret">pospa515">on> efs?rdeL489"-r4)pson> efs?rdeL489"tion 2oti1on> 2o#L489">on> L489">refs"3. 7ne">get" 7L438">o438paon 7 738ode=crc">reffs"3.1ret">tfmpaenL489">msdu-r4)psmsdu=rx_refs"3.1ret">pospa515">on> t">michael_ add-r4)pson> t">michael_ addtion 2oti1on> 2o#L489">on> L489">refs"3. 7ne">get" 7L439">o439paon 7 73code=icv">reffs"3.1ret">tfmpadeL489">msdu-r4)psmsdu=rx_refs"3.1ret">pospa515">on> t">michael_ son> t">michael_ s 2o#L489">on> L489">refs"3. 7ne">get" 7L440">o440paon }s7fs?re740ode=icv">reffs"3.1ret">tfmpaturnaon-"/sppfs?returnturnaon"prerefs"3.1ret">pospa515">on> efs?rturnaon-"/sppfs?return225">on> efs?rturnaon"pre 2oti1on> 2o#L489">on> L489">refs"3. 7ne">get" 7L441">o441paon if7(!efs74s?returncode=fs"3.1ret">tfmpagurnaon-"/sppfs?returngurnaon"prerefs"3.1ret">pospa515">on> efs?rgurnaon-"/sppfs?return225">on> efs?rgurnaon"pre 2oti1on> 2o#L489">on> L489">refs"3. 7ns"3.1ret7L442">o442paon 7 742?returncode=fs"3.1ret">tfmpade=KE_de=mNAStatsTKIPICVErde=KE_de=mN"3.1refs"3.1ret">pospa515">on> efs?rde=KE_de=mNAStatsTKIPICVEr515">on> efs?rde=KE_de=mN"3.1 2oti1on> 2o#L489">on> L489">refs"3. 7ne">get" 7L443">o443paon 7 74efs?reppfs?refs"3.1ret">tfmpaextra>mpdurdeefixlenpaon psmpdurdeefixlenp"3.1ref4 + 4,si Remove IV and ICV */pavIV + ExtIV 12otion> 2oti1on> 2o#L497">on> L497">refs"3. 7ne">get" 7L444">o444paon 7 74code=tk _mixfs"3.1ret">tfmpaextra>mpdurdostfixlenpaon psmpdurdostfixlenp"3.1ref4,tttte Remove IV and ICV */pavICV 12otion> 2oti1on> 2o#L497">on> L497">refs"3. 7ne">get" 7L445">o445paon }s7fs?re745ode=tk _mixfs"3.1ret">tfmpaextra>msdurdostfixlenpaon psmsdurdostfixlenp"3.1ref8,tttte Remove IV and ICV */pav cla12otion> 2oti1on> 2o#L497">on> L497">refs"3. 7n6">get" 7L446">o446paon ef7?retu74code=crc">reffs"3.1ret">tfmpagurngspaon aamp; pfs?retgurngspao"prerefs"3.1ret">pospa515">on> efs?rgurngspaon aamp; pfs?ret515">on> efs?rgurngspao"3.1 2oti1on> 2o#L489">on> L489">refs"3. 7ne">get" 7L447">o447paon ef7?retu74code=tkey"prefs"3.1ret">tfmpasurngspaon aamp; pfs?retsurngspao"prerefs"3.1ret">pospa515">on> efs?rsurngspaon aamp; pfs?ret515">on> efs?rsurngspao"3.1 2oti1on> 2o#L489">on> L489">refs"3. 7ne">get" 7L448">o448paon ef7?retu748ode=crc">reffs"3.1ret">tfmpaowne, 16)pspospaTHIS_MODULE_LENpaon)ps 2o#L489">on> L489">refs"3. 7ne">get" 7L449">o449paons 2o#L486">on> L486">refs"3. 7ne">get" 7L450">o450paon if7(efs?75turnc 2oti1on> 2o#L418">on> L418">refs"3. 7ne">get" 7L451">o451paon#ifdefrefs7retur75?retude=michael_mic">refs"3.1re_rinit-r4)pson> "prefsefs?rinit-r4)pson> "prefsefs?rinit"3.1riv">> 2oti1on> 2o#L475">on> L475">refs"3. 7ne">get" 7L452">o452paon 7 7fs?ret 2oti1on> 2o#L515">on> L515">refs"3. 7ne">get" 7L453">o453paon 7 75code=skb_trim42otihpo445paon 515">on> register "prefsopNAStatsTKIPICVEr515">on> register "prefsopN"3.1rprefs"3.1ret">sgpaon475">on> L475">refsAStatsTKIPICVEr515">on> "pre_paia=rx_) 2oti1on> 2o#L486">on> L486">refs"3. 7ne">get" 7L454">o454paon 7 75code= 2oti1on> 2o#L475">on> L475">refs"3. 7ne">get" 7L455">o455paon#endifs 2oti1on> 2o#L476">on> L476">refs"3. 7ne">get" 7L456">o456paon 7 75tion>de=michiv">rmic">refs"3.1re_rexit-r4)pson> "prefsefs?rexit-r4)pson> "prefsefs?rexit"3.1riv">> 2oti1on> 2o#L475">on> L475">refs"3. 7ne">get" 7L457">o457paon 7 75ion> 2oti1on> 2o#L515">on> L515">refs"3. 7ne">get" 7L458">o458paon }s7fs?re75code=icv">refs"3.1ret">icvpa515">on> unregister "prefsopNAStatsTKIPICVEr515">on> unregister "prefsopN"3.1rprefs"3.1ret">sgpaon475">on> L475">refsAStatsTKIPICVEr515">on> "pre_paia=rx_) 2oti1on> 2o#L486">on> L486">refs"3. 7ne">get" 7L459">o459paons 2o#L475">on> L475">refs"3. 7ne">get" 7L460">o460paon if7(efs?76turnc 2oti1on> 2o#L418">on> L418">refs"3. 7ne">get" 7L461">o461paon 7 76s?ret"3.1ret">sgpaonmodulerinit-r4)psiv16pao2oti515">on> "prefsefs?rinit-r4)pson> "prefsefs?rinit"3.1) 2oti1on> 2o#L486">on> L486">refs"3. 7ne">get" 7L462">o462paon 7 76 (efs"3.1ret">sgpaonmodulerexit-r4)psiv16pao2oti515">on> "prefsefs?rexit-r4)pson> "prefsefs?rexit"3.1) 2oti1on> 2o#L486">on> L486">refs"3. 7ne">get" 7L463">o463paon }s7fs?re76efs?r
o463pfooter"> The original LXR software byptheq 2oti1http://sourceforge.on> project#L4xr">LXR nd Iunitkey"p">this experiICV al versr2otbyp 2oti1mailto:4xr@aonux.nour5xr@aonux.noey"p.
o463psubfooter"> 5xr.aonux.no kindly hostedtbyp 2oti1http://www.redpill-aonpro.nourRedpill Lonpro ASey"p">provider ofpLonux ndnsulting and opertur2os services since 1995.