Tuesday, 04 April 2023
  3 Replies
  1K Visits
  Subscribe
Compiler: C++ Builder 10.2 Tokyo
Issue: After installing sgcIndy for my compiler I can not use .*bpl files. If I want to use IndyIPServer250.blp I see error:
can not find entry point for procedure @Idcustomhttpserver@TIdCustomHTTPServer@$bctr$qqrp25System@Classes@TComponent in library IndyIPServer250.bpl

OpenSSL version 1.1.x is supported only to September 2023. Do you plan to release free sgcIndy for later versions? Does OpenSSL current version supports ed448 private/public keys?

Anyway thank you kindly for serving Delphi community with this library.

General note for the community and Developer: watch out for writing serious long-standing server code using C++ Builder. Throwing & catching Delphi exceptions in C++ leaks memory even in Alexandria.
1 year ago
·
#1515
Hello,

The IndyIPServer250 package most probably is compiled using the default Indy version that comes with CBuilder, in order to use with sgcIndy, this package should be recompiled with the new version.

sgcIndy supports openSSL 1.1.1 and 3.0.0, so futures releases will be supported too. I've not implemented nothing about ed448.

Kind Regards,
Sergio
1 year ago
·
#1592
Hello,

Reinstallation of sgcIndy solved mentioned issue.

according to:
https://www.openssl.org/docs/man3.1/man3/SSL_CTX_set_verify.html

there is a new flag concerning verification:
SSL_VERIFY_POST_HANDSHAKE

Please add it to TIdSSLVerifyMode enumeration in file Protocols\IdSSLOpelSSL.pas, and update TranslateInternalVerifyToSSL function

Proposed solution based on standard Indy code (i do not have sgcIndy source code):

TIdSSLVerifyMode = (sslvrfPeer, sslvrfFailIfNoPeerCert, sslvrfClientOnce, sslvrfVerifyPostHandshake);

function TranslateInternalVerifyToSSL(Mode: TIdSSLVerifyModeSet): Integer;
{$IFDEF USE_INLINE} inline; {$ENDIF}
begin
Result := SSL_VERIFY_NONE;
if sslvrfPeer in Mode then begin
Result := Result or SSL_VERIFY_PEER;
end;
if sslvrfFailIfNoPeerCert in Mode then begin
Result:= Result or SSL_VERIFY_FAIL_IF_NO_PEER_CERT;
end;
if sslvrfClientOnce in Mode then begin
Result:= Result or SSL_VERIFY_CLIENT_ONCE;
end;
if sslvrfVerifyPostHandshake in Mode then begin
Result:= Result or SSL_VERIFY_POST_HANDSHAKE;
end;
end;

Kind Regards
1 year ago
·
#1593
Hello,

I've updated the sgcIndy library with this new verify flag, will be available on the next release. Thanks for the feedback.

Kind Regards,
Sergio
  • Page :
  • 1
There are no replies made for this post yet.
Submit Your Response
Upload files or images for this discussion by clicking on the upload button below.
Supported: gif,jpg,png,jpeg,zip,rar,pdf
· Insert · Remove
  Upload Files (Maximum 10MB)