undefined4 FUN_004031c8(undefined1 *param_1)
{
undefined1 uVar1;
int iVar2;
int iVar3;
int *piVar4;
char *pcVar5;
undefined4 uVar6;
char acStack_30 [16];
undefined4 local_20;
iVar2 = socket(2,1,0);
if (iVar2 < 0) {
return 0;
}
memset(acStack_30,0,0x20) //possible issue identified - semgrep
strncpy(acStack_30,*(char **)(g_osl + 4),0x10) //possible issue identified - semgrep
iVar3 = ioctl(iVar2,0x8b07,acStack_30);
close(iVar2);
if (iVar3 != 0) {
piVar4 = __errno_location();
iVar2 = *piVar4;
if (iVar2 == 0x7a) {
return 0;
}
if (iVar2 == 0xe) {
return 0;
}
pcVar5 = strerror(iVar2);
warn("%s: SIOCGIWMODE error, %s\n","get_wireless_mode",pcVar5);
return 0;
}
uVar6 = 0;
switch(local_20) {
case 0:
uVar1 = 2;
break;
case 1:
*param_1 = 0;
goto LAB_00403330;
case 2:
case 3:
case 4:
case 5:
uVar1 = 1;
break;
default:
goto switchD_0040331c_default;
}
*param_1 = uVar1;
LAB_00403330:
uVar6 = 1;
switchD_0040331c_default:
return uVar6;
}