Janus
f219af81be
asyncio: try CA signed certificate first, previous behaviour totally broken
2018-02-21 11:32:49 +01:00
Janus
6ed9348d4b
lightning: enable usage through daemon
2018-02-01 16:57:52 +01:00
Janus
3e2881bcfc
asyncio: add locks for more robust network handling
2018-02-01 10:54:30 +01:00
Janus
37f1e3bd95
asyncio: more robost network connection handling, shorter timeouts
2018-02-01 10:54:30 +01:00
Janus
2d1ccfcc69
asyncio: support switching servers
2018-02-01 10:53:44 +01:00
Janus
683205a3fa
asyncio: warn if sending takes too long, only output errors if not shutting down
2018-02-01 10:53:44 +01:00
Janus
dcb0a24e6f
asyncio: more graceful shutdown
2018-02-01 10:53:44 +01:00
Janus
200a085778
asyncio: do not pin CA certificates, poll for cert differently
2018-02-01 10:53:44 +01:00
Janus
cfbc4422da
asyncio: fix off-by-one in ssl_in_socks, style fixes
2018-02-01 10:53:44 +01:00
Janus
88f906bc2a
asyncio: avoid StreamReader.readuntil
2018-02-01 10:53:44 +01:00
Janus
e170f4c7d3
use asyncio in network layer
2018-02-01 10:53:44 +01:00
fr3aker
b7d587c6ac
fix parsing of ipv6 addresses in interface
2017-11-20 20:17:58 +01:00
Justin Turner Arthur
9a0aa9b478
Remove Python 2 support imports.
2017-11-13 02:26:48 -06:00
SomberNight
07e9415c2d
interface ssl: besides TLS 1.1, also allow later versions
2017-11-10 21:39:20 +01:00
ThomasV
1cbc794229
interface: catch py3 exceptions
2017-10-25 17:43:30 +02:00
ThomasV
216e9403be
cleanup six (no python2 support)
2017-09-04 14:43:31 +02:00
ThomasV
4df5997940
catch wrap_socket timeouts
2017-08-26 08:28:25 +02:00
ThomasV
1a6e41cec8
python3 updates
2017-08-26 08:28:24 +02:00
fr3aker
8a15581d8e
fix imports
2017-08-26 08:28:24 +02:00
Dmitry Sorokin
d304ccdf17
py3 in qtgui
2017-08-26 08:27:47 +02:00
Dmitry Sorokin
5be78950ca
py3
2017-08-26 08:27:47 +02:00
ThomasV
7daa8ebfdd
interface: close wire is response is not dict
2017-02-01 13:59:07 +01:00
ThomasV
29e2570d3d
prevent busy looping
2017-01-09 16:36:05 +01:00
ThomasV
d61ccd4275
throttle send_requests
2016-11-09 13:23:10 +01:00
ThomasV
5661aabaa4
revert to daemon for interface code
2016-06-11 16:11:36 +02:00
ThomasV
5f3b6af2e0
interface: do not use daemon threads
2016-06-04 12:58:49 +02:00
ThomasV
d3a9af9e79
catch exception in interface.close
2016-03-10 15:38:24 +01:00
ThomasV
a0b861cd8f
fix bug in interface.get_responses
2016-03-05 12:37:11 +01:00
ThomasV
305843999e
Relicensing
2016-02-24 10:20:30 +01:00
ThomasV
fe9ec6de06
reformatting
2016-01-26 13:51:47 +01:00
ThomasV
614f3df4b8
Revert "Use ssl.PROTOCOL_TLSv1 on client side to avoid SSLv23"
...
This reverts commit 4731418af9 .
2015-10-27 10:44:36 +01:00
Kefkius
f329143733
Fix typo in Connection docstring
...
Fix a small typo in Connection docstring.
2015-10-06 16:03:24 -04:00
Neil Booth
6f1367fea6
Unify message IDs between network and interfaces
...
Previously network.py had its own idea of request IDs,
and each interface had its own which was sent on the wire.
The interface would jump through hoops to translate one
to the other.
This unifies them so that a message ID is passed when
queueing a request, in addition to the method and params.
network.py is now solely responsible for message ID management.
Apart from being simpler and clearer, this also should be faster
as there is much less data structure manipulation and rebuilding
happening.
2015-09-09 21:00:25 +09:00
Neil Booth
93b99ebded
Handy new class PrintError
...
Saves adding "def print_error" to endless classes.
2015-09-06 21:40:00 +09:00
Neil Booth
cdcd4d7215
Fix 'tuple' object has no attribute 'copy'
...
Occurred when switching interfaces and there were unanswered
requests that need resending. This bug isn't new; it's been
there since at least 3rd June.
2015-09-02 11:56:53 +09:00
Neil Booth
748662dede
Add a debugging traceback.
2015-08-31 14:38:19 +09:00
Neil Booth
49a48d52ac
Use select.
2015-08-22 14:03:08 +02:00
ThomasV
85d9b8aa8d
fix: dePem cert before parsing
2015-08-07 11:58:59 +02:00
ThomasV
ca3c320ef4
simplify x509 constructor
2015-08-07 11:39:30 +02:00
ThomasV
476d198be9
fix missing occurences of X509.parse
2015-08-04 18:31:08 +02:00
ThomasV
380bccacf0
request_queue.put should never block, because maxsize is not set
2015-07-31 20:11:12 +02:00
Eagle[TM]
4731418af9
Use ssl.PROTOCOL_TLSv1 on client side to avoid SSLv23
2015-07-30 20:40:05 +02:00
Roman Zeyde
5fbd7553ed
interface: fix check_host_name() pattern matching
...
The existing pattern matching code:
val.find('*.') == 0 and name.find(val[1:]) + len(val[1:]) == len(name)
will return True in the following case:
val = '*.host.com'
name = 'blah.org'
since string.find() will return -1, len(val[1:]) == 9 and len(name) == 8.
2015-07-26 18:11:30 +03:00
neocogent
8792301846
restrict to *. only, add DN support also
2015-07-17 11:17:43 +07:00
neocogent
3c563b85ad
adjust comment about wildcards
2015-07-17 04:22:39 +07:00
neocogent
59c231808f
add wildcard ssl support
2015-07-17 04:03:40 +07:00
Roman Zeyde
9c06bee8c7
interface: slow_parse() is not defined for X509
2015-07-01 16:54:11 +03:00
ThomasV
604d5d432c
sanitize server at the interface level (follow up to issue #1330 )
2015-07-01 09:09:00 +02:00
Neil Booth
2f2e468d0a
SocketPipe shouldn't close the socket.
...
This is a layering violation - the SocketPipe doesn't own
the socket and provides no other way to close the socket, leading
to unnecessary complexity like that in interface.py.
I looked at deamon.py and NetworkProxy - the two other users,
and they don't close the sockets explicitly, just let them be
garbage collected.
2015-06-04 16:30:59 +09:00
Neil Booth
ab2f80c3e0
Fix couple of minor socket issues
...
Set timeout and socket options on all simple sockets. At present
some code paths can miss it, such as when the SSL certificate is
CA-signed.
Add a missing check for failure.
2015-06-02 18:13:36 +09:00