<table><tr><td style="">dvratil created this revision.<br />dvratil added a project: Frameworks.
</td><a style="text-decoration: none; padding: 4px 8px; margin: 0 8px 8px; float: right; color: #464C5C; font-weight: bold; border-radius: 3px; background-color: #F7F7F9; background-image: linear-gradient(to bottom,#fff,#f1f0f1); display: inline-block; border: 1px solid rgba(71,87,120,.2);" href="https://phabricator.kde.org/D6665" rel="noreferrer">View Revision</a></tr></table><br /><div><strong>REVISION SUMMARY</strong><div><p>OpenSSL 1.1.0 contains some source-incompatible changes, most notably making most of the<br />
structures opaque and introducing new getter/setter functions to modify the structures. This<br />
patch adds some of the newly introduced functions to the KOpenSSL class and modifies the code to call them. The implementation of those newly introduced methods contains both OpenSSL < 1.1 compatible code (direct structure member access) and calls to real functions resolved from OpenSSL>= 1.1 library. Which implementation is used is decided at compile time. Some of the existing methods were renamed to match the OpenSSL 1.1 naming and to avoid conflicts with backward-compatibility names provided by OpenSSL 1.1.</p>

<p>KSSLCertificate::toNetscape() returns empty result when built against OpenSSL 1.1 since I wasn't able to find a proper equivalent in OpenSSL 1.1 API (and there does not seem to be any).</p></div></div><br /><div><strong>TEST PLAN</strong><div><p>The code compiles under both OpenSSL 1.1 and OpenSSL 1.0.x. I did not test the actual functionality.</p></div></div><br /><div><strong>REPOSITORY</strong><div><div>R239 KDELibs4Support</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D6665" rel="noreferrer">https://phabricator.kde.org/D6665</a></div></div><br /><div><strong>AFFECTED FILES</strong><div><div>src/kssl/kopenssl.cpp<br />
src/kssl/kopenssl.h<br />
src/kssl/kssl.cpp<br />
src/kssl/ksslcallback.c<br />
src/kssl/ksslcertchain.cpp<br />
src/kssl/ksslcertificate.cpp</div></div></div><br /><div><strong>To: </strong>dvratil, Frameworks, dfaure<br /><strong>Cc: </strong>Frameworks<br /></div>