Skip to main content

Extension for running tornado with M2Crypto instead of the standard python SSL module

Project description

tornado_m2crypto

This extension is meant to run tornado with M2Crypto instead of the standard python SSL

Dependencies

Of course, you need M2Crypto You need a patched version of Tornado: git+https://github.com/DIRACGrid/tornado.git@iostreamConfigurable

How to use

The tornado_m2crypto/tests directory contains several examples. Basically, just take any normal https server with tornado you want, and add the following at the beginning

# Patching
# needed because some direct calls to ssl_wrap_socket in TCPServer
from tornado_m2crypto.m2netutil import m2_wrap_socket
import tornado.netutil
tornado.netutil.ssl_wrap_socket = m2_wrap_socket


# Dynamically configurable
import tornado.iostream
tornado.iostream.SSLIOStream.configure('tornado_m2crypto.m2iostream.M2IOStream')


import tornado.httputil
tornado.httputil.HTTPServerRequest.configure('tornado_m2crypto.m2httputil.M2HTTPServerRequest')

How to test

There are several types of tests.

Unit test

Almost a copy paste of the SSLIOStream tests from tornado:

tox -r

HTTPS test

A simple HTTPS server

tox -r -e m2io_https

You can then talk to you using (only requires requests package)

python test_client.py

DIRAC test

An HTTPS server converting the certificate to "DIRAC certificates"

tox -r -e m2io_dirac

You can talk to it the same way as the normal HTTPS test, and you can give it a proxy

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tornado_m2crypto-0.1.2.tar.gz (77.6 kB view details)

Uploaded Source

Built Distribution

tornado_m2crypto-0.1.2-py3-none-any.whl (36.4 kB view details)

Uploaded Python 3

File details

Details for the file tornado_m2crypto-0.1.2.tar.gz.

File metadata

  • Download URL: tornado_m2crypto-0.1.2.tar.gz
  • Upload date:
  • Size: 77.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.6.1 pkginfo/1.7.0 requests/2.25.0 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.9.5

File hashes

Hashes for tornado_m2crypto-0.1.2.tar.gz
Algorithm Hash digest
SHA256 f60b1fa913df69a5d520b1e0328de44d44631e01b9cf7d303b1127dc7f8a8e1b
MD5 bbeeb5a6ffb4caecde43853dee729a79
BLAKE2b-256 a03f2b699b509000fa3a531dbd3df3f3ebddd50cfb08f60b4f3854819800cd2c

See more details on using hashes here.

File details

Details for the file tornado_m2crypto-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: tornado_m2crypto-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 36.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.6.1 pkginfo/1.7.0 requests/2.25.0 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.9.5

File hashes

Hashes for tornado_m2crypto-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 562b11f70f53dd197f2fca3b6e2b6dbe35edb7288706e53da5bef7cc82e281d4
MD5 b447efca0b3335ab7e6a8fb7b49af44d
BLAKE2b-256 ea8868ac5ae3f8f552dbc20a2e90e6d722ebc6065144ef9c65032b6a5b309d5d

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page