OSDN Git Service

Enhance routines for extra commands.
authors_kawamoto <s_kawamoto@users.sourceforge.jp>
Fri, 27 Jan 2012 12:41:03 +0000 (21:41 +0900)
committers_kawamoto <s_kawamoto@users.sourceforge.jp>
Fri, 27 Jan 2012 12:41:03 +0000 (21:41 +0900)
FFFTP_Eng_Release/FFFTP.exe
Release/FFFTP.exe
common.h
connect.c
ftpproc.c
remote.c

index dae8f34..adc355c 100644 (file)
Binary files a/FFFTP_Eng_Release/FFFTP.exe and b/FFFTP_Eng_Release/FFFTP.exe differ
index 792ecfd..33d0d94 100644 (file)
Binary files a/Release/FFFTP.exe and b/Release/FFFTP.exe differ
index fadb7ea..9eaaf47 100644 (file)
--- a/common.h
+++ b/common.h
@@ -1601,7 +1601,7 @@ int DoSIZE(SOCKET cSkt, char *Path, LONGLONG *Size, int *CancelCheckWork);
 int DoMDTM(SOCKET cSkt, char *Path, FILETIME *Time, int *CancelCheckWork);\r
 // 同時接続対応\r
 //int DoQUOTE(char *CmdStr);\r
-int DoQUOTE(SOCKET cSkt, char *CmdStr);\r
+int DoQUOTE(SOCKET cSkt, char *CmdStr, int *CancelCheckWork);\r
 SOCKET DoClose(SOCKET Sock);\r
 int DoQUIT(SOCKET ctrl_skt);\r
 int DoDirListCmdSkt(char *AddOpt, char *Path, int Num, int *CancelCheckWork);\r
index 66f7a33..3e17909 100644 (file)
--- a/connect.c
+++ b/connect.c
@@ -59,7 +59,7 @@
 static INT_PTR CALLBACK QuickConDialogCallBack(HWND hDlg, UINT iMessage, WPARAM wParam, LPARAM lParam);\r
 // 同時接続対応\r
 //static int SendInitCommand(char *Cmd);\r
-static int SendInitCommand(SOCKET Socket, char *Cmd);\r
+static int SendInitCommand(SOCKET Socket, char *Cmd, int *CancelCheckWork);\r
 static void AskUseFireWall(char *Host, int *Fire, int *Pasv, int *List);\r
 static void SaveCurrentSetToHistory(void);\r
 static int ReConnectSkt(SOCKET *Skt);\r
@@ -240,7 +240,7 @@ void ConnectProc(int Type, int Num)
                                DispWindowTitle();\r
                                SoundPlay(SND_CONNECT);\r
 \r
