2004-09-21 19:58:30 +00:00
|
|
|
|
Boinc Core Client - HTTPS implementation
|
|
|
|
|
========================================
|
2003-07-10 18:36:57 +00:00
|
|
|
|
|
2005-01-10 20:46:33 +00:00
|
|
|
|
This document describes how to compile a BOINC client
|
|
|
|
|
that uses Secure Socket Layer (SSL) to communicate with servers.
|
|
|
|
|
This is not currently supported.
|
|
|
|
|
|
2004-09-21 19:58:30 +00:00
|
|
|
|
BUILD PROCEDURES
|
2003-07-10 21:43:50 +00:00
|
|
|
|
|
2004-09-21 19:58:30 +00:00
|
|
|
|
1 Build OpenSSL Static library which works with Boinc Client on Windows
|
2003-07-10 18:36:57 +00:00
|
|
|
|
|
2004-09-21 19:58:30 +00:00
|
|
|
|
1-1) Install Perl (to compile OpenSSL)
|
2003-07-19 00:42:17 +00:00
|
|
|
|
|
2004-09-21 19:58:30 +00:00
|
|
|
|
Download package.
|
|
|
|
|
URL: http://aspn.activestate.com/ASPN/Downloads/ActivePerl/index/
|
2003-07-19 00:42:17 +00:00
|
|
|
|
|
2004-09-21 19:58:30 +00:00
|
|
|
|
install.bat will start installation.
|
2003-07-19 00:42:17 +00:00
|
|
|
|
|
2004-09-21 19:58:30 +00:00
|
|
|
|
1-2) Download and install OpenSSL
|
2003-07-19 00:42:17 +00:00
|
|
|
|
|
2004-09-21 19:58:30 +00:00
|
|
|
|
URL: http://www.openssl.org/source/
|
|
|
|
|
2798433 Mar 17 13:13:26 2004 openssl-0.9.7d.tar.gz (PGP sign) [LATEST]
|
2003-07-10 18:36:57 +00:00
|
|
|
|
|
2004-09-21 19:58:30 +00:00
|
|
|
|
1-3) Download Assembler (to compile sslelay32.lib, libeay32.lib)
|
2003-07-10 18:36:57 +00:00
|
|
|
|
|
2004-09-21 19:58:30 +00:00
|
|
|
|
Download nasm.exe, and put it in some directory where %PATH% can find.
|
|
|
|
|
http://sourceforge.net/project/showfiles.php?group_id=6208
|
2003-07-10 21:43:50 +00:00
|
|
|
|
|
2004-09-21 19:58:30 +00:00
|
|
|
|
(Configure)
|
2003-07-10 23:35:46 +00:00
|
|
|
|
|
2004-09-21 19:58:30 +00:00
|
|
|
|
C:\openssl-0.9.7d>perl Configure VC-WIN32
|
2003-07-10 23:35:46 +00:00
|
|
|
|
|
2004-09-21 19:58:30 +00:00
|
|
|
|
(Build assembler code)
|
2003-07-10 21:43:50 +00:00
|
|
|
|
|
2004-09-21 19:58:30 +00:00
|
|
|
|
C:\openssl-0.9.7d>ms\do_nasm
|
2003-07-10 21:43:50 +00:00
|
|
|
|
|
2004-09-21 19:58:30 +00:00
|
|
|
|
* To compile debug library, need to add 'debug' option
|
|
|
|
|
in file 'do_nasm'.
|
|
|
|
|
perl util\mk1mf.pl debug nasm VC-WIN32 >ms\nt.mak
|
2003-07-10 21:43:50 +00:00
|
|
|
|
|
2004-09-21 19:58:30 +00:00
|
|
|
|
(Build main code)
|
2003-07-10 21:43:50 +00:00
|
|
|
|
|
2004-09-21 19:58:30 +00:00
|
|
|
|
C:\openssl-0.9.7d>nmake -f ms\nt.mak
|
2003-07-10 21:43:50 +00:00
|
|
|
|
|
2004-09-21 19:58:30 +00:00
|
|
|
|
* Before executing nt.mak, change make file 'nt.mak'
|
|
|
|
|
as follows:
|
2003-07-10 21:43:50 +00:00
|
|
|
|
|
2004-09-21 19:58:30 +00:00
|
|
|
|
For release build: /MD <20><> /MT, and
|
|
|
|
|
For debug build: /MDd <20><> /MTd
|
2003-07-10 21:43:50 +00:00
|
|
|
|
|
2004-09-21 19:58:30 +00:00
|
|
|
|
(Check library)
|
|
|
|
|
|
|
|
|
|
C:\openssl-0.9.7d>cd out32
|
|
|
|
|
C:\openssl-0.9.7d\out32>..\ms\test.bat
|
|
|
|
|
|
|
|
|
|
* If successfully build, you will see 'passed all tests'
|
|
|
|
|
messages
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2 Build BOINC Client
|
|
|
|
|
|
|
|
|
|
To discriminate the libraries, rename library files:
|
|
|
|
|
- libeay32_release.lib ssleay32_release.lib for release build,
|
|
|
|
|
- and libeay32_debug.lib ssleay32_debug.lib for debug build.
|
|
|
|
|
|
|
|
|
|
2-1) Put all ssl libraries in the new directory 'SSL_Use'
|
|
|
|
|
(or other directories)
|
|
|
|
|
|
|
|
|
|
Directory: \boinc\SSL_Use\
|
|
|
|
|
|
|
|
|
|
(Optional) To discriminate core client executables, create new
|
|
|
|
|
.Net project and directory for executables:
|
|
|
|
|
|
|
|
|
|
BoincClient CUI:
|
|
|
|
|
Project name - boinc_cli_SSL ,
|
|
|
|
|
executables -
|
|
|
|
|
\boinc-2.19\SSL_Use\Build\Debug\boinc_cli_SSL.exe
|
|
|
|
|
\boinc-2.19\SSL_Use\Build\Release\boinc_cli_SSL.exe
|
|
|
|
|
|
|
|
|
|
BoincClient GUI
|
|
|
|
|
Project name - boinc_gui_SSL ,
|
|
|
|
|
executables -
|
|
|
|
|
\boinc-2.19\SSL_Use\Build\Debug\boinc_gui_SSL.exe
|
|
|
|
|
\boinc-2.19\SSL_Use\Build\Release\boinc_gui_SSL.exe
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2-2) Change project configuration for boinc_gui_SSL and boinc_cli_SSL
|
|
|
|
|
|
|
|
|
|
[boinc_xxx_SSL project]-[properties]-[Linker]-[Input]
|
|
|
|
|
-[Additional Dependencies]
|
|
|
|
|
|
|
|
|
|
For release build:
|
|
|
|
|
(add) libeay32_release.lib ssleay32_release.lib
|
|
|
|
|
For debug build:
|
|
|
|
|
(add) libeay32_debug.lib ssleay32_debug.lib
|
|
|
|
|
|
|
|
|
|
[boinc_xxx_SSL project]-[properties]-[C/C++]-[General]
|
|
|
|
|
-[Additional Include Directories]
|
|
|
|
|
|
|
|
|
|
For release build:
|
|
|
|
|
(add) ../openssl-0.9.7d/inc32/
|
|
|
|
|
For debug build:
|
|
|
|
|
(add) ../openssl-0.9.7d/inc32/
|
|
|
|
|
|
|
|
|
|
2-3) Build projects
|