mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-09 21:48:35 +02:00
* OS/2 support previously added to Synapse merged in
git-svn-id: trunk@27729 -
This commit is contained in:
parent
89e9fac562
commit
b101438eb7
@ -79,6 +79,9 @@ requested OpenSSL function just return errorcode.
|
||||
interface
|
||||
|
||||
uses
|
||||
{$IFDEF OS2}
|
||||
Sockets,
|
||||
{$ENDIF OS2}
|
||||
DynLibs, cTypes, SysUtils;
|
||||
|
||||
var
|
||||
@ -87,6 +90,15 @@ var
|
||||
DLLSSLName2: string = 'libssl32.dll';
|
||||
DLLUtilName: string = 'libeay32.dll';
|
||||
{$ELSE}
|
||||
{$IFDEF OS2}
|
||||
{$IFDEF OS2GCC}
|
||||
DLLSSLName: string = 'kssl.dll';
|
||||
DLLUtilName: string = 'kcrypto.dll';
|
||||
{$ELSE OS2GCC}
|
||||
DLLSSLName: string = 'ssl.dll';
|
||||
DLLUtilName: string = 'crypto.dll';
|
||||
{$ENDIF OS2GCC}
|
||||
{$ELSE OS2}
|
||||
DLLSSLName: string = 'libssl';
|
||||
DLLUtilName: string = 'libcrypto';
|
||||
|
||||
@ -97,7 +109,8 @@ var
|
||||
'.1.0.2', '.1.0.1','.1.0.0','.0.9.8',
|
||||
'.0.9.7', '.0.9.6', '.0.9.5', '.0.9.4',
|
||||
'.0.9.3', '.0.9.2', '.0.9.1');
|
||||
{$ENDIF}
|
||||
{$ENDIF OS2}
|
||||
{$ENDIF WINDOWS}
|
||||
|
||||
const
|
||||
// EVP.h Constants
|
||||
@ -115,12 +128,16 @@ type
|
||||
PSSL_CTX = SslPtr;
|
||||
PSSL = SslPtr;
|
||||
PSSL_METHOD = SslPtr;
|
||||
{ PX509 = SslPtr;}
|
||||
{ PX509_NAME = SslPtr;}
|
||||
PEVP_MD = SslPtr;
|
||||
PBIO_METHOD = SslPtr;
|
||||
PBIO = SslPtr;
|
||||
{ EVP_PKEY = SslPtr;}
|
||||
PRSA = SslPtr;
|
||||
PASN1_UTCTIME = SslPtr;
|
||||
PASN1_INTEGER = SSlPtr;
|
||||
|
||||
PRSA = pointer;
|
||||
PDH = pointer;
|
||||
PSTACK_OFX509 = pointer;
|
||||
|
||||
@ -229,7 +246,6 @@ type
|
||||
PPEVP_PKEY = ^PEVP_PKEY;
|
||||
|
||||
PPRSA = ^PRSA;
|
||||
PASN1_UTCTIME = SslPtr;
|
||||
PASN1_cInt = SslPtr;
|
||||
PPasswdCb = SslPtr;
|
||||
PFunction = procedure;
|
||||
@ -2875,6 +2891,7 @@ begin
|
||||
end;
|
||||
|
||||
{$IFNDEF WINDOWS}
|
||||
{$IFNDEF OS2}
|
||||
{ Try to load all library versions until you find or run out }
|
||||
function LoadLibHack(const Value: String): HModule;
|
||||
var
|
||||
@ -2893,15 +2910,20 @@ begin
|
||||
Break;
|
||||
end;
|
||||
end;
|
||||
{$ENDIF}
|
||||
{$ENDIF OS2}
|
||||
{$ENDIF WINDOWS}
|
||||
|
||||
function LoadLib(const Value: String): HModule;
|
||||
begin
|
||||
{$IFDEF WINDOWS}
|
||||
Result := LoadLibrary(Value);
|
||||
{$ELSE}
|
||||
{$ELSE WINDOWS}
|
||||
{$IFDEF OS2}
|
||||
Result := LoadLibrary(Value);
|
||||
{$ELSE OS2}
|
||||
Result := LoadLibHack(Value);
|
||||
{$ENDIF}
|
||||
{$ENDIF OS2}
|
||||
{$ENDIF WINDOWS}
|
||||
end;
|
||||
|
||||
function GetProcAddr(module: HModule; const ProcName: string): SslPtr;
|
||||
@ -3440,8 +3462,12 @@ begin
|
||||
_RandScreen;
|
||||
if assigned(_CRYPTOnumlocks) and assigned(_CRYPTOsetlockingcallback) then
|
||||
InitLocks;
|
||||
Result := True;
|
||||
SSLloaded := True;
|
||||
SSLloaded := True;
|
||||
{$IFDEF OS2}
|
||||
Result := InitEMXHandles;
|
||||
{$ELSE OS2}
|
||||
Result := True;
|
||||
{$ENDIF OS2}
|
||||
finally
|
||||
LeaveCriticalSection(SSLCS);
|
||||
end;
|
||||
|
Loading…
Reference in New Issue
Block a user