Zahary Karadjov
cfdb26db40
[discv5] Advertise the LibP2P TCP port properly
2020-02-18 01:07:23 +02:00
Zahary Karadjov
cca931d0b5
Reduce the use of the general Exception type and improve the exception tarcking in protocol.receive
2020-02-18 00:47:13 +02:00
kdeme
79dfe88ec8
Add Packet encodings tests
2020-02-17 22:38:56 +02:00
kdeme
5daaf73d2e
Clean up logging and some exception handling
2020-02-17 22:38:56 +02:00
kdeme
bb6a3c2ce1
Add basic node discovery test
2020-02-17 22:38:56 +02:00
kdeme
c679b9d436
Fix priority check of topic-interest versus bloom filter
2020-02-14 11:03:47 +02:00
kdeme
1fcac8b30d
Adjust version check (disabled) and don't pass unsupported RateLimits
2020-02-13 18:40:25 +02:00
Zahary Karadjov
31a4e8f959
Fix one more usage of the old-style IP-as-number handling in ENR
2020-02-12 15:36:39 +02:00
Zahary Karadjov
7b18d6e642
Oops, copying and pasting code is evil
2020-02-12 11:58:14 +02:00
Zahary Karadjov
9908e84935
Use the new enr.Record constructor
2020-02-12 11:58:14 +02:00
Zahary Karadjov
a1a6862c7c
More spec compliant ENR
...
* Don't use signed integers in RLP
* Don't store IP addresses as var-sized ints (use fixed-sized blobs instead)
* Allow constructing ENR from ENode.Address
2020-02-12 11:58:14 +02:00
Kim De Mey
b89874f6cc
Merge pull request #162 from status-im/waku-alist
...
Add StatusOptions to Waku Status packet
2020-02-06 20:42:31 +01:00
kdeme
419bc4730d
More sensible timeout values for the Whisper/Waku handshake
2020-02-06 19:19:54 +01:00
Zahary Karadjov
7e836a2c96
Fix a logical typo
2020-02-06 16:32:00 +01:00
Zahary Karadjov
d70bb85392
Review all exceptions and classify them as Defects and Errors
2020-02-06 16:32:00 +01:00
Zahary Karadjov
81e0ae12b0
Allow starting the discovery v5 bootstrap process without ENR records
2020-02-06 16:32:00 +01:00
kdeme
18799f1491
Add StatusOptions alist and remove WakuMode
2020-02-04 20:25:50 +01:00
kdeme
3ee5651b7c
Rework the metrics and add metrics for dropped envelopes due to full queue
2020-01-23 17:58:59 +02:00
kdeme
84015d0d1d
Set of just the msg hash is enough, fixes #156
2020-01-23 17:58:59 +02:00
kdeme
85a2b24920
Lower verbosity of logging in processQueue
2020-01-14 19:02:34 +01:00
kdeme
ab287d234a
Fix ordering of Waku/Whisper queue and increase queue capacity
2020-01-14 18:17:37 +01:00
kdeme
5e476dd7d2
Make counter metrics public
2020-01-14 15:36:21 +01:00
kdeme
cb2bc388f1
rename newFilter to initFilter for correctness
2020-01-14 15:33:21 +01:00
Yuriy Glukhov
3527d47cb5
Added packet encoding tests
2020-01-08 17:22:43 +02:00
Yuriy Glukhov
129710d3e4
Liveness checks
2020-01-08 17:22:43 +02:00
Yuriy Glukhov
5795054dbf
Per @kdeme's comments. Limit ENR size, fix rlp len check
2020-01-08 17:22:43 +02:00
Yuriy Glukhov
9772fbe470
Use addresses instead of stubs as db keys
2020-01-08 17:22:43 +02:00
Zahary Karadjov
988d743c9a
Introduce enr.TypedRecord that can replace enr.Record in the future
2020-01-08 17:22:43 +02:00
Zahary Karadjov
39857d57f0
Fix build issues manifesting in our controlled build environment
2020-01-08 17:22:43 +02:00
Zahary Karadjov
54bb1adac9
Export some private APIs needed in nim-beacon-node
2020-01-08 17:22:43 +02:00
Yuriy Glukhov
eda6c2906c
Discv5 WIP
2020-01-08 17:22:43 +02:00
Zahary Karadjov
edd674662a
Handle missing keys in enr.Record.get()
2020-01-08 17:22:43 +02:00
Yuriy Glukhov
992aeecd29
ENR parsing and serialization
2020-01-08 17:22:43 +02:00
kdeme
f3357602e4
Allow light node to send the regular way #131
2019-12-20 11:56:12 +01:00
kdeme
4dde3af2d5
p2pRequestComplete parameters are not a separate list
2019-12-19 23:23:06 +01:00
kdeme
48c9adbb6a
Changes to be more according to Waku spec
2019-12-19 22:48:51 +01:00
kdeme
ac30d7f589
Add envelope valid and dropped metrics for Waku/Whisper
2019-12-18 11:32:05 +02:00
kdeme
a514db1427
Fix PoW to be specifically uint64 as it is a float64 value that is being passed
2019-12-17 17:07:34 +01:00
kdeme
f940162b6b
Implement Waku mode PoC
2019-12-12 23:23:26 +01:00
kdeme
b2656cc3a9
Fix review comments, or not really, just add more TODOs
2019-12-12 17:35:30 +02:00
kdeme
f0582a084c
Quick implementation for multiple mail requests by using cursor
2019-12-12 17:35:30 +02:00
kdeme
9bd042c265
First go on Waku mail client addition
2019-12-12 17:35:30 +02:00
kdeme
59ba63f74c
Fix double whisper types export by moving to separate file
2019-12-10 12:18:52 +01:00
Zahary Karadjov
5bd7baaf9c
Fix regression in RLPx
2019-12-09 23:14:11 +02:00
Zahary Karadjov
3f721e7ef6
[P2P DSL] Add a separate genUserHandlerCall helper
2019-12-09 16:18:22 +02:00
Jacek Sieka
4c6878343c
tighten a few imports
2019-12-09 14:37:21 +02:00
kdeme
9165ff8549
Merge pull request #137 from status-im/no-zero-send
...
Do not send empty messages packets at interval
2019-12-09 03:58:12 -08:00
kdeme
0229547c41
More explicit Exceptions + fix re-raising
2019-12-04 12:34:37 +01:00
kdeme
2dcccf19b2
Do not send empty messages packets at interval
2019-12-03 16:50:05 +01:00
kdeme
4976bd9fb9
Replace getCurrentException and getCurrentExceptionMsg
2019-12-02 23:35:34 +02:00
Zahary Karadjov
a54fdc8073
Cosmetic renames to match the protocol naming conventions
2019-11-25 19:55:41 +02:00
kdeme
bc2b76f09a
cleaner solution for sharing the queue
2019-11-21 19:35:27 +02:00
kdeme
a8a55f16dc
Implement quick Waku - Whisper bridge by sharing the queue + adjust test
2019-11-21 19:35:27 +02:00
kdeme
8d45b22033
Remove duplicated code in waku_protocol by importing whisper_types
2019-11-21 19:35:27 +02:00
Oskar Thoren
b4638a5867
wkk -> waku rlpx based on discussion
2019-11-21 19:35:27 +02:00
Oskar Thoren
4be5382a15
Waku version 0 (after fix-119)
2019-11-21 19:35:27 +02:00
Oskar Thoren
c841906593
Waku Fix crash due to zero version
2019-11-21 19:35:27 +02:00
Oskar Thoren
5281e46634
Waku: rename capability to wkk
...
According to `doc/p2p.md` capability should be three letters. I can't see this
in https://github.com/ethereum/devp2p/blob/master/rlpx.md#capability-messaging
though, but better safe than sorry.
This also dismabiguates and stays somewhat consistent in vocabulary:
Whisper -> Waku
whisper -> waku
shh -> wkk
2019-11-21 19:35:27 +02:00
Oskar Thoren
243d2d8b27
waku: whisper-> waku; version 0
2019-11-21 19:35:27 +02:00
Oskar Thoren
2c49d4adb8
waku/0 init
2019-11-21 19:35:27 +02:00
kdeme
9c19f1e5b1
First go at splitting up Whisper protocol layer and message structures
2019-11-19 11:03:49 +00:00
zah
7a39a50c27
Allow devp2p sub-protocols to use version 0; Fix #119 ( #121 )
2019-11-19 08:16:35 +01:00
kdeme
bcc3ab3955
Add Whisper staging nodes and Status bootnodes
2019-11-05 11:49:31 +01:00
Zahary Karadjov
aa1f7f2c06
Fix a typo
2019-10-23 13:36:22 +03:00
Zahary Karadjov
52b5ca9c9c
Make the 'single record inlining' behavior optional
2019-10-23 13:01:53 +03:00
Zahary Karadjov
517adbbbca
Small fixes needed for the latest ETH networking spec
2019-10-23 12:10:19 +03:00
Zahary Karadjov
14e99e0711
Changes related to the new ETH interop spec
...
* RPC requests and responses with a single parameter are now inlined
2019-10-23 12:10:16 +03:00
kdeme
98be627bcc
Make msgId fixed int32
2019-10-23 09:35:33 +09:00
kdeme
77834d1df0
Beginning of bzz protocol + simple handshake tester
2019-10-17 21:59:32 +09:00
kdeme
02a6906c01
Remove the p2p disconnect handling from dispatchMessages
2019-10-14 12:01:01 +02:00
kdeme
9ee208876d
Fix possible AssertionError in ByteRange due to invalid access
2019-10-10 14:40:40 +02:00
kdeme
87f2a51a1b
Fix segfault + fix IndexError (causes also segfault in release)
2019-10-09 22:19:41 +02:00
kdeme
c64a370fe7
Whisper documentation updates
2019-10-03 17:08:39 +03:00
kdeme
5bc7612e2f
Add bloom size check and no longer raise on sendMsg failures
2019-10-03 16:38:14 +03:00
kdeme
9dccfe27f4
Use stew/endians2 for endianness conversion
2019-10-03 16:38:14 +03:00
Bruno Škvorc
f3aad8f925
Small clarification to protocol name length doc
...
As per conversation in PR
2019-08-20 21:33:16 +03:00
kdeme
8451ce6c3b
Add necessary re-exports, fixes #91
2019-08-20 13:59:34 +03:00
nolash
5dc8117a07
Allow longer rlpx protocol names (for compatability with swarm)
2019-08-19 20:33:38 +03:00
kdeme
9fb79d0d88
Refactor bootnodes and whispernodes
2019-08-16 08:50:58 +02:00
Zahary Karadjov
1fe3de6c39
Changes required for the latest ETH2 spec
2019-08-07 06:13:45 +03:00
kdeme
aef7522788
Disconnect on failed persistWorkItem + add comments
2019-08-01 17:28:41 +03:00
Ștefan Talpalaru
620573f63c
use new nim-metrics API
2019-07-16 14:06:46 +03:00
kdeme
14ae046354
Increase rlpx maxMsgSize *10
2019-07-11 17:19:19 +02:00
kdeme
da5a7a54ed
Merge pull request #79 from status-im/removecheck
...
Cleanup unneeded check in getBlockHeaders
2019-07-10 15:00:15 +02:00
kdeme
fb7743e9db
Prepare for allowing BlockNumber as int64
2019-07-10 14:27:11 +02:00
Ștefan Talpalaru
d445412297
use nim-metrics
2019-07-10 03:01:30 +02:00
kdeme
646a58dbc0
Cleanup unneeded check in getBlockHeaders
2019-07-09 17:06:20 +02:00
kdeme
1797b76351
Add check for reverse getBlockHeaders
2019-07-08 18:03:55 +03:00
kdeme
3088cb462e
Support skip and reverse in the GetBlockHeaders request + reactivate getBlockBodies
2019-07-08 18:03:55 +03:00
Jacek Sieka
75c7c62651
std_shims -> stew
2019-07-07 11:56:01 +02:00
kdeme
3d2436d3df
Provide empty RLP list data for devp2p ping/pong messages, for Parity compatibility
2019-07-04 09:43:29 +02:00
kdeme
325d120274
Add capability-id and context-id rlp list in header-data for Parity compatibility
2019-07-04 09:43:29 +02:00
kdeme
934a247c23
Add/update some debugging info
2019-07-04 09:43:29 +02:00
kdeme
13a32811aa
Fix leading zeroes bug + add tests from geth and parity
2019-06-27 12:03:55 +02:00
Ștefan Talpalaru
799b1a7bb0
initial statistics collection setup
2019-06-26 14:49:38 +02:00
Zahary Karadjov
07484bfc88
Refactorings enabling more code reuse in the libp2p back-ends
2019-06-24 05:12:23 +03:00
Zahary Karadjov
8acdbedfbd
Fix a simple merge issue
2019-06-24 05:12:23 +03:00
Zahary Karadjov
11fce4122e
Pre and post-serialization steps for send procs
2019-06-24 05:12:23 +03:00
Zahary Karadjov
9191bc7851
Bugfix: Fix an empty name field in the ETH/LES protocol info
2019-06-24 05:12:23 +03:00
Zahary Karadjov
bac87ff6d2
Restore the compilation of Nimbus by restoring the support for p2pProtocol decorators
2019-06-24 05:12:23 +03:00