//#define VER_STR "1.97b"\r
//#define VER_NUM 1921 /* 設定バージョン */\r
//#define PROGRAM_VERSION_NUM 1972 /* バージョン */\r
+// 64ビット対応\r
+#ifdef _WIN64\r
+#define VER_STR "1.99 64bit"\r
+#else\r
#define VER_STR "1.99"\r
+#endif\r
#define VER_NUM 1990 /* 設定バージョン */\r
#define PROGRAM_VERSION_NUM 1990 /* バージョン */\r
+// ソフトウェア自動更新\r
+// リリースバージョンはリリース予定年(10進数4桁)+月(2桁)+日(2桁)+通し番号(0スタート2桁)とする\r
+// 2014年7月31日中の30個目のリリースは2014073129\r
+#define RELEASE_VERSION_NUM 2014061500 /* リリースバージョン */\r
\r
\r
// SourceForge.JPによるフォーク\r
#endif\r
// uClinux\r
#define LIST_UNIX_17 51 /* UNIX 17 */\r
+// Windows Server 2008 R2\r
+#define LIST_DOS_5 52 /* MS-DOS 5 */\r
\r
#define LIST_MELCOM 0x100 /* MELCOM80 */\r
\r
-rw-r--r-- 1 0 0 34 passwd\r
lrwxrwxrwx 1 0 0 18 inittab -> ../var/tmp/inittab\r
\r
+// Windows Server 2008 R2\r
+*LIST_DOS_5\r
+ 0 1 2 3\r
+ -------------------------------------------------------\r
+ 02-05-2013 09:45AM <DIR> TEST\r
+ 01-28-2013 03:54PM 2847 DATA.TXT\r
+\r
*LIST_TANDEM\r
0 1 2 3 4 5 6\r
---------------------------------------------------------------\r
#define KANJI_UTF8N 5 /* UTF-8 */\r
// UTF-8対応\r
#define KANJI_UTF8BOM 6 /* UTF-8 BOM */\r
+// UTF-8 HFS+対応\r
+#define KANJI_UTF8HFSX 7 /* UTF-8 HFS+ */\r
\r
#define KANJI_NOCNV -1 /* 漢字コード変換なし */\r
\r
int UseFTPIS; /* FTPISで接続する (YES/NO) */\r
int UseSFTP; /* SFTPで接続する (YES/NO) */\r
char PrivateKey[PRIVATE_KEY_LEN+1]; /* テキスト形式の秘密鍵 */\r
+ int NoWeakEncryption; /* 弱い暗号を拒否 (YES/NO) */\r
// 同時接続対応\r
int MaxThreadCount; /* 同時接続数 */\r
int ReuseCmdSkt; /* メインウィンドウのソケットを再利用する (YES/NO) */\r
// 再転送対応\r
int TransferErrorMode; /* 転送エラー時の処理 (EXIST_xxx) */\r
int TransferErrorNotify; /* 転送エラー時に確認ダイアログを出すかどうか (YES/NO) */\r
+ // セッションあたりの転送量制限対策\r
+ int TransferErrorReconnect; /* 転送エラー時に再接続する (YES/NO) */\r
} HOSTDATA;\r
\r
\r
int UseFTPIS; /* FTPISで接続する (YES/NO) */\r
int UseSFTP; /* SFTPで接続する (YES/NO) */\r
char PrivateKey[PRIVATE_KEY_LEN+1]; /* テキスト形式の秘密鍵 */\r
+ int NoWeakEncryption; /* 弱い暗号を拒否 (YES/NO) */\r
// 同時接続対応\r
int MaxThreadCount; /* 同時接続数 */\r
int ReuseCmdSkt; /* メインウィンドウのソケットを再利用する (YES/NO) */\r
// 再転送対応\r
int TransferErrorMode; /* 転送エラー時の処理 (EXIST_xxx) */\r
int TransferErrorNotify; /* 転送エラー時に確認ダイアログを出すかどうか (YES/NO) */\r
+ // セッションあたりの転送量制限対策\r
+ int TransferErrorReconnect; /* 転送エラー時に再接続する (YES/NO) */\r
struct historydata *Next;\r
} HISTORYDATA;\r
\r
// ポータブル版判定\r
void CheckPortableVersion();\r
int AskPortableVersion(void);\r
+// 全設定暗号化対応\r
+int Restart();\r
+void Terminate();\r
+// タスクバー進捗表示\r
+int LoadTaskbarList3();\r
+void FreeTaskbarList3();\r
+int IsTaskbarList3Loaded();\r
+void UpdateTaskbarProgress();\r
+// 高DPI対応\r
+int AskToolWinHeight(void);\r
+// ソフトウェア自動更新\r
+void UpdateSoftware(int Async, int NoError, int NoConfirm);\r
\r
/*===== filelist.c =====*/\r
\r
int SearchHostName(char *Name);\r
void ImportFromWSFTP(void);\r
// 暗号化通信対応\r
-int SetHostExcryption(int Num, int UseNoEncryption, int UseFTPES, int UseFTPIS, int UseSFTP);\r
+int SetHostEncryption(int Num, int UseNoEncryption, int UseFTPES, int UseFTPIS, int UseSFTP);\r
\r
/*===== connect.c =====*/\r
\r
// 再転送対応\r
int AskTransferErrorMode(void);\r
int AskTransferErrorNotify(void);\r
+// セッションあたりの転送量制限対策\r
+int AskErrorReconnect(void);\r
\r
/*===== cache.c =====*/\r
\r
void InitTransCurDir(void);\r
int DoDownload(SOCKET cSkt, TRANSPACKET *Pkt, int DirList, int *CancelCheckWork);\r
int CheckPathViolation(TRANSPACKET *packet);\r
+// タスクバー進捗表示\r
+LONGLONG AskTransferSizeLeft(void);\r
+LONGLONG AskTransferSizeTotal(void);\r
+int AskTransferErrorDisplay(void);\r
\r
/*===== codecnv.c =====*/\r
\r
\r
void InitCodeConvInfo(CODECONVINFO *cInfo);\r
int FlushRestData(CODECONVINFO *cInfo);\r
+// UTF-8対応\r
+int ConvNoConv(CODECONVINFO *cInfo);\r
int ConvEUCtoSJIS(CODECONVINFO *cInfo);\r
int ConvJIStoSJIS(CODECONVINFO *cInfo);\r
int ConvSMBtoSJIS(CODECONVINFO *cInfo);\r
int ConvSJIStoSMB_HEX(CODECONVINFO *cInfo);\r
int ConvSJIStoSMB_CAP(CODECONVINFO *cInfo);\r
int ConvSJIStoUTF8N(CODECONVINFO *cInfo); // UTF-8対応\r
+// UTF-8 HFS+対応\r
+int ConvUTF8NtoUTF8HFSX(CODECONVINFO *cInfo);\r
+int ConvUTF8HFSXtoUTF8N(CODECONVINFO *cInfo);\r
void ConvAutoToSJIS(char *Text, int Pref);\r
int CheckKanjiCode(char *Text, int Size, int Pref);\r
+// UTF-8対応\r
+int LoadUnicodeNormalizationDll();\r
+void FreeUnicodeNormalizationDll();\r
+int IsUnicodeNormalizationDllLoaded();\r
\r
/*===== option.c =====*/\r
\r
\r
int CheckFname(char *str, char *regexp);\r
\r
-/*===== registory.c =====*/\r
+/*===== registry.c =====*/\r
\r
void SaveRegistry(void);\r
int LoadRegistry(void);\r
// ポータブル版判定\r
int IsRegAvailable();\r
int IsIniAvailable();\r
+// バージョン確認\r
+int ReadSettingsVersion();\r
+// FileZilla XML形式エクスポート対応\r
+void SaveSettingsToFileZillaXml();\r
\r
/*===== lvtips.c =====*/\r
\r
// 64ビット対応\r
//BOOL CALLBACK ExeEscTextDialogProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);\r
INT_PTR CALLBACK ExeEscTextDialogProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);\r
+// 全設定暗号化対応\r
+INT_PTR CALLBACK AnyButtonDialogProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);\r
void SetYenTail(char *Str);\r
void RemoveYenTail(char *Str);\r
void SetSlashTail(char *Str);\r
void FileTime2TimeString(FILETIME *Time, char *Buf, int Mode, int InfoExist, int ShowSeconds);\r
void SpecificLocalFileTime2FileTime(FILETIME *Time, int TimeZone);\r
int AttrString2Value(char *Str);\r
-void AttrValue2String(int Attr, char *Buf);\r
+// ファイルの属性を数字で表示\r
+//void AttrValue2String(int Attr, char *Buf);\r
+void AttrValue2String(int Attr, char *Buf, int ShowNumber);\r
void FormatIniString(char *Str);\r
int SelectFile(HWND hWnd, char *Fname, char *Title, char *Filters, char *Ext, int Flags, int Save);\r
int SelectDir(HWND hWnd, char *Buf, int MaxLen);\r
#if defined(HAVE_TANDEM)\r
void CalcExtentSize(TRANSPACKET *Pkt, LONGLONG Size);\r
#endif\r
+// 高DPI対応\r
+void QueryDisplayDPI();\r
+int CalcPixelX(int x);\r
+int CalcPixelY(int y);\r
+HBITMAP ResizeBitmap(HBITMAP hBitmap, int UnitSizeX, int UnitSizeY, int ScaleNumerator, int ScaleDenominator);\r
\r
/*===== dlgsize.c =====*/\r
\r
/*===== tool.c =====*/\r
\r
void OtpCalcTool(void);\r
+// FTPS対応\r
+void TurnStatefulFTPFilter();\r
\r
/*===== history.c =====*/\r
\r
// ソケットにデータを付与\r
int SetAsyncTableDataIPv4(SOCKET s, struct sockaddr_in* Host, struct sockaddr_in* Socks);\r
int SetAsyncTableDataIPv6(SOCKET s, struct sockaddr_in6* Host, struct sockaddr_in6* Socks);\r
+int SetAsyncTableDataMapPort(SOCKET s, int Port);\r
int GetAsyncTableDataIPv4(SOCKET s, struct sockaddr_in* Host, struct sockaddr_in* Socks);\r
int GetAsyncTableDataIPv6(SOCKET s, struct sockaddr_in6* Host, struct sockaddr_in6* Socks);\r
+int GetAsyncTableDataMapPort(SOCKET s, int* Port);\r
// IPv6対応\r
//struct hostent *do_gethostbyname(const char *Name, char *Buf, int Len, int *CancelCheckWork);\r
struct hostent *do_gethostbynameIPv4(const char *Name, char *Buf, int Len, int *CancelCheckWork);\r
int do_send(SOCKET s, const char *buf, int len, int flags, int *TimeOutErr, int *CancelCheckWork);\r
// 同時接続対応\r
void RemoveReceivedData(SOCKET s);\r
+// UPnP対応\r
+int LoadUPnP();\r
+void FreeUPnP();\r
+int IsUPnPLoaded();\r
+int AddPortMapping(char* Adrs, int Port);\r
+int RemovePortMapping(int Port);\r
int CheckClosedAndReconnect(void);\r
// 同時接続対応\r
int CheckClosedAndReconnectTrnSkt(SOCKET *Skt, int *CancelCheckWork);\r