📄 access.c
字号:
{
strcat(szText, " ");
strcat(szText, szFormat);
}
}
break;
case kPGPnetIPServiceType_Any:
strcat(szText, " ");
LoadItemString(IDS_ANYTYPE);
strcat(szText, szFormat);
break;
}
InsertItemInTree(IMAGE_ITEM, 0);
}
PGPFreeData(pRule);
tvis.hParent = hParent;
LoadItemString(IDS_INTRUSION);
PGPGetPrefBoolean(pConfig->prefRefNet, kPGPNetPrefUseIntrusionDetection,
&bValue);
PGPGetPrefFlags(pConfig->prefRefNet, kPGPNetPrefUseIntrusionDetection,
&nFlags);
wsprintf(szText, szFormat, bValue ? szTrue : szFalse);
InsertItemInTree(PREFFLAGS_DISABLEGUI, kPGPNetPrefUseIntrusionDetection);
LoadItemString(IDS_AUTOBLOCK);
PGPGetPrefBoolean(pConfig->prefRefNet, kPGPNetPrefAutoBlockAttacks,
&bValue);
if (bValue)
{
PGPGetPrefBoolean(pConfig->prefRefNet, kPGPNetPrefBlockUntilRemoved,
&bValue);
if (bValue)
{
LoadString(g_hInstance, IDS_UNTILREMOVED, szValue,
sizeof(szValue));
}
else
{
PGPGetPrefNumber(pConfig->prefRefNet, kPGPnetPrefBlockMinutes,
&nValue);
LoadItemString(IDS_BLOCKMINUTES);
wsprintf(szValue, szFormat, nValue);
LoadItemString(IDS_AUTOBLOCK);
bValue = TRUE;
}
}
else
strcpy(szValue, "");
PGPGetPrefFlags(pConfig->prefRefNet, kPGPNetPrefAutoBlockAttacks,
&nFlags);
wsprintf(szText, szFormat, bValue ? szTrue : szFalse, szValue);
InsertItemInTree(PREFFLAGS_DISABLEGUI, kPGPNetPrefAutoBlockAttacks);
LoadItemString(IDS_EMAILALERT);
PGPGetPrefBoolean(pConfig->prefRefNet, kPGPNetPrefAttackEmailNotify,
&bValue);
PGPGetPrefFlags(pConfig->prefRefNet, kPGPNetPrefAttackEmailNotify,
&nFlags);
if (bValue)
PGPGetPrefStringBuffer(pConfig->prefRefNet,
kPGPNetPrefAttackNotifyEmail, sizeof(szValue), szValue);
else
strcpy(szValue, "");
wsprintf(szText, szFormat, bValue ? szTrue : szFalse, szValue);
InsertItemInTree(PREFFLAGS_DISABLEGUI, kPGPNetPrefAttackEmailNotify);
LoadItemString(IDS_SOUNDALERT);
PGPGetPrefBoolean(pConfig->prefRefNet, kPGPNetPrefAttackSound,
&bValue);
PGPGetPrefFlags(pConfig->prefRefNet, kPGPNetPrefAttackSound,
&nFlags);
wsprintf(szText, szFormat, bValue ? szTrue : szFalse);
InsertItemInTree(PREFFLAGS_DISABLEGUI, kPGPNetPrefAttackSound);
LoadItemString(IDS_FLASHTRAY);
PGPGetPrefBoolean(pConfig->prefRefNet, kPGPNetPrefAttackNotify,
&bValue);
PGPGetPrefFlags(pConfig->prefRefNet, kPGPNetPrefAttackNotify,
&nFlags);
wsprintf(szText, szFormat, bValue ? szTrue : szFalse);
InsertItemInTree(PREFFLAGS_DISABLEGUI, kPGPNetPrefAttackNotify);
UpdateCatagory();
}
if (PGPclIsComponentInstalled(kPGPclVPN)) {
tvis.hParent = NULL;
LoadString(g_hInstance, IDS_NETVPN, szText, sizeof(szText));
InsertItemInTree(IMAGE_UNCHECK, 1);
tvis.hParent = hItem;
LoadItemString(IDS_HOSTLIST);
PGPGetPrefArray(pConfig->prefRefNet, kPGPNetPrefHostArray,
&prefArray);
PGPGetPrefFlags(pConfig->prefRefNet, kPGPNetPrefHostArray,
&nFlags);
strcpy(szText, szFormat);
InsertItemInTree(PREFFLAGS_DISABLEGUI, kPGPNetPrefHostArray);
hParent = tvis.hParent;
tvis.hParent = hItem;
ahGateway = (HTREEITEM *) calloc(sizeof(HTREEITEM), prefArray->numElements);
for (nIndex=0; nIndex<prefArray->numElements; nIndex++)
{
szText[0] = 0;
PGPGetPrefArrayStruct(pConfig->prefRefNet, prefArray, nIndex,
&prefStruct);
if ((PGPInt32) prefStruct->members[3].data != -1)
continue;
strcat(szText, (char *) prefStruct->members[4].data);
strcat(szText, ", ");
switch ((PGPNetHostType) prefStruct->members[0].data)
{
case kPGPnetInsecureHost:
if ((PGPInt32) prefStruct->members[2].data == -1)
LoadString(g_hInstance, IDS_INSECUREHOST, szFormat,
sizeof(szFormat));
else
LoadString(g_hInstance, IDS_INSECURESUBNET, szFormat,
sizeof(szFormat));
break;
case kPGPnetSecureHost:
if ((PGPInt32) prefStruct->members[2].data == -1)
LoadString(g_hInstance, IDS_SECUREHOST, szFormat,
sizeof(szFormat));
else
LoadString(g_hInstance, IDS_SECURESUBNET, szFormat,
sizeof(szFormat));
break;
case kPGPnetSecureGateway:
LoadString(g_hInstance, IDS_SECUREGATEWAY, szFormat,
sizeof(szFormat));
break;
}
strcat(szText, szFormat);
strcat(szText, ", ");
strcat(szText, inet_ntoa(*((struct in_addr *)
&(prefStruct->members[1].data))));
if ((PGPInt32) prefStruct->members[2].data != -1)
{
strcat(szText, ", ");
strcat(szText, inet_ntoa(*((struct in_addr *)
&(prefStruct->members[2].data))));
}
InsertItemInTree(IMAGE_ITEM, 0);
ahGateway[nIndex] = hItem;
}
for (nIndex=0; nIndex<prefArray->numElements; nIndex++)
{
szText[0] = 0;
PGPGetPrefArrayStruct(pConfig->prefRefNet, prefArray, nIndex,
&prefStruct);
if ((PGPInt32) prefStruct->members[3].data == -1)
continue;
strcat(szText, (char *) prefStruct->members[4].data);
strcat(szText, ", ");
switch ((PGPNetHostType) prefStruct->members[0].data)
{
case kPGPnetInsecureHost:
if ((PGPInt32) prefStruct->members[2].data == -1)
LoadString(g_hInstance, IDS_INSECUREHOST, szFormat,
sizeof(szFormat));
else
LoadString(g_hInstance, IDS_INSECURESUBNET, szFormat,
sizeof(szFormat));
break;
case kPGPnetSecureHost:
if ((PGPInt32) prefStruct->members[2].data == -1)
LoadString(g_hInstance, IDS_SECUREHOST, szFormat,
sizeof(szFormat));
else
LoadString(g_hInstance, IDS_SECURESUBNET, szFormat,
sizeof(szFormat));
break;
case kPGPnetSecureGateway:
LoadString(g_hInstance, IDS_SECUREGATEWAY, szFormat,
sizeof(szFormat));
break;
}
strcat(szText, szFormat);
strcat(szText, ", ");
strcat(szText, inet_ntoa(*((struct in_addr *)
&(prefStruct->members[1].data))));
if ((PGPInt32) prefStruct->members[2].data != -1)
{
strcat(szText, ", ");
strcat(szText, inet_ntoa(*((struct in_addr *)
&(prefStruct->members[2].data))));
}
tvis.hParent = ahGateway[(PGPInt32) prefStruct->members[3].data];
InsertItemInTree(IMAGE_ITEM, 0);
}
PGPFreePrefArray(prefArray);
free(ahGateway);
tvis.hParent = hParent;
LoadItemString(IDS_ENABLEVPN);
PGPGetPrefBoolean(pConfig->prefRefNet, kPGPNetPrefEnableVPN,
&bValue);
PGPGetPrefFlags(pConfig->prefRefNet, kPGPNetPrefEnableVPN,
&nFlags);
wsprintf(szText, szFormat, bValue ? szTrue : szFalse);
InsertItemInTree(PREFFLAGS_DISABLEGUI, kPGPNetPrefEnableVPN);
LoadItemString(IDS_UNKNOWNHOST);
PGPGetPrefNumber(pConfig->prefRefNet, kPGPnetPrefUnconfiguredMode,
&nValue);
PGPGetPrefFlags(pConfig->prefRefNet, kPGPnetPrefUnconfiguredMode,
&nFlags);
switch (nValue)
{
case kPGPnet_UM_Attempt:
LoadString(g_hInstance, IDS_HOSTATTEMPT, szValue, sizeof(szValue));
break;
case kPGPnet_UM_Allow:
LoadString(g_hInstance, IDS_HOSTALLOW, szValue, sizeof(szValue));
break;
case kPGPnet_UM_Require:
LoadString(g_hInstance, IDS_HOSTREQUIRE, szValue, sizeof(szValue));
break;
}
wsprintf(szText, szFormat, szValue);
InsertItemInTree(PREFFLAGS_DISABLEGUI, kPGPnetPrefUnconfiguredMode);
LoadItemString(IDS_SETUPKEYTIME);
PGPGetPrefBoolean(pConfig->prefRefNet, kPGPNetPrefEnableIKETimeExpiration,
&bValue);
PGPGetPrefNumber(pConfig->prefRefNet, kPGPNetPrefIKETimeExpiration,
&nValue);
PGPGetPrefFlags(pConfig->prefRefNet, kPGPNetPrefEnableIKETimeExpiration,
&nFlags);
SecondsToSystemTime(nValue, &sysTime);
wsprintf(szText, szFormat, bValue ? szTrue : szFalse, sysTime.wHour,
sysTime.wMinute, sysTime.wSecond);
InsertItemInTree(PREFFLAGS_DISABLEGUI,
kPGPNetPrefEnableIKETimeExpiration);
LoadItemString(IDS_PRIMARYKEYTIME);
PGPGetPrefBoolean(pConfig->prefRefNet,
kPGPNetPrefEnableIPSECTimeExpiration, &bValue);
PGPGetPrefNumber(pConfig->prefRefNet, kPGPNetPrefIPSECTimeExpiration,
&nValue);
PGPGetPrefFlags(pConfig->prefRefNet, kPGPNetPrefEnableIPSECTimeExpiration,
&nFlags);
SecondsToSystemTime(nValue, &sysTime);
wsprintf(szText, szFormat, bValue ? szTrue : szFalse, sysTime.wHour,
sysTime.wMinute, sysTime.wSecond);
InsertItemInTree(PREFFLAGS_DISABLEGUI,
kPGPNetPrefEnableIPSECTimeExpiration);
LoadItemString(IDS_PRIMARYKEYDATA);
PGPGetPrefBoolean(pConfig->prefRefNet,
kPGPNetPrefEnableIPSECKByteExpiration, &bValue);
PGPGetPrefNumber(pConfig->prefRefNet, kPGPNetPrefIPSECKByteExpiration,
&nValue);
PGPGetPrefFlags(pConfig->prefRefNet, kPGPNetPrefEnableIPSECKByteExpiration,
&nFlags);
wsprintf(szText, szFormat, bValue ? szTrue : szFalse, nValue / 1024);
InsertItemInTree(PREFFLAGS_DISABLEGUI,
kPGPNetPrefEnableIPSECKByteExpiration);
UpdateCatagory();
tvis.hParent = NULL;
LoadString(g_hInstance, IDS_NETAUTH, szText, sizeof(szText));
InsertItemInTree(IMAGE_UNCHECK, 1);
tvis.hParent = hItem;
LoadItemString(IDS_PGPKEY);
PGPGetPrefData(pConfig->prefRefNet, kPGPNetPrefPGPAuthKeyID, &dataSize,
&pData);
PGPGetPrefFlags(pConfig->prefRefNet, kPGPNetPrefPGPAuthKeyID, &nFlags);
if (pData != NULL)
{
sGetKeyUserID(pConfig->keyDB, pData, szValue, sizeof(szValue));
PGPFreeData(pData);
}
else
strcpy(szValue, "None");
wsprintf(szText, szFormat, szValue);
InsertItemInTree(PREFFLAGS_DISABLEGUI, kPGPNetPrefPGPAuthKeyID);
LoadItemString(IDS_X509KEY);
PGPGetPrefData(pConfig->prefRefNet, kPGPNetPrefX509AuthKeyID, &dataSize,
&pData);
PGPGetPrefFlags(pConfig->prefRefNet, kPGPNetPrefX509AuthKeyID, &nFlags);
if (pData != NULL)
{
sGetKeyUserID(pConfig->keyDB, pData, szValue, sizeof(szValue));
PGPFreeData(pData);
}
else
strcpy(szValue, "None");
wsprintf(szText, szFormat, szValue);
InsertItemInTree(PREFFLAGS_DISABLEGUI, kPGPNetPrefX509AuthKeyID);
LoadItemString(IDS_REQUIRECONFIGURED);
PGPGetPrefBoolean(pConfig->prefRefNet,
kPGPNetPrefRequireValidKeyConfigured, &bValue);
PGPGetPrefFlags(pConfig->prefRefNet, kPGPNetPrefRequireValidKeyConfigured,
&nFlags);
wsprintf(szText, szFormat, bValue ? szTrue : szFalse);
InsertItemInTree(PREFFLAGS_DISABLEGUI,
kPGPNetPrefRequireValidKeyConfigured);
LoadItemString(IDS_REQUIREUNCONFIGURED);
PGPGetPrefBoolean(pConfig->prefRefNet,
kPGPNetPrefRequireValidKeyUnconfigured, &bValue);
PGPGetPrefFlags(pConfig->prefRefNet,
kPGPNetPrefRequireValidKeyUnconfigured, &nFlags);
wsprintf(szText, szFormat, bValue ? szTrue : szFalse);
InsertItemInTree(PREFFLAGS_DISABLEGUI,
kPGPNetPrefRequireValidKeyUnconfigured);
UpdateCatagory();
tvis.hParent = NULL;
LoadString(g_hInstance, IDS_NETADVANCED, szText, sizeof(szText));
InsertItemInTree(IMAGE_UNCHECK, 1);
tvis.hParent = hItem;
LoadItemString(IDS_ALLOWEDCIPHERS);
szValue[0] = 0;
PGPGetPrefFlags(pConfig->prefRefNet, kPGPNetPrefAllowCipherNone, &nFlags);
PGPGetPrefBoolean(pConfig->prefRefNet, kPGPNetPrefAllowCipherNone,
&bValue);
strcat(szValue, bValue ? "None " : "");
PGPGetPrefBoolean(pConfig->prefRefNet, kPGPNetPrefAllowCipherCAST,
&bValue);
strcat(szValue, bValue ? "CAST " : "");
PGPGetPrefBoolean(pConfig->prefRefNet, kPGPNetPrefAllowCipher3DES,
&bValue);
strcat(szValue, bValue ? "TripleDES " : "");
PGPGetPrefBoolean(pConfig->prefRefNet, kPGPNetPrefAllowCipherDES56,
&bValue);
strcat(szValue, bValue ? "DES56 " : "");
szValue[strlen(szValue)-1] = 0;
wsprintf(szText, szFormat, szValue);
InsertItemInTree(PREFFLAGS_DISABLEGUI, kPGPNetPrefAllowCipherNone);
LoadItemString(IDS_ALLOWEDHASHES);
szValue[0] = 0;
PGPGetPrefFlags(pConfig->prefRefNet, kPGPNetPrefAllowHashNone, &nFlags);
PGPGetPrefBoolean(pConfig->prefRefNet, kPGPNetPrefAllowHashNone,
&bValue);
strcat(szValue, bValue ? "None " : "");
PGPGetPrefBoolean(pConfig->prefRefNet, kPGPNetPrefAllowHashSHA1,
&bValue);
strcat(szValue, bValue ? "SHA-1 " : "");
PGPGetPrefBoolean(pConfig->prefRefNet, kPGPNetPrefAllowHashMD5,
&bValue);
strcat(szValue, bValue ? "MD5 " : "");
szValue[strlen(szValue)-1] = 0;
wsprintf(szText, szFormat, szValue);
InsertItemInTree(PREFFLAGS_DISABLEGUI, kPGPNetPrefAllowHashNone);
LoadItemString(IDS_ALLOWEDDH);
szValue[0] = 0;
PGPGetPrefFlags(pConfig->prefRefNet, kPGPNetPrefAllowDH768, &nFlags);
PGPGetPrefBoolean(pConfig->prefRefNet, kPGPNetPrefAllowDH768,
&bValue);
strcat(szValue, bValue ? "768 " : "");
PGPGetPrefBoolean(pConfig->prefRefNet, kPGPNetPrefAllowDH1024,
&bValue);
strcat(szValue, bValue ? "1024 " : "");
PGPGetPrefBoolean(pConfig->prefRefNet, kPGPNetPrefAllowDH1536,
&bValue);
strcat(szValue, bValue ? "1536 " : "");
szValue[strlen(szValue)-1] = 0;
wsprintf(szText, szFormat, szValue);
InsertItemInTree(PREFFLAGS_DISABLEGUI, kPGPNetPrefAllowDH768);
LoadItemString(IDS_ALLOWEDCOMP);
szValue[0] = 0;
PGPGetPrefFlags(pConfig->prefRefNet, kPGPNetPrefAllowCompLZS, &nFlags);
PGPGetPrefBoolean(pConfig->prefRefNet, kPGPNetPrefAllowCompLZS,
&bValue);
strcat(szValue, bValue ? "LZS " : "");
PGPGetPrefBoolean(pConfig->prefRefNet, kPGPNetPrefAllowCompDeflate,
&bValue);
strcat(szValue, bValue ? "Deflate " : "");
szValue[strlen(szValue)-1] = 0;
wsprintf(szText, szFormat, szValue);
InsertItemInTree(PREFFLAGS_DISABLEGUI, kPGPNetPrefAllowCompLZS);
LoadItemString(IDS_IKEPROPOSALS);
PGPGetPrefArray(pConfig->prefRefNet, kPGPNetPrefIKEProposalArray,
&prefArray);
PGPGetPrefFlags(pConfig->prefRefNet, kPGPNetPrefIKEProposalArray,
&nFlags);
strcpy(szText, szFormat);
InsertItemInTree(PREFFLAGS_DISABLEGUI, kPGPNetPrefIKEProposalArray);
hParent = tvis.hParent;
tvis.hParent = hItem;
for (nIndex=0; nIndex<prefArray->numElements; nIndex++)
{
szText[0] = 0;
PGPGetPrefArrayStruct(pConfig->prefRefNet, prefArray, nIndex,
&prefStruct);
switch ((PGPikeAuthMethod) prefStruct->members[0].data)
{
case kPGPike_AM_PreSharedKey:
strcat(szText, "Shared key, ");
break;
case kPGPike_AM_DSS_Sig:
strcat(szText, "DSS signature, ");
break;
case kPGPike_AM_RSA_Sig:
strcat(szText, "RSA signature, ");
break;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -