mhchia
6016ea731b
BaseMsgReadWriter
...
- Change `BaseMsgReadWriter` to encode/decode messages with abstract
method, which can be implemented by the subclasses. This allows us to
create subclasses `FixedSizeLenMsgReadWriter` and
`VarIntLenMsgReadWriter`.
2020-02-28 15:50:01 +08:00
mhchia
48a7c1a969
Security: ensure remote pubkeys are stored
2020-02-28 15:50:00 +08:00
mhchia
3c2e835725
Security: SecureSession
...
Make security sessions(secio, noise) share the same implementation
`BaseSession` to avoid duplicate implementation of buffered read.
2020-02-28 15:49:59 +08:00
mhchia
2df47a943c
Refactor
2020-02-28 15:49:59 +08:00
mhchia
fb53edbc04
Change async def write
...
To return `None` instead of `int. `Writer.write` *does* write all data
in all use case.
2020-02-08 10:24:37 +08:00
mhchia
f1dbd52d67
Merge branch 'master' into feature/trio
2020-02-06 10:39:54 +08:00
mhchia
5b4b65faa8
Change default value of read()
...
From `n = -1` to `n = None`, to comply with trio API
2020-01-26 23:03:38 +08:00
Jonathan de Jong
b1248ff315
enforced f-strings everywhere, %s on logging
...
extended _multiaddr_from_socket to support UDP and IPv6 automatically
changed TCPListener to use _ip4_or_6_from_multiaddr to get host, and not ip4 only
enforced `from error` everywhere with raises
added call braces to exceptions
2019-12-19 17:31:18 +01:00
Chih Cheng Liang
bcd7890124
Move test utilities to tools ( #356 )
...
* move test factories to libp2p/tools
* remove unused inits
* move pubsub test utils to tools
* cleanup test_interop
* fix typing libp2p/tools/utils
* add typing to pubsub utils
* fix factories typing
* fix typing for floodsub_integration_test_settings
* fix rest of the typing
* fix isort
2019-11-21 11:47:54 +08:00
Alex Stokes
2a7b43d853
bugfix: return empty bytes immediately if read length is 0
2019-11-07 20:57:55 -08:00
Piper Merriam
ded3792924
Merge pull request #331 from dmuhs/fix/docs-format
...
Add automatic docstring formatting
2019-10-28 09:39:52 -06:00
Dominik Muhs
bafdd8512d
Enforce pre-summary newline in docstrings
2019-10-24 20:10:45 +02:00
Dominik Muhs
09ab6c51ec
Fix formatting in secio transport
2019-10-24 19:52:03 +02:00
Dominik Muhs
021c92ea25
Rename secio initiator flags
2019-10-24 19:22:24 +02:00
Dominik Muhs
eef505f2d9
Add automatic docstring formatter and apply
2019-10-24 08:41:10 +02:00
NIC619
9889cb8ab1
Fix wrong import
2019-10-18 15:44:07 +08:00
NIC619
5063f0e2a6
Fix lint
2019-10-17 15:34:11 +08:00
NIC619
49bd460e37
Catch SedesException
in deserialize_public_key
2019-10-17 15:19:39 +08:00
NIC619
29bf623d2c
Raise DecryptionFailedException
...
when failed to decrypt read msg
2019-10-17 14:30:30 +08:00
NIC619
7fc958e7be
Add exception raised to docstring
2019-09-19 22:19:36 +08:00
NIC619
09bfa0ab09
Handle IOException
in create_secure_session
2019-09-16 19:15:40 +08:00
Alex Stokes
155bec0562
Fix initiator flag during secio upgrade
2019-09-09 16:40:14 -04:00
Alex Stokes
2025a5c7f1
Restore initiator
flag to BaseSession
type
2019-09-08 15:40:02 -04:00
Alex Stokes
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
Alex Stokes
1a359770dd
Use msgio
IO and proper buffering in secio
implementation
2019-09-04 10:12:43 -07:00
Alex Stokes
506093216c
Merge pull request #276 from ralexstokes/fix-secio-impl
...
Fix secio impl
2019-09-03 23:01:45 +02:00
Alex Stokes
30456f8018
Use a different ECC backend with a compatible serializer
...
This library has the ``SEC1`` encoder which is compatible
with the serialization of ECC keys/points used in the Go libp2p impl
2019-09-03 13:44:25 -07:00
Alex Stokes
bfd674e22c
Try all pairs of choices, not just a small subset via zip
2019-09-03 13:28:31 -07:00
Alex Stokes
f8bbaf60a1
Add more information to the peer mismatch exception
2019-09-03 13:28:18 -07:00
Alex Stokes
fa0acd9fc5
Apply PR feedback
2019-08-26 10:03:12 -07:00
Alex Stokes
a363ba97d1
Work in terms of the IRawConnection
abstraction
2019-08-24 22:52:09 +02:00
Alex Stokes
7c004a4e14
Mypy fixes
2019-08-24 22:38:26 +02:00
Alex Stokes
b8c0ef9ebb
Fix bugs in secio
implementation
2019-08-24 22:38:25 +02:00
Alex Stokes
228032805a
Some code cleanup
2019-08-24 22:38:25 +02:00
Alex Stokes
1adef05e94
Typing and linting fixes
2019-08-24 22:37:45 +02:00
Alex Stokes
0fa3331b8c
Add clearer indication of "self encryption"
2019-08-24 22:37:45 +02:00
Alex Stokes
8e913a3faa
Dispatch serialization of keys based on key type
...
- Add some tests to check high-level roundtrip
2019-08-24 22:37:45 +02:00
Alex Stokes
4d30b31c55
Finish first pass at secio
implementation
2019-08-24 22:37:45 +02:00
Alex Stokes
91e11f3ec0
[wip] more secio implementation
2019-08-24 22:37:44 +02:00
Alex Stokes
26165b0729
[wip] sketch of secio handshake
2019-08-24 22:37:44 +02:00