Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   INDY10 rev.5447 (12.02.2018) Bug in IdSSLOpenSSLHeaders - function EVP_OpenUpdate() (https://www.delphipraxis.net/195280-indy10-rev-5447-12-02-2018-bug-idsslopensslheaders-function-evp_openupdate.html)

querter 16. Feb 2018 10:37


INDY10 rev.5447 (12.02.2018) Bug in IdSSLOpenSSLHeaders - function EVP_OpenUpdate()
 
Huhu ...

kann mir jemand helfen ...

im aktuellen INDY10 Rev.5447 vom 12.02.2018 hat sich ein kleiner Bug eingeschlichen ...

IdSSLOpenSSLHeaders.pas
Delphi-Quellcode:
  [Fehler] IdSSLOpenSSLHeaders.pas(26017): Bei der vorherigen Deklaration von EVP_OpenUpdate wurde die Direktive 'overload' nicht angegeben
  [Fehler] IdSSLOpenSSLHeaders.pas(26020): Inkompatible Typen: 'Integer' und 'PIdC_INT'
  [Fehler] IdSSLOpenSSLHeaders.pas(18644): Ungenügende Forward- oder External-Deklaration: 'EVP_OpenUpdate'
  [Fataler Fehler] Verwendete Unit 'IdSSLOpenSSLHeaders.pas' kann nicht compiliert werden
vorherige alte Version ...
Delphi-Quellcode:
interface
function EVP_OpenUpdate(a:PEVP_CIPHER_CTX; b : PIdAnsiChar; c : TIdC_INT; d: PIdAnsiChar; e : TIdC_INT) : TIdC_INT; {$EXTERNALSYM EVP_SealUpdate}

implementation
function EVP_OpenUpdate(a:PEVP_CIPHER_CTX; b : PIdAnsiChar; c : TIdC_INT; d: PIdAnsiChar; e : TIdC_INT) : TIdC_INT; {$IFDEF USE_INLINE} inline; {$ENDIF}
begin
   Result := EVP_DecryptUpdate(a,b,c,d,e)
end;
Neue Version Rev. 5447
Delphi-Quellcode:
interface
function EVP_OpenUpdate(a:PEVP_CIPHER_CTX; b : PIdAnsiChar; c : PIdC_INT; d: PIdAnsiChar; e : TIdC_INT) : TIdC_INT; {$EXTERNALSYM EVP_SealUpdate}

implementation
function EVP_OpenUpdate(a:PEVP_CIPHER_CTX; b : PIdAnsiChar; var c : TIdC_INT; d: PIdAnsiChar; e : TIdC_INT) : TIdC_INT; {$IFDEF USE_INLINE} inline; {$ENDIF}
begin
  Result := EVP_DecryptUpdate(a,b,c,d,e);
end;
Veränderungen bei Variable C sind zuerkennen ...

ist daher folgende Änderung "korrekt"?

Ich kann leider die daraus entstehenden "Auswirkungen" nicht ganz abschätzen ;-)

Im Interface habe ich vor der Variable c: PIdC_INT ein var eingefügt;

und entsprechend in der Implementation den Type TIdC_INT in PIdC_INT gändert, sowie ein @ im EVP_DecryptUpdate(a,b,@c,d,e) angepasst ...

Delphi-Quellcode:
interface
function EVP_OpenUpdate(a:PEVP_CIPHER_CTX; b : PIdAnsiChar; var c : PIdC_INT; d: PIdAnsiChar; e : TIdC_INT) : TIdC_INT; {$EXTERNALSYM EVP_SealUpdate}

implementation
function EVP_OpenUpdate(a:PEVP_CIPHER_CTX; b : PIdAnsiChar; var c : PIdC_INT; d: PIdAnsiChar; e : TIdC_INT) : TIdC_INT; {$IFDEF USE_INLINE} inline; {$ENDIF}
begin
  Result := EVP_DecryptUpdate(a,b,@c,d,e);
end;
"für mich" sieht das nun so OK aus ;-)

Ich habe leider keinen Zugriff zu irgendeinem Bug-Report-Forum ... entweder erhalte ich bei den ganzen angegeben "Foren" ein Error404 oder ich habe keinen Account ...

Hat hier jemand Zugang zum INDY-Team und könnte freundlicher Weise ein Bug-Report anlegen?

Danke ...

Herzliche Grüße
querter

tueddy 16. Feb 2018 15:59

AW: INDY10 rev.5447 (12.02.2018) Bug in IdSSLOpenSSLHeaders - function EVP_OpenUpdate
 
https://github.com/IndySockets/Indy/issues/193

mjustin 16. Feb 2018 20:48

AW: INDY10 rev.5447 (12.02.2018) Bug in IdSSLOpenSSLHeaders - function EVP_OpenUpdate
 
Fixed in SVN rev 5448 durch Remy Lebeau

querter 16. Feb 2018 22:29

AW: INDY10 rev.5447 (12.02.2018) Bug in IdSSLOpenSSLHeaders - function EVP_OpenUpdate
 
Huhu...

Zitat:

Zitat von mjustin (Beitrag 1394048)
Heute, 21:48 by mjustin
Fixed in SVN rev 5448 durch Remy Lebeau

Revision: 5448
Date: Freitag, 16. Februar 2018 21:27:57

Diff 21 Minuten ... mein Respekt ;-)

@tueddy
@mjustin
Ich danke euch beiden für eure superschnelle Rückmeldungen ...

Rev. 5448 ist installiert ... und "tut" wieder mit D7 gewohnt OOTB ... sehr schön ;-)

Danke.

Herzliche Grüße
querter


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:25 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz