/* WARNING: Globals starting with '_' overlap smaller symbols at the same address */
int init_module(void)
{
int iVar1;
sw_turbo_net_cache = kmem_cache_create("sw_turbo_net_cache",0x5c,0,0x2000,0);
if (sw_turbo_net_cache == 0) {
iVar1 = -1;
}
else {
iVar1 = register_hw_tcpip(sw_tcpip);
if (iVar1 == 0) {
printk("REDSonic turbo net initialized\n");
need_sync = _jiffies;
get_random_bytes(&sw_turbo_hash_rnd,4);
proc_mkdir("fastnat",0) //possible issue identified - semgrep
iVar1 = create_proc_entry("fastnat/min_gone",0,0);
if (iVar1 != 0) {
*(code **)(iVar1 + 0x44) = write_proc_mingone;
*(code **)(iVar1 + 0x40) = read_proc_mingone;
*(undefined4 *)(iVar1 + 0x3c) = 0;
}
proc_init_foraqos(0x1e);
proc_init_formqos(0x1e);
proc_init_forskip(10);
return 0;
}
printk("Register REDSonic software turbo net failed\n");
}
unregister_hw_tcpip(sw_tcpip);
if (sw_turbo_net_cache != 0) {
kmem_cache_destroy();
}
return iVar1;
}