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.4.tar.gz (77.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tornado_m2crypto-0.1.4-py3-none-any.whl (36.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: tornado_m2crypto-0.1.4.tar.gz
  • Upload date:
  • Size: 77.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for tornado_m2crypto-0.1.4.tar.gz
Algorithm Hash digest
SHA256 36e871c5c49d1d07c5f6111af37d633d9cc96e01bcb72783f90fc46eba4ede07
MD5 7c5e859a0db13268507187bdcb2868be
BLAKE2b-256 67b83124ddecefd3e340b6f5ccb76bc524474d8b3642057fe87cf6703db7d2dc

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for tornado_m2crypto-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 fc234dde406aadd14e54c12b480ed027d498ab1421a888058ef077044ee861dc
MD5 7e9ad810b4c1e07dd9d6a36051775719
BLAKE2b-256 11387df660fee9597a8299390e5a40030824c0dd1643353c3ab2ef4ddc77af42

See more details on using hashes here.

Supported by

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