introduce getPeerCertificates, fixes #13299 (#13650)

* 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.
This commit is contained in:
Christian Ulrich 2020-03-22 21:00:37 +01:00 • committed by GitHub
commit 0ac9c7bb64
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 82 additions and 22 deletions

View file

@ -119,6 +119,9 @@ echo f
- Added a new module, `std / compilesettings` for querying the compiler about
diverse configuration settings.
- `base64` adds URL-Safe Base64, implements RFC-4648 Section-7.
- Added `net.getPeerCertificates` and `asyncnet.getPeerCertificates` for
retrieving the verified certificate chain of the peer we are connected to
through an SSL-wrapped `Socket`/`AsyncSocket`.
## Library changes