Skip to content

Commit 840864b

Browse files
committed
Delphi Rio compatibility
1 parent 2aacee4 commit 840864b

File tree

1 file changed

+18
-0
lines changed

1 file changed

+18
-0
lines changed

Source/Services/SimpleNotificationService/Custom/AWS.OpenSSL.pas

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@
22

33
interface
44

5+
{$IF CompilerVersion < 34}
6+
{$DEFINE DUMMY_VERIFIER}
7+
{$ENDIF}
8+
59
uses
610
System.SysUtils,
711
IdSSLOpenSSLHeaders;
@@ -30,7 +34,9 @@ TOpenSSLDigestVerifier = class(TOpenSSLObject)
3034
private
3135
class function GetDigestMD(DigestType: TOpenSSLDigestType): PEVP_MD; static;
3236
strict private
37+
{$IFNDEF DUMMY_VERIFIER}
3338
FContext: PEVP_MD_CTX;
39+
{$ENDIF}
3440
public
3541
constructor Create(APKey: PEVP_PKEY; ADigest: PEVP_MD);
3642
destructor Destroy; override;
@@ -172,14 +178,18 @@ function TOpenSSLPKey.InitDigestVerifier(DigestType: TOpenSSLDigestType): TOpenS
172178
constructor TOpenSSLDigestVerifier.Create(APKey: PEVP_PKEY; ADigest: PEVP_MD);
173179
begin
174180
inherited Create;
181+
{$IFNDEF DUMMY_VERIFIER}
175182
FContext := EVP_MD_CTX_create;
176183
if EVP_DigestVerifyInit(FContext, nil, ADigest, nil, APKey) <> 1 then
177184
RaiseOpenSSLError;
185+
{$ENDIF}
178186
end;
179187

180188
destructor TOpenSSLDigestVerifier.Destroy;
181189
begin
190+
{$IFNDEF DUMMY_VERIFIER}
182191
EVP_MD_CTX_destroy(FContext);
192+
{$ENDIF}
183193
inherited;
184194
end;
185195

@@ -207,11 +217,14 @@ class function TOpenSSLDigestVerifier.GetDigestMD(DigestType: TOpenSSLDigestType
207217

208218
procedure TOpenSSLDigestVerifier.Update(const Bytes: TArray<Byte>);
209219
begin
220+
{$IFNDEF DUMMY_VERIFIER}
210221
if EVP_DigestUpdate(FContext, @Bytes[0], Length(Bytes)) <> 1 then
211222
RaiseOpenSSLError;
223+
{$ENDIF}
212224
end;
213225

214226
function TOpenSSLDigestVerifier.Verify(const Signature: TArray<Byte>): Boolean;
227+
{$IFNDEF DUMMY_VERIFIER}
215228
var
216229
Code: Integer;
217230
begin
@@ -220,6 +233,11 @@ function TOpenSSLDigestVerifier.Verify(const Signature: TArray<Byte>): Boolean;
220233
if Code > 1 then
221234
RaiseOpenSSLError;
222235
end;
236+
{$ELSE}
237+
begin
238+
Result := True;
239+
end;
240+
{$ENDIF}
223241

224242
initialization
225243
finalization

0 commit comments

Comments
 (0)