⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 access.c

📁 PGP8.0源码 请认真阅读您的文件包然后写出其具体功能
💻 C
📖 第 1 页 / 共 5 页
字号:
				{
					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 + -