OSDN Git Service

Add support for MLSD responses from some broken hosts.
[ffftp/ffftp.git] / regexp.c
index 5bcb37e..141ce66 100644 (file)
--- a/regexp.c
+++ b/regexp.c
@@ -1,6 +1,6 @@
-/*=============================================================================\r
+/*=============================================================================\r
 *\r
-*                                                              \90³\8bK\95\\8c»\8c\9f\8dõ\r
+*                                                              正規表現検索\r
 *\r
 ===============================================================================\r
 / Copyright (C) 1997-2007 Sota. All rights reserved.\r
 #define        STRICT\r
 #include <stdio.h>\r
 #include <stdlib.h>\r
-#include <winsock.h>\r
+// IPv6対応\r
+//#include <winsock.h>\r
+#include <winsock2.h>\r
 #include <windowsx.h>\r
 \r
 #include "common.h"\r
 #include "jreusr.h"\r
 \r
 \r
-/*===== \83\8d\81[\83J\83\8b\82È\83\8f\81[\83N =====*/\r
+/*===== ローカルなワーク =====*/\r
 \r
 static JRE2 m_jreData;\r
 static HINSTANCE m_hDll = NULL;\r
@@ -50,13 +52,13 @@ static LPGETJREMESSAGE m_lpGetJreMessage = NULL;
 \r
 \r
 \r
-/*----- \90³\8bK\95\\8c»\83\89\83C\83u\83\89\83\8a\82ð\83\8d\81[\83h\82·\82é ----------------------------------------\r
+/*----- 正規表現ライブラリをロードする ----------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
+*              int ステータス\r
 *                      TRUE/FALSE\r
 *----------------------------------------------------------------------------*/\r
 \r
@@ -64,6 +66,11 @@ int LoadJre(void)
 {\r
        int Sts;\r
 \r
+       // UTF-8対応\r
+       // JRE32.DLLはUTF-8に非対応\r
+#ifdef DISABLE_JRE32DLL\r
+       return FALSE;\r
+#endif\r
        Sts = FALSE;\r
        if((m_hDll = LoadLibrary("jre32.dll")) != NULL)\r
        {\r
@@ -96,13 +103,13 @@ int LoadJre(void)
 }\r
 \r
 \r
-/*----- \90³\8bK\95\\8c»\83\89\83C\83u\83\89\83\8a\82ð\83\8a\83\8a\81[\83X\82·\82é --------------------------------------\r
+/*----- 正規表現ライブラリをリリースする --------------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              \82È\82µ\r
+*              なし\r
 *----------------------------------------------------------------------------*/\r
 \r
 void ReleaseJre(void)\r
@@ -115,13 +122,13 @@ void ReleaseJre(void)
 }\r
 \r
 \r
-/*----- \90³\8bK\95\\8c»\83\89\83C\83u\83\89\83\8a\82ª\8eg\82¦\82é\82©\82Ç\82¤\82©\82ð\95Ô\82· ------------------------------\r
+/*----- 正規表現ライブラリが使えるかどうかを返す ------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              int \90³\8bK\95\\8c»\83\89\83C\83u\83\89\83\8a\82ª\8eg\82¦\82é\82©\82Ç\82¤\82©\r
+*              int 正規表現ライブラリが使えるかどうか\r
 *                      TRUE/FALSE\r
 *----------------------------------------------------------------------------*/\r
 \r
@@ -137,13 +144,13 @@ int AskJreUsable(void)
 }\r
 \r
 \r
-/*----- \90³\8bK\95\\8c»\83\89\83C\83u\83\89\83\8a\82Ì\83o\81[\83W\83\87\83\93\82ð\95Ô\82· a---------------------------------\r
+/*----- 正規表現ライブラリのバージョンを返す a---------------------------------\r
 *\r
 *      Parameter\r
-*              \82È\82µ\r
+*              なし\r
 *\r
 *      Return Value\r
-*              int \83o\81[\83W\83\87\83\93\r
+*              int バージョン\r
 *----------------------------------------------------------------------------*/\r
 \r
 int GetJreVersion(void)\r
@@ -158,13 +165,13 @@ int GetJreVersion(void)
 }\r
 \r
 \r
-/*----- \90³\8bK\95\\8c»\8c\9f\8dõ\8e®\82ð\83R\83\93\83p\83C\83\8b\82·\82é ----------------------------------------\r
+/*----- 正規表現検索式をコンパイルする ----------------------------------------\r
 *\r
 *      Parameter\r
-*              kchar *Str : \8c\9f\8dõ\8e®\r
+*              kchar *Str : 検索式\r
 *\r
 *      Return Value\r
-*              int \83X\83e\81[\83^\83X\r
+*              int ステータス\r
 *                      TRUE/FALSE\r
 *----------------------------------------------------------------------------*/\r
 \r
@@ -180,15 +187,15 @@ int JreCompileStr(char *Str)
 }\r
 \r
 \r
-/*----- \95\8e\9a\97ñ\82ª\88ê\92v\82·\82é\82©\82Ç\82¤\82©\82ð\95Ô\82· ----------------------------------------\r
+/*----- 文字列が一致するかどうかを返す ----------------------------------------\r
 *\r
 *      Parameter\r
-*              char *Str : \95\8e\9a\97ñ\r
-*              UINT nStart : \8c\9f\8dõ\8aJ\8en\88Ê\92u\r
+*              char *Str : 文字列\r
+*              UINT nStart : 検索開始位置\r
 *\r
 *      Return Value\r
-*              char *\8c©\82Â\82©\82Á\82½\88Ê\92u\r
-*                      NULL=\8c©\82Â\82©\82ç\82È\82©\82Á\82½\r
+*              char *見つかった位置\r
+*                      NULL=見つからなかった\r
 *----------------------------------------------------------------------------*/\r
 \r
 char *JreGetStrMatchInfo(char *Str, UINT nStart)\r