Преглед изворни кода

rmnet_wlan: Update to version I31d8147e4aa763e5ce718bd1f984b2f102931fbf

Updates the module to version I31d8147e4aa763e5ce718bd1f984b2f102931fbf.

Change-Id: I31d8147e4aa763e5ce718bd1f984b2f102931fbf
Signed-off-by: Sean Tranchetti <[email protected]>
Sean Tranchetti пре 2 година
родитељ
комит
eaa328573b
3 измењених фајлова са 92 додато и 94 уклоњено
  1. 3 2
      wlan/rmnet_wlan.h
  2. 22 14
      wlan/rmnet_wlan_connection.c
  3. 67 78
      wlan/rmnet_wlan_main.c

+ 3 - 2
wlan/rmnet_wlan.h

@@ -1,6 +1,6 @@
 /* SPDX-License-Identifier: GPL-2.0-only */
 /* Copyright (c) 2021, The Linux Foundation. All rights reserved.
- * Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved.
+ * Copyright (c) 2022-2023 Qualcomm Innovation Center, Inc. All rights reserved.
  *
  * RMNET WLAN handler framework
  *
@@ -24,7 +24,8 @@ __be32 DATARMNETdfe430c2d6;struct in6_addr DATARMNET815cbb4bf5;};union{__be32
 DATARMNET2cb607d686;struct in6_addr DATARMNETc3f31215b7;};__be16 
 DATARMNET08e913477e;__be16 DATARMNETda7f7fa492;u8 DATARMNET0d956cc77a;};enum{
 DATARMNET356f2a237e,DATARMNET45ee632553,DATARMNET9bfbc31cd6,DATARMNETdcafdec32a,
-};void DATARMNET7ca470d54b(struct sk_buff*DATARMNET543491eb0f,u32 
+};rx_handler_result_t DATARMNET37a92021f9(struct sk_buff**DATARMNET89946cec52);
+void DATARMNET7ca470d54b(struct sk_buff*DATARMNET543491eb0f,u32 
 DATARMNET1464100e7a);int DATARMNET4899053671(struct sk_buff*DATARMNET543491eb0f,
 struct DATARMNET8d3c2559ca*DATARMNET2d4b4cfc9e);bool DATARMNET4eafcdee07(struct 
 DATARMNETb89ecedefc*DATARMNET3396919a68);int DATARMNET53f12a0f7d(struct 

+ 22 - 14
wlan/rmnet_wlan_connection.c

@@ -328,12 +328,8 @@ net_device*DATARMNET00dcb79bc4=netdev_notifier_info_to_dev(data);if(!
 DATARMNET00dcb79bc4||DATARMNETaba2beb199(DATARMNET00dcb79bc4->name,
 "\x72\x5f\x72\x6d\x6e\x65\x74\x5f\x64\x61\x74\x61",(0xd19+238-0xdfb)))return 
 NOTIFY_DONE;switch(DATARMNET7f045a1e6e){case NETDEV_UNREGISTER:
-netdev_rx_handler_unregister(DATARMNET00dcb79bc4);DATARMNETbc6bd11f47(
-DATARMNET00dcb79bc4);break;case NETDEV_REGISTER:if(netdev_rx_handler_register(
-DATARMNET00dcb79bc4,DATARMNET68fe094884,NULL))pr_err(
-"\x25\x73\x28\x29\x3a\x20\x52\x65\x67\x69\x73\x74\x65\x72\x69\x6e\x67\x20\x68\x61\x6e\x64\x6c\x65\x72\x20\x6f\x6e\x20\x25\x73\x20\x66\x61\x69\x6c\x65\x64" "\n"
-,__func__,DATARMNET00dcb79bc4->name);break;default:break;}return NOTIFY_DONE;}
-static struct notifier_block DATARMNET61d0113123={.notifier_call=
+DATARMNETbc6bd11f47(DATARMNET00dcb79bc4);break;default:break;}return NOTIFY_DONE
+;}static struct notifier_block DATARMNET61d0113123={.notifier_call=
 DATARMNET81ab4de243,};struct DATARMNET8d3c2559ca*DATARMNET07f0e0f286(struct 
 DATARMNET0ca9d8ead7*DATARMNET54338da2ff)__must_hold(RCU){struct 
 DATARMNET4f49486833*DATARMNET63b1a086d5;hash_for_each_possible_rcu(
@@ -366,15 +362,27 @@ IPPROTO_UDP){if(udp_hdr(DATARMNET543491eb0f)->source==DATARMNET3396919a68->
 DATARMNET08e913477e&&udp_hdr(DATARMNET543491eb0f)->dest==DATARMNET3396919a68->
 DATARMNETda7f7fa492)goto DATARMNET9573fcc9c6;}return;DATARMNET9573fcc9c6:
 DATARMNET543491eb0f->priority=2607612160;DATARMNET5ca94dbc3c(DATARMNETc2cade1d75
-);}static const struct rmnet_module_hook_register_info DATARMNETd0b5ecd937={.
-hooknum=RMNET_MODULE_HOOK_WLAN_FLOW_MATCH,.func=DATARMNET6f73df41cd,};void 
+);}static rx_handler_result_t DATARMNETd2f80b03ce(struct sk_buff**
+DATARMNET89946cec52){struct net_device*DATARMNET00dcb79bc4;if(!
+DATARMNET89946cec52||!(*DATARMNET89946cec52)||!(*DATARMNET89946cec52)->dev)
+return RX_HANDLER_PASS;DATARMNET00dcb79bc4=(*DATARMNET89946cec52)->dev;if(!
+DATARMNETaba2beb199(DATARMNET00dcb79bc4->name,
+"\x72\x5f\x72\x6d\x6e\x65\x74\x5f\x64\x61\x74\x61",(0xd19+238-0xdfb)))return 
+DATARMNET68fe094884(DATARMNET89946cec52);if(!DATARMNETaba2beb199(
+DATARMNET00dcb79bc4->name,DATARMNETe447822105(),IFNAMSIZ))return 
+DATARMNET37a92021f9(DATARMNET89946cec52);if(!DATARMNETaba2beb199(
+DATARMNET00dcb79bc4->name,DATARMNET934406764d(),IFNAMSIZ))return 
+DATARMNET37a92021f9(DATARMNET89946cec52);return RX_HANDLER_PASS;}static const 
+struct rmnet_module_hook_register_info DATARMNET1928843de7[]={{.hooknum=
+RMNET_MODULE_HOOK_WLAN_FLOW_MATCH,.func=DATARMNET6f73df41cd,},{.hooknum=
+RMNET_MODULE_HOOK_WLAN_INGRESS_RX_HANDLER,.func=DATARMNETd2f80b03ce,},};void 
 DATARMNET333c107558(void){rcu_assign_pointer(rmnet_wlan_ll_tuple_hook,
-DATARMNET6f73df41cd);rmnet_module_hook_register(&DATARMNETd0b5ecd937,
-(0xd26+209-0xdf6));}void DATARMNET4c08c7210c(void){rcu_assign_pointer(
-rmnet_wlan_ll_tuple_hook,NULL);rmnet_module_hook_unregister(&DATARMNETd0b5ecd937
-,(0xd26+209-0xdf6));}int DATARMNET9f106ed933(void){int DATARMNET268a8314cf;
-DATARMNET268a8314cf=register_netdevice_notifier(&DATARMNET61d0113123);if(
-DATARMNET268a8314cf)pr_err(
+DATARMNET6f73df41cd);rmnet_module_hook_register(DATARMNET1928843de7,ARRAY_SIZE(
+DATARMNET1928843de7));}void DATARMNET4c08c7210c(void){rcu_assign_pointer(
+rmnet_wlan_ll_tuple_hook,NULL);rmnet_module_hook_unregister(DATARMNET1928843de7,
+ARRAY_SIZE(DATARMNET1928843de7));}int DATARMNET9f106ed933(void){int 
+DATARMNET268a8314cf;DATARMNET268a8314cf=register_netdevice_notifier(&
+DATARMNET61d0113123);if(DATARMNET268a8314cf)pr_err(
 "\x25\x73\x28\x29\x3a\x20\x6e\x6f\x74\x69\x66\x69\x65\x72\x20\x66\x61\x69\x6c\x65\x64" "\n"
 ,__func__);return DATARMNET268a8314cf;}int DATARMNETf56cbaa2b1(void){int 
 DATARMNET268a8314cf;DATARMNET268a8314cf=unregister_netdevice_notifier(&

+ 67 - 78
wlan/rmnet_wlan_main.c

@@ -25,17 +25,18 @@
 #include "rmnet_wlan_stats.h"
 #include "rmnet_wlan_fragment.h"
 #include "rmnet_wlan_connection.h"
-static char*verinfo[]={"\x32\x31\x39\x38\x30\x64\x66\x62",
-"\x61\x33\x31\x34\x63\x62\x32\x35","\x34\x33\x62\x62\x38\x34\x39\x39",
-"\x32\x66\x33\x36\x30\x30\x31\x34","\x62\x64\x66\x66\x39\x32\x62\x33",
-"\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,
+static char*verinfo[]={"\x30\x32\x39\x33\x31\x66\x62\x66",
+"\x32\x31\x39\x38\x30\x64\x66\x62","\x61\x33\x31\x34\x63\x62\x32\x35",
+"\x34\x33\x62\x62\x38\x34\x39\x39","\x32\x66\x33\x36\x30\x30\x31\x34",
+"\x62\x64\x66\x66\x39\x32\x62\x33","\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))
@@ -247,9 +248,9 @@ int DATARMNET5c2fd31d7b;mutex_lock(&DATARMNET954bef55d0);hash_for_each_safe(
 DATARMNET133502ca0e,DATARMNET5c2fd31d7b,DATARMNET0386f6f82a,DATARMNET63b1a086d5,
 DATARMNETe8608dd267){hash_del_rcu(&DATARMNET63b1a086d5->DATARMNETe8608dd267);
 kfree_rcu(DATARMNET63b1a086d5,DATARMNET28bfe9e6ad);}mutex_unlock(&
-DATARMNET954bef55d0);}static rx_handler_result_t DATARMNET37a92021f9(struct 
-sk_buff**DATARMNET89946cec52){struct DATARMNET0ca9d8ead7 DATARMNETa76763310b={};
-struct DATARMNETb89ecedefc DATARMNET3396919a68={};struct DATARMNET41b426061d*
+DATARMNET954bef55d0);}rx_handler_result_t DATARMNET37a92021f9(struct sk_buff**
+DATARMNET89946cec52){struct DATARMNET0ca9d8ead7 DATARMNETa76763310b={};struct 
+DATARMNETb89ecedefc DATARMNET3396919a68={};struct DATARMNET41b426061d*
 DATARMNET72f0eefdce;struct DATARMNET8d3c2559ca*DATARMNET2d4b4cfc9e,
 DATARMNET54338da2ff;struct sk_buff*DATARMNET543491eb0f=*DATARMNET89946cec52;
 rx_handler_result_t DATARMNET1dec89a127=RX_HANDLER_PASS;int DATARMNET611d08d671;
@@ -318,36 +319,27 @@ DATARMNET2d4b4cfc9e))DATARMNET1dec89a127=RX_HANDLER_CONSUMED;DATARMNETbf4095f79e
 struct notifier_block*DATARMNET272c159b3c,unsigned long DATARMNET7f045a1e6e,void
 *data){struct net_device*DATARMNET00dcb79bc4=netdev_notifier_info_to_dev(data);
 if(!DATARMNET00dcb79bc4||DATARMNETaba2beb199(DATARMNET00dcb79bc4->name,
-DATARMNET30500ba48c,IFNAMSIZ))return NOTIFY_DONE;switch(DATARMNET7f045a1e6e){
-case NETDEV_UNREGISTER:netdev_rx_handler_unregister(DATARMNET00dcb79bc4);break;
-case NETDEV_REGISTER:if(netdev_rx_handler_register(DATARMNET00dcb79bc4,
+DATARMNET30500ba48c,IFNAMSIZ))return NOTIFY_DONE;if(!DATARMNETaba2beb199(
+DATARMNET00dcb79bc4->name,"\x72\x6d\x6e\x65\x74\x5f\x64\x61\x74\x61",
+(0xd27+224-0xdfd))){pr_info(
+"\x25\x73\x28\x29\x3a\x20\x74\x68\x65\x20\x67\x6f\x6f\x66\x73\x21\x20\x74\x68\x65\x20\x67\x61\x66\x66\x73\x21\x20\x73\x6f\x6d\x65\x6f\x6e\x65\x20\x68\x61\x73\x20\x71\x75\x69\x74\x65\x20\x74\x68\x65\x20\x6e\x61\x6d\x69\x6e\x67\x20\x73\x63\x68\x65\x6d\x65\x21\x21" "\n"
+,__func__);return NOTIFY_DONE;}switch(DATARMNET7f045a1e6e){case 
+NETDEV_UNREGISTER:netdev_rx_handler_unregister(DATARMNET00dcb79bc4);break;case 
+NETDEV_REGISTER:if(netdev_rx_handler_register(DATARMNET00dcb79bc4,
 DATARMNET37a92021f9,NULL))pr_err(
 "\x25\x73\x28\x29\x3a\x20\x52\x65\x67\x69\x73\x74\x65\x72\x69\x6e\x67\x20\x68\x61\x6e\x64\x6c\x65\x72\x20\x66\x61\x69\x6c\x65\x64" "\n"
-,__func__);break;default:break;}return NOTIFY_DONE;}static int 
-DATARMNET6512527d9c(struct notifier_block*DATARMNET272c159b3c,unsigned long 
-DATARMNET7f045a1e6e,void*data){struct net_device*DATARMNET00dcb79bc4=
-netdev_notifier_info_to_dev(data);if(!DATARMNET00dcb79bc4||DATARMNETaba2beb199(
-DATARMNET00dcb79bc4->name,DATARMNET755f0f0df8,IFNAMSIZ))return NOTIFY_DONE;
-switch(DATARMNET7f045a1e6e){case NETDEV_UNREGISTER:netdev_rx_handler_unregister(
-DATARMNET00dcb79bc4);break;case NETDEV_REGISTER:if(netdev_rx_handler_register(
-DATARMNET00dcb79bc4,DATARMNET37a92021f9,NULL))pr_err(
-"\x25\x73\x28\x29\x3a\x20\x52\x65\x67\x69\x73\x74\x65\x72\x69\x6e\x67\x20\x68\x61\x6e\x64\x6c\x65\x72\x20\x66\x61\x69\x6c\x65\x64" "\n"
 ,__func__);break;default:break;}return NOTIFY_DONE;}static struct notifier_block
- DATARMNETa1726000d8={.notifier_call=DATARMNET0ed065ddb7,};static struct 
-notifier_block DATARMNET2c4484aef5={.notifier_call=DATARMNET6512527d9c,};static 
-int DATARMNET116f9a46aa(void){int DATARMNET268a8314cf;if(!DATARMNET30500ba48c[
+ DATARMNETa1726000d8={.notifier_call=DATARMNET0ed065ddb7,};static int 
+DATARMNET116f9a46aa(void){int DATARMNET268a8314cf;if(!DATARMNET30500ba48c[
 (0xd2d+202-0xdf7)])return(0xd2d+202-0xdf7);DATARMNET268a8314cf=
 unregister_netdevice_notifier(&DATARMNETa1726000d8);if(!DATARMNET268a8314cf)
 DATARMNET30500ba48c[(0xd2d+202-0xdf7)]=(0xd2d+202-0xdf7);return 
-DATARMNET268a8314cf;}static int DATARMNET56777c5470(void){int 
-DATARMNET268a8314cf;if(!DATARMNET755f0f0df8[(0xd2d+202-0xdf7)])return
-(0xd2d+202-0xdf7);DATARMNET268a8314cf=unregister_netdevice_notifier(&
-DATARMNET2c4484aef5);if(!DATARMNET268a8314cf)DATARMNET755f0f0df8[
-(0xd2d+202-0xdf7)]=(0xd2d+202-0xdf7);return DATARMNET268a8314cf;}static void 
-DATARMNETbb4efa5b3d(void){DATARMNET116f9a46aa();DATARMNET1f36d4813c();
-DATARMNET8c0e010dfb();DATARMNETe5b03fe375();DATARMNETad43e44c7e();
-DATARMNET56fde5181e();}static int DATARMNET38ebe8f319(struct sk_buff*
-DATARMNET543491eb0f,int DATARMNET1faf88208b){if(!pskb_may_pull(
+DATARMNET268a8314cf;}static int DATARMNET56777c5470(void){DATARMNET755f0f0df8[
+(0xd2d+202-0xdf7)]=(0xd2d+202-0xdf7);return(0xd2d+202-0xdf7);}static void 
+DATARMNETbb4efa5b3d(void){DATARMNET116f9a46aa();DATARMNET56777c5470();
+DATARMNET1f36d4813c();DATARMNET8c0e010dfb();DATARMNETe5b03fe375();
+DATARMNETad43e44c7e();DATARMNET56fde5181e();}static int DATARMNET38ebe8f319(
+struct sk_buff*DATARMNET543491eb0f,int DATARMNET1faf88208b){if(!pskb_may_pull(
 DATARMNET543491eb0f,DATARMNET1faf88208b))return-ENOMEM;if(!skb_cloned(
 DATARMNET543491eb0f)||skb_clone_writable(DATARMNET543491eb0f,DATARMNET1faf88208b
 ))return(0xd2d+202-0xdf7);return pskb_expand_head(DATARMNET543491eb0f,
@@ -493,48 +485,45 @@ DATARMNET54338da2ff,
 DATARMNET268a8314cf){GENL_SET_ERR_MSG(DATARMNET54338da2ff,
 "\x4b\x65\x72\x6e\x65\x6c\x20\x65\x72\x72\x6f\x72\x2c\x20\x6e\x6f\x74\x69\x66\x69\x65\x72\x20\x75\x6e\x72\x65\x67\x69\x73\x74\x65\x72\x20\x66\x61\x69\x6c\x65\x64"
 );return DATARMNET268a8314cf;}strlcpy(DATARMNET755f0f0df8,DATARMNET852d4d00e2,
-IFNAMSIZ);DATARMNET268a8314cf=register_netdevice_notifier(&DATARMNET2c4484aef5);
-if(DATARMNET268a8314cf){GENL_SET_ERR_MSG(DATARMNET54338da2ff,
-"\x4b\x65\x72\x6e\x65\x6c\x20\x65\x72\x72\x6f\x72\x2c\x20\x6e\x6f\x74\x69\x66\x69\x65\x72\x20\x66\x61\x69\x6c\x65\x64"
-);DATARMNET755f0f0df8[(0xd2d+202-0xdf7)]=(0xd2d+202-0xdf7);}return 
-DATARMNET268a8314cf;}int DATARMNETa903cd5994(char*DATARMNET852d4d00e2,struct 
-genl_info*DATARMNET54338da2ff){return DATARMNET116f9a46aa();}int 
-DATARMNET9d7bb9a63d(char*DATARMNET852d4d00e2,struct genl_info*
-DATARMNET54338da2ff){return DATARMNET56777c5470();}int DATARMNET947eb110d2(
-struct DATARMNET8d3c2559ca*DATARMNET2d4b4cfc9e,struct genl_info*
-DATARMNET54338da2ff){int DATARMNET268a8314cf;mutex_lock(&DATARMNETf46fb02ac6);
-DATARMNET268a8314cf=DATARMNET1ac13d5a2a(DATARMNET2d4b4cfc9e,DATARMNET54338da2ff)
-;mutex_unlock(&DATARMNETf46fb02ac6);return DATARMNET268a8314cf;}int 
-DATARMNETb8b35fdc18(struct DATARMNET8d3c2559ca*DATARMNET2d4b4cfc9e,struct 
+IFNAMSIZ);return DATARMNET268a8314cf;}int DATARMNETa903cd5994(char*
+DATARMNET852d4d00e2,struct genl_info*DATARMNET54338da2ff){return 
+DATARMNET116f9a46aa();}int DATARMNET9d7bb9a63d(char*DATARMNET852d4d00e2,struct 
+genl_info*DATARMNET54338da2ff){return DATARMNET56777c5470();}int 
+DATARMNET947eb110d2(struct DATARMNET8d3c2559ca*DATARMNET2d4b4cfc9e,struct 
 genl_info*DATARMNET54338da2ff){int DATARMNET268a8314cf;mutex_lock(&
-DATARMNETf46fb02ac6);DATARMNET268a8314cf=DATARMNET6b6be8e27f(DATARMNET2d4b4cfc9e
+DATARMNETf46fb02ac6);DATARMNET268a8314cf=DATARMNET1ac13d5a2a(DATARMNET2d4b4cfc9e
 ,DATARMNET54338da2ff);mutex_unlock(&DATARMNETf46fb02ac6);return 
-DATARMNET268a8314cf;}int DATARMNET8d5a5a7047(__be16 DATARMNETf0d9de7e2f,struct 
-genl_info*DATARMNET54338da2ff){int DATARMNET268a8314cf;mutex_lock(&
-DATARMNET954bef55d0);DATARMNET268a8314cf=DATARMNET3b10d1c14b(DATARMNETf0d9de7e2f
-,DATARMNET54338da2ff);mutex_unlock(&DATARMNET954bef55d0);return 
-DATARMNET268a8314cf;}int DATARMNETc97c6a4265(__be16 DATARMNETf0d9de7e2f,struct 
-genl_info*DATARMNET54338da2ff){int DATARMNET268a8314cf;mutex_lock(&
-DATARMNET954bef55d0);DATARMNET268a8314cf=DATARMNETc023021120(DATARMNETf0d9de7e2f
-,DATARMNET54338da2ff);mutex_unlock(&DATARMNET954bef55d0);return 
-DATARMNET268a8314cf;}bool DATARMNETa8b2566e6a(struct sk_buff*DATARMNET543491eb0f
-,struct DATARMNETb89ecedefc*DATARMNET3396919a68,int DATARMNET611d08d671){struct 
-udphdr*DATARMNET75be5f3406,DATARMNETc82d2f4e16;__be32*DATARMNETdf2dbc641f,
-DATARMNET6c56902362;if(DATARMNET3396919a68->DATARMNET4924e79411!=IPPROTO_UDP||!
-DATARMNET7490934ea9(DATARMNET3396919a68->DATARMNETf0d9de7e2f))return false;
-DATARMNET75be5f3406=skb_header_pointer(DATARMNET543491eb0f,DATARMNET611d08d671,
-sizeof(*DATARMNET75be5f3406),&DATARMNETc82d2f4e16);if(!DATARMNET75be5f3406)
-return false;if(DATARMNET75be5f3406->source==htons((0xdf7+6169-0x241c)))return 
-false;DATARMNETdf2dbc641f=skb_header_pointer(DATARMNET543491eb0f,
-DATARMNET611d08d671+sizeof(*DATARMNET75be5f3406),sizeof(*DATARMNETdf2dbc641f),&
-DATARMNET6c56902362);if(!DATARMNETdf2dbc641f)return false;return!!(*
-DATARMNETdf2dbc641f);}bool DATARMNET0a4704e5e0(struct DATARMNETb89ecedefc*
-DATARMNET3396919a68){return DATARMNETa96214b53c(DATARMNET3396919a68->
-DATARMNETf0d9de7e2f);}int DATARMNET4c1c11d8a5(struct DATARMNETe117226f58*
-DATARMNET3396919a68){int DATARMNET268a8314cf;mutex_lock(&DATARMNET38726379d1);
-DATARMNET268a8314cf=DATARMNET51f60f2fd3(DATARMNET3396919a68);mutex_unlock(&
-DATARMNET38726379d1);return DATARMNET268a8314cf;}int DATARMNET56fde5181e(void){
-int DATARMNET268a8314cf;mutex_lock(&DATARMNET38726379d1);DATARMNET268a8314cf=
+DATARMNET268a8314cf;}int DATARMNETb8b35fdc18(struct DATARMNET8d3c2559ca*
+DATARMNET2d4b4cfc9e,struct genl_info*DATARMNET54338da2ff){int 
+DATARMNET268a8314cf;mutex_lock(&DATARMNETf46fb02ac6);DATARMNET268a8314cf=
+DATARMNET6b6be8e27f(DATARMNET2d4b4cfc9e,DATARMNET54338da2ff);mutex_unlock(&
+DATARMNETf46fb02ac6);return DATARMNET268a8314cf;}int DATARMNET8d5a5a7047(__be16 
+DATARMNETf0d9de7e2f,struct genl_info*DATARMNET54338da2ff){int 
+DATARMNET268a8314cf;mutex_lock(&DATARMNET954bef55d0);DATARMNET268a8314cf=
+DATARMNET3b10d1c14b(DATARMNETf0d9de7e2f,DATARMNET54338da2ff);mutex_unlock(&
+DATARMNET954bef55d0);return DATARMNET268a8314cf;}int DATARMNETc97c6a4265(__be16 
+DATARMNETf0d9de7e2f,struct genl_info*DATARMNET54338da2ff){int 
+DATARMNET268a8314cf;mutex_lock(&DATARMNET954bef55d0);DATARMNET268a8314cf=
+DATARMNETc023021120(DATARMNETf0d9de7e2f,DATARMNET54338da2ff);mutex_unlock(&
+DATARMNET954bef55d0);return DATARMNET268a8314cf;}bool DATARMNETa8b2566e6a(struct
+ sk_buff*DATARMNET543491eb0f,struct DATARMNETb89ecedefc*DATARMNET3396919a68,int 
+DATARMNET611d08d671){struct udphdr*DATARMNET75be5f3406,DATARMNETc82d2f4e16;
+__be32*DATARMNETdf2dbc641f,DATARMNET6c56902362;if(DATARMNET3396919a68->
+DATARMNET4924e79411!=IPPROTO_UDP||!DATARMNET7490934ea9(DATARMNET3396919a68->
+DATARMNETf0d9de7e2f))return false;DATARMNET75be5f3406=skb_header_pointer(
+DATARMNET543491eb0f,DATARMNET611d08d671,sizeof(*DATARMNET75be5f3406),&
+DATARMNETc82d2f4e16);if(!DATARMNET75be5f3406)return false;if(DATARMNET75be5f3406
+->source==htons((0xdf7+6169-0x241c)))return false;DATARMNETdf2dbc641f=
+skb_header_pointer(DATARMNET543491eb0f,DATARMNET611d08d671+sizeof(*
+DATARMNET75be5f3406),sizeof(*DATARMNETdf2dbc641f),&DATARMNET6c56902362);if(!
+DATARMNETdf2dbc641f)return false;return!!(*DATARMNETdf2dbc641f);}bool 
+DATARMNET0a4704e5e0(struct DATARMNETb89ecedefc*DATARMNET3396919a68){return 
+DATARMNETa96214b53c(DATARMNET3396919a68->DATARMNETf0d9de7e2f);}int 
+DATARMNET4c1c11d8a5(struct DATARMNETe117226f58*DATARMNET3396919a68){int 
+DATARMNET268a8314cf;mutex_lock(&DATARMNET38726379d1);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