rmnet_wlan: Icc783caecf0e0f0ebc252c85d183f4d3088db8d1
Updates the module to version Icc783caecf0e0f0ebc252c85d183f4d3088db8d1. Change-Id: I31d519cf5bf1147888f90b0d466ff425762f9e1c Signed-off-by: Sean Tranchetti <stranche@codeaurora.org>
This commit is contained in:
@@ -35,20 +35,16 @@ DATARMNETdfe430c2d6&&DATARMNET75decd6f60->DATARMNET2cb607d686==
|
|||||||
DATARMNET6745cad668->DATARMNET2cb607d686;return!ipv6_addr_cmp(&
|
DATARMNET6745cad668->DATARMNET2cb607d686;return!ipv6_addr_cmp(&
|
||||||
DATARMNET75decd6f60->DATARMNET815cbb4bf5,&DATARMNET6745cad668->
|
DATARMNET75decd6f60->DATARMNET815cbb4bf5,&DATARMNET6745cad668->
|
||||||
DATARMNET815cbb4bf5)&&!ipv6_addr_cmp(&DATARMNET75decd6f60->DATARMNETc3f31215b7,&
|
DATARMNET815cbb4bf5)&&!ipv6_addr_cmp(&DATARMNET75decd6f60->DATARMNETc3f31215b7,&
|
||||||
DATARMNET6745cad668->DATARMNETc3f31215b7);}static void DATARMNETefaa1f4094(
|
DATARMNET6745cad668->DATARMNETc3f31215b7);}static enum hrtimer_restart
|
||||||
struct rcu_head*DATARMNET28bfe9e6ad){struct DATARMNET4f49486833*
|
DATARMNET299a8a08b5(struct hrtimer*DATARMNET6e4292679f){struct
|
||||||
DATARMNET63b1a086d5;DATARMNET63b1a086d5=container_of(DATARMNET28bfe9e6ad,struct
|
DATARMNET4f49486833*DATARMNET63b1a086d5;unsigned long DATARMNETfb0677cc3c;
|
||||||
DATARMNET4f49486833,DATARMNET28bfe9e6ad);if(DATARMNET63b1a086d5)kfree(
|
spin_lock_irqsave(&DATARMNET820642743b,DATARMNETfb0677cc3c);DATARMNET63b1a086d5=
|
||||||
DATARMNET63b1a086d5);}static enum hrtimer_restart DATARMNET299a8a08b5(struct
|
container_of(DATARMNET6e4292679f,struct DATARMNET4f49486833,DATARMNET9f31ce5d2d)
|
||||||
hrtimer*DATARMNET6e4292679f){struct DATARMNET4f49486833*DATARMNET63b1a086d5;
|
;hash_del_rcu(&DATARMNET63b1a086d5->DATARMNETe8608dd267);kfree_rcu(
|
||||||
unsigned long DATARMNETfb0677cc3c;spin_lock_irqsave(&DATARMNET820642743b,
|
DATARMNET63b1a086d5,DATARMNET28bfe9e6ad);spin_unlock_irqrestore(&
|
||||||
DATARMNETfb0677cc3c);DATARMNET63b1a086d5=container_of(DATARMNET6e4292679f,struct
|
DATARMNET820642743b,DATARMNETfb0677cc3c);return HRTIMER_NORESTART;}static
|
||||||
DATARMNET4f49486833,DATARMNET9f31ce5d2d);hash_del_rcu(&DATARMNET63b1a086d5->
|
rx_handler_result_t DATARMNET68fe094884(struct sk_buff**DATARMNET89946cec52){
|
||||||
DATARMNETe8608dd267);call_rcu(&DATARMNET63b1a086d5->DATARMNET28bfe9e6ad,
|
struct DATARMNET0ca9d8ead7 DATARMNETa76763310b={};struct DATARMNET4f49486833*
|
||||||
DATARMNETefaa1f4094);spin_unlock_irqrestore(&DATARMNET820642743b,
|
|
||||||
DATARMNETfb0677cc3c);return HRTIMER_NORESTART;}static rx_handler_result_t
|
|
||||||
DATARMNET68fe094884(struct sk_buff**DATARMNET89946cec52){struct
|
|
||||||
DATARMNET0ca9d8ead7 DATARMNETa76763310b={};struct DATARMNET4f49486833*
|
|
||||||
DATARMNET63b1a086d5;struct sk_buff*DATARMNET543491eb0f=*DATARMNET89946cec52;
|
DATARMNET63b1a086d5;struct sk_buff*DATARMNET543491eb0f=*DATARMNET89946cec52;
|
||||||
unsigned long DATARMNETfb0677cc3c;if(!DATARMNET543491eb0f||DATARMNET543491eb0f->
|
unsigned long DATARMNETfb0677cc3c;if(!DATARMNET543491eb0f||DATARMNET543491eb0f->
|
||||||
pkt_type==PACKET_LOOPBACK)goto DATARMNETbf4095f79e;if(DATARMNET543491eb0f->
|
pkt_type==PACKET_LOOPBACK)goto DATARMNETbf4095f79e;if(DATARMNET543491eb0f->
|
||||||
|
@@ -81,27 +81,23 @@ list_del_init(&DATARMNET543491eb0f->list);if(IS_ERR_OR_NULL(DATARMNET54338da2ff)
|
|||||||
DATARMNET543491eb0f,DATARMNET54338da2ff)){DATARMNET248f120dd5=
|
DATARMNET543491eb0f,DATARMNET54338da2ff)){DATARMNET248f120dd5=
|
||||||
DATARMNETba232077da;DATARMNET456ac0e8eb(DATARMNET543491eb0f);}else{
|
DATARMNETba232077da;DATARMNET456ac0e8eb(DATARMNET543491eb0f);}else{
|
||||||
DATARMNET248f120dd5=DATARMNET7a58a5c1fc;}DATARMNET5ca94dbc3c(DATARMNET248f120dd5
|
DATARMNET248f120dd5=DATARMNET7a58a5c1fc;}DATARMNET5ca94dbc3c(DATARMNET248f120dd5
|
||||||
);}}static void DATARMNET2c78b44a19(struct rcu_head*DATARMNET28bfe9e6ad){struct
|
);}}static enum hrtimer_restart DATARMNETef43eced5f(struct hrtimer*
|
||||||
DATARMNET6f3b954709*DATARMNET63b1a086d5;DATARMNET63b1a086d5=container_of(
|
DATARMNET6e4292679f){struct DATARMNET6f3b954709*DATARMNET63b1a086d5;unsigned
|
||||||
DATARMNET28bfe9e6ad,struct DATARMNET6f3b954709,DATARMNET28bfe9e6ad);if(
|
long DATARMNETfb0677cc3c;spin_lock_irqsave(&DATARMNET531b038fcd,
|
||||||
DATARMNET63b1a086d5)kfree(DATARMNET63b1a086d5);}static enum hrtimer_restart
|
DATARMNETfb0677cc3c);DATARMNET63b1a086d5=container_of(DATARMNET6e4292679f,struct
|
||||||
DATARMNETef43eced5f(struct hrtimer*DATARMNET6e4292679f){struct
|
DATARMNET6f3b954709,DATARMNET9f31ce5d2d);hash_del_rcu(&DATARMNET63b1a086d5->
|
||||||
DATARMNET6f3b954709*DATARMNET63b1a086d5;unsigned long DATARMNETfb0677cc3c;
|
DATARMNETe8608dd267);DATARMNETc7c83f614f(DATARMNET63b1a086d5,false);kfree_rcu(
|
||||||
spin_lock_irqsave(&DATARMNET531b038fcd,DATARMNETfb0677cc3c);DATARMNET63b1a086d5=
|
DATARMNET63b1a086d5,DATARMNET28bfe9e6ad);spin_unlock_irqrestore(&
|
||||||
container_of(DATARMNET6e4292679f,struct DATARMNET6f3b954709,DATARMNET9f31ce5d2d)
|
DATARMNET531b038fcd,DATARMNETfb0677cc3c);DATARMNET5ca94dbc3c(DATARMNETd691057b85
|
||||||
;hash_del_rcu(&DATARMNET63b1a086d5->DATARMNETe8608dd267);DATARMNETc7c83f614f(
|
);return HRTIMER_NORESTART;}static bool DATARMNETc529ac78b2(struct
|
||||||
DATARMNET63b1a086d5,false);call_rcu(&DATARMNET63b1a086d5->DATARMNET28bfe9e6ad,
|
DATARMNETdadb4e2c65*DATARMNET75decd6f60,struct DATARMNETdadb4e2c65*
|
||||||
DATARMNET2c78b44a19);spin_unlock_irqrestore(&DATARMNET531b038fcd,
|
DATARMNET6745cad668){if(DATARMNET75decd6f60->DATARMNET0d956cc77a!=
|
||||||
DATARMNETfb0677cc3c);DATARMNET5ca94dbc3c(DATARMNETd691057b85);return
|
DATARMNET6745cad668->DATARMNET0d956cc77a||DATARMNET75decd6f60->id!=
|
||||||
HRTIMER_NORESTART;}static bool DATARMNETc529ac78b2(struct DATARMNETdadb4e2c65*
|
DATARMNET6745cad668->id)return false;if(DATARMNET75decd6f60->DATARMNET0d956cc77a
|
||||||
DATARMNET75decd6f60,struct DATARMNETdadb4e2c65*DATARMNET6745cad668){if(
|
==(0xd11+230-0xdf3))return DATARMNET75decd6f60->DATARMNETdfe430c2d6==
|
||||||
DATARMNET75decd6f60->DATARMNET0d956cc77a!=DATARMNET6745cad668->
|
DATARMNET6745cad668->DATARMNETdfe430c2d6&&DATARMNET75decd6f60->
|
||||||
DATARMNET0d956cc77a||DATARMNET75decd6f60->id!=DATARMNET6745cad668->id)return
|
DATARMNET2cb607d686==DATARMNET6745cad668->DATARMNET2cb607d686;return!
|
||||||
false;if(DATARMNET75decd6f60->DATARMNET0d956cc77a==(0xd11+230-0xdf3))return
|
ipv6_addr_cmp(&DATARMNET75decd6f60->DATARMNET815cbb4bf5,&DATARMNET6745cad668->
|
||||||
DATARMNET75decd6f60->DATARMNETdfe430c2d6==DATARMNET6745cad668->
|
|
||||||
DATARMNETdfe430c2d6&&DATARMNET75decd6f60->DATARMNET2cb607d686==
|
|
||||||
DATARMNET6745cad668->DATARMNET2cb607d686;return!ipv6_addr_cmp(&
|
|
||||||
DATARMNET75decd6f60->DATARMNET815cbb4bf5,&DATARMNET6745cad668->
|
|
||||||
DATARMNET815cbb4bf5)&&!ipv6_addr_cmp(&DATARMNET75decd6f60->DATARMNETc3f31215b7,&
|
DATARMNET815cbb4bf5)&&!ipv6_addr_cmp(&DATARMNET75decd6f60->DATARMNETc3f31215b7,&
|
||||||
DATARMNET6745cad668->DATARMNETc3f31215b7);}static struct DATARMNET6f3b954709*
|
DATARMNET6745cad668->DATARMNETc3f31215b7);}static struct DATARMNET6f3b954709*
|
||||||
DATARMNET52b387f6cd(struct DATARMNETdadb4e2c65*DATARMNET54338da2ff){struct
|
DATARMNET52b387f6cd(struct DATARMNETdadb4e2c65*DATARMNET54338da2ff){struct
|
||||||
|
@@ -101,40 +101,7 @@ DATARMNETa903cd5994((DATARMNETef7cdd7b6b)?nla_data(DATARMNETef7cdd7b6b):NULL,
|
|||||||
DATARMNET54338da2ff);if(DATARMNET268a8314cf)GENL_SET_ERR_MSG(DATARMNET54338da2ff
|
DATARMNET54338da2ff);if(DATARMNET268a8314cf)GENL_SET_ERR_MSG(DATARMNET54338da2ff
|
||||||
,
|
,
|
||||||
"\x4b\x65\x72\x6e\x65\x6c\x20\x65\x72\x72\x6f\x72\x2c\x20\x75\x6e\x72\x65\x67\x69\x73\x74\x65\x72\x69\x6e\x67\x20\x6e\x6f\x74\x69\x66\x69\x65\x72\x20\x66\x61\x69\x6c\x65\x64"
|
"\x4b\x65\x72\x6e\x65\x6c\x20\x65\x72\x72\x6f\x72\x2c\x20\x75\x6e\x72\x65\x67\x69\x73\x74\x65\x72\x69\x6e\x67\x20\x6e\x6f\x74\x69\x66\x69\x65\x72\x20\x66\x61\x69\x6c\x65\x64"
|
||||||
);return DATARMNET268a8314cf;}static int DATARMNETb58e83bef5(const char*
|
);return DATARMNET268a8314cf;}static int DATARMNETb86993aefb(struct sk_buff*
|
||||||
DATARMNETc5a5c7fda2,int DATARMNETdb8d3e0f02,u8*DATARMNET1be23954c3){int len=
|
|
||||||
(0xd2d+202-0xdf7),DATARMNET887a22d0e2=(0xd2d+202-0xdf7),DATARMNETb14e52a504=
|
|
||||||
(0xd2d+202-0xdf7);char DATARMNET4306ab415b[(0xec7+1166-0x132d)],*
|
|
||||||
DATARMNETab6f68a65c;u16 DATARMNET87504a9b3a=(0xd2d+202-0xdf7);memset(
|
|
||||||
DATARMNET4306ab415b,(0xd2d+202-0xdf7),(0xec7+1166-0x132d));memcpy(
|
|
||||||
DATARMNET4306ab415b,DATARMNETc5a5c7fda2,DATARMNETdb8d3e0f02>(0xec7+1166-0x132d)?
|
|
||||||
(0xec7+1166-0x132d):DATARMNETdb8d3e0f02);DATARMNETab6f68a65c=DATARMNET4306ab415b
|
|
||||||
;while(len<=DATARMNETdb8d3e0f02){if(DATARMNET4306ab415b[len]!=
|
|
||||||
((char)(0x1d6b+883-0x20a4))&&DATARMNET4306ab415b[len]!='\0'){len++;continue;}
|
|
||||||
DATARMNET4306ab415b[len]='\0';DATARMNETb14e52a504=kstrtou16((const char*)
|
|
||||||
DATARMNETab6f68a65c,(0xeb7+1158-0x132d),&DATARMNET87504a9b3a);if(
|
|
||||||
DATARMNETb14e52a504)return(0xd2d+202-0xdf7);DATARMNET1be23954c3[
|
|
||||||
DATARMNET887a22d0e2]=(u8)(DATARMNET87504a9b3a>>(0xd35+210-0xdff));
|
|
||||||
DATARMNET1be23954c3[DATARMNET887a22d0e2+(0xd26+209-0xdf6)]=(u8)(
|
|
||||||
DATARMNET87504a9b3a&(0xbf7+4364-0x1c04));DATARMNET887a22d0e2+=(0xd1f+216-0xdf5);
|
|
||||||
if(DATARMNET887a22d0e2==(0xeb7+1158-0x132d))return(0xd26+209-0xdf6);
|
|
||||||
DATARMNETab6f68a65c=&DATARMNET4306ab415b[len+(0xd26+209-0xdf6)];len++;}return
|
|
||||||
(0xd26+209-0xdf6);}static int DATARMNET631d317abe(const char*DATARMNETc5a5c7fda2
|
|
||||||
,int DATARMNETdb8d3e0f02,u8*DATARMNET1be23954c3){int len=(0xd2d+202-0xdf7),
|
|
||||||
DATARMNET887a22d0e2=(0xd2d+202-0xdf7),DATARMNETb14e52a504=(0xd2d+202-0xdf7);char
|
|
||||||
DATARMNET4306ab415b[(0xeb7+1158-0x132d)],*DATARMNETab6f68a65c;u8
|
|
||||||
DATARMNET87504a9b3a=(0xd2d+202-0xdf7);memset(DATARMNET4306ab415b,
|
|
||||||
(0xd2d+202-0xdf7),(0xeb7+1158-0x132d));memcpy(DATARMNET4306ab415b,
|
|
||||||
DATARMNETc5a5c7fda2,DATARMNETdb8d3e0f02>(0xeb7+1158-0x132d)?(0xeb7+1158-0x132d):
|
|
||||||
DATARMNETdb8d3e0f02);DATARMNETab6f68a65c=DATARMNET4306ab415b;while(len<=
|
|
||||||
DATARMNETdb8d3e0f02){if(DATARMNET4306ab415b[len]!=((char)(0x37f+3988-0x12e5))&&
|
|
||||||
DATARMNET4306ab415b[len]!='\0'){len++;continue;}DATARMNET4306ab415b[len]='\0';
|
|
||||||
DATARMNETb14e52a504=kstrtou8((const char*)DATARMNETab6f68a65c,(0xd2d+202-0xdf7),
|
|
||||||
&DATARMNET87504a9b3a);if(DATARMNETb14e52a504)return(0xd2d+202-0xdf7);
|
|
||||||
DATARMNET1be23954c3[DATARMNET887a22d0e2]=DATARMNET87504a9b3a;DATARMNET887a22d0e2
|
|
||||||
++;if(DATARMNET887a22d0e2==(0xd11+230-0xdf3))return(0xd26+209-0xdf6);
|
|
||||||
DATARMNETab6f68a65c=&DATARMNET4306ab415b[len+(0xd26+209-0xdf6)];len++;}return
|
|
||||||
(0xd26+209-0xdf6);}static int DATARMNETb86993aefb(struct sk_buff*
|
|
||||||
DATARMNET543491eb0f,struct genl_info*DATARMNET54338da2ff){struct
|
DATARMNET543491eb0f,struct genl_info*DATARMNET54338da2ff){struct
|
||||||
DATARMNET8d3c2559ca DATARMNET2d4b4cfc9e={};struct nlattr*DATARMNETef7cdd7b6b;
|
DATARMNET8d3c2559ca DATARMNET2d4b4cfc9e={};struct nlattr*DATARMNETef7cdd7b6b;
|
||||||
char*DATARMNETd7f4d7c495;int DATARMNET268a8314cf;if(!DATARMNET54338da2ff->attrs[
|
char*DATARMNETd7f4d7c495;int DATARMNET268a8314cf;if(!DATARMNET54338da2ff->attrs[
|
||||||
@@ -143,15 +110,15 @@ GENL_SET_ERR_MSG(DATARMNET54338da2ff,
|
|||||||
"\x4d\x75\x73\x74\x20\x73\x70\x65\x63\x69\x66\x79\x20\x46\x57\x44\x20\x64\x65\x76\x69\x63\x65\x20\x61\x6e\x64\x20\x61\x64\x64\x72\x65\x73\x73"
|
"\x4d\x75\x73\x74\x20\x73\x70\x65\x63\x69\x66\x79\x20\x46\x57\x44\x20\x64\x65\x76\x69\x63\x65\x20\x61\x6e\x64\x20\x61\x64\x64\x72\x65\x73\x73"
|
||||||
);return-EINVAL;}DATARMNETef7cdd7b6b=DATARMNET54338da2ff->attrs[
|
);return-EINVAL;}DATARMNETef7cdd7b6b=DATARMNET54338da2ff->attrs[
|
||||||
DATARMNETea4b56dc2b];DATARMNETd7f4d7c495=nla_data(DATARMNETef7cdd7b6b);if(strchr
|
DATARMNETea4b56dc2b];DATARMNETd7f4d7c495=nla_data(DATARMNETef7cdd7b6b);if(strchr
|
||||||
(DATARMNETd7f4d7c495,((char)(0x5bc+2978-0x1124)))){if(DATARMNETb58e83bef5(
|
(DATARMNETd7f4d7c495,((char)(0x1076+2199-0x18d3)))){if(in6_pton(
|
||||||
DATARMNETd7f4d7c495,nla_len(DATARMNETef7cdd7b6b),DATARMNET2d4b4cfc9e.
|
DATARMNETd7f4d7c495,nla_len(DATARMNETef7cdd7b6b),DATARMNET2d4b4cfc9e.
|
||||||
DATARMNET5700daac01.s6_addr)!=(0xd26+209-0xdf6)){GENL_SET_ERR_MSG(
|
DATARMNET5700daac01.s6_addr,-(0xd26+209-0xdf6),NULL)!=(0xd26+209-0xdf6)){
|
||||||
DATARMNET54338da2ff,
|
GENL_SET_ERR_MSG(DATARMNET54338da2ff,
|
||||||
"\x46\x57\x44\x20\x61\x64\x64\x72\x65\x73\x73\x20\x69\x73\x20\x69\x6e\x76\x61\x6c\x69\x64\x20\x69\x6e\x20\x49\x50\x76\x36"
|
"\x46\x57\x44\x20\x61\x64\x64\x72\x65\x73\x73\x20\x69\x73\x20\x69\x6e\x76\x61\x6c\x69\x64\x20\x69\x6e\x20\x49\x50\x76\x36"
|
||||||
);return-EINVAL;}DATARMNET2d4b4cfc9e.DATARMNET0d956cc77a=(0xd03+244-0xdf1);}else
|
);return-EINVAL;}DATARMNET2d4b4cfc9e.DATARMNET0d956cc77a=(0xd03+244-0xdf1);}else
|
||||||
{if(DATARMNET631d317abe(DATARMNETd7f4d7c495,nla_len(DATARMNETef7cdd7b6b),(u8*)&
|
{if(in4_pton(DATARMNETd7f4d7c495,nla_len(DATARMNETef7cdd7b6b),(u8*)&
|
||||||
DATARMNET2d4b4cfc9e.DATARMNET0dc14167a1)!=(0xd26+209-0xdf6)){GENL_SET_ERR_MSG(
|
DATARMNET2d4b4cfc9e.DATARMNET0dc14167a1,-(0xd26+209-0xdf6),NULL)!=
|
||||||
DATARMNET54338da2ff,
|
(0xd26+209-0xdf6)){GENL_SET_ERR_MSG(DATARMNET54338da2ff,
|
||||||
"\x46\x57\x44\x20\x61\x64\x64\x72\x65\x73\x73\x20\x69\x73\x20\x69\x6e\x76\x61\x6c\x69\x64\x20\x69\x6e\x20\x49\x50\x76\x34"
|
"\x46\x57\x44\x20\x61\x64\x64\x72\x65\x73\x73\x20\x69\x73\x20\x69\x6e\x76\x61\x6c\x69\x64\x20\x69\x6e\x20\x49\x50\x76\x34"
|
||||||
);return-EINVAL;}DATARMNET2d4b4cfc9e.DATARMNET0d956cc77a=(0xd11+230-0xdf3);}
|
);return-EINVAL;}DATARMNET2d4b4cfc9e.DATARMNET0d956cc77a=(0xd11+230-0xdf3);}
|
||||||
DATARMNETef7cdd7b6b=DATARMNET54338da2ff->attrs[DATARMNET8bf80e4b66];
|
DATARMNETef7cdd7b6b=DATARMNET54338da2ff->attrs[DATARMNET8bf80e4b66];
|
||||||
@@ -170,14 +137,15 @@ GENL_SET_ERR_MSG(DATARMNET54338da2ff,
|
|||||||
"\x4d\x75\x73\x74\x20\x73\x70\x65\x63\x69\x66\x79\x20\x46\x57\x44\x20\x64\x65\x76\x69\x63\x65\x20\x61\x6e\x64\x20\x61\x64\x64\x72\x65\x73\x73"
|
"\x4d\x75\x73\x74\x20\x73\x70\x65\x63\x69\x66\x79\x20\x46\x57\x44\x20\x64\x65\x76\x69\x63\x65\x20\x61\x6e\x64\x20\x61\x64\x64\x72\x65\x73\x73"
|
||||||
);return-EINVAL;}DATARMNETef7cdd7b6b=DATARMNET54338da2ff->attrs[
|
);return-EINVAL;}DATARMNETef7cdd7b6b=DATARMNET54338da2ff->attrs[
|
||||||
DATARMNETea4b56dc2b];DATARMNETd7f4d7c495=nla_data(DATARMNETef7cdd7b6b);if(strchr
|
DATARMNETea4b56dc2b];DATARMNETd7f4d7c495=nla_data(DATARMNETef7cdd7b6b);if(strchr
|
||||||
(DATARMNETd7f4d7c495,((char)(0x7e1+4414-0x18e5)))){if(DATARMNETb58e83bef5(
|
(DATARMNETd7f4d7c495,((char)(0x1424+3597-0x21f7)))){if(in6_pton(
|
||||||
DATARMNETd7f4d7c495,nla_len(DATARMNETef7cdd7b6b),DATARMNET2d4b4cfc9e.
|
DATARMNETd7f4d7c495,nla_len(DATARMNETef7cdd7b6b),DATARMNET2d4b4cfc9e.
|
||||||
DATARMNET5700daac01.s6_addr)!=(0xd26+209-0xdf6)){GENL_SET_ERR_MSG(
|
DATARMNET5700daac01.s6_addr,-(0xd26+209-0xdf6),NULL)!=(0xd26+209-0xdf6)){
|
||||||
DATARMNET54338da2ff,
|
GENL_SET_ERR_MSG(DATARMNET54338da2ff,
|
||||||
"\x46\x57\x44\x20\x61\x64\x64\x72\x65\x73\x73\x20\x69\x73\x20\x69\x6e\x76\x61\x6c\x69\x64\x20\x69\x6e\x20\x49\x50\x76\x36"
|
"\x46\x57\x44\x20\x61\x64\x64\x72\x65\x73\x73\x20\x69\x73\x20\x69\x6e\x76\x61\x6c\x69\x64\x20\x69\x6e\x20\x49\x50\x76\x36"
|
||||||
);return-EINVAL;}DATARMNET2d4b4cfc9e.DATARMNET0d956cc77a=(0xd03+244-0xdf1);}else
|
);return-EINVAL;}DATARMNET2d4b4cfc9e.DATARMNET0d956cc77a=(0xd03+244-0xdf1);}else
|
||||||
{if(DATARMNET631d317abe(DATARMNETd7f4d7c495,nla_len(DATARMNETef7cdd7b6b),(u8*)&
|
{if(in4_pton(DATARMNETd7f4d7c495,nla_len(DATARMNETef7cdd7b6b),(u8*)&
|
||||||
DATARMNET2d4b4cfc9e.DATARMNET0dc14167a1)){GENL_SET_ERR_MSG(DATARMNET54338da2ff,
|
DATARMNET2d4b4cfc9e.DATARMNET0dc14167a1,-(0xd26+209-0xdf6),NULL)!=
|
||||||
|
(0xd26+209-0xdf6)){GENL_SET_ERR_MSG(DATARMNET54338da2ff,
|
||||||
"\x46\x57\x44\x20\x61\x64\x64\x72\x65\x73\x73\x20\x69\x73\x20\x69\x6e\x76\x61\x6c\x69\x64\x20\x69\x6e\x20\x49\x50\x76\x34"
|
"\x46\x57\x44\x20\x61\x64\x64\x72\x65\x73\x73\x20\x69\x73\x20\x69\x6e\x76\x61\x6c\x69\x64\x20\x69\x6e\x20\x49\x50\x76\x34"
|
||||||
);return-EINVAL;}DATARMNET2d4b4cfc9e.DATARMNET0d956cc77a=(0xd11+230-0xdf3);}
|
);return-EINVAL;}DATARMNET2d4b4cfc9e.DATARMNET0d956cc77a=(0xd11+230-0xdf3);}
|
||||||
DATARMNETef7cdd7b6b=DATARMNET54338da2ff->attrs[DATARMNET8bf80e4b66];
|
DATARMNETef7cdd7b6b=DATARMNET54338da2ff->attrs[DATARMNET8bf80e4b66];
|
||||||
|
@@ -57,18 +57,14 @@ DATARMNET3396919a68,sizeof(*DATARMNET3396919a68));INIT_HLIST_NODE(&
|
|||||||
DATARMNET63b1a086d5->DATARMNETe8608dd267);hash_add_rcu(DATARMNET1903907456,&
|
DATARMNET63b1a086d5->DATARMNETe8608dd267);hash_add_rcu(DATARMNET1903907456,&
|
||||||
DATARMNET63b1a086d5->DATARMNETe8608dd267,DATARMNET3396919a68->
|
DATARMNET63b1a086d5->DATARMNETe8608dd267,DATARMNET3396919a68->
|
||||||
DATARMNETf0d9de7e2f);DATARMNET5ca94dbc3c(DATARMNET12d881921a);return
|
DATARMNETf0d9de7e2f);DATARMNET5ca94dbc3c(DATARMNET12d881921a);return
|
||||||
(0xd2d+202-0xdf7);}static void DATARMNET440ec83e44(struct rcu_head*
|
(0xd2d+202-0xdf7);}static int DATARMNET79343e3135(struct DATARMNETb89ecedefc*
|
||||||
DATARMNET28bfe9e6ad){struct DATARMNET745f724205*DATARMNET63b1a086d5;
|
DATARMNET3396919a68,struct genl_info*DATARMNET54338da2ff)__must_hold(&
|
||||||
DATARMNET63b1a086d5=container_of(DATARMNET28bfe9e6ad,struct DATARMNET745f724205,
|
DATARMNET63a2b7773e){struct DATARMNET745f724205*DATARMNET63b1a086d5;struct
|
||||||
DATARMNET28bfe9e6ad);if(DATARMNET63b1a086d5)kfree(DATARMNET63b1a086d5);}static
|
hlist_node*DATARMNET0386f6f82a;hash_for_each_possible_safe(DATARMNET1903907456,
|
||||||
int DATARMNET79343e3135(struct DATARMNETb89ecedefc*DATARMNET3396919a68,struct
|
DATARMNET63b1a086d5,DATARMNET0386f6f82a,DATARMNETe8608dd267,DATARMNET3396919a68
|
||||||
genl_info*DATARMNET54338da2ff)__must_hold(&DATARMNET63a2b7773e){struct
|
->DATARMNETf0d9de7e2f){if(DATARMNET1e31b22eff(&DATARMNET63b1a086d5->
|
||||||
DATARMNET745f724205*DATARMNET63b1a086d5;struct hlist_node*DATARMNET0386f6f82a;
|
DATARMNET54338da2ff,DATARMNET3396919a68)){hash_del_rcu(&DATARMNET63b1a086d5->
|
||||||
hash_for_each_possible_safe(DATARMNET1903907456,DATARMNET63b1a086d5,
|
DATARMNETe8608dd267);kfree_rcu(DATARMNET63b1a086d5,DATARMNET28bfe9e6ad);
|
||||||
DATARMNET0386f6f82a,DATARMNETe8608dd267,DATARMNET3396919a68->DATARMNETf0d9de7e2f
|
|
||||||
){if(DATARMNET1e31b22eff(&DATARMNET63b1a086d5->DATARMNET54338da2ff,
|
|
||||||
DATARMNET3396919a68)){hash_del_rcu(&DATARMNET63b1a086d5->DATARMNETe8608dd267);
|
|
||||||
call_rcu(&DATARMNET63b1a086d5->DATARMNET28bfe9e6ad,DATARMNET440ec83e44);
|
|
||||||
DATARMNET5ca94dbc3c(DATARMNET9f24b86462);return(0xd2d+202-0xdf7);}}
|
DATARMNET5ca94dbc3c(DATARMNET9f24b86462);return(0xd2d+202-0xdf7);}}
|
||||||
GENL_SET_ERR_MSG(DATARMNET54338da2ff,
|
GENL_SET_ERR_MSG(DATARMNET54338da2ff,
|
||||||
"\x4e\x6f\x20\x73\x75\x63\x68\x20\x74\x75\x70\x6c\x65");return-ESRCH;}static
|
"\x4e\x6f\x20\x73\x75\x63\x68\x20\x74\x75\x70\x6c\x65");return-ESRCH;}static
|
||||||
@@ -76,41 +72,40 @@ void DATARMNETad43e44c7e(void){struct DATARMNET745f724205*DATARMNET63b1a086d5;
|
|||||||
struct hlist_node*DATARMNET0386f6f82a;int DATARMNET5c2fd31d7b;mutex_lock(&
|
struct hlist_node*DATARMNET0386f6f82a;int DATARMNET5c2fd31d7b;mutex_lock(&
|
||||||
DATARMNET63a2b7773e);hash_for_each_safe(DATARMNET1903907456,DATARMNET5c2fd31d7b,
|
DATARMNET63a2b7773e);hash_for_each_safe(DATARMNET1903907456,DATARMNET5c2fd31d7b,
|
||||||
DATARMNET0386f6f82a,DATARMNET63b1a086d5,DATARMNETe8608dd267){hash_del_rcu(&
|
DATARMNET0386f6f82a,DATARMNET63b1a086d5,DATARMNETe8608dd267){hash_del_rcu(&
|
||||||
DATARMNET63b1a086d5->DATARMNETe8608dd267);call_rcu(&DATARMNET63b1a086d5->
|
DATARMNET63b1a086d5->DATARMNETe8608dd267);kfree_rcu(DATARMNET63b1a086d5,
|
||||||
DATARMNET28bfe9e6ad,DATARMNET440ec83e44);}mutex_unlock(&DATARMNET63a2b7773e);}
|
DATARMNET28bfe9e6ad);}mutex_unlock(&DATARMNET63a2b7773e);}static bool
|
||||||
static bool DATARMNET55aac1386b(struct DATARMNET8d3c2559ca*DATARMNET1476c48228,
|
DATARMNET55aac1386b(struct DATARMNET8d3c2559ca*DATARMNET1476c48228,struct
|
||||||
struct DATARMNET8d3c2559ca*DATARMNET57a0f36a25){struct in6_addr
|
DATARMNET8d3c2559ca*DATARMNET57a0f36a25){struct in6_addr DATARMNET4c8c2ca74e={.
|
||||||
DATARMNET4c8c2ca74e={.s6_addr32={4294967295,4294967295,(0xd2d+202-0xdf7),
|
s6_addr32={4294967295,4294967295,(0xd2d+202-0xdf7),(0xd2d+202-0xdf7)},};if(
|
||||||
(0xd2d+202-0xdf7)},};if(DATARMNET1476c48228->DATARMNET0d956cc77a!=
|
DATARMNET1476c48228->DATARMNET0d956cc77a!=DATARMNET57a0f36a25->
|
||||||
DATARMNET57a0f36a25->DATARMNET0d956cc77a)return false;if(DATARMNET1476c48228->
|
DATARMNET0d956cc77a)return false;if(DATARMNET1476c48228->DATARMNET0d956cc77a==
|
||||||
DATARMNET0d956cc77a==(0xd11+230-0xdf3))return DATARMNET1476c48228->
|
(0xd11+230-0xdf3))return DATARMNET1476c48228->DATARMNET0dc14167a1==
|
||||||
DATARMNET0dc14167a1==DATARMNET57a0f36a25->DATARMNET0dc14167a1;return!
|
DATARMNET57a0f36a25->DATARMNET0dc14167a1;return!ipv6_masked_addr_cmp(&
|
||||||
ipv6_masked_addr_cmp(&DATARMNET1476c48228->DATARMNET5700daac01,&
|
DATARMNET1476c48228->DATARMNET5700daac01,&DATARMNET4c8c2ca74e,&
|
||||||
DATARMNET4c8c2ca74e,&DATARMNET57a0f36a25->DATARMNET5700daac01);}static struct
|
DATARMNET57a0f36a25->DATARMNET5700daac01);}static struct DATARMNET41b426061d*
|
||||||
DATARMNET41b426061d*DATARMNETcc0a01df2a(struct DATARMNET8d3c2559ca*
|
DATARMNETcc0a01df2a(struct DATARMNET8d3c2559ca*DATARMNET54338da2ff)__must_hold(
|
||||||
DATARMNET54338da2ff)__must_hold(RCU){struct DATARMNET41b426061d*
|
RCU){struct DATARMNET41b426061d*DATARMNET63b1a086d5;hash_for_each_possible_rcu(
|
||||||
DATARMNET63b1a086d5;hash_for_each_possible_rcu(DATARMNET78ed39f13b,
|
DATARMNET78ed39f13b,DATARMNET63b1a086d5,DATARMNETe8608dd267,DATARMNET54338da2ff
|
||||||
DATARMNET63b1a086d5,DATARMNETe8608dd267,DATARMNET54338da2ff->DATARMNET0dc14167a1
|
->DATARMNET0dc14167a1){if(DATARMNET55aac1386b(&DATARMNET63b1a086d5->
|
||||||
){if(DATARMNET55aac1386b(&DATARMNET63b1a086d5->DATARMNET7ed5754a5c,
|
DATARMNET7ed5754a5c,DATARMNET54338da2ff))return DATARMNET63b1a086d5;}return NULL
|
||||||
DATARMNET54338da2ff))return DATARMNET63b1a086d5;}return NULL;}static int
|
;}static int DATARMNETe98553a8fc(struct notifier_block*DATARMNET272c159b3c,
|
||||||
DATARMNETe98553a8fc(struct notifier_block*DATARMNET272c159b3c,unsigned long
|
unsigned long DATARMNET7f045a1e6e,void*data){struct net_device*
|
||||||
DATARMNET7f045a1e6e,void*data){struct net_device*DATARMNET00dcb79bc4=
|
DATARMNET00dcb79bc4=netdev_notifier_info_to_dev(data);struct DATARMNET41b426061d
|
||||||
netdev_notifier_info_to_dev(data);struct DATARMNET41b426061d*DATARMNET2d4b4cfc9e
|
*DATARMNET2d4b4cfc9e;DATARMNET2d4b4cfc9e=container_of(DATARMNET272c159b3c,struct
|
||||||
;DATARMNET2d4b4cfc9e=container_of(DATARMNET272c159b3c,struct DATARMNET41b426061d
|
DATARMNET41b426061d,DATARMNET272c159b3c);if(!DATARMNET00dcb79bc4||strncmp(
|
||||||
,DATARMNET272c159b3c);if(!DATARMNET00dcb79bc4||strncmp(DATARMNET00dcb79bc4->name
|
DATARMNET00dcb79bc4->name,DATARMNET2d4b4cfc9e->DATARMNET852d4d00e2,IFNAMSIZ))
|
||||||
,DATARMNET2d4b4cfc9e->DATARMNET852d4d00e2,IFNAMSIZ))return NOTIFY_DONE;switch(
|
return NOTIFY_DONE;switch(DATARMNET7f045a1e6e){case NETDEV_UNREGISTER:if(
|
||||||
DATARMNET7f045a1e6e){case NETDEV_UNREGISTER:if(DATARMNET2d4b4cfc9e->
|
DATARMNET2d4b4cfc9e->DATARMNET7ed5754a5c.DATARMNET57656f6f2f){dev_put(
|
||||||
DATARMNET7ed5754a5c.DATARMNET57656f6f2f){dev_put(DATARMNET2d4b4cfc9e->
|
DATARMNET2d4b4cfc9e->DATARMNET7ed5754a5c.DATARMNET57656f6f2f);WRITE_ONCE(
|
||||||
DATARMNET7ed5754a5c.DATARMNET57656f6f2f);WRITE_ONCE(DATARMNET2d4b4cfc9e->
|
DATARMNET2d4b4cfc9e->DATARMNET7ed5754a5c.DATARMNET57656f6f2f,NULL);}break;case
|
||||||
DATARMNET7ed5754a5c.DATARMNET57656f6f2f,NULL);}break;case NETDEV_REGISTER:if(!
|
NETDEV_REGISTER:if(!DATARMNET2d4b4cfc9e->DATARMNET7ed5754a5c.DATARMNET57656f6f2f
|
||||||
DATARMNET2d4b4cfc9e->DATARMNET7ed5754a5c.DATARMNET57656f6f2f){dev_hold(
|
){dev_hold(DATARMNET00dcb79bc4);WRITE_ONCE(DATARMNET2d4b4cfc9e->
|
||||||
DATARMNET00dcb79bc4);WRITE_ONCE(DATARMNET2d4b4cfc9e->DATARMNET7ed5754a5c.
|
DATARMNET7ed5754a5c.DATARMNET57656f6f2f,DATARMNET00dcb79bc4);}break;default:
|
||||||
DATARMNET57656f6f2f,DATARMNET00dcb79bc4);}break;default:break;}return
|
break;}return NOTIFY_DONE;}static int DATARMNET1ac13d5a2a(struct
|
||||||
NOTIFY_DONE;}static int DATARMNET1ac13d5a2a(struct DATARMNET8d3c2559ca*
|
DATARMNET8d3c2559ca*DATARMNET7ed5754a5c,struct genl_info*DATARMNET54338da2ff)
|
||||||
DATARMNET7ed5754a5c,struct genl_info*DATARMNET54338da2ff)__must_hold(&
|
__must_hold(&DATARMNETf46fb02ac6){struct DATARMNET41b426061d*DATARMNET2d4b4cfc9e
|
||||||
DATARMNETf46fb02ac6){struct DATARMNET41b426061d*DATARMNET2d4b4cfc9e;int
|
;int DATARMNET268a8314cf;rcu_read_lock();DATARMNET2d4b4cfc9e=DATARMNETcc0a01df2a
|
||||||
DATARMNET268a8314cf;rcu_read_lock();DATARMNET2d4b4cfc9e=DATARMNETcc0a01df2a(
|
(DATARMNET7ed5754a5c);if(DATARMNET2d4b4cfc9e){GENL_SET_ERR_MSG(
|
||||||
DATARMNET7ed5754a5c);if(DATARMNET2d4b4cfc9e){GENL_SET_ERR_MSG(
|
|
||||||
DATARMNET54338da2ff,
|
DATARMNET54338da2ff,
|
||||||
"\x46\x57\x44\x20\x69\x6e\x66\x6f\x72\x6d\x61\x74\x69\x6f\x6e\x20\x61\x6c\x72\x65\x61\x64\x79\x20\x70\x72\x65\x73\x65\x6e\x74"
|
"\x46\x57\x44\x20\x69\x6e\x66\x6f\x72\x6d\x61\x74\x69\x6f\x6e\x20\x61\x6c\x72\x65\x61\x64\x79\x20\x70\x72\x65\x73\x65\x6e\x74"
|
||||||
);rcu_read_unlock();return-EEXIST;}rcu_read_unlock();DATARMNET2d4b4cfc9e=kzalloc
|
);rcu_read_unlock();return-EEXIST;}rcu_read_unlock();DATARMNET2d4b4cfc9e=kzalloc
|
||||||
@@ -129,17 +124,13 @@ DATARMNET54338da2ff,
|
|||||||
);kfree(DATARMNET2d4b4cfc9e);return DATARMNET268a8314cf;}INIT_HLIST_NODE(&
|
);kfree(DATARMNET2d4b4cfc9e);return DATARMNET268a8314cf;}INIT_HLIST_NODE(&
|
||||||
DATARMNET2d4b4cfc9e->DATARMNETe8608dd267);hash_add_rcu(DATARMNET78ed39f13b,&
|
DATARMNET2d4b4cfc9e->DATARMNETe8608dd267);hash_add_rcu(DATARMNET78ed39f13b,&
|
||||||
DATARMNET2d4b4cfc9e->DATARMNETe8608dd267,DATARMNET7ed5754a5c->
|
DATARMNET2d4b4cfc9e->DATARMNETe8608dd267,DATARMNET7ed5754a5c->
|
||||||
DATARMNET0dc14167a1);return(0xd2d+202-0xdf7);}static void DATARMNET70718e4fdd(
|
DATARMNET0dc14167a1);return(0xd2d+202-0xdf7);}static int DATARMNET6518a28641(
|
||||||
struct rcu_head*DATARMNET28bfe9e6ad){struct DATARMNET41b426061d*
|
struct DATARMNET41b426061d*DATARMNET2d4b4cfc9e)__must_hold(&DATARMNETf46fb02ac6)
|
||||||
DATARMNET63b1a086d5;DATARMNET63b1a086d5=container_of(DATARMNET28bfe9e6ad,struct
|
{int DATARMNET268a8314cf;DATARMNET268a8314cf=unregister_netdevice_notifier(&
|
||||||
DATARMNET41b426061d,DATARMNET28bfe9e6ad);if(DATARMNET63b1a086d5)kfree(
|
DATARMNET2d4b4cfc9e->DATARMNET272c159b3c);if(DATARMNET268a8314cf)return
|
||||||
DATARMNET63b1a086d5);}static int DATARMNET6518a28641(struct DATARMNET41b426061d*
|
DATARMNET268a8314cf;hash_del_rcu(&DATARMNET2d4b4cfc9e->DATARMNETe8608dd267);
|
||||||
DATARMNET2d4b4cfc9e)__must_hold(&DATARMNETf46fb02ac6){int DATARMNET268a8314cf;
|
DATARMNETedae8262e1(&DATARMNET2d4b4cfc9e->DATARMNET7ed5754a5c);kfree_rcu(
|
||||||
DATARMNET268a8314cf=unregister_netdevice_notifier(&DATARMNET2d4b4cfc9e->
|
DATARMNET2d4b4cfc9e,DATARMNET28bfe9e6ad);return DATARMNET268a8314cf;}static int
|
||||||
DATARMNET272c159b3c);if(DATARMNET268a8314cf)return DATARMNET268a8314cf;
|
|
||||||
hash_del_rcu(&DATARMNET2d4b4cfc9e->DATARMNETe8608dd267);DATARMNETedae8262e1(&
|
|
||||||
DATARMNET2d4b4cfc9e->DATARMNET7ed5754a5c);call_rcu(&DATARMNET2d4b4cfc9e->
|
|
||||||
DATARMNET28bfe9e6ad,DATARMNET70718e4fdd);return DATARMNET268a8314cf;}static int
|
|
||||||
DATARMNET6b6be8e27f(struct DATARMNET8d3c2559ca*DATARMNET7ed5754a5c,struct
|
DATARMNET6b6be8e27f(struct DATARMNET8d3c2559ca*DATARMNET7ed5754a5c,struct
|
||||||
genl_info*DATARMNET54338da2ff)__must_hold(&DATARMNETf46fb02ac6){struct
|
genl_info*DATARMNET54338da2ff)__must_hold(&DATARMNETf46fb02ac6){struct
|
||||||
DATARMNET41b426061d*DATARMNET2d4b4cfc9e;int DATARMNET268a8314cf;rcu_read_lock();
|
DATARMNET41b426061d*DATARMNET2d4b4cfc9e;int DATARMNET268a8314cf;rcu_read_lock();
|
||||||
|
Reference in New Issue
Block a user