Commit Graph

420 Commits

Author SHA1 Message Date
e7304538da Add test for Swarm.close_peer 2019-09-19 16:31:12 +08:00
6923f257f6 Remove print 2019-09-19 16:07:53 +08:00
5f064dd329 Refactor: get rid of single huge _handle_incoming 2019-09-19 15:55:27 +08:00
4a689c7d57 Fix error when reset
If `Mplex` is cleanup first, `MplexStream.reset` possibly fails because
`Mplex.streams` is set to `None` in `cleanup`.
2019-09-19 15:55:27 +08:00
b51c2939a8 Handle exceptions inside read_message
And remove the need of checking `None` for every read messages.
2019-09-19 15:55:26 +08:00
f62f07bb9f Handle IncompleteRead in handle_incoming 2019-09-19 15:55:26 +08:00
2d8e02b7eb Add detection for disconnections in mplex 2019-09-19 15:55:26 +08:00
393b51a744 isort 2019-09-19 15:53:40 +08:00
5653b3f604 Add "closed" and "shutting_down" events 2019-09-19 15:53:39 +08:00
7cf0495f37 Remove print 2019-09-19 15:38:38 +08:00
a7bc9fc358 Asynchronously handling the accepted stream. 2019-09-19 13:59:51 +08:00
6cb033fd1f Refactor multiselect out of Swarm to BasicHost 2019-09-19 13:59:50 +08:00
0bd213bbb7 Refactor mplex and start to add close detection 2019-09-19 13:56:05 +08:00
f368f5e93b Apply PR feedback 2019-09-15 15:09:58 +08:00
501513b747 Update IMultiselectClient 2019-09-14 22:24:53 +08:00
9bad7a61f0 Add some loggings to pubsub 2019-09-14 21:54:26 +08:00
786a03544c Add some loggings to swarm and cosmetic updates 2019-09-14 21:47:49 +08:00
65a48d5c51 Remove unused select_protocol_or_fail 2019-09-14 17:42:18 +08:00
8c8c206c33 flake8 2019-09-11 18:33:52 +08:00
451f993058 Fix isort 2019-09-11 18:05:41 +08:00
c1ffc0ab07 Fix transport.dial in swarm 2019-09-11 17:13:21 +08:00
cb1a25f94c Execute the todo to remove an unused argument 2019-09-10 21:01:03 -04:00
4bd32cc4bc Add logs during connection handshake 2019-09-10 19:02:29 -04:00
f128c746f0 Write data payload as hex to log 2019-09-10 16:17:40 -04:00
68e75707e4 Enhance logs 2019-09-10 16:04:18 -04:00
31fb4e0b69 Rewrite _wait_for_data, to handle task precisely
Make the futures first, and then we can compare them with the return
value from `asyncio.wait`.
2019-09-10 23:38:45 +08:00
df87f5adb9 Add tests against the daemon for close/reset 2019-09-10 18:01:16 +08:00
e5eb01d22b Fix stream read 2019-09-10 18:01:16 +08:00
df312f3e57 Fix linting 2019-09-10 18:01:15 +08:00
be2c0f122a Fix close behavior 2019-09-10 18:01:14 +08:00
b2146c5268 Don't crash on large messages 2019-09-09 17:13:26 -04:00
155bec0562 Fix initiator flag during secio upgrade 2019-09-09 16:40:14 -04:00
2025a5c7f1 Restore initiator flag to BaseSession type 2019-09-08 15:40:02 -04:00
50ae439d20 remove friendly IDs 2019-09-07 11:04:20 -04:00
6c1f77dc1a Fix: Change the event.close to event.set
And add missing parts.
2019-09-06 21:35:15 +08:00
1cd969a2d5 Fix: Add typing in functions 2019-09-06 20:02:35 +08:00
649a230776 Fix MplexStream.read 2019-09-06 17:26:40 +08:00
95926b7376 Temp for mplex_stream 2019-09-06 01:08:42 +08:00
207fa75d8f Add reset and close 2019-09-05 23:44:22 +08:00
10415cb956 Use ReadWriteCloser for conns and streams 2019-09-05 23:24:17 +08:00
eac159c527 Restructure mplex and mplex_stream 2019-09-05 22:29:33 +08:00
96230758e4 Add events in MplexStream
And modify a little bit of `close` and `reset`
2019-09-05 18:18:39 +08:00
451ec2664a Address incorrect typing in pycryptodome dependency 2019-09-04 10:19:27 -07:00
a099b9c65d Clean up temporary hold over from previous PR 2019-09-04 10:15:30 -07:00
b214f88f75 Avoid using message-based IO in the plaintext protocol
Can reuse the machinery in `secio` but need to generalize the
"buffering" there
2019-09-04 10:12:43 -07:00
f86ba7283d Implement signing for RSA
- mainly for use in `secio` w/ RSA-based identities b/t peers
2019-09-04 10:12:43 -07:00
25f504ad35 Allow RSA public key type when deserializing keys 2019-09-04 10:12:43 -07:00
1a359770dd Use msgio IO and proper buffering in secio implementation 2019-09-04 10:12:43 -07:00
fc3e3a4be5 Changes to type hints to match new abstractions 2019-09-04 10:12:43 -07:00
6d97702da7 Merge pull request #277 from ralexstokes/add-io-abstractions
Introduces IO abstractions and classes for `msgio` IO
2019-09-04 19:11:50 +02:00