extern int FolderAttr;\r
extern int FolderAttrNum;\r
\r
+// 暗号化通信対応\r
+extern BYTE CertificateCacheHash[MAX_CERT_CACHE_HASH][20];\r
+\r
/*----- マスタパスワードの設定 ----------------------------------------------\r
*\r
* Parameter\r
void *hKey3;\r
void *hKey4;\r
void *hKey5;\r
- char Str[FMAX_PATH+1];\r
+ // 暗号化通信対応\r
+// char Str[FMAX_PATH+1];\r
+ char Str[PRIVATE_KEY_LEN*4+1];\r
int i;\r
int n;\r
HOSTDATA DefaultHost;\r
SaveIntNum(hKey5, "Notify", Hist.DialupNotify, DefaultHist.DialupNotify);\r
SaveStr(hKey5, "DialTo", Hist.DialEntry, DefaultHist.DialEntry);\r
// 暗号化通信対応\r
+ SaveIntNum(hKey5, "NoEncryption", Hist.UseNoEncryption, DefaultHist.UseNoEncryption);\r
SaveIntNum(hKey5, "FTPES", Hist.UseFTPES, DefaultHist.UseFTPES);\r
SaveIntNum(hKey5, "FTPIS", Hist.UseFTPIS, DefaultHist.UseFTPIS);\r
SaveIntNum(hKey5, "SFTP", Hist.UseSFTP, DefaultHist.UseSFTP);\r
+ EncodePassword(Hist.PrivateKey, Str);\r
+ SaveStr(hKey5, "PKey", Str, DefaultHist.PrivateKey);\r
// 同時接続対応\r
SaveIntNum(hKey5, "ThreadCount", Hist.MaxThreadCount, DefaultHist.MaxThreadCount);\r
+ // MLSD対応\r
+ SaveIntNum(hKey5, "MLSD", Hist.UseMLSD, DefaultHist.UseMLSD);\r
+ // IPv6対応\r
+ SaveIntNum(hKey5, "IPv6", Hist.UseIPv6, DefaultHist.UseIPv6);\r
\r
CloseSubKey(hKey5);\r
n++;\r
SaveIntNum(hKey5, "Notify", Host.DialupNotify, DefaultHost.DialupNotify);\r
SaveStr(hKey5, "DialTo", Host.DialEntry, DefaultHost.DialEntry);\r
// 暗号化通信対応\r
+ SaveIntNum(hKey5, "NoEncryption", Host.UseNoEncryption, DefaultHost.UseNoEncryption);\r
SaveIntNum(hKey5, "FTPES", Host.UseFTPES, DefaultHost.UseFTPES);\r
SaveIntNum(hKey5, "FTPIS", Host.UseFTPIS, DefaultHost.UseFTPIS);\r
SaveIntNum(hKey5, "SFTP", Host.UseSFTP, DefaultHost.UseSFTP);\r
+ EncodePassword(Host.PrivateKey, Str);\r
+ SaveStr(hKey5, "PKey", Str, DefaultHost.PrivateKey);\r
// 同時接続対応\r
SaveIntNum(hKey5, "ThreadCount", Host.MaxThreadCount, DefaultHost.MaxThreadCount);\r
+ // MLSD対応\r
+ SaveIntNum(hKey5, "MLSD", Host.UseMLSD, DefaultHost.UseMLSD);\r
+ // IPv6対応\r
+ SaveIntNum(hKey5, "IPv6", Host.UseIPv6, DefaultHost.UseIPv6);\r
}\r
CloseSubKey(hKey5);\r
}\r
if((i = AskCurrentHost()) == HOSTNUM_NOENTRY)\r
i = 0;\r
WriteIntValueToReg(hKey4, "CurSet", i);\r
+\r
+ // 暗号化通信対応\r
+ WriteBinaryToReg(hKey4, "CertCacheHash", &CertificateCacheHash, sizeof(CertificateCacheHash));\r
}\r
CloseSubKey(hKey4);\r
}\r
void *hKey5;\r
int i;\r
int Sets;\r
- char Str[256]; /* ASCII_EXT_LENより大きい事 */\r
+ // 暗号化通信対応\r
+// char Str[256]; /* ASCII_EXT_LENより大きい事 */\r
+ char Str[PRIVATE_KEY_LEN*4+1];\r
char *Pos;\r
char *Pos2;\r
HOSTDATA Host;\r
\r
if(i == FFFTP_SUCCESS)\r
{\r
- char checkbuf[48];\r
+// char checkbuf[48];\r
int salt = 0;\r
Sts = YES;\r
\r
ReadIntValueFromReg(hKey5, "Notify", &Hist.DialupNotify);\r
ReadStringFromReg(hKey5, "DialTo", Hist.DialEntry, RAS_NAME_LEN+1);\r
// 暗号化通信対応\r
+ ReadIntValueFromReg(hKey5, "NoEncryption", &Hist.UseNoEncryption);\r
ReadIntValueFromReg(hKey5, "FTPES", &Hist.UseFTPES);\r
ReadIntValueFromReg(hKey5, "FTPIS", &Hist.UseFTPIS);\r
ReadIntValueFromReg(hKey5, "SFTP", &Hist.UseSFTP);\r
+ strcpy(Str, "");\r
+ ReadStringFromReg(hKey5, "PKey", Str, PRIVATE_KEY_LEN*4+1);\r
+ DecodePassword(Str, Hist.PrivateKey);\r
// 同時接続対応\r
ReadIntValueFromReg(hKey5, "ThreadCount", &Hist.MaxThreadCount);\r
+ // MLSD対応\r
+ ReadIntValueFromReg(hKey5, "MLSD", &Hist.UseMLSD);\r
+ // IPv6対応\r
+ ReadIntValueFromReg(hKey5, "IPv6", &Hist.UseIPv6);\r
\r
CloseSubKey(hKey5);\r
AddHistoryToHistory(&Hist);\r
Host.Pasv = NO;\r
Host.ListCmdOnly = NO;\r
}\r
+ // 1.97b以前はデフォルトでShift_JIS\r
+ if(Version < 1980)\r
+ Host.NameKanjiCode = KANJI_SJIS;\r
ReadIntValueFromReg(hKey5, "Set", &Host.Level);\r
\r
ReadStringFromReg(hKey5, "HostName", Host.HostName, HOST_NAME_LEN+1);\r
ReadIntValueFromReg(hKey5, "Notify", &Host.DialupNotify);\r
ReadStringFromReg(hKey5, "DialTo", Host.DialEntry, RAS_NAME_LEN+1);\r
// 暗号化通信対応\r
+ ReadIntValueFromReg(hKey5, "NoEncryption", &Host.UseNoEncryption);\r
ReadIntValueFromReg(hKey5, "FTPES", &Host.UseFTPES);\r
ReadIntValueFromReg(hKey5, "FTPIS", &Host.UseFTPIS);\r
ReadIntValueFromReg(hKey5, "SFTP", &Host.UseSFTP);\r
+ strcpy(Str, "");\r
+ ReadStringFromReg(hKey5, "PKey", Str, PRIVATE_KEY_LEN*4+1);\r
+ DecodePassword(Str, Host.PrivateKey);\r
// 同時接続対応\r
ReadIntValueFromReg(hKey5, "ThreadCount", &Host.MaxThreadCount);\r
+ // MLSD対応\r
+ ReadIntValueFromReg(hKey5, "MLSD", &Host.UseMLSD);\r
+ // IPv6対応\r
+ ReadIntValueFromReg(hKey5, "IPv6", &Host.UseIPv6);\r
\r
CloseSubKey(hKey5);\r
\r
ReadIntValueFromReg(hKey4, "CurSet", &Sets);\r
SetCurrentHost(Sets);\r
\r
+ // 暗号化通信対応\r
+ ReadBinaryFromReg(hKey4, "CertCacheHash", &CertificateCacheHash, sizeof(CertificateCacheHash));\r
+\r
CloseSubKey(hKey4);\r
}\r
CloseReg(hKey3);\r