-                               SendInitCommand(CmdCtrlSocket, CurHost.InitCmd);\r
+                               SendInitCommand(CmdCtrlSocket, CurHost.InitCmd, &CancelFlg);\r
 \r
                                if(strlen(CurHost.LocalInitDir) > 0)\r
                                {\r
@@ -611,7 +611,7 @@ void HistoryConnectProc(int MenuCmd)
                                DispWindowTitle();\r
                                SoundPlay(SND_CONNECT);\r
 \r
-                               SendInitCommand(CmdCtrlSocket, CurHost.InitCmd);\r
+                               SendInitCommand(CmdCtrlSocket, CurHost.InitCmd, &CancelFlg);\r
 \r
                                DoLocalCWD(CurHost.LocalInitDir);\r
                                GetLocalDirForWnd();\r
@@ -650,7 +650,9 @@ void HistoryConnectProc(int MenuCmd)
 *                      cmd1\r\ncmd2\r\n\0\r
 *----------------------------------------------------------------------------*/\r
 \r
-static int SendInitCommand(SOCKET Socket, char *Cmd)\r
+// 同時接続対応\r
+//static int SendInitCommand(char *Cmd)\r
+static int SendInitCommand(SOCKET Socket, char *Cmd, int *CancelCheckWork)\r
 {\r
        char Tmp[INITCMD_LEN+1];\r
        char *Pos;\r
@@ -661,7 +663,8 @@ static int SendInitCommand(SOCKET Socket, char *Cmd)
                if((Pos = strchr(Tmp, '\r')) != NULL)\r
                        *Pos = NUL;\r
                if(strlen(Tmp) > 0)\r
-                       DoQUOTE(Socket, Tmp);\r
+//                     DoQUOTE(Tmp);\r
+                       DoQUOTE(Socket, Tmp, CancelCheckWork);\r
 \r
                if((Cmd = strchr(Cmd, '\n')) != NULL)\r
                        Cmd++;\r
@@ -1108,7 +1111,7 @@ int ReConnectTrnSkt(SOCKET *Skt, int *CancelCheckWork)
 //     if((*Skt = DoConnect(CurHost.HostAdrs, CurHost.UserName, CurHost.PassWord, CurHost.Account, CurHost.Port, CurHost.FireWall, NO, CurHost.Security)) != INVALID_SOCKET)\r
        if((*Skt = DoConnect(&HostData, CurHost.HostAdrs, CurHost.UserName, CurHost.PassWord, CurHost.Account, CurHost.Port, CurHost.FireWall, NO, CurHost.Security, CancelCheckWork)) != INVALID_SOCKET)\r
        {\r
-               SendInitCommand(*Skt, CurHost.InitCmd);\r
+               SendInitCommand(*Skt, CurHost.InitCmd, CancelCheckWork);\r
 //             AskRemoteCurDir(Path, FMAX_PATH);\r
 //             DoCWD(Path, YES, YES, YES);\r
                Sts = FFFTP_SUCCESS;\r
@@ -1150,7 +1153,7 @@ static int ReConnectSkt(SOCKET *Skt)
 //     if((*Skt = DoConnect(CurHost.HostAdrs, CurHost.UserName, CurHost.PassWord, CurHost.Account, CurHost.Port, CurHost.FireWall, NO, CurHost.Security)) != INVALID_SOCKET)\r
        if((*Skt = DoConnect(&CurHost, CurHost.HostAdrs, CurHost.UserName, CurHost.PassWord, CurHost.Account, CurHost.Port, CurHost.FireWall, NO, CurHost.Security, &CancelFlg)) != INVALID_SOCKET)\r
        {\r
-               SendInitCommand(*Skt, CurHost.InitCmd);\r
+               SendInitCommand(*Skt, CurHost.InitCmd, &CancelFlg);\r
                AskRemoteCurDir(Path, FMAX_PATH);\r
                DoCWD(Path, YES, YES, YES);\r
                Sts = FFFTP_SUCCESS;\r
index 7da86d9..7552c71 100644 (file)
--- a/ftpproc.c
+++ b/ftpproc.c
@@ -3075,7 +3075,7 @@ void SomeCmdProc(void)
                        {\r
                                // 同時接続対応\r
                                //DoQUOTE(Cmd);\r
-                               DoQUOTE(AskCmdCtrlSkt(), Cmd);\r
+                               DoQUOTE(AskCmdCtrlSkt(), Cmd, &CancelFlg);\r
                        }\r
                        EnableUserOpe();\r
                }\r
index 4f76f5d..4125606 100644 (file)
--- a/remote.c
+++ b/remote.c
@@ -470,12 +470,12 @@ int DoMDTM(SOCKET cSkt, char *Path, FILETIME *Time, int *CancelCheckWork)
 \r
 // 同時接続対応\r
 //int DoQUOTE(char *CmdStr)\r
-int DoQUOTE(SOCKET cSkt, char *CmdStr)\r
+int DoQUOTE(SOCKET cSkt, char *CmdStr, int *CancelCheckWork)\r
 {\r
-       int Sts, CancelCheckWork;\r
+       int Sts;\r
 \r
-       CancelCheckWork = NO;\r
-       Sts = CommandProcTrn(cSkt, NULL, &CancelCheckWork, "%s", CmdStr);\r
+//     Sts = CommandProcCmd(NULL, "%s", CmdStr);\r
+       Sts = CommandProcTrn(cSkt, NULL, CancelCheckWork, "%s", CmdStr);\r
 \r
        if(Sts/100 >= FTP_CONTINUE)\r
                SoundPlay(SND_ERROR);\r
@@ -704,10 +704,10 @@ void SwitchOSSProc(void)
 \r
        /* DoPWD でノード名の \ を保存するために OSSフラグも変更する */\r
        if(AskOSS() == YES) {\r
-               DoQUOTE(AskCmdCtrlSkt(), "GUARDIAN");\r
+               DoQUOTE(AskCmdCtrlSkt(), "GUARDIAN", &CancelFlg);\r
                SetOSS(NO);\r
        } else {\r
-               DoQUOTE(AskCmdCtrlSkt(), "OSS");\r
+               DoQUOTE(AskCmdCtrlSkt(), "OSS", &CancelFlg);\r
                SetOSS(YES);\r
        }\r
        /* Current Dir 再取得 */\r