forked from IndySockets/Indy
-
Notifications
You must be signed in to change notification settings - Fork 6
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Code Generation DEFINE_STACK_OF() macros, and typedef STACK_OF(), TIdOpenSSLOptionsBase fix for AssignTo and Equals #5
Open
WeberAndre
wants to merge
64
commits into
mezen:NewOpenSSL_PR
Choose a base branch
from
WeberAndre:NewOpenSSL_PR
base: NewOpenSSL_PR
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Hi @mezen, thanks for the great work. I like to contribute these changes and fixed to your code. |
Added new OpenSSL 1.1.1 header translation Added new OpenSSL IO Handler Fixed memory corruption If GetPAnsiChar own created UTF8String will be freed when the method will be leaved. In that case the string is no longer accessable for OpenSSL. No clue what to do with the USE_MARSHALLED_PTRS part, that has the same problem... Implemented more compiler macros in x509 Set default values for options Added virtual methods for context initialization for IndySockets#224 Fixed small translation error Fixed small errors found with FixInsight Added missing empty implementations Added Header to source files Removed own definition of size_t and time_t Added PPIdC_INT definition to fpc Updated OpenSSL Header translation and Source Generator Fixed quirk with circular references Added IdOpenSSLConsts for better x64 support Improved xml doc Added missing include Added some pem functions for read/write Added translation for objects.h and fixed some other translations Added missing includes of IdCompilerDefines.inc Some FPC compability Added PPPByte to FPC Implemented some compiler macros in crypto Some more OpenSSL translation Moved TIdOpenSSLPersistent to own unit Added new TIdC_TM Added new x509 wrapper and callback for verification Extracted TIdOpenSSLVersion to own unit Fixed problem with explicite TLS Renamed tls version properties Implemented better way for dynamic loading Implemented usage of dynamic loading
This prevents connection stealing. See https://forum.filezilla-project.org/viewtopic.php?p=137191#p137191 for more details
* replaced usage of reserved words, for example &in -> in_ * removed regions * replaced accidentally added dotted unit name in crypto Thanks to @JedrzejczykRobert
* removed nested consts * replaced some not existing functions * removed regions * replaced $Raise with Raise_ Thanks to @JedrzejczykRobert
Automated by ProjectMagican :)
%LINE% is a string, but we need an integer Thanks to @grahamegrieve
Obviously... Thanks to @grahamegrieve
rsa_st & dsa_st & dh_st & ec_key_st are already in IdOpenSSLHeaders_ossl_typ Thanks to @grahamegrieve
* Missing cdecl * Using PIdAnsiChar instead of PAnsiChar
With new_session_cb we tell OpenSSL that we are holding a reference to the session. We must then also release this reference. But since we get more than one session object we need to keep a list of them. And when cloning an IO Handler, the session reference must be increased. Thanks to @ralfjunker
The ssl object should be destroyed before its ssl context object. While destroying ssl context, OpenSSL calls remove_session_cb, but our FSessionList is already freed Thanks to @ralfjunker
…longer You need to set PassThrough to False Thanks to @rlebeau
Trusted certs are a special OpenSSL format
Used BIO_METHOD (wrong) instead of PBIO_METHOD (correct)
@WeberAndre could you please rebase your code? I already started reviewing, but Remy requested a rebase of my branch: IndySockets#299 (comment) |
Code Generation for C Macros to expand DEFINE_STACK_OF() to Delphi Wrappers
prepared some code for // DEFINE_STACK_OF expansion (moved some lines up/down) Changed some function prototypes to use the stack_of types.
ctx is a PEVP_CIPHER_CTX and not a PEVP_MD_CTX;
The Values of CipherSuites / UseServerCipherPreferences / AllowUnsafeLegacyRenegotiation / UseLegacyServerConnect are not compared or copied so the values set in code get never applied to the OpenSSL context
WeberAndre
force-pushed
the
NewOpenSSL_PR
branch
from
February 22, 2023 14:45
b554776
to
fe1ebac
Compare
@mezen: rebase done I hope I did it right. (GIT is still not my favorite tool) |
WeberAndre
changed the title
Code Generation DEFINE_STACK_OF() macros, and typedef STACK_OF()
Code Generation DEFINE_STACK_OF() macros, and typedef STACK_OF(), Fix for AssignTo and Equal
Mar 27, 2023
WeberAndre
changed the title
Code Generation DEFINE_STACK_OF() macros, and typedef STACK_OF(), Fix for AssignTo and Equal
Code Generation DEFINE_STACK_OF() macros, and typedef STACK_OF(), TIdOpenSSLOptionsBase fix for AssignTo and Equals
Mar 27, 2023
Open
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Code Generation for C Macros to expand DEFINE_STACK_OF() to Delphi Wrappers and some smaller bugfixes