wlan: Ife0054be08abe255481fe64cb823f2eea41c9d7b
Update to Ife0054be08abe255481fe64cb823f2eea41c9d7b CRs-Fixed: 3089793 Change-Id: Ife0054be08abe255481fe64cb823f2eea41c9d7b Signed-off-by: Subash Abhinov Kasiviswanathan <quic_subashab@quicinc.com>
Šī revīzija ir iekļauta:

revīziju iesūtīja
Kasiviswanathan, Subash Abhinov

vecāks
b407accac1
revīzija
3ab675026a
@@ -1,5 +1,6 @@
|
|||||||
// SPDX-License-Identifier: GPL-2.0-only
|
// SPDX-License-Identifier: GPL-2.0-only
|
||||||
/* Copyright (c) 2021, The Linux Foundation. All rights reserved.
|
/* Copyright (c) 2021, The Linux Foundation. All rights reserved.
|
||||||
|
* Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||||
*
|
*
|
||||||
* RMNET WLAN connection management framework
|
* RMNET WLAN connection management framework
|
||||||
*
|
*
|
||||||
@@ -60,20 +61,22 @@ DATARMNET813ca18d06){DATARMNET17f6bc1be5(DATARMNETfa4b3dd44a);goto
|
|||||||
DATARMNETc1174a0f45;}DATARMNET543491eb0f->dev=DATARMNET813ca18d06;memcpy(&
|
DATARMNETc1174a0f45;}DATARMNET543491eb0f->dev=DATARMNET813ca18d06;memcpy(&
|
||||||
DATARMNET099aa93adc.saddr,&DATARMNET86f1f2cdc9->saddr,sizeof(__be32));memcpy(&
|
DATARMNET099aa93adc.saddr,&DATARMNET86f1f2cdc9->saddr,sizeof(__be32));memcpy(&
|
||||||
DATARMNET099aa93adc.daddr,&DATARMNET86f1f2cdc9->daddr,sizeof(__be32));
|
DATARMNET099aa93adc.daddr,&DATARMNET86f1f2cdc9->daddr,sizeof(__be32));
|
||||||
DATARMNET066b8bd537=ip_route_output_key(&init_net,&DATARMNET099aa93adc);if(
|
DATARMNET099aa93adc.flowi4_oif=DATARMNET813ca18d06->ifindex;DATARMNET099aa93adc.
|
||||||
IS_ERR(DATARMNET066b8bd537)){DATARMNET17f6bc1be5(DATARMNET72ab5e86d8);goto
|
flowi4_flags=FLOWI_FLAG_KNOWN_NH;DATARMNET066b8bd537=ip_route_output_key(&
|
||||||
DATARMNETc1174a0f45;}DATARMNET3f85732c70=dst_neigh_lookup(&DATARMNET066b8bd537->
|
init_net,&DATARMNET099aa93adc);if(IS_ERR(DATARMNET066b8bd537)){
|
||||||
dst,&DATARMNET099aa93adc.daddr);ip_rt_put(DATARMNET066b8bd537);if(!
|
DATARMNET17f6bc1be5(DATARMNET72ab5e86d8);goto DATARMNETc1174a0f45;}
|
||||||
|
DATARMNET3f85732c70=dst_neigh_lookup(&DATARMNET066b8bd537->dst,&
|
||||||
|
DATARMNET099aa93adc.daddr);ip_rt_put(DATARMNET066b8bd537);if(!
|
||||||
DATARMNET3f85732c70){DATARMNET17f6bc1be5(DATARMNET0e6bd55b8b);goto
|
DATARMNET3f85732c70){DATARMNET17f6bc1be5(DATARMNET0e6bd55b8b);goto
|
||||||
DATARMNETc1174a0f45;}if(DATARMNET3f85732c70->dev!=DATARMNET543491eb0f->dev){
|
DATARMNETc1174a0f45;}if(DATARMNET3f85732c70->dev!=DATARMNET543491eb0f->dev||!
|
||||||
DATARMNET17f6bc1be5(DATARMNET64aecaa865);neigh_release(DATARMNET3f85732c70);goto
|
DATARMNET3f85732c70->dev->header_ops){DATARMNET17f6bc1be5(DATARMNET64aecaa865);
|
||||||
DATARMNETc1174a0f45;}DATARMNET268a8314cf=neigh_resolve_output(
|
neigh_release(DATARMNET3f85732c70);goto DATARMNETc1174a0f45;}DATARMNET268a8314cf
|
||||||
DATARMNET3f85732c70,DATARMNET543491eb0f);neigh_release(DATARMNET3f85732c70);if(
|
=neigh_resolve_output(DATARMNET3f85732c70,DATARMNET543491eb0f);neigh_release(
|
||||||
likely(DATARMNET268a8314cf==NET_XMIT_SUCCESS||DATARMNET268a8314cf==NET_XMIT_CN))
|
DATARMNET3f85732c70);if(likely(DATARMNET268a8314cf==NET_XMIT_SUCCESS||
|
||||||
{DATARMNET17f6bc1be5(DATARMNETc1b437465b);}else{DATARMNET17f6bc1be5(
|
DATARMNET268a8314cf==NET_XMIT_CN)){DATARMNET17f6bc1be5(DATARMNETc1b437465b);}
|
||||||
DATARMNET43a65c0be7);}return RX_HANDLER_CONSUMED;}else if(DATARMNET543491eb0f->
|
else{DATARMNET17f6bc1be5(DATARMNET43a65c0be7);}return RX_HANDLER_CONSUMED;}else
|
||||||
dev&&(DATARMNET543491eb0f->protocol==htons(ETH_P_IPV6))&&!(strncmp(
|
if(DATARMNET543491eb0f->dev&&(DATARMNET543491eb0f->protocol==htons(ETH_P_IPV6))
|
||||||
DATARMNET543491eb0f->dev->name,
|
&&!(strncmp(DATARMNET543491eb0f->dev->name,
|
||||||
"\x72\x5f\x72\x6d\x6e\x65\x74\x5f\x64\x61\x74\x61\x30",IFNAMSIZ))){struct
|
"\x72\x5f\x72\x6d\x6e\x65\x74\x5f\x64\x61\x74\x61\x30",IFNAMSIZ))){struct
|
||||||
ipv6hdr*DATARMNETbf55123e5b,DATARMNETcf1d9e2c1e;struct net_device*
|
ipv6hdr*DATARMNETbf55123e5b,DATARMNETcf1d9e2c1e;struct net_device*
|
||||||
DATARMNET813ca18d06=NULL;struct flowi6 DATARMNET8fbe36a2fa={};struct neighbour*
|
DATARMNET813ca18d06=NULL;struct flowi6 DATARMNET8fbe36a2fa={};struct neighbour*
|
||||||
@@ -86,26 +89,28 @@ DATARMNET934406764d());if(!DATARMNET813ca18d06){DATARMNET17f6bc1be5(
|
|||||||
DATARMNET9cff15f94d);goto DATARMNETc1174a0f45;}DATARMNET543491eb0f->dev=
|
DATARMNET9cff15f94d);goto DATARMNETc1174a0f45;}DATARMNET543491eb0f->dev=
|
||||||
DATARMNET813ca18d06;memcpy(&DATARMNET8fbe36a2fa.saddr,&DATARMNETbf55123e5b->
|
DATARMNET813ca18d06;memcpy(&DATARMNET8fbe36a2fa.saddr,&DATARMNETbf55123e5b->
|
||||||
saddr,sizeof(struct in6_addr));memcpy(&DATARMNET8fbe36a2fa.daddr,&
|
saddr,sizeof(struct in6_addr));memcpy(&DATARMNET8fbe36a2fa.daddr,&
|
||||||
DATARMNETbf55123e5b->daddr,sizeof(struct in6_addr));dst=ipv6_stub->
|
DATARMNETbf55123e5b->daddr,sizeof(struct in6_addr));DATARMNET8fbe36a2fa.
|
||||||
ipv6_dst_lookup_flow(&init_net,NULL,&DATARMNET8fbe36a2fa,NULL);if(IS_ERR(dst)){
|
flowi6_oif=DATARMNET813ca18d06->ifindex;DATARMNET8fbe36a2fa.flowi6_flags=
|
||||||
DATARMNET17f6bc1be5(DATARMNETbf6e6853f9);goto DATARMNETc1174a0f45;}
|
FLOWI_FLAG_KNOWN_NH;dst=ipv6_stub->ipv6_dst_lookup_flow(&init_net,NULL,&
|
||||||
DATARMNET3f85732c70=dst_neigh_lookup(dst,&DATARMNET8fbe36a2fa.daddr);dst_release
|
DATARMNET8fbe36a2fa,NULL);if(IS_ERR(dst)){DATARMNET17f6bc1be5(
|
||||||
(dst);if(!DATARMNET3f85732c70){DATARMNET17f6bc1be5(DATARMNETa0da722329);goto
|
DATARMNETbf6e6853f9);goto DATARMNETc1174a0f45;}DATARMNET3f85732c70=
|
||||||
DATARMNETc1174a0f45;}if(DATARMNET3f85732c70->dev!=DATARMNET543491eb0f->dev){
|
dst_neigh_lookup(dst,&DATARMNET8fbe36a2fa.daddr);dst_release(dst);if(!
|
||||||
DATARMNET17f6bc1be5(DATARMNET729e252fb9);neigh_release(DATARMNET3f85732c70);goto
|
DATARMNET3f85732c70){DATARMNET17f6bc1be5(DATARMNETa0da722329);goto
|
||||||
DATARMNETc1174a0f45;}DATARMNET268a8314cf=neigh_resolve_output(
|
DATARMNETc1174a0f45;}if(DATARMNET3f85732c70->dev!=DATARMNET543491eb0f->dev||!
|
||||||
DATARMNET3f85732c70,DATARMNET543491eb0f);neigh_release(DATARMNET3f85732c70);if(
|
DATARMNET3f85732c70->dev->header_ops){DATARMNET17f6bc1be5(DATARMNET729e252fb9);
|
||||||
likely(DATARMNET268a8314cf==NET_XMIT_SUCCESS||DATARMNET268a8314cf==NET_XMIT_CN))
|
neigh_release(DATARMNET3f85732c70);goto DATARMNETc1174a0f45;}DATARMNET268a8314cf
|
||||||
{DATARMNET17f6bc1be5(DATARMNET04311361a2);}else{DATARMNET17f6bc1be5(
|
=neigh_resolve_output(DATARMNET3f85732c70,DATARMNET543491eb0f);neigh_release(
|
||||||
DATARMNET13bbe5f5c5);}return RX_HANDLER_CONSUMED;}return RX_HANDLER_PASS;
|
DATARMNET3f85732c70);if(likely(DATARMNET268a8314cf==NET_XMIT_SUCCESS||
|
||||||
DATARMNETc1174a0f45:kfree_skb(DATARMNET543491eb0f);return RX_HANDLER_CONSUMED;}
|
DATARMNET268a8314cf==NET_XMIT_CN)){DATARMNET17f6bc1be5(DATARMNET04311361a2);}
|
||||||
static rx_handler_result_t DATARMNET68fe094884(struct sk_buff**
|
else{DATARMNET17f6bc1be5(DATARMNET13bbe5f5c5);}return RX_HANDLER_CONSUMED;}
|
||||||
DATARMNET89946cec52){struct DATARMNET0ca9d8ead7 DATARMNETa76763310b={};struct
|
return RX_HANDLER_PASS;DATARMNETc1174a0f45:kfree_skb(DATARMNET543491eb0f);return
|
||||||
DATARMNET4f49486833*DATARMNET63b1a086d5;struct sk_buff*DATARMNET543491eb0f=*
|
RX_HANDLER_CONSUMED;}static rx_handler_result_t DATARMNET68fe094884(struct
|
||||||
DATARMNET89946cec52;unsigned long DATARMNETfb0677cc3c;if(!DATARMNET543491eb0f||
|
sk_buff**DATARMNET89946cec52){struct DATARMNET0ca9d8ead7 DATARMNETa76763310b={};
|
||||||
DATARMNET543491eb0f->pkt_type==PACKET_LOOPBACK)return RX_HANDLER_PASS;if(
|
struct DATARMNET4f49486833*DATARMNET63b1a086d5;struct sk_buff*
|
||||||
DATARMNET543491eb0f->dev&&strncmp(DATARMNET543491eb0f->dev->name,
|
DATARMNET543491eb0f=*DATARMNET89946cec52;unsigned long DATARMNETfb0677cc3c;if(!
|
||||||
"\x72\x5f\x72\x6d\x6e\x65\x74\x5f\x64\x61\x74\x61\x30",IFNAMSIZ))nf_ct_set(
|
DATARMNET543491eb0f||DATARMNET543491eb0f->pkt_type==PACKET_LOOPBACK)return
|
||||||
|
RX_HANDLER_PASS;if(DATARMNET543491eb0f->dev&&strncmp(DATARMNET543491eb0f->dev->
|
||||||
|
name,"\x72\x5f\x72\x6d\x6e\x65\x74\x5f\x64\x61\x74\x61\x30",IFNAMSIZ))nf_ct_set(
|
||||||
DATARMNET543491eb0f,NULL,IP_CT_UNTRACKED);if(DATARMNET543491eb0f->protocol==
|
DATARMNET543491eb0f,NULL,IP_CT_UNTRACKED);if(DATARMNET543491eb0f->protocol==
|
||||||
htons(ETH_P_IP)){struct iphdr*DATARMNET86f1f2cdc9,DATARMNETbf6548198e;
|
htons(ETH_P_IP)){struct iphdr*DATARMNET86f1f2cdc9,DATARMNETbf6548198e;
|
||||||
DATARMNET86f1f2cdc9=skb_header_pointer(DATARMNET543491eb0f,(0xd2d+202-0xdf7),
|
DATARMNET86f1f2cdc9=skb_header_pointer(DATARMNET543491eb0f,(0xd2d+202-0xdf7),
|
||||||
|
Atsaukties uz šo jaunā problēmā
Block a user