rmnet_wlan: I5d8ed820e4414371b966a52916d0765946560b14
Updates the module to version I5d8ed820e4414371b966a52916d0765946560b14 CRs-Fixed: 3223941 Change-Id: I5d8ed820e4414371b966a52916d0765946560b14 Signed-off-by: Elmer Melendez <quic_emelende@quicinc.com>
Šī revīzija ir iekļauta:

revīziju iesūtīja
Subash Abhinov Kasiviswanathan

vecāks
80a22614ae
revīzija
9f32de2980
@@ -25,14 +25,15 @@
|
||||
#include "rmnet_wlan_stats.h"
|
||||
#include "rmnet_wlan_fragment.h"
|
||||
#include "rmnet_wlan_connection.h"
|
||||
static char*verinfo[]={"\x64\x33\x37\x61\x30\x39\x63\x63",
|
||||
"\x65\x32\x31\x38\x66\x34\x35\x31","\x30\x65\x33\x34\x62\x31\x39\x31",
|
||||
"\x39\x66\x33\x66\x31\x31\x33\x30","\x62\x31\x62\x63\x64\x66\x66\x61",
|
||||
"\x61\x33\x33\x33\x36\x37\x61\x31","\x37\x34\x31\x35\x39\x32\x31\x63",
|
||||
"\x33\x35\x36\x63\x34\x39\x31\x63","\x34\x64\x32\x32\x34\x33\x36\x33",
|
||||
"\x61\x34\x31\x63\x39\x64\x37\x62","\x38\x66\x32\x66\x65\x64\x32\x66",
|
||||
"\x63\x30\x32\x62\x61\x39\x30\x65"};module_param_array(verinfo,charp,NULL,
|
||||
(0xcb7+5769-0x221c));MODULE_PARM_DESC(verinfo,
|
||||
static char*verinfo[]={"\x34\x36\x35\x36\x30\x62\x31\x34",
|
||||
"\x64\x33\x37\x61\x30\x39\x63\x63","\x65\x32\x31\x38\x66\x34\x35\x31",
|
||||
"\x30\x65\x33\x34\x62\x31\x39\x31","\x39\x66\x33\x66\x31\x31\x33\x30",
|
||||
"\x62\x31\x62\x63\x64\x66\x66\x61","\x61\x33\x33\x33\x36\x37\x61\x31",
|
||||
"\x37\x34\x31\x35\x39\x32\x31\x63","\x33\x35\x36\x63\x34\x39\x31\x63",
|
||||
"\x34\x64\x32\x32\x34\x33\x36\x33","\x61\x34\x31\x63\x39\x64\x37\x62",
|
||||
"\x38\x66\x32\x66\x65\x64\x32\x66","\x63\x30\x32\x62\x61\x39\x30\x65"};
|
||||
module_param_array(verinfo,charp,NULL,(0xcb7+5769-0x221c));MODULE_PARM_DESC(
|
||||
verinfo,
|
||||
"\x56\x65\x72\x73\x69\x6f\x6e\x20\x6f\x66\x20\x74\x68\x65\x20\x64\x72\x69\x76\x65\x72"
|
||||
);
|
||||
#define DATARMNETaf49b04806 ((0xeb7+1158-0x132d))
|
||||
@@ -48,19 +49,20 @@ DATARMNET954bef55d0);static DEFINE_HASHTABLE(DATARMNET133502ca0e,
|
||||
DATARMNET6b4ac8224c);static DEFINE_HASHTABLE(DATARMNET665d2f133f,
|
||||
DATARMNET6b4ac8224c);static DEFINE_MUTEX(DATARMNET38726379d1);static
|
||||
DEFINE_SPINLOCK(DATARMNETe6ee7c273e);static char DATARMNET30500ba48c[IFNAMSIZ];
|
||||
static char DATARMNET755f0f0df8[IFNAMSIZ];struct DATARMNETe117226f58*
|
||||
DATARMNETcde6e442f5;static bool DATARMNET1e31b22eff(struct DATARMNETb89ecedefc*
|
||||
DATARMNETae0905b0b3,struct DATARMNETb89ecedefc*DATARMNETdb49f21565){if(
|
||||
DATARMNETae0905b0b3->DATARMNET0d956cc77a!=DATARMNETdb49f21565->
|
||||
DATARMNET0d956cc77a||DATARMNETae0905b0b3->DATARMNET4924e79411!=
|
||||
DATARMNETdb49f21565->DATARMNET4924e79411)return false;if(DATARMNETae0905b0b3->
|
||||
DATARMNET0d956cc77a==IPPROTO_ESP)return DATARMNETae0905b0b3->DATARMNET906b2ee561
|
||||
==DATARMNETdb49f21565->DATARMNET906b2ee561;return DATARMNETae0905b0b3->
|
||||
DATARMNETf0d9de7e2f==DATARMNETdb49f21565->DATARMNETf0d9de7e2f;}static int
|
||||
DATARMNET0b72d312f9(struct DATARMNETb89ecedefc*DATARMNET3396919a68,struct
|
||||
genl_info*DATARMNET54338da2ff)__must_hold(&DATARMNET63a2b7773e){struct
|
||||
DATARMNET745f724205*DATARMNET63b1a086d5;rcu_read_lock();if(DATARMNET4eafcdee07(
|
||||
DATARMNET3396919a68)){rcu_read_unlock();GENL_SET_ERR_MSG(DATARMNET54338da2ff,
|
||||
static char DATARMNET755f0f0df8[IFNAMSIZ];static u32 DATARMNET7c77d83017;struct
|
||||
DATARMNETe117226f58*DATARMNETcde6e442f5;static bool DATARMNET1e31b22eff(struct
|
||||
DATARMNETb89ecedefc*DATARMNETae0905b0b3,struct DATARMNETb89ecedefc*
|
||||
DATARMNETdb49f21565){if(DATARMNETae0905b0b3->DATARMNET0d956cc77a!=
|
||||
DATARMNETdb49f21565->DATARMNET0d956cc77a||DATARMNETae0905b0b3->
|
||||
DATARMNET4924e79411!=DATARMNETdb49f21565->DATARMNET4924e79411)return false;if(
|
||||
DATARMNETae0905b0b3->DATARMNET0d956cc77a==IPPROTO_ESP)return DATARMNETae0905b0b3
|
||||
->DATARMNET906b2ee561==DATARMNETdb49f21565->DATARMNET906b2ee561;return
|
||||
DATARMNETae0905b0b3->DATARMNETf0d9de7e2f==DATARMNETdb49f21565->
|
||||
DATARMNETf0d9de7e2f;}static int DATARMNET0b72d312f9(struct DATARMNETb89ecedefc*
|
||||
DATARMNET3396919a68,struct genl_info*DATARMNET54338da2ff)__must_hold(&
|
||||
DATARMNET63a2b7773e){struct DATARMNET745f724205*DATARMNET63b1a086d5;
|
||||
rcu_read_lock();if(DATARMNET4eafcdee07(DATARMNET3396919a68)){rcu_read_unlock();
|
||||
GENL_SET_ERR_MSG(DATARMNET54338da2ff,
|
||||
"\x54\x75\x70\x6c\x65\x20\x61\x6c\x72\x65\x61\x64\x79\x20\x70\x72\x65\x73\x65\x6e\x74"
|
||||
);return-EEXIST;}rcu_read_unlock();DATARMNET63b1a086d5=kzalloc(sizeof(*
|
||||
DATARMNET63b1a086d5),GFP_KERNEL);if(!DATARMNET63b1a086d5){GENL_SET_ERR_MSG(
|
||||
@@ -84,21 +86,22 @@ GENL_SET_ERR_MSG(DATARMNET54338da2ff,
|
||||
"\x4e\x6f\x20\x73\x75\x63\x68\x20\x74\x75\x70\x6c\x65");return-ESRCH;}static
|
||||
void DATARMNETad43e44c7e(void){struct DATARMNET745f724205*DATARMNET63b1a086d5;
|
||||
struct hlist_node*DATARMNET0386f6f82a;int DATARMNET5c2fd31d7b;mutex_lock(&
|
||||
DATARMNET63a2b7773e);hash_for_each_safe(DATARMNET1903907456,DATARMNET5c2fd31d7b,
|
||||
DATARMNET0386f6f82a,DATARMNET63b1a086d5,DATARMNETe8608dd267){hash_del_rcu(&
|
||||
DATARMNET63b1a086d5->DATARMNETe8608dd267);kfree_rcu(DATARMNET63b1a086d5,
|
||||
DATARMNET28bfe9e6ad);}mutex_unlock(&DATARMNET63a2b7773e);}static bool
|
||||
DATARMNET55aac1386b(struct DATARMNET8d3c2559ca*DATARMNET1476c48228,struct
|
||||
DATARMNET8d3c2559ca*DATARMNET57a0f36a25){struct in6_addr DATARMNET4c8c2ca74e={.
|
||||
s6_addr32={4294967295,4294967295,(0xd2d+202-0xdf7),(0xd2d+202-0xdf7)},};if(
|
||||
DATARMNET1476c48228->DATARMNET0d956cc77a!=DATARMNET57a0f36a25->
|
||||
DATARMNET0d956cc77a)return false;if(DATARMNET1476c48228->DATARMNET0d956cc77a==
|
||||
(0xd11+230-0xdf3))return DATARMNET1476c48228->DATARMNET0dc14167a1==
|
||||
DATARMNET57a0f36a25->DATARMNET0dc14167a1;return!ipv6_masked_addr_cmp(&
|
||||
DATARMNET1476c48228->DATARMNET5700daac01,&DATARMNET4c8c2ca74e,&
|
||||
DATARMNET57a0f36a25->DATARMNET5700daac01);}struct DATARMNET41b426061d*
|
||||
DATARMNETcc0a01df2a(struct DATARMNET8d3c2559ca*DATARMNET54338da2ff)__must_hold(
|
||||
RCU){struct DATARMNET41b426061d*DATARMNET63b1a086d5;hash_for_each_possible_rcu(
|
||||
DATARMNET63a2b7773e);DATARMNET7c77d83017=(0xd2d+202-0xdf7);hash_for_each_safe(
|
||||
DATARMNET1903907456,DATARMNET5c2fd31d7b,DATARMNET0386f6f82a,DATARMNET63b1a086d5,
|
||||
DATARMNETe8608dd267){hash_del_rcu(&DATARMNET63b1a086d5->DATARMNETe8608dd267);
|
||||
kfree_rcu(DATARMNET63b1a086d5,DATARMNET28bfe9e6ad);}mutex_unlock(&
|
||||
DATARMNET63a2b7773e);}static bool DATARMNET55aac1386b(struct DATARMNET8d3c2559ca
|
||||
*DATARMNET1476c48228,struct DATARMNET8d3c2559ca*DATARMNET57a0f36a25){struct
|
||||
in6_addr DATARMNET4c8c2ca74e={.s6_addr32={4294967295,4294967295,
|
||||
(0xd2d+202-0xdf7),(0xd2d+202-0xdf7)},};if(DATARMNET1476c48228->
|
||||
DATARMNET0d956cc77a!=DATARMNET57a0f36a25->DATARMNET0d956cc77a)return false;if(
|
||||
DATARMNET1476c48228->DATARMNET0d956cc77a==(0xd11+230-0xdf3))return
|
||||
DATARMNET1476c48228->DATARMNET0dc14167a1==DATARMNET57a0f36a25->
|
||||
DATARMNET0dc14167a1;return!ipv6_masked_addr_cmp(&DATARMNET1476c48228->
|
||||
DATARMNET5700daac01,&DATARMNET4c8c2ca74e,&DATARMNET57a0f36a25->
|
||||
DATARMNET5700daac01);}struct DATARMNET41b426061d*DATARMNETcc0a01df2a(struct
|
||||
DATARMNET8d3c2559ca*DATARMNET54338da2ff)__must_hold(RCU){struct
|
||||
DATARMNET41b426061d*DATARMNET63b1a086d5;hash_for_each_possible_rcu(
|
||||
DATARMNET78ed39f13b,DATARMNET63b1a086d5,DATARMNETe8608dd267,DATARMNET54338da2ff
|
||||
->DATARMNET0dc14167a1){if(DATARMNET55aac1386b(&DATARMNET63b1a086d5->
|
||||
DATARMNET7ed5754a5c,DATARMNET54338da2ff))return DATARMNET63b1a086d5;}return NULL
|
||||
@@ -455,20 +458,21 @@ DATARMNETefc9df3df2;mutex_lock(&DATARMNET63a2b7773e);for(DATARMNETefc9df3df2=
|
||||
(0xd2d+202-0xdf7);DATARMNETefc9df3df2<DATARMNETef77661260;DATARMNETefc9df3df2++)
|
||||
{DATARMNET268a8314cf=DATARMNET0b72d312f9(&DATARMNETcadc2ef9aa[
|
||||
DATARMNETefc9df3df2],DATARMNET54338da2ff);if(DATARMNET268a8314cf){if(
|
||||
DATARMNET268a8314cf==-EEXIST)DATARMNET268a8314cf=(0xd2d+202-0xdf7);else break;}}
|
||||
mutex_unlock(&DATARMNET63a2b7773e);return DATARMNET268a8314cf;}int
|
||||
DATARMNET07f6485c9b(struct DATARMNETb89ecedefc*DATARMNETcadc2ef9aa,u32
|
||||
DATARMNETef77661260,struct genl_info*DATARMNET54338da2ff){int
|
||||
DATARMNET268a8314cf=(0xd2d+202-0xdf7);u32 DATARMNETefc9df3df2;mutex_lock(&
|
||||
DATARMNET268a8314cf==-EEXIST)DATARMNET268a8314cf=(0xd2d+202-0xdf7);else break;}
|
||||
else{DATARMNET7c77d83017++;}}mutex_unlock(&DATARMNET63a2b7773e);return
|
||||
DATARMNET268a8314cf;}int DATARMNET07f6485c9b(struct DATARMNETb89ecedefc*
|
||||
DATARMNETcadc2ef9aa,u32 DATARMNETef77661260,struct genl_info*DATARMNET54338da2ff
|
||||
){int DATARMNET268a8314cf=(0xd2d+202-0xdf7);u32 DATARMNETefc9df3df2;mutex_lock(&
|
||||
DATARMNET63a2b7773e);for(DATARMNETefc9df3df2=(0xd2d+202-0xdf7);
|
||||
DATARMNETefc9df3df2<DATARMNETef77661260;DATARMNETefc9df3df2++){
|
||||
DATARMNET268a8314cf=DATARMNET79343e3135(&DATARMNETcadc2ef9aa[DATARMNETefc9df3df2
|
||||
],DATARMNET54338da2ff);if(DATARMNET268a8314cf){if(DATARMNET268a8314cf==-ESRCH)
|
||||
DATARMNET268a8314cf=(0xd2d+202-0xdf7);else break;}}mutex_unlock(&
|
||||
DATARMNET63a2b7773e);return DATARMNET268a8314cf;}int DATARMNET97b2388e63(char*
|
||||
DATARMNET852d4d00e2,struct genl_info*DATARMNET54338da2ff){int
|
||||
DATARMNET268a8314cf;if(!DATARMNETaba2beb199(DATARMNET30500ba48c,
|
||||
DATARMNET852d4d00e2,IFNAMSIZ)){GENL_SET_ERR_MSG(DATARMNET54338da2ff,
|
||||
DATARMNET268a8314cf=(0xd2d+202-0xdf7);else break;}else{DATARMNET7c77d83017--;}}
|
||||
mutex_unlock(&DATARMNET63a2b7773e);return DATARMNET268a8314cf;}int
|
||||
DATARMNET97b2388e63(char*DATARMNET852d4d00e2,struct genl_info*
|
||||
DATARMNET54338da2ff){int DATARMNET268a8314cf;if(!DATARMNETaba2beb199(
|
||||
DATARMNET30500ba48c,DATARMNET852d4d00e2,IFNAMSIZ)){GENL_SET_ERR_MSG(
|
||||
DATARMNET54338da2ff,
|
||||
"\x44\x65\x76\x69\x63\x65\x20\x69\x73\x20\x61\x6c\x72\x65\x61\x64\x79\x20\x73\x65\x74"
|
||||
);return(0xd2d+202-0xdf7);}DATARMNET268a8314cf=DATARMNET116f9a46aa();if(
|
||||
DATARMNET268a8314cf){GENL_SET_ERR_MSG(DATARMNET54338da2ff,
|
||||
@@ -530,6 +534,32 @@ DATARMNET268a8314cf=DATARMNET51f60f2fd3(DATARMNET3396919a68);mutex_unlock(&
|
||||
DATARMNET38726379d1);return DATARMNET268a8314cf;}int DATARMNET56fde5181e(void){
|
||||
int DATARMNET268a8314cf;mutex_lock(&DATARMNET38726379d1);DATARMNET268a8314cf=
|
||||
DATARMNETb9c7621157();mutex_unlock(&DATARMNET38726379d1);return
|
||||
DATARMNET268a8314cf;}static int DATARMNETed41dd2d3f(struct sk_buff*
|
||||
DATARMNET543491eb0f,struct DATARMNETb89ecedefc*DATARMNET3396919a68){struct
|
||||
nlattr*DATARMNET4186ba2d8f;DATARMNET4186ba2d8f=nla_nest_start(
|
||||
DATARMNET543491eb0f,DATARMNET4e9cd7b8bf);if(!DATARMNET4186ba2d8f)return-EINVAL;
|
||||
if(nla_put(DATARMNET543491eb0f,DATARMNET8c062d7709,sizeof(*DATARMNET3396919a68),
|
||||
DATARMNET3396919a68)){nla_nest_cancel(DATARMNET543491eb0f,DATARMNET4186ba2d8f);
|
||||
return-EINVAL;}nla_nest_end(DATARMNET543491eb0f,DATARMNET4186ba2d8f);return
|
||||
(0xd2d+202-0xdf7);}int DATARMNETe14c875532(struct sk_buff**DATARMNET89946cec52,
|
||||
struct genl_family*DATARMNET4a4aca7220,struct genl_info*DATARMNET54338da2ff){
|
||||
struct DATARMNET745f724205*DATARMNET63b1a086d5;struct sk_buff*
|
||||
DATARMNET49b2094b56=NULL;struct nlattr*DATARMNETa5d4001a4a;int
|
||||
DATARMNETd6c25fe6b5;int DATARMNET268a8314cf=(0xd2d+202-0xdf7);void*
|
||||
DATARMNET9eab1e957c;int DATARMNET5c2fd31d7b;mutex_lock(&DATARMNET63a2b7773e);
|
||||
DATARMNETd6c25fe6b5=nla_total_size(nla_total_size(sizeof(DATARMNET63b1a086d5->
|
||||
DATARMNET54338da2ff))*DATARMNET7c77d83017);DATARMNET49b2094b56=genlmsg_new(
|
||||
DATARMNETd6c25fe6b5,GFP_KERNEL);if(!DATARMNET49b2094b56)return-ENOMEM;
|
||||
DATARMNET9eab1e957c=genlmsg_put_reply(DATARMNET49b2094b56,DATARMNET54338da2ff,
|
||||
DATARMNET4a4aca7220,(0xd2d+202-0xdf7),DATARMNET7c479706fb);if(!
|
||||
DATARMNET9eab1e957c){kfree(DATARMNET49b2094b56);return-EINVAL;}
|
||||
DATARMNETa5d4001a4a=nla_nest_start(DATARMNET49b2094b56,DATARMNET4e9cd7b8bf);if(!
|
||||
DATARMNETa5d4001a4a){kfree(DATARMNET49b2094b56);return-EINVAL;}hash_for_each(
|
||||
DATARMNET1903907456,DATARMNET5c2fd31d7b,DATARMNET63b1a086d5,DATARMNETe8608dd267)
|
||||
DATARMNETed41dd2d3f(DATARMNET49b2094b56,&DATARMNET63b1a086d5->
|
||||
DATARMNET54338da2ff);nla_nest_end(DATARMNET49b2094b56,DATARMNETa5d4001a4a);
|
||||
genlmsg_end(DATARMNET49b2094b56,DATARMNET9eab1e957c);*DATARMNET89946cec52=
|
||||
DATARMNET49b2094b56;mutex_unlock(&DATARMNET63a2b7773e);return
|
||||
DATARMNET268a8314cf;}int DATARMNET078f6bd384(void){DATARMNETbb4efa5b3d();return
|
||||
(0xd2d+202-0xdf7);}void DATARMNETfae36afa03(void){DATARMNETbb4efa5b3d();}char*
|
||||
DATARMNET934406764d(void){return DATARMNET30500ba48c;}char*DATARMNETe447822105(
|
||||
|
Atsaukties uz šo jaunā problēmā
Block a user