Rebuild OpenSSL for the new version.
call compat50.bat\r
perl nodebug.pl\r
nmake /f makefile build_libs\r
-copy /y libeay32.dll %var1%\libeay32.dll\r
-copy /y ssleay32.dll %var1%\ssleay32.dll\r
+copy /y libcrypto-1_1-x64.dll %var1%\libcrypto-1_1-x64.dll\r
+copy /y libssl-1_1-x64.dll %var1%\libssl-1_1-x64.dll\r
popd\r
exit /b\r
call compat50.bat\r
perl nodebug.pl\r
nmake /f makefile build_libs\r
-copy /y libeay32.dll %var1%\libeay32.dll\r
-copy /y ssleay32.dll %var1%\ssleay32.dll\r
+copy /y libcrypto-1_1.dll %var1%\libcrypto-1_1.dll\r
+copy /y libssl-1_1.dll %var1%\libssl-1_1.dll\r
popd\r
exit /b\r
for(@data)\r
{\r
$_ =~ s/ \/debug//g;\r
- $_ =~ s/libssl-1_1-x64/ssleay32/g;\r
- $_ =~ s/libcrypto-1_1-x64/libeay32/g;\r
- $_ =~ s/libssl-1_1/ssleay32/g;\r
- $_ =~ s/libcrypto-1_1/libeay32/g;\r
- $_ =~ s/\$\(MTOUTFLAG\)ssleay32\.dll/\$\(MTOUTFLAG\)ssleay32\.dll;#2/g;\r
- $_ =~ s/\$\(MTOUTFLAG\)libeay32\.dll/\$\(MTOUTFLAG\)libeay32\.dll;#2/g;\r
+ $_ =~ s/\$\(MTOUTFLAG\)libssl-1_1-x64\.dll/\$\(MTOUTFLAG\)libssl-1_1-x64\.dll;#2/g;\r
+ $_ =~ s/\$\(MTOUTFLAG\)libcrypto-1_1-x64\.dll/\$\(MTOUTFLAG\)libcrypto-1_1-x64\.dll;#2/g;\r
+ $_ =~ s/\$\(MTOUTFLAG\)libssl-1_1\.dll/\$\(MTOUTFLAG\)libssl-1_1\.dll;#2/g;\r
+ $_ =~ s/\$\(MTOUTFLAG\)libcrypto-1_1\.dll/\$\(MTOUTFLAG\)libcrypto-1_1\.dll;#2/g;\r
$_ =~ s/\"-DENGINESDIR=/\"-DENGINESDIR=\\\"\.\\\"\" \"-D_ENGINESDIR=/g;\r
$_ =~ s/\"-DOPENSSLDIR=/\"-DOPENSSLDIR=\\\"\.\\\"\" \"-D_OPENSSLDIR=/g;\r
print FILE $_;\r
3. OpenSSLのビルド(32ビット版)\r
3.1. Visual Studio 2008 コマンド プロンプトを起動\r
3.2. コマンド プロンプト内でbuildx86.batを実行\r
- 3.3. 正常にビルドされた場合distディレクトリ内にlibeay32.dllおよびssleay32.dllが作成される\r
+ 3.3. 正常にビルドされた場合distディレクトリ内にlibcrypto-1_1.dllおよびlibssl-1_1.dllが作成される\r
\r
3. OpenSSLのビルド(64ビット版)\r
3.1. Visual Studio 2008 x64 Win64 コマンド プロンプトを起動\r
3.2. コマンド プロンプト内でbuildx64.batを実行\r
- 3.3. 正常にビルドされた場合dist\amd64ディレクトリ内にlibeay32.dllおよびssleay32.dllが作成される\r
+ 3.3. 正常にビルドされた場合dist\amd64ディレクトリ内にlibcrypto-1_1-x64.dllおよびlibssl-1_1-x64.dllが作成される\r
\r
// Dialog\r
//\r
\r
-about_dlg DIALOGEX 0, 0, 319, 315\r
+about_dlg DIALOGEX 0, 0, 319, 267\r
STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU\r
CAPTION "FFFTP\82É\82Â\82¢\82Ä"\r
FONT 9, "MS Shell Dlg", 0, 0, 0x0\r
BEGIN\r
- DEFPUSHBUTTON "OK",IDOK,133,294,50,14\r
+ DEFPUSHBUTTON "OK",IDOK,133,246,50,14\r
ICON ffftp,-1,7,4,20,20\r
- CTEXT "FFFTP Ver 1.99a-20171104",-1,113,11,90,8\r
- CTEXT "FFFTP\82Ífreeware\82Å\82·",-1,7,279,305,8\r
- CTEXT "Copyright(C) 1997-2010 Sota & \82²\8b¦\97Í\82¢\82½\82¾\82¢\82½\95û\81X\nCopyright (C) 2011-2017 FFFTP Project (Hiromichi Matsushima, Suguru Kawamoto, IWAMOTO Kouichi, vitamin0x, \82¤\82È\81[, Asami, fortran90, tomo1192, Yuji Tanaka, Moriguchi Hirokazu, \82Ó\82¤\82¹\82ñ)",-1,7,25,305,44,SS_NOPREFIX\r
- CTEXT "",ABOUT_JRE,7,96,305,8\r
- EDITTEXT ABOUT_URL,7,76,305,12,ES_CENTER | ES_AUTOHSCROLL | ES_READONLY | NOT WS_BORDER\r
- CTEXT "OLE D&&D\8b@\94\ by \95½\93c\96L\82³\82ñ\81Anakka\82³\82ñ\n\83z\83X\83g\93à\82Å\82Ì\83t\83@\83C\83\8b\88Ú\93®\8b@\94\ by \95½\93c\96L\82³\82ñ\n\82¢\82\82Â\82©\82Ì\8b@\94\ by miau\82³\82ñ\n\83}\83X\83^\81[\83p\83X\83\8f\81[\83h\8b@\94\ by \82°\82ñ\82°\82ñ\82³\82ñ\nAES\88Ã\8d\86\89» by Moca\82³\82ñ\n\n\91¼\81A\91½\82\82Ì\95û\82Ì\82²\8b¦\97Í\82ð\82¢\82½\82¾\82«\82Ü\82µ\82½\81B",-1,7,143,305,60\r
- CTEXT "AES program code :\nCopyright (c) 1998-2008, Brian Gladman, Worcester, UK.\nAll rights reserved.",-1,7,111,305,27\r
- CTEXT "FTP over SSL/TLS\82Ì\8eÀ\91\95\82É\82ÍOpenSSL\82ð\8eg\97p\82µ\82Ä\82¢\82Ü\82·\81B\nCopyright (c) 1998-2011 The OpenSSL Project. All rights reserved.",-1,7,207,305,60\r
+ CTEXT "FFFTP Ver 2.00",-1,113,11,90,8\r
+ CTEXT "FFFTP\82Ífreeware\82Å\82·",-1,7,231,305,8\r
+ CTEXT "Copyright(C) 1997-2010 Sota & \82²\8b¦\97Í\82¢\82½\82¾\82¢\82½\95û\81X\nCopyright (C) 2011-2017 FFFTP Project (Hiromichi Matsushima, Suguru Kawamoto, IWAMOTO Kouichi, vitamin0x, \82¤\82È\81[, Asami, fortran90, tomo1192, Yuji Tanaka, Moriguchi Hirokazu, \82Ó\82¤\82¹\82ñ)",-1,7,25,305,32,SS_NOPREFIX\r
+ CTEXT "",ABOUT_JRE,7,84,305,8\r
+ EDITTEXT ABOUT_URL,7,64,305,12,ES_CENTER | ES_AUTOHSCROLL | ES_READONLY | NOT WS_BORDER\r
+ CTEXT "OLE D&&D\8b@\94\ by \95½\93c\96L\82³\82ñ\81Anakka\82³\82ñ\n\83z\83X\83g\93à\82Å\82Ì\83t\83@\83C\83\8b\88Ú\93®\8b@\94\ by \95½\93c\96L\82³\82ñ\n\82¢\82\82Â\82©\82Ì\8b@\94\ by miau\82³\82ñ\n\83}\83X\83^\81[\83p\83X\83\8f\81[\83h\8b@\94\ by \82°\82ñ\82°\82ñ\82³\82ñ\nAES\88Ã\8d\86\89» by Moca\82³\82ñ\n\n\91¼\81A\91½\82\82Ì\95û\82Ì\82²\8b¦\97Í\82ð\82¢\82½\82¾\82«\82Ü\82µ\82½\81B",-1,7,131,305,60\r
+ CTEXT "AES program code :\nCopyright (c) 1998-2008, Brian Gladman, Worcester, UK.\nAll rights reserved.",-1,7,99,305,27\r
+ CTEXT "FTP over SSL/TLS\82Ì\8eÀ\91\95\82É\82ÍOpenSSL\82ð\8eg\97p\82µ\82Ä\82¢\82Ü\82·\81B\nCopyright (c) 1998-2011 The OpenSSL Project. All rights reserved.",-1,7,195,305,24\r
END\r
\r
transfer_dlg DIALOG 0, 0, 199, 91\r
CONTROL "\88Ã\8d\86\89»\82È\82µ\82Å\90Ú\91±\82ð\8b\96\89Â(&A)",HSET_NO_ENCRYPTION,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,7,148,10\r
CONTROL "FTPS (Explicit)\82Å\90Ú\91±(&E)",HSET_FTPES,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,21,148,10\r
CONTROL "FTPS (Implicit)\82Å\90Ú\91±(&I)",HSET_FTPIS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,35,148,10\r
- CONTROL "SFTP\82Å\90Ú\91±(&S)",HSET_SFTP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,49,148,10\r
- LTEXT "\94é\96§\8c®\82Ì\83e\83L\83X\83g",-1,7,63,64,8\r
- PUSHBUTTON "...",PKEY_FILE_BR,72,63,13,12\r
- EDITTEXT HSET_PRIVATE_KEY,7,79,193,44,ES_MULTILINE | ES_AUTOHSCROLL | ES_WANTRETURN | WS_VSCROLL | WS_HSCROLL\r
- CONTROL "\8eã\82¢\88Ã\8d\86\89»\95û\8e®\82ð\8eg\97p\82µ\82È\82¢(&W)",HSET_NO_WEAK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,127,148,10\r
+ CONTROL "\8eã\82¢\88Ã\8d\86\89»\95û\8e®\82ð\8eg\97p\82µ\82È\82¢(&W)",HSET_NO_WEAK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,49,148,10\r
END\r
\r
hset_adv3_dlg DIALOG 0, 0, 207, 155\r
//\r
\r
VS_VERSION_INFO VERSIONINFO\r
- FILEVERSION 1,99,1,19\r
- PRODUCTVERSION 1,99,1,19\r
+ FILEVERSION 2,0,0,0\r
+ PRODUCTVERSION 2,0,0,0\r
FILEFLAGSMASK 0x3fL\r
#ifdef _DEBUG\r
FILEFLAGS 0x1L\r
VALUE "Comments", "\82±\82ê\82Í\83t\83\8a\81[\83\\83t\83g\83E\83G\83A\82Å\82·\81B"\r
VALUE "CompanyName", "Sota, FFFTP Project"\r
VALUE "FileDescription", "FFFTP"\r
- VALUE "FileVersion", "1, 99, 1, 19"\r
+ VALUE "FileVersion", "2, 0, 0, 0"\r
VALUE "InternalName", "FFFTP"\r
VALUE "LegalCopyright", "Copyright (C) 1997-2010 Sota & \82²\8b¦\97Í\82¢\82½\82¾\82¢\82½\95û\81X\nCopyright (C) 2011-2017 FFFTP Project (Hiromichi Matsushima, Suguru Kawamoto, IWAMOTO Kouichi, vitamin0x, \82¤\82È\81[, Asami, fortran90, tomo1192, Yuji Tanaka, Moriguchi Hirokazu, \82Ó\82¤\82¹\82ñ)."\r
VALUE "OriginalFilename", "FFFTP.exe"\r
VALUE "ProductName", "FFFTP"\r
- VALUE "ProductVersion", "1, 99, 1, 19"\r
+ VALUE "ProductVersion", "2, 0, 0, 0"\r
END\r
END\r
BLOCK "VarFileInfo"\r
// Dialog\r
//\r
\r
-about_dlg DIALOGEX 0, 0, 315, 317\r
+about_dlg DIALOGEX 0, 0, 315, 269\r
STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU\r
CAPTION "About FFFTP"\r
FONT 9, "MS Shell Dlg", 0, 0, 0x0\r
BEGIN\r
- DEFPUSHBUTTON "OK",IDOK,132,296,50,14\r
+ DEFPUSHBUTTON "OK",IDOK,132,248,50,14\r
ICON ffftp,-1,7,4,20,20\r
- CTEXT "FFFTP Ver 1.99a-20171104",-1,110,11,90,8\r
- CTEXT "FFFTP is freeware",-1,7,281,301,8\r
- CTEXT "Copyright(C) 1997-2010 Sota && cooperators\nCopyright (C) 2011-2017 FFFTP Project (Hiromichi Matsushima, Suguru Kawamoto, IWAMOTO Kouichi, vitamin0x, unarist, Asami, fortran90, tomo1192, Yuji Tanaka, Moriguchi Hirokazu, Fu-sen)",-1,7,25,301,44\r
- CTEXT "",ABOUT_JRE,7,93,301,8\r
- EDITTEXT ABOUT_URL,7,76,301,12,ES_CENTER | ES_AUTOHSCROLL | ES_READONLY | NOT WS_BORDER\r
- CTEXT "OLE D&&D by Yutaka Hirata-san, nakka-san\nIn site file mover by Hirata-san\nAny issues by miau-san\nMaster Password by Gengen-san\nAES encryption by Moca-san\n\nI had cooperation of many other one.",-1,7,142,301,59\r
- CTEXT "AES program code :\nCopyright (c) 1998-2008, Brian Gladman, Worcester, UK.\nAll rights reserved.",-1,7,110,301,27\r
- CTEXT "OpenSSL is used for implementation of FTP over SSL/TLS.\nCopyright (c) 1998-2011 The OpenSSL Project. All rights reserved.",-1,7,209,305,60\r
+ CTEXT "FFFTP Ver 2.00",-1,110,11,90,8\r
+ CTEXT "FFFTP is freeware",-1,7,233,301,8\r
+ CTEXT "Copyright(C) 1997-2010 Sota && cooperators\nCopyright (C) 2011-2017 FFFTP Project (Hiromichi Matsushima, Suguru Kawamoto, IWAMOTO Kouichi, vitamin0x, unarist, Asami, fortran90, tomo1192, Yuji Tanaka, Moriguchi Hirokazu, Fu-sen)",-1,7,25,301,32\r
+ CTEXT "",ABOUT_JRE,7,81,301,8\r
+ EDITTEXT ABOUT_URL,7,64,301,12,ES_CENTER | ES_AUTOHSCROLL | ES_READONLY | NOT WS_BORDER\r
+ CTEXT "OLE D&&D by Yutaka Hirata-san, nakka-san\nIn site file mover by Hirata-san\nAny issues by miau-san\nMaster Password by Gengen-san\nAES encryption by Moca-san\n\nI had cooperation of many other one.",-1,7,130,301,59\r
+ CTEXT "AES program code :\nCopyright (c) 1998-2008, Brian Gladman, Worcester, UK.\nAll rights reserved.",-1,7,98,301,27\r
+ CTEXT "OpenSSL is used for implementation of FTP over SSL/TLS.\nCopyright (c) 1998-2011 The OpenSSL Project. All rights reserved.",-1,7,197,305,24\r
END\r
\r
transfer_dlg DIALOG 0, 0, 199, 91\r
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,7,148,10\r
CONTROL "Connect with FTPS (&Explicit)",HSET_FTPES,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,21,148,10\r
CONTROL "Connect with FTPS (&Implicit)",HSET_FTPIS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,35,148,10\r
- CONTROL "Connect with &SFTP",HSET_SFTP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,49,148,10\r
- LTEXT "Private key text",-1,7,63,64,8\r
- PUSHBUTTON "...",PKEY_FILE_BR,72,63,13,12\r
- EDITTEXT HSET_PRIVATE_KEY,7,79,193,44,ES_MULTILINE | ES_AUTOHSCROLL | ES_WANTRETURN | WS_VSCROLL | WS_HSCROLL\r
CONTROL "Do not use &weak encryption methods",HSET_NO_WEAK,\r
- "Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,127,148,10\r
+ "Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,49,148,10\r
END\r
\r
hset_adv3_dlg DIALOG 0, 0, 207, 155\r
//\r
\r
VS_VERSION_INFO VERSIONINFO\r
- FILEVERSION 1,99,1,19\r
- PRODUCTVERSION 1,99,1,19\r
+ FILEVERSION 2,0,0,0\r
+ PRODUCTVERSION 2,0,0,0\r
FILEFLAGSMASK 0x3fL\r
#ifdef _DEBUG\r
FILEFLAGS 0x1L\r
VALUE "Comments", "This software is Free Software"\r
VALUE "CompanyName", "Sota, FFFTP Project"\r
VALUE "FileDescription", "FFFTP"\r
- VALUE "FileVersion", "1, 99, 1, 19"\r
+ VALUE "FileVersion", "2, 0, 0, 0"\r
VALUE "InternalName", "FFFTP"\r
VALUE "LegalCopyright", "Copyright (C) 1997-2010 Sota & cooperators\nCopyright (C) 2011-2017 FFFTP Project (Hiromichi Matsushima, Suguru Kawamoto, IWAMOTO Kouichi, vitamin0x, unarist, Asami, fortran90, tomo1192, Yuji Tanaka, Moriguchi Hirokazu, Fu-sen)."\r
VALUE "OriginalFilename", "FFFTP.exe"\r
VALUE "ProductName", "FFFTP"\r
- VALUE "ProductVersion", "1, 99, 1, 19"\r
+ VALUE "ProductVersion", "2, 0, 0, 0"\r
END\r
END\r
BLOCK "VarFileInfo"\r
//#define PROGRAM_VERSION_NUM 1972 /* バージョン */\r
// 64ビット対応\r
#ifdef _WIN64\r
-#define VER_STR "1.99a-20171104 64bit"\r
+#define VER_STR "2.00 64bit"\r
#else\r
-#define VER_STR "1.99a-20171104"\r
+#define VER_STR "2.00"\r
#endif\r
-#define VER_NUM 1991 /* 設定バージョン */\r
-#define PROGRAM_VERSION_NUM 1991 /* バージョン */\r
+#define VER_NUM 2000 /* 設定バージョン */\r
+#define PROGRAM_VERSION_NUM 2000 /* バージョン */\r
// ソフトウェア自動更新\r
// リリースバージョンはリリース予定年(10進数4桁)+月(2桁)+日(2桁)+通し番号(0スタート2桁)とする\r
// 2014年7月31日中の30個目のリリースは2014073129\r
// ssl.pem\r
#define FILEHASH_SSL_PEM_SHA1 "\xB5\x0E\xE9\xDC\x25\x9D\xAC\x83\x09\xB3\x42\xA3\xB9\x7C\xF2\x1A\xAD\xA8\x27\xA6"\r
#if defined(_M_IX86)\r
-// libeay32.dll\r
-#define FILEHASH_LIBEAY32_DLL_SHA1 "\xE4\xA5\x2E\xB0\x80\xB5\x07\x4B\x40\xB0\x15\x71\xC5\xAA\x6F\xF8\xF3\xC4\x97\xFC"\r
-// ssleay32.dll\r
-#define FILEHASH_SSLEAY32_DLL_SHA1 "\x93\x4D\xF4\xDA\x2C\x4A\x65\x53\x56\xA7\xB3\xD3\x2F\x9C\x86\xBA\xB4\xF8\xDD\x48"\r
+// libcrypto-1_1.dll\r
+#define FILEHASH_LIBCRYPTO_DLL_SHA1 "\x8F\xA8\x54\xD1\x27\x65\x18\xE4\x43\xA5\x5C\xAF\x65\x39\x66\xB8\x3A\x05\xE8\x0B"\r
+// libssl-1_1.dll\r
+#define FILEHASH_LIBSSL_DLL_SHA1 "\x42\x65\x00\x4A\xC9\xF8\xFE\x28\x49\xE2\x90\x51\x58\x2B\x57\x09\x97\xB0\x3B\xAD"\r
#elif defined(_M_AMD64)\r
-// libeay32.dll\r
-#define FILEHASH_LIBEAY32_DLL_SHA1 "\x70\xA9\xCC\x67\x1B\xE5\x18\xF4\x29\x20\xD6\x3F\xBD\xAA\x57\xA6\x12\x43\xE5\xFB"\r
-// ssleay32.dll\r
-#define FILEHASH_SSLEAY32_DLL_SHA1 "\xF8\xF1\xF0\x1E\x7E\x20\xC6\xBF\x01\x84\xF6\x86\x90\x72\x5F\x8C\xF4\xF3\x2F\x57"\r
+// libcrypto-1_1-x64.dll\r
+#define FILEHASH_LIBCRYPTO_DLL_SHA1 "\xAF\xD4\xCF\x21\x2B\x87\x92\x25\x6B\x6F\x8E\x49\x36\x85\xD4\xC9\x2E\xFC\x88\xC7"\r
+// libssl-1_1-x64.dll\r
+#define FILEHASH_LIBSSL_DLL_SHA1 "\x91\xE6\xC3\x0B\xAF\x9A\x13\x24\x12\x73\x3D\x96\x3A\xBA\xB2\xA1\x0D\x43\x44\x5E"\r
#endif\r
\r
if(g_bOpenSSLLoaded)\r
return FALSE;\r
#ifdef ENABLE_PROCESS_PROTECTION\r
- // ssleay32.dll 1.1.0b\r
- RegisterTrustedModuleSHA1Hash(FILEHASH_SSLEAY32_DLL_SHA1);\r
- // libeay32.dll 1.1.0b\r
- RegisterTrustedModuleSHA1Hash(FILEHASH_LIBEAY32_DLL_SHA1);\r
+ // libssl-1_1.dll 1.1.0g\r
+ RegisterTrustedModuleSHA1Hash(FILEHASH_LIBCRYPTO_DLL_SHA1);\r
+ // libcrypto-1_1.dll 1.1.0g\r
+ RegisterTrustedModuleSHA1Hash(FILEHASH_LIBSSL_DLL_SHA1);\r
+#endif\r
+ // OpenSSL 1.1.0対応\r
+// g_hOpenSSL = LoadLibrary("ssleay32.dll");\r
+#if defined(_M_IX86)\r
+ g_hOpenSSL = LoadLibrary("libssl-1_1.dll");\r
+#elif defined(_M_AMD64)\r
+ g_hOpenSSL = LoadLibrary("libssl-1_1-x64.dll");\r
#endif\r
- g_hOpenSSL = LoadLibrary("ssleay32.dll");\r
// バージョン固定のためlibssl32.dllの読み込みは脆弱性の原因になり得るので廃止\r
// if(!g_hOpenSSL)\r
// g_hOpenSSL = LoadLibrary("libssl32.dll");\r
g_hOpenSSL = NULL;\r
return FALSE;\r
}\r
- g_hOpenSSLCommon = LoadLibrary("libeay32.dll");\r
+ // OpenSSL 1.1.0対応\r
+// g_hOpenSSLCommon = LoadLibrary("libeay32.dll");\r
+#if defined(_M_IX86)\r
+ g_hOpenSSLCommon = LoadLibrary("libcrypto-1_1.dll");\r
+#elif defined(_M_AMD64)\r
+ g_hOpenSSLCommon = LoadLibrary("libcrypto-1_1-x64.dll");\r
+#endif\r
if(!g_hOpenSSLCommon\r
|| !(p_BIO_s_mem = (_BIO_s_mem)GetProcAddress(g_hOpenSSLCommon, "BIO_s_mem"))\r
|| !(p_BIO_new = (_BIO_new)GetProcAddress(g_hOpenSSLCommon, "BIO_new"))\r