Erick Tryzelaar acdeba2fe4 [desktop] Upgrade PyOpenSSL to 0.13.1 10 years ago
..
README acdeba2fe4 [desktop] Upgrade PyOpenSSL to 0.13.1 10 years ago
another.invalid.crt acdeba2fe4 [desktop] Upgrade PyOpenSSL to 0.13.1 10 years ago
another.invalid.key acdeba2fe4 [desktop] Upgrade PyOpenSSL to 0.13.1 10 years ago
client.py acdeba2fe4 [desktop] Upgrade PyOpenSSL to 0.13.1 10 years ago
example.invalid.crt acdeba2fe4 [desktop] Upgrade PyOpenSSL to 0.13.1 10 years ago
example.invalid.key acdeba2fe4 [desktop] Upgrade PyOpenSSL to 0.13.1 10 years ago
server.py acdeba2fe4 [desktop] Upgrade PyOpenSSL to 0.13.1 10 years ago

README

This directory contains client and server examples for the "Server Name
Indication" (SNI) feature.

Run server.py with no arguments. It will accept one client connection and
then exit. It has two certificates it can use, one for "example.invalid"
and another for "another.invalid". If a client indicates one of these names
to it, it will use the corresponding certificate for that connection (if a
client doesn't indicate a name or indicates another name, it won't try to
use any certificate).

Run client.py with one argument, the server name to indicate. For example:

$ python client.py example.invalid
Connecting... connected ('127.0.0.1', 8443)
Server subject is
$

Depending on what hostname is supplied, the server will select a different
certificate to use and the client output will be different.