Flash Media Server and its components use OpenSSL libraries for various functions internally. Until now, all the previous Flash Media Server releases have statically linked to the OpenSSL libraries. This static linking made it impossible for users to manually upgrade the OpenSSL libraries.
With the latest Flash Media Server (versions 3.5.6 or later and 4.0.2 or later), you can compile the OpenSSL libraries and apply them to Flash Media Server. Flash Media Server 3.5.6 and 4.0.2 added OpenSSL version1.0.0c as a dynamic or shared library. This TechNote explains how to compile the OpenSSL libraries and integrate them in Flash Media Server.
Requirements
- Flash Media Server version - 3.5.6.x, 4.0.2.x or later
- OpenSSL version is 1.0.0c or later
Windows
- For Flash Media Server 3.5.6 (or later): Microsoft® Visual Studio® 2005 Service Pack 1
- For Flash Media Server 4.0.2 (or later): Microsoft® Visual Studio® 2008 Service Pack 1
Linux
- For Flash Media Server 3.5.6 (or higher) for Linux platform: GNU C Compiler (GCC) 3.4.3
- For Flash Media Server 4.0.2 (or higher) for Linux platform: GNU C Compiler (GCC) 4.1.2
Process
Download OpenSSL source from http://www.openssl.org/source/. Extract the source (.tar.gz) to a suitable location.
Windows
Instructions for 32-bit configuration
-
Open the Microsoft Visual Studio®Command Prompt that is part of Visual Studio (VS) install and go to the extracted OpenSSL root folder.
Note: Use VS2005 command prompt if building OpenSSL for Flash Media Server 3.5.6 (or later) and VS 2008 if building for Flash Media Server 4.0.2 (or later). When using VS 2005, make sure that you have fresh OS with VC80 CRT version no greater than 8.0.50727.762. A 64-bit OS is recommended for compiling 64-bit libraries with the 64-bit VS.
-
Download the latest Netwide Assembler (NASM) build from http://www.nasm.us/pub/nasm/releasebuilds/?C=M;O=D. Install NASM and add the folder containing NASM binary to System PATH environment variable by executing the file nasmpath.bat located in the NASM root directory.
-
Run the following commands for configuring the build. Also see the README.txt in OpenSSL root folder.
perl Configure VC-WIN32 --prefix=e:\ssl\OpenSSL\dir ms\do_nasm.bat
nmake -f ms\ntdll.mak
nmake -f ms\ntdll.mak test
Lưu ý:If not present on the machine install Perl, nmake, and the Microsoft SDK.
-
OpenSSL libraries are copied to the following folder: \out32dll
-
Copy OpenSSL libraries (ssleay32.dll and libeay32.dll) and their associated manifest files to the Flash Media Server installation directory.
Instructions for 64-bit configuration
-
When compiling OpenSSL for 64-bit platform on a 32-bit machine (or the other way around), make sure to use Open Visual Studio 20?? x64 Cross Tools Command Prompt which is part of Visual Studio install.
Note: As of OpenSSL 1.0.0c, NASM support is already present for 64 bit. -
Go to OpenSSL folder. Run the following commands to build OpenSSL libraries. See the README.txt in the OpenSSL root folder, if necessary.
Note: If not present on the machine install Perl, nmake and the Microsoft SDK.Configure VC-WIN64A--prefix=e:\ssl\OpenSSL\dir ms\do_win64a.bat
nmake -f ms\ntdll.mak 
cd out32dll
..\ms\test.bat
-
OpenSSL libraries are copied to the following folder: \out32dll.
-
Copy OpenSSL libraries, ssleay32.dll and libeay32.dl,l and along with their associated manifest files to the Flash Media Server installation directory.
Linux
-
Open command prompt.
Lưu ý:Make sure that the default compiler is GCC 3.4.3 when compiling OpenSSL for Flash Media Server 3.5.6 (or later). Use the GCC 4.1.2 compiler when compiling OpenSSL for Flash Media Server 4.0.2 (or later).
-
Go to OpenSSL root folder and issue following commands:
Lưu ý:Make sure that /usr/local/ssl is clean, empty, and writable as the install copies all the files to this folderStep text
./config shared -fPIC
make
make test
make install
-
The OpenSSL binaries (and symbolic links) are installed to /usr/local/ssl. The shared library names are libcrypto.so.1.0.0 and libssl.so.1.0.0. Copy them to the Flash Media Server installation directory.