Kim De Mey
b4c1391be9
Discv5 ip limits for routing table ( #308 )
...
* Add ip limits to routing table and routing table buckets
* Fix order of ip limit check and duplicate check for replacement
* Fix ip limit for node with updated ip in ENR
* Fix bug where address wouldn't update on ENR update
and update some comments
* Reuse some add/remove code in routing table
* Fix seen bug on ENR update in routing table
* Rework addNode to make sure to do address check always
and adjust some logs.
* More documentation on the ip limits in routing table [skip ci]
2020-11-26 18:20:15 +01:00
Kim De Mey
b88fef203b
Add info log line in case of no external IP ( #313 )
2020-11-26 18:19:13 +01:00
kdeme
18430ef127
Add empty talkreq command to dcli
2020-11-13 12:45:39 +01:00
kdeme
44637cdd8e
Remove support for discovery v5.0
2020-11-13 12:33:07 +01:00
Kim De Mey
71d6dbd1b4
Discv5 small adjustments ( #307 )
...
* Use checkedEnumAssign in discv5.1
* Some renaming according to discv5 spec nomenclature
2020-10-29 22:04:37 +01:00
Kim De Mey
3626755529
Improve discovery v5.1 logging ( #306 )
2020-10-23 16:41:44 +02:00
Kim De Mey
6bdf1b4b0f
Simplify UseDiscv51 compile flag ( #305 )
2020-10-19 21:04:53 +02:00
kdeme
cf586c363f
Random message size and message size checks
2020-10-16 21:20:47 +03:00
kdeme
9b971a0e14
Improve error logging messages
...
As we don't need to differentate between errors with an enum
anymore thanks to refactor.
2020-10-16 21:20:47 +03:00
kdeme
c28cba3589
Limit request id to maximum 8 bytes
2020-10-16 21:20:47 +03:00
kdeme
301067c869
Fix RequestId encoding/decoding and improved tests
...
- RequestId to variable rlp byte array
- Do encoding and decoding steps in the message tests
- Do sign and verify in the nonce sign test
2020-10-16 21:20:47 +03:00
kdeme
76c10c9b79
Minimum size of random message fix for interop
2020-10-16 21:20:47 +03:00
kdeme
17ef0b25e0
Update to support the latest discv5.1 specification
2020-10-16 21:20:47 +03:00
kdeme
820a73f96f
Store session secrets only on succesful decodeHandshakePacket
2020-10-16 21:20:47 +03:00
kdeme
a10ee4cc42
Fix topicquery value
2020-10-16 21:20:47 +03:00
kdeme
44b30ef0cb
Add all message types and a basic implementation of talkreq/talkresp
2020-10-16 21:20:47 +03:00
kdeme
ce2cd2323c
Support findnode with multiple distances in discv5.1
2020-10-16 21:20:47 +03:00
kdeme
8042d72711
Add discovery v5.1 implementation
2020-10-16 21:20:47 +03:00
Clyybber
13089cad4c
Fix compilation for 1.4
...
Since proc params are now turned into syms during sem
we need to "refresh" them for use in another context
2020-10-16 20:06:59 +03:00
Zahary Karadjov
de2d43a7e7
Remove some unused code from NBC by making it RLPx-specific
2020-10-05 17:28:58 +03:00
Kim De Mey
6b17531d48
Improvements on dropping of challenges and handling of too large distance ( #296 )
...
- drop handshake challenge on invalid handshake
- send empty nodes reponse when distance is > 256
- misc
2020-09-30 09:43:51 +02:00
Kim De Mey
c9caafb2a4
Replace memory db with lrucache for temporary storage of sessions ( #292 )
2020-09-10 14:49:48 +02:00
Zahary Karadjov
73c1bb817c
Adapt to latest snappy; Avoid decompression bombs
2020-08-19 14:14:59 +03:00
kdeme
f0638eb3f1
Add rlp_decode fuzz test + some corpus generate code
2020-07-20 17:09:15 +02:00
kdeme
4e4836a0fe
Add discv5 fuzzing test targets
2020-07-20 14:17:44 +02:00
kdeme
ec260dcfe4
Add & update tests
2020-07-17 22:48:14 +02:00
kdeme
1eae8f93f9
Fix empty ENR list in auth-response properly + potentially request new ENR on revalidation
2020-07-17 16:18:50 +02:00
kdeme
84fd39a8f8
Update enrs in buckets and replacement caches and fix empty ENR list in AuthResponse
2020-07-17 11:14:08 +02:00
kdeme
c7ac9f54b3
Refactor the findNode code + add tests
2020-07-15 15:27:22 +02:00
kdeme
33f72e77bc
Add duplicate and distance checks in Nodes message
2020-07-15 11:15:50 +02:00
Kim De Mey
7febbec673
Use brHmacDrbgGenerate for all random operations in discovery ( #272 )
2020-07-13 14:34:53 +02:00
Kim De Mey
f3de959261
Discv5 readme ( #278 )
...
* Add discovery v5 readme + test_discv5 task
* Move hkdf tests to test file and add to nimble task
2020-07-12 23:53:27 +02:00
Kim De Mey
0888667ac0
Comments and cleanup ( #276 )
...
* Fix dcli + add more comments
* Fix pong enr sequence number + varia cleanup
* Send randomData in case no handshake was done yet. Fix #277
2020-07-12 17:25:18 +02:00
Kim De Mey
28a8d52308
Fix enr deserialization crash + more tests + fuzz test ( #274 )
...
* Fix enr deserialization crash + more tests + fuzz test
* CI: Install depsOnly
2020-07-11 01:28:53 +02:00
Eugene Kabanov
e64efc5dbb
Fix LSWAP problem. ( #275 )
2020-07-10 23:30:34 +02:00
Kim De Mey
7f77ba2308
Fix formatFloat issue ( #273 )
2020-07-10 14:17:06 +02:00
kdeme
eeb958e834
Add comments [skip ci]
2020-07-08 14:56:56 +02:00
kdeme
4f3df3c9b2
Change update back to use var parameter of Record
2020-07-08 14:28:54 +02:00
kdeme
d3db83fa0a
Extra test on newProtocol
2020-07-08 13:16:07 +02:00
kdeme
95a09fdf7f
Get rid of some duplicate code
2020-07-08 12:14:00 +02:00
kdeme
0fb21e72d7
Add updateEnr and allow for table constructor usage in newProtocol
2020-07-08 11:45:58 +02:00
kdeme
72420d7f17
Allow for passing in previous enr at discovery protocol creation
2020-07-07 23:39:32 +02:00
kdeme
57302fcf52
Allow for multiple enr fields to be inserted + enr update proc
2020-07-07 22:48:26 +02:00
kdeme
3bbe757fe3
Add record size check on init + add insertFieldPair call + tests
2020-07-07 17:19:15 +02:00
Jacek Sieka
484fbcab1b
use bearssl rng throughout ( #265 )
...
* use bearssl rng throughout
* seeder can fail
* imports and exports
* modules, sigh
* one more try
* move var
* even fewer thread vars
* remove out-of-date genrated files
2020-07-07 10:56:26 +02:00
kdeme
ffb7923370
Use different try/except construct to enforce returning on error
2020-06-30 21:58:23 +02:00
kdeme
23aa13b03d
Return on getMessage failure and do address conversion afterwards
2020-06-30 15:33:33 +02:00
Kim De Mey
9a467225fb
Add routing table metrics + tweaks + fixes ( #261 )
...
- routing table metrics + option in dcli
- only forward "seen" nodes on a findNode request
- setJustSeen & replace on ping AND findnode
- self lookup only at start
- revalidate 10x more
- use bitsPerHop (b) of 5
- small fix in resolve
- small fix in bucket split
2020-06-30 13:35:15 +02:00
Kim De Mey
0d591c6423
Merge pull request #247 from status-im/routing-table
...
Routing table work
2020-06-24 22:29:41 +02:00
narimiran
ebabd6f76d
more fixes
2020-06-24 22:20:50 +02:00