OSDN Git Service

Add TBSTYLE_FLAT to toolbar style.
[ffftp/ffftp.git] / connect.c
index 515cdaa..17d9a4b 100644 (file)
--- a/connect.c
+++ b/connect.c
@@ -957,28 +957,28 @@ int ReConnectCmdSkt(void)
 // 同時接続対応\r
 int ReConnectTrnSkt(SOCKET *Skt)\r
 {\r
-       char Path[FMAX_PATH+1];\r
+//     char Path[FMAX_PATH+1];\r
        int Sts;\r
 \r
        Sts = FFFTP_FAIL;\r
 \r
        SetTaskMsg(MSGJPN003);\r
 \r
-       DisableUserOpe();\r
+//     DisableUserOpe();\r
        /* 現在のソケットは切断 */\r
        if(*Skt != INVALID_SOCKET)\r
                do_closesocket(*Skt);\r
        /* 再接続 */\r
        if((*Skt = DoConnect(CurHost.HostAdrs, CurHost.UserName, CurHost.PassWord, CurHost.Account, CurHost.Port, CurHost.FireWall, NO, CurHost.Security)) != INVALID_SOCKET)\r
        {\r
-               AskRemoteCurDir(Path, FMAX_PATH);\r
+//             AskRemoteCurDir(Path, FMAX_PATH);\r
 //             DoCWD(Path, YES, YES, YES);\r
                Sts = FFFTP_SUCCESS;\r
        }\r
        else\r
                SoundPlay(SND_ERROR);\r
 \r
-       EnableUserOpe();\r
+//     EnableUserOpe();\r
        return(Sts);\r
 }\r
 \r
@@ -1092,8 +1092,8 @@ int AskShareProh(void)
        int Sts;\r
 \r
        Sts = YES;\r
-       if(CmdCtrlSocket == TrnCtrlSocket)\r
-               Sts = NO;\r
+//     if(CmdCtrlSocket == TrnCtrlSocket)\r
+//             Sts = NO;\r
 \r
        return(Sts);\r
 }\r
@@ -1276,7 +1276,7 @@ static SOCKET DoConnect(char *Host, char *User, char *Pass, char *Acct, int Port
                                // データ転送用ソケットのTCP遅延転送が無効されているので念のため\r
                                if(setsockopt(ContSock, IPPROTO_TCP, TCP_NODELAY, (LPSTR)&Flg, sizeof(Flg)) == SOCKET_ERROR)\r
                                        ReportWSError("setsockopt", WSAGetLastError());\r
-#pragma aaa\r
+/* #pragma aaa */\r
                                Flg = 1;\r
                                if(setsockopt(ContSock, SOL_SOCKET, SO_KEEPALIVE, (LPSTR)&Flg, sizeof(Flg)) == SOCKET_ERROR)\r
                                        ReportWSError("setsockopt", WSAGetLastError());\r
@@ -1476,6 +1476,26 @@ static SOCKET DoConnect(char *Host, char *User, char *Pass, char *Acct, int Port
 #endif\r
        TryConnect = NO;\r
 \r
+       // FEAT対応\r
+       // ホストの機能を確認\r
+       if(ContSock != INVALID_SOCKET)\r
+       {\r
+               if((Sts = command(ContSock, Reply, &CancelFlg, "FEAT")) == 211)\r
+               {\r
+                       // 改行文字はReadReplyMessageで消去されるため区切り文字に空白を使用\r
+                       // UTF-8対応\r
+                       if(strstr(Reply, " UTF8 "))\r
+                               CurHost.Feature |= FEATURE_UTF8;\r
+               }\r
+               // UTF-8対応\r
+               if(CurHost.NameKanjiCode == KANJI_AUTO && (CurHost.Feature & FEATURE_UTF8))\r
+               {\r
+                       if((Sts = command(ContSock, Reply, &CancelFlg, "OPTS UTF8 ON")) == 200)\r
+                       {\r
+                       }\r
+               }\r
+       }\r
+\r
        return(ContSock);\r
 }\r
 \r
@@ -2238,3 +2258,9 @@ int AskMaxThreadCount(void)
        return(CurHost.MaxThreadCount);\r
 }\r
 \r
+// FEAT対応\r
+int AskHostFeature(void)\r
+{\r
+       return(CurHost.Feature);\r
+}\r
+\r