📄 pgpclientprefs.c
字号:
/*____________________________________________________________________________
Copyright (C) 2002 PGP Corporation
All rights reserved.
$Id: pgpClientPrefs.c,v 1.41 2002/11/16 19:26:15 pbj Exp $
____________________________________________________________________________*/
#include "pgpClientPrefs.h"
#include "pgpKeyServerPrefs.h"
#include "pgpMem.h"
/* beginning of code formerly in pgpClientPrefs.h .... */
static PGPByte sBlankAdminHash[] = {
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};
static PGPPrefStructMember sLDAPKeyServerArray[] =
{
{kPGPPrefType_Number, (void *) kPGPKeyServerProtocol_LDAP},
{kPGPPrefType_Number, (void *) kPGPKeyServerClass_PGP},
{kPGPPrefType_String, (void *) ""},
{kPGPPrefType_String, (void *) "keyserver.pgp.com"},
{kPGPPrefType_Number, (void *) 0},
{kPGPPrefType_String, (void *) ""},
{kPGPPrefType_Number, (void *) kPGPPublicKeyAlgorithm_Invalid},
{kPGPPrefType_Number, (void *) (kKeyServerListed|kKeyServerIsRoot)},
{kPGPPrefType_String, (void *) ""},
};
static PGPPrefStructMember sEuroKeyServerArray[] =
{
{kPGPPrefType_Number, (void *) kPGPKeyServerProtocol_LDAP},
{kPGPPrefType_Number, (void *) kPGPKeyServerClass_PGP},
{kPGPPrefType_String, (void *) ""},
{kPGPPrefType_String, (void *) "europe.keys.pgp.com"},
{kPGPPrefType_Number, (void *) 11370},
{kPGPPrefType_String, (void *) ""},
{kPGPPrefType_Number, (void *) kPGPPublicKeyAlgorithm_Invalid},
{kPGPPrefType_Number, (void *) (kKeyServerListed)},
{kPGPPrefType_String, (void *) ""},
};
PGPPrefStruct LDAPKeyServer =
{
sizeof(sLDAPKeyServerArray) / sizeof(PGPPrefStructMember),
sLDAPKeyServerArray
};
PGPPrefStruct EuroKeyServer =
{
sizeof(sEuroKeyServerArray) / sizeof(PGPPrefStructMember),
sEuroKeyServerArray
};
static PGPPrefArrayElement sDefaultKeyServerArray[] =
{
{&LDAPKeyServer},{&EuroKeyServer}
};
PGPPrefArray DefaultKeyServer =
{
kPGPPrefType_Struct,
sizeof(sDefaultKeyServerArray) / sizeof(PGPPrefArrayElement),
sDefaultKeyServerArray,
&LDAPKeyServer
};
static PGPPrefArrayElement sAllowedAlgorithmsArray[] =
{
{(void *) kPGPCipherAlgorithm_AES256},
{(void *) kPGPCipherAlgorithm_CAST5},
{(void *) kPGPCipherAlgorithm_3DES},
{(void *) kPGPCipherAlgorithm_IDEA},
{(void *) kPGPCipherAlgorithm_Twofish256}
};
static PGPPrefArray sAllowedAlgorithms =
{
kPGPPrefType_Number,
sizeof(sAllowedAlgorithmsArray) / sizeof(PGPPrefArrayElement),
sAllowedAlgorithmsArray
};
PGPPrefArray DefaultKeys =
{
kPGPPrefType_Byte,
0,
NULL
};
#if PGP_MACINTOSH /* [ */
static const PGPmenuHotkeys sInitPGPmenuHotkeys[] =
{
kMenuOptionModifier, 'E',
kMenuOptionModifier, 'S',
kMenuOptionModifier, 'C',
kMenuOptionModifier, 'D',
kMenuOptionModifier, 'L',
kMenuOptionModifier, 'P'
};
static const PGPmenuApps sInitPGPmenuApps[] =
{
{TRUE, TRUE, 'AOp3', "\pAmerica Online"}, /* Verified -> 5.0 */
{TRUE, FALSE, 'R*ch', "\pBBEdit"}, /* Verified -> 5.0 */
{FALSE, FALSE, 'MMan', "\pEmailer"}, /* Verified -> EOL */
{TRUE, TRUE, 'OPIM', "\pMicrosoft Entourage"}, /* Verified -> 9.0 */
{TRUE, TRUE, 'MOSS', "\pNetscape Communicator"}, /* Verified -> 4.73 */
{TRUE, TRUE, 'MSNM', "\pOutlook Express"}, /* Verified -> 5.0 */
{FALSE, FALSE, 'ttxt', "\pSimpleText"}, /* Verified -> 1.4 */
{FALSE, TRUE, 'Cmlt', "\pPowerMail"}//, /* Verified -> 3.0.3 */
// {FALSE, FALSE, 'BLTO', "\pMailsmith"} /* Verified -> 1.1 */
};
#endif /* ] */
const PGPPrefDefinition clientDefaults[] =
{
/* Boolean prefs */
{kPGPPrefEncryptToSelf,
"EncryptToSelf",
kPGPPrefType_Boolean,
(void *) TRUE},
{kPGPPrefWordWrapEnable,
"WordWrap",
kPGPPrefType_Boolean,
(void *) TRUE},
{kPGPPrefShareCache,
"ShareCache",
kPGPPrefType_Boolean,
(void *) TRUE},
{kPGPPrefMailEncryptPGPMIME,
"MailEncryptPGPMIME",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefMailSignPGPMIME,
"MailSignPGPMIME",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefFastKeyGen,
"FastKeyGen",
kPGPPrefType_Boolean,
(void *) TRUE},
{kPGPPrefMailEncryptDefault,
"MailEncryptDefault",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefMailSignDefault,
"MailSignDefault",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefMarginalIsInvalid,
"MarginalValidityIsInvalid",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefDisplayMarginalValidity,
"DisplayMarginalValidity",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefFirstKeyGenerated,
"FirstKeyGenerated",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefWarnOnRSARecipAndNonRSASigner,
"WarnOnRSARecipAndNonRSASigner",
kPGPPrefType_Boolean,
(void *) TRUE},
{kPGPPrefKeyServerSyncUnknownKeys,
"KeyServerSyncUnknownKeys",
kPGPPrefType_Boolean,
(void *) TRUE},
{kPGPPrefKeyServerSyncOnAdd,
"KeyServerSyncOnAdd",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefKeyServerSyncOnKeySign,
"KeyServerSyncOnKeySign",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefKeyServerSyncOnRevocation,
"KeyServerSyncOnRevocation",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefKeyServerSyncOnVerify,
"KeyServerSyncOnVerify",
kPGPPrefType_Boolean,
(void *) TRUE},
{kPGPPrefDiskDefaultMountAtStartup,
"DiskDefaultMountAtStartup",
kPGPPrefType_Boolean,
(void *) TRUE},
{kPGPPrefWarnOnReadOnlyKeyRings,
"WarnOnReadOnlyKeyRings",
kPGPPrefType_Boolean,
(void *) TRUE},
{kPGPPrefWarnOnWipe,
"WarnOnWipe",
kPGPPrefType_Boolean,
(void *) TRUE},
{kPGPPrefAutoDecrypt,
"AutoDecrypt",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefWarnOnADK,
"WarnOnADK",
kPGPPrefType_Boolean,
(void *) TRUE},
{kPGPPrefWarnOnMemLockFailure,
"WarnOnMemLockFailure",
kPGPPrefType_Boolean,
(void *) TRUE},
{kPGPPrefExportKeysCompatible,
"ExportKeysCompatible",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefHookCBTWin,
"HookCBTWin",
kPGPPrefType_Boolean,
(void *) TRUE},
{kPGPPrefAlwaysUseSecureViewer,
"AlwaysUseSecureViewer",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefUseHexFingerprint,
"UseHexFingerprint",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefDiskWarnOnDeletion,
"DiskWarnOnDeletion",
kPGPPrefType_Boolean,
(void *) TRUE},
{kPGPPrefDiskAutoUnmountOnLogout,
"DiskAutoUnmountOnLogout",
kPGPPrefType_Boolean,
(void *) TRUE},
{kPGPPrefDiskAutoUnmountOnSleep,
"DiskAutoUnmountOnSleep",
kPGPPrefType_Boolean,
(void *) TRUE},
/* {kPGPPrefDiskBrowseAfterMount,
"DiskBrowseAfterMount",
kPGPPrefType_Boolean,
(void *) TRUE},*/
{kPGPPrefDiskNoSleepIfFailAU,
"DiskNoSleepIfFailAU",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefDiskUnmountOnInactivity,
"DiskUnmountOnInactivity",
kPGPPrefType_Boolean,
(void *) TRUE},
{kPGPPrefDiskWarnIfUnmountFail,
"DiskWarnIfUnmountFail",
kPGPPrefType_Boolean,
(void *) TRUE},
{kPGPPrefDiskAllowForcibleUnmounts,
"DiskAllowForcibleUnmounts",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefDiskAlwaysForceUnmounts,
"DiskAlwaysForceUnmounts",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefTrashIntegration,
"IntegrateWipeWithTrash",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefAutoWipeOnDelete,
"AutoWipeOnDelete",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefShowWipeProgress,
"ShowWipeProgress",
kPGPPrefType_Boolean,
(void *) TRUE},
{kPGPPrefShowTrayIcon,
"ShowTrayIcon",
kPGPPrefType_Boolean,
(void *) TRUE},
{kPGPPrefShowPGPkeysToolbar,
"ShowPGPkeysToolbar",
kPGPPrefType_Boolean,
(void *) TRUE},
{kPGPPrefUseOutgoingADK,
"UseOutgoingADK",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefUseDHADK,
"UseDHADK",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefEnforceIncomingADK,
"EnforceIncomingADK",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefEnforceMinChars,
"EnforceMinChars",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefEnforceMinQuality,
"EnforceMinQuality",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefWarnNotCertByCorpIsNoLongerUsed,
"Unused",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefAutoSignTrustCorp,
"AutoSignTrustCorp",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefMetaIntroducerCorp,
"MetaIntroducerCorp",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefAllowConventionalEncryption,
"AllowConventionalEncryption",
kPGPPrefType_Boolean,
(void *) TRUE},
{kPGPPrefEnforceOutgoingADK,
"EnforceOutgoingADK",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefEnforceRemoteADKClass,
"EnforceRemoteADKClass",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefUpdateAllKeys,
"UpdateAllKeys",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefUpdateTrustedIntroducers,
"UpdateTrustedIntroducers",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefAutoAddRevoker,
"AutoAddRevoker",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefUsePGPdiskADK,
"UsePGPdiskADK",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefKeyGenX509CertRequest,
"KeyGenX509CertRequest",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefAllowManualX509CertRequest,
"AllowManualX509CertRequest",
kPGPPrefType_Boolean,
(void *) TRUE},
{kPGPPrefAutoUpdateX509CRL,
"AutoUpdateX509CRL",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefAllowKeyGeneration,
"AllowKeyGeneration",
kPGPPrefType_Boolean,
(void *) TRUE},
{kPGPPrefPresetKeyGeneration,
"PresetKeyGeneration",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefAlwaysSendKeys,
"AlwaysSendKeys",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefAutoKeyReconstruction,
"AutoKeyReconstruction",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefUpdatePrefs,
"UpdatePrefs",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefAddLotusNotesUserID,
"AddLotusNotesUserID",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefTempestFont,
"TempestFont",
kPGPPrefType_Boolean,
(void *) TRUE},
{kPGPPrefIdleAutoLockScreen,
"LockScreen",
kPGPPrefType_Boolean,
(void *) TRUE},
{kPGPPrefAutoBackupKeyring,
"AutoBackupKeyring",
kPGPPrefType_Boolean,
(void *) TRUE},
{kPGPPrefAutoBackupToKeyringFolder,
"BackupToKeyringFolder",
kPGPPrefType_Boolean,
(void *) TRUE},
{kPGPPrefAutoSignRootCAKey,
"AutoSignRootCAKey",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefAllowEncryptInvalidKeys,
"AllowEncryptInvalid",
kPGPPrefType_Boolean,
(void *) TRUE},
{kPGPPrefAllowKeySigning,
"AllowKeySigning",
kPGPPrefType_Boolean,
(void *) TRUE},
{kPGPPrefDiskUseDefaultKey,
"DiskUseDefaultKey",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefCopyClientPrefs,
"CopyClientPrefs",
kPGPPrefType_Boolean,
(void *) TRUE},
{kPGPPrefCopyNetHosts,
"CopyNetHosts",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefMergeNetHosts,
"MergeNetHosts",
kPGPPrefType_Boolean,
(void *) TRUE},
{kPGPPrefPreselectInstall,
"PreselectInstall",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefInstallPrograms,
"InstallPrograms",
kPGPPrefType_Boolean,
(void *) TRUE},
{kPGPPrefInstallLogin,
"InstallLogin",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefInstallNet,
"InstallNet",
kPGPPrefType_Boolean,
(void *) TRUE},
{kPGPPrefInstallFire,
"InstallFire",
kPGPPrefType_Boolean,
(void *) TRUE},
{kPGPPrefInstallDisk,
"InstallDisk",
kPGPPrefType_Boolean,
(void *) TRUE},
{kPGPPrefInstallEudora,
"InstallEudora",
kPGPPrefType_Boolean,
(void *) TRUE},
{kPGPPrefInstallOutlook,
"InstallOutlook",
kPGPPrefType_Boolean,
(void *) TRUE},
{kPGPPrefInstallOutlookExpress,
"InstallOutlookExpress",
kPGPPrefType_Boolean,
(void *) TRUE},
{kPGPPrefInstallICQ,
"InstallICQ",
kPGPPrefType_Boolean,
(void *) TRUE},
{kPGPPrefInstallLotusNotes,
"InstallLotusNotes",
kPGPPrefType_Boolean,
(void *) TRUE},
{kPGPPrefDiskCreate,
"DiskCreate",
kPGPPrefType_Boolean,
(void *) FALSE},
{kPGPPrefInstallGroupwise,
"InstallGroupwise",
kPGPPrefType_Boolean,
(void *) TRUE},
{kPGPPrefInstallDocumentation,
"InstallDocumentation",
kPGPPrefType_Boolean,
(void *) TRUE},
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -