summary refs log tree commit diff stats
path: root/lib/wrappers/openssl.nim
Commit message (Collapse)AuthorAgeFilesLines
* fixes ptr to cstring warnings[backport] (#20848)ringabout2022-11-161-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * fix =#13790 ptr char (+friends) should not implicitly convert to cstring * Apply suggestions from code review * first round; compiles on windows * nimPreviewSlimSystem * conversion is unsafe, cast needed * fixes more tests * fixes asyncnet * another try another error * last one * true * one more * why bugs didn't show at once * add `nimPreviewCstringConversion` switch * typo * fixes ptr to cstring warnings[backport] * add fixes Co-authored-by: xflywind <43030857+xflywind@users.noreply.github.com>
* fixes ssl static link regression (#20722)ringabout2022-11-011-1/+5
|
* fixes #20526; use `nimPreviewSlimSystem` for documentation build (#20714)ringabout2022-11-011-0/+2
| | | | | | | * fixes #20526; use `nimPreviewSlimSystem` for `koch docs` * fixes documentation errors * fixes remaning issues
* follow up #20668; fixes nightlies (#20701)ringabout2022-10-311-4/+5
|
* openssl 3 support no longer opt in + some 1.0 support (#20668)metagn2022-10-271-43/+85
| | | | | | | | | | | | | | | * Revert "Add OpenSSL 3 support (#19814)" This reverts commit 2dcfd732609a2cfa805e5a94cc105399a2f18632. * openssl 3 support no longer opt in + some 1.0 support * hopefully fix * maybe fix * final attempt * actual fix hopefully
* fixes #3748 (#20563)Andreas Rumpf2022-10-141-2/+5
| | | | | | | | | * fixes #3748 * fix the regression * don't use the new allocator for the SSL wrapper * fixes regression
* make more standard libraries work with `nimPreviewSlimSystem` (#20343)ringabout2022-09-271-0/+3
| | | | | | | | | | | | | | | | | | | | | | | * make more standard libraries work with `nimPreviewSlimSystem` * typo * part two * Delete specutils.nim * fixes more tests * more fixes * fixes tests * fixes three more tests * add formatfloat import * fix * last
* partial revert and redesign of #19814, changelog (#20341)metagn2022-09-141-5/+26
| | | | | | | | | | | | | | | * conservative partial revert of #19814 * fix * revert tssl * revert azure CI change * keep azure, revert version range * fully revert CI, add changelog * useOpenssl3 as separate define, .3 is a version
* SSL: Allow the same range of versions for OSX (#20324)Andreas Rumpf2022-09-101-5/+1
|
* Add OpenSSL 3 support (#19814)Federico Ceratto2022-08-231-80/+54
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * Minor refactor * Add OpenSSL 3 support Remove symbols noOpenSSLHacksq and openssl10 * Drop loading of older openssl versions * Add library path * Use only versioned libssl soname os OSX * Update .github/workflows/ci_packages.yml Co-authored-by: Hein Thant <official.heinthanth@gmail.com> * On Mac OS X CI, link OpenSSL in /usr/local/lib/ * Install OpenSSL on Mac OS X on azure pipeline * Remove DYLD_LIBRARY_PATH Co-authored-by: Hein Thant <official.heinthanth@gmail.com> Co-authored-by: Andreas Rumpf <rumpf_a@web.de> Co-authored-by: Hein Thant <official.heinthanth@gmail.com>
* Correctly import libcrypto functions using dynlib (#19881)Ardek Romak2022-06-131-35/+37
|
* feat: TLS-ALPN wrappers for OpenSSL (#19202)Iced Quinn2021-12-041-0/+14
| | | Co-authored-by: Iced Quinn <icedquinn@iceworks.cc>
* deprecate cuchar, don't redefine it (#18505)Andreas Rumpf2021-07-161-12/+12
|
* Fix #17755 (#17766)Dankr4d2021-04-181-2/+11
| | | Signed-off-by: Dankr4d <dude569@freenet.de>
* fix #17615(runnableExamples silently ignored if placed after some code) (#17619)flywind2021-04-021-2/+1
| | | Co-authored-by: Timothee Cour <timothee.cour2@gmail.com>
* Free the certificate after checking in `checkCertName` (#17558) [backport:1.2]Danil Yarantsev2021-03-291-0/+2
| | | | | | * Fix small leak in checkCertName * Size is not needed either * Free the certificate after checking
* use lowercase --define switches (#17283)flywind2021-03-071-1/+1
|
* add io.readChars overload (simpler, less error prone) (#16044)Timothee Cour2021-02-221-1/+1
| | | | | | | | | | * add simpler to use readChars overload * use new readChars overload * Update lib/wrappers/openssl.nim Co-authored-by: Andreas Rumpf <rumpf_a@web.de> Co-authored-by: flywind <xzsflywind@gmail.com>
* use single backtick (#17133)flywind2021-02-211-3/+3
|
* revive PR #16320 (CRLF fix); fix #16308; Update openssl.nim (#16648)Timothee Cour2021-01-121-20/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Update openssl.nim Fix issue # 16308 * Update openssl.nim These are also related to Issues [#16308](https://github.com/nim-lang/Nim/issues/16308) * Update openssl.nim * Add files via upload SSL PEM_read_RSAPUBKEY check * Delete topenssl_rsa_private_key.pem * Delete topenssl_rsa_public_key.pem * Delete topenssl.nim * Add files via upload * Update topenssl.nim This test makes me dizzy. Variables such as' PRSA 'must be declared in advance, otherwise they will run incorrectly. The argument uses a cString, and string also makes an error. * Update topenssl.nim ``` lhf@lhf-pc:/media/lhf/D$ cat -e ./topenssl.nim import std/wordwrap$ import openssl$ ``` * Update topenssl.nim * dos2unix tests/stdlib/topenssl.nim Co-authored-by: lihaifeng <lihaifeng@wxm.com>
* Add support to the latest LibreSSL version (#15715) [backport:1.2] ↵Danil Yarantsev2020-10-261-2/+2
| | | | [backport:1.4]
* Add SSL_CTX_set_session_id_context (#15233)IDF2020-09-041-0/+1
| | | | | | | | | * Added SSL_CTX_set_session_id_context() * Added basic nimdoc * Raise an error if sessionIdContext is longer than the maximum length * Update nimdocs
* add openssl missing procs (#15180)Bung2020-08-171-0/+5
|
* openssl: use explicit result for SSL_in_init (#14597)alaviss2020-06-081-2/+2
| | | | | | | Sometimes the analysis might get funky and decide that the if-expression below is not an if-expression. Details of how this can happen is largely unknown, but it's easy to prevent so we will just go forward with that. Fix #14591
* wrappers/openssl: defer loading SSL_CTX_set_ciphersuitesLeorize2020-06-061-1/+3
|
* net: also set TLSv1.3 cipher suitesLeorize2020-06-061-0/+5
|
* wrappers/openssl: mark casts as gcsafeLeorize2020-06-061-17/+13
| | | | Nim will pretend that these proc are not gcsafe if they are not marked.
* wrappers/openssl: enable SSL_CTX_set_ecdh_auto for LibreSSLLeorize2020-06-061-1/+1
| | | | | | This procedure is not no-op for older LibreSSL, and the ABI is kept for newer versions, so there's no harm in enabling it unconditionally for all LibreSSL versions.
* wrappers/openssl: the version number comes from the utility libraryLeorize2020-06-061-9/+20
| | | | | Previously we loaded the SSL library for this, but that's not where the symbol resides.
* net: don't call set_ecdh_auto for super old OpenSSLLeorize2020-06-061-5/+3
| | | | | And the fun thing is that currently we use a super old OpenSSL on Windows.
* wrappers/openssl: fix SSL_CTX_set_modeLeorize2020-06-061-1/+1
| | | | Follow up of 794042080b270d9da8d64bb4285ce83787bdec7e
* wrappers/openssl: getOpenSSLVersion is gcsafeLeorize2020-06-061-3/+4
| | | | Yet another weird {.gcsafe.} triggering when it shouldn't.
* net: enable automatic EC curve selection for OpenSSL 1.0.2Leorize2020-06-061-0/+16
| | | | | This setting is required for servers running OpenSSL < 1.1.0 to support EC-based secure ciphers that is now part of the default cipher list.
* wrappers/openssl: fix SSL_CTX_ctrl signatureLeorize2020-06-061-1/+1
|
* openssl: fix erroneous function signaturesLeorize2020-06-061-3/+3
| | | | Now matches the declaration in openssl/err.h
* asyncnet, net: call SSL_shutdown only when connection establishedLeorize2020-06-061-0/+28
| | | | | | This commit prevents "SSL_shutdown while in init" errors from happening. See https://github.com/openssl/openssl/issues/710#issuecomment-253897666
* Add procedures to read RSA keys from BIO format (#14223)PMunch2020-05-041-0/+4
|
* Add RSA key reading and encrypt/decrypt to openssl (#14137)PMunch2020-04-271-0/+23
| | | | This adds the procedures to read RSA keys and encrypt/decrypt messages with both public and private keys.
* Fixes issues with dynamic loading OpenSSL. Fixes #13903. (#13919) [backport]Dominik Picheta2020-04-081-19/+39
| | | | | | | | This fixes at least a couple of issues: * Procs loaded from the DLL being used even when the pointer is nil. * The actual issue (#13903) which appeared to cause stack corruption on Android 7.1.1 with OpenSSL 1.1.1f. The change that fixed this was the move to loading the procs in `sslSym`.
* Deprecate DCE:on (#13839)Juan Carlos2020-04-021-1/+0
|
* introduce getPeerCertificates, fixes #13299 (#13650)Christian Ulrich2020-03-221-22/+32
| | | | | | | | | | | | * make i2d_X509 and d2i_X509 always available i2d_X509 and d2i_X509 have been available in all versions of OpenSSL, so make them available even if nimDisableCertificateValidation is set. * introduce getPeerCertificates, fixes #13299 getPeerCertificates retrieves the verified certificate chain of the peer we are connected to through an SSL-wrapped Socket/AsyncSocket. This introduces the new type Certificate which stores a DER-encoded X509 certificate.
* SSL certificate verify GitHub action (#13697)Federico Ceratto2020-03-201-0/+71
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Implement SSL/TLS certificate checking #782 * SSL: Add nimDisableCertificateValidation Remove NIM_SSL_CERT_VALIDATION env var tests/untestable/thttpclient_ssl.nim ran successfully on Linux with libssl 1.1.1d * SSL: update integ test to skip flapping tests * Revert .travis.yml change * nimDisableCertificateValidation disable imports Prevent loading symbols that are not defined on older SSL libs * SSL: disable verification in net.nim ..when nimDisableCertificateValidation is set * Update changelog * Fix peername type * Add define check for windows * Disable test on windows * Add exprimental GitHub action CI for SSL * Test nimDisableCertificateValidation
* Expose more openSSL methods. (#13131)treeform2020-01-131-0/+43
|
* Remove some unused/disabled OpenSSL functions (#13106)treeform2020-01-111-135/+0
|
* introduce csize_t instead of fixing csize (#12497)Arne Döring2019-10-311-4/+4
|
* fix several typos in documentation and comments (#12553)Nindaleth2019-10-301-1/+1
|
* Revert "Fixes #12187 (#12321)" (#12447)Andreas Rumpf2019-10-181-2/+2
| | | This reverts commit 00c31e87660d9db813871f5aa23661bf6b9bbdcb.
* Fixes #12187 (#12321)Clyybber2019-10-081-2/+2
| | | | | | * Fixes #12187 * Point to fork of compactdict Since the original repo is now archived / read-only
* style improvements; fixes #11774Araq2019-07-191-1/+1
|
* [bugfix] openssl styleCheck fix: consistent var naming (#11750)Kaushal Modi2019-07-161-4/+4
|