mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-17 21:09:20 +02:00
* patch from mantis #19039 which adds dessetkey
git-svn-id: trunk@17634 -
This commit is contained in:
parent
f093210fa7
commit
d8b80d2c23
@ -604,6 +604,10 @@ const
|
|||||||
BIO_C_SET_EX_ARG = 153;
|
BIO_C_SET_EX_ARG = 153;
|
||||||
BIO_C_GET_EX_ARG = 154;
|
BIO_C_GET_EX_ARG = 154;
|
||||||
|
|
||||||
|
//DES modes
|
||||||
|
DES_ENCRYPT = 1;
|
||||||
|
DES_DECRYPT = 0;
|
||||||
|
|
||||||
var
|
var
|
||||||
SSLLibHandle: TLibHandle = 0;
|
SSLLibHandle: TLibHandle = 0;
|
||||||
SSLUtilHandle: TLibHandle = 0;
|
SSLUtilHandle: TLibHandle = 0;
|
||||||
@ -706,6 +710,7 @@ var
|
|||||||
|
|
||||||
// 3DES functions
|
// 3DES functions
|
||||||
procedure DESsetoddparity(Key: des_cblock);
|
procedure DESsetoddparity(Key: des_cblock);
|
||||||
|
function DESsetkey(key: des_cblock; schedule: des_key_schedule): cInt;
|
||||||
function DESsetkeychecked(key: des_cblock; schedule: des_key_schedule): cInt;
|
function DESsetkeychecked(key: des_cblock; schedule: des_key_schedule): cInt;
|
||||||
procedure DESecbencrypt(Input: des_cblock; output: des_cblock; ks: des_key_schedule; enc: cInt);
|
procedure DESecbencrypt(Input: des_cblock; output: des_cblock; ks: des_key_schedule; enc: cInt);
|
||||||
|
|
||||||
@ -942,6 +947,7 @@ type
|
|||||||
// 3DES functions
|
// 3DES functions
|
||||||
TDESsetoddparity = procedure(Key: des_cblock); cdecl;
|
TDESsetoddparity = procedure(Key: des_cblock); cdecl;
|
||||||
TDESsetkeychecked = function(key: des_cblock; schedule: des_key_schedule): cInt; cdecl;
|
TDESsetkeychecked = function(key: des_cblock; schedule: des_key_schedule): cInt; cdecl;
|
||||||
|
TDESsetkey = TDESsetkeychecked;
|
||||||
TDESecbencrypt = procedure(Input: des_cblock; output: des_cblock; ks: des_key_schedule; enc: cInt); cdecl;
|
TDESecbencrypt = procedure(Input: des_cblock; output: des_cblock; ks: des_key_schedule; enc: cInt); cdecl;
|
||||||
//thread lock functions
|
//thread lock functions
|
||||||
TCRYPTOnumlocks = function: cInt; cdecl;
|
TCRYPTOnumlocks = function: cInt; cdecl;
|
||||||
@ -1146,6 +1152,7 @@ var
|
|||||||
|
|
||||||
// 3DES functions
|
// 3DES functions
|
||||||
_DESsetoddparity: TDESsetoddparity = nil;
|
_DESsetoddparity: TDESsetoddparity = nil;
|
||||||
|
_DESsetkey : TDESsetkey = nil;
|
||||||
_DESsetkeychecked: TDESsetkeychecked = nil;
|
_DESsetkeychecked: TDESsetkeychecked = nil;
|
||||||
_DESecbencrypt: TDESecbencrypt = nil;
|
_DESecbencrypt: TDESecbencrypt = nil;
|
||||||
//thread lock functions
|
//thread lock functions
|
||||||
@ -1921,6 +1928,14 @@ begin
|
|||||||
_DESsetoddparity(Key);
|
_DESsetoddparity(Key);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
function DESsetkey(key: des_cblock; schedule: des_key_schedule): cInt;
|
||||||
|
begin
|
||||||
|
if InitSSLInterface and Assigned(_DESsetkey) then
|
||||||
|
Result := _DESsetkey(key, schedule)
|
||||||
|
else
|
||||||
|
Result := -1;
|
||||||
|
end;
|
||||||
|
|
||||||
function DESsetkeychecked(key: des_cblock; schedule: des_key_schedule): cInt;
|
function DESsetkeychecked(key: des_cblock; schedule: des_key_schedule): cInt;
|
||||||
begin
|
begin
|
||||||
if InitlibeaInterface and Assigned(_DESsetkeychecked) then
|
if InitlibeaInterface and Assigned(_DESsetkeychecked) then
|
||||||
@ -2690,6 +2705,7 @@ begin
|
|||||||
// 3DES functions
|
// 3DES functions
|
||||||
_DESsetoddparity := GetProcAddr(SSLUtilHandle, 'des_set_odd_parity', AVerboseLoading);
|
_DESsetoddparity := GetProcAddr(SSLUtilHandle, 'des_set_odd_parity', AVerboseLoading);
|
||||||
_DESsetkeychecked := GetProcAddr(SSLUtilHandle, 'des_set_key_checked', AVerboseLoading);
|
_DESsetkeychecked := GetProcAddr(SSLUtilHandle, 'des_set_key_checked', AVerboseLoading);
|
||||||
|
_DESsetkey := GetProcAddr(SSLUtilHandle, 'des_set_key', AVerboseLoading);
|
||||||
_DESecbencrypt := GetProcAddr(SSLUtilHandle, 'des_ecb_encrypt', AVerboseLoading);
|
_DESecbencrypt := GetProcAddr(SSLUtilHandle, 'des_ecb_encrypt', AVerboseLoading);
|
||||||
//
|
//
|
||||||
_CRYPTOnumlocks := GetProcAddr(SSLUtilHandle, 'CRYPTO_num_locks', AVerboseLoading);
|
_CRYPTOnumlocks := GetProcAddr(SSLUtilHandle, 'CRYPTO_num_locks', AVerboseLoading);
|
||||||
|
Loading…
Reference in New Issue
Block a user