micropython/tests/extmod/tls_sslcontext_ciphers.py
Felix Dörre b802f0f8ab extmod/modtls: Move the native ssl module to tls.
The current `ssl` module has quite a few differences to the CPython
implementation.  This change moves the MicroPython variant to a new `tls`
module and provides a wrapper module for `ssl` (in micropython-lib).

Users who only rely on implemented comparible behavior can continue to use
`ssl`, while users that rely on non-compatible behavior should switch to
`tls`.  Then we can make the facade in `ssl` more strictly adhere to
CPython.

Signed-off-by: Felix Dörre <felix@dogcraft.de>
2024-02-07 12:58:52 +11:00

32 lines
607 B
Python

# Basic test of tls.SSLContext get_ciphers() and set_ciphers() methods.
try:
import tls
except ImportError:
print("SKIP")
raise SystemExit
ctx = tls.SSLContext(tls.PROTOCOL_TLS_CLIENT)
ciphers = ctx.get_ciphers()
for ci in ciphers:
# Only print those ciphers know to exist on all ports.
if ("TLS-ECDHE-ECDSA-WITH-AES" in ci or "TLS-RSA-WITH-AES" in ci) and "CBC" in ci:
print(ci)
ctx.set_ciphers(ciphers[:1])
# Test error cases.
try:
ctx.set_ciphers(ciphers[0])
except TypeError as e:
print(e)
try:
ctx.set_ciphers(["BAR"])
except OSError as e:
print(e)