Aldo Cortesi
f30df13384
Make sni_handler an argument to BaseHandler.convert_to_ssl
2013-02-25 21:11:09 +13:00
Aldo Cortesi
97e11a219f
Housekeeping and cleanup, some minor argument name changes.
2013-02-24 15:36:15 +13:00
Aldo Cortesi
c6f9a2d74d
More accurate description of an HTTP read error, make pyflakes happy.
2013-02-24 11:08:43 +13:00
Aldo Cortesi
7d18535665
100% test coverage
2013-01-27 19:21:18 +13:00
Aldo Cortesi
7433dfceae
Bump unit tests, fix two serious wee buglets discovered.
2013-01-26 21:29:45 +13:00
Aldo Cortesi
e5b125eec8
Introduce the mock module to improve unit tests.
...
There are a few socket corner-cases that are incredibly hard to reproduce in a
unit test suite, so we use mock to trigger the exceptions instead.
2013-01-26 21:19:35 +13:00
Aldo Cortesi
2eb6651e51
Extract TCP test utilities into netlib.test
2013-01-25 15:54:41 +13:00
Aldo Cortesi
7248a22d5e
Improve error signalling for client certificates.
2013-01-20 22:36:54 +13:00
Aldo Cortesi
00d20abdd4
Beef up client certificate handling substantially.
2013-01-20 22:13:38 +13:00
Aldo Cortesi
1499529e62
Fix client cert typo.
2013-01-18 17:07:35 +13:00
Rouli
04048b4c73
renaming the timestamp in preparation of other timestamps that will be added later, adding tests
2013-01-16 22:30:19 +02:00
Israel Nir
10457e876a
adding read timestamp to enable better resolution of when certain reads were performed (timestamp is updated when the first byte is available on the network)
2013-01-10 15:51:37 +02:00
Aldo Cortesi
6517d9e717
More info on disconnect exception.
2012-10-14 09:03:23 +13:00
Aldo Cortesi
77869634e2
Limit reads to block length.
2012-10-09 16:25:15 +13:00
Aldo Cortesi
15679e010d
Add a settimeout method to tcp.BaseHandler.
2012-10-01 11:30:02 +13:00
Aldo Cortesi
3a21e28bf1
Split FileLike into Writer and Reader, and add logging functionality.
2012-09-24 11:10:21 +12:00
Aldo Cortesi
8a6cca530c
Don't create fresh FileLike objects when converting to SSL
2012-09-24 10:47:41 +12:00
Aldo Cortesi
eafa5566c2
Handle disconnects on flush.
2012-07-30 11:30:31 +12:00
Aldo Cortesi
91752990d5
Handle HTTP responses that have a body but no content-length or transfer encoding
...
We check if the server sent a connection:close header, and read till the socket
closes.
Closes #2
2012-07-24 11:41:18 +12:00
Aldo Cortesi
eb88cea3c7
Catch an amazingly subtle SSL connection corruption bug.
...
Closing a set of pseudo-file descriptors in the wrong order caused junk data to
be written to the SSL stream. An apparent bug in OpenSSL then lets this corrupt
the _next_ SSL connection.
2012-07-23 23:20:32 +12:00
Aldo Cortesi
619f3c6edc
Handle unexpected SSL connection termination in readline.
2012-07-21 20:51:05 +12:00
Aldo Cortesi
b2c491fe39
Handle socket disconnects on reads.
2012-07-21 17:50:21 +12:00
Aldo Cortesi
2387d2e8ed
Timeout for TCP clients.
2012-07-21 16:10:54 +12:00
Aldo Cortesi
ba53d2e4ca
Set ssl_established right after the connection object is changed.
2012-07-20 15:15:07 +12:00
Aldo Cortesi
63d789109a
close() methods for clients and servers.
2012-07-20 14:43:51 +12:00
Aldo Cortesi
4fdc2179e2
Don't write empty values.
2012-07-10 16:34:39 +12:00
Aldo Cortesi
721e2c8277
Somewhat nicer handling of errors after thread termination.
2012-07-10 16:22:45 +12:00
Aldo Cortesi
ba7437abcb
Add an exception to indicate remote disconnects.
2012-07-08 23:50:38 +12:00
Aldo Cortesi
20cc1b6aa4
Refactor TCP test suite.
2012-07-05 10:57:20 +12:00
Aldo Cortesi
96af5c16a0
Expose SSL options, use TLSv1 by default for client connections.
2012-07-04 21:30:07 +12:00
Aldo Cortesi
67669a2a57
Allow control of buffer size for TCPClient, improve error messages.
2012-06-30 10:52:28 +12:00
Aldo Cortesi
3f9aad53ab
Return a certutils.SSLCert object from get_remote_cert.
2012-06-28 10:59:03 +12:00
Aldo Cortesi
bae86480d4
Merge branch 'master' of github.com:cortesi/netlib
2012-06-28 09:57:33 +12:00
Aldo Cortesi
92c7d38bd3
Handle obscure termination scenario, where interpreter exits before thread termination.
2012-06-28 09:56:58 +12:00
Aldo Cortesi
a1491a6ae0
Add a get_remote_cert method to tcp client.
2012-06-28 08:15:55 +12:00
Aldo Cortesi
97071c0952
Merge branch 'master' of ssh.github.com:cortesi/netlib
2012-06-27 16:24:34 +12:00
Aldo Cortesi
5d4c7829bf
Minor refactoring.
2012-06-27 16:24:22 +12:00
Aldo Cortesi
d0fd8385e6
Fix termiantion error in file read.
2012-06-27 12:11:55 +12:00
Aldo Cortesi
abe335e57d
Add a flag to track SSL connection establishment.
2012-06-26 23:52:35 +12:00
Aldo Cortesi
658c9c0446
Hunt down a tricky WSGI socket hang.
2012-06-26 14:49:23 +12:00
Aldo Cortesi
ccf2603ddc
Add SNI.
2012-06-26 09:50:42 +12:00
Aldo Cortesi
ea457fac2e
Perform handshake immediately on SSL conversion.
...
Otherwise the handshake happens at first write, which can balls up if either
side hangs immediately.
2012-06-25 16:16:01 +12:00
Aldo Cortesi
353efec7ce
Improve TCPClient interface.
...
- Don't pass SSL parameters on instantiation.
- Add a convert_to_ssl method analogous to that in TCPServer.
2012-06-25 14:42:15 +12:00
Aldo Cortesi
47f862ae27
Add a finished flag to BaseHandler, and catch an extra OpenSSL exception.
2012-06-25 11:34:10 +12:00
Aldo Cortesi
f3237503a7
Don't connect during __init__ methods for either client or server.
...
This means we now need to do these things explicitly at the caller.
2012-06-25 11:23:04 +12:00
Aldo Cortesi
8f0754b9c4
SSL tests, plus some self-signed test certificates.
2012-06-25 11:00:39 +12:00
Aldo Cortesi
b706200796
Drop default poll interval to 0.1s.
2012-06-20 11:01:40 +12:00
Aldo Cortesi
084be7684d
Close socket on shutdown.
2012-06-20 10:51:02 +12:00
Aldo Cortesi
b558997fd9
Initial checkin.
2012-06-19 09:42:32 +12:00