130 Commits

Author SHA1 Message Date
Shane Bryldt
e52a85eb8d FS-9775: Added initialization of threadpool, and switched parsing and processing of a received datagram to dispatch through the threadpool. Also a bit more work on searches sneaking in here. 2017-01-25 14:59:36 -06:00
Anthony Minessale
2c5e40369f add mutex to windows emulated recursive Read locks 2017-01-25 14:59:36 -06:00
colm
fc578a67f1 FS-9775: Add ks_dhtrt_release_node api call 2017-01-25 14:59:35 -06:00
Shane Bryldt
fe36139965 FS-9775: Started mocking out structures for ks_dht_search, but merged route table updates and updated the tests for current pending issues 2017-01-25 14:59:35 -06:00
Anthony Minessale
ff57e94889 add enum rules 2017-01-25 14:59:35 -06:00
colm
b3bcc76db1 FS-9775: correct ks_dhtrt_closest_nodes query results 2017-01-25 14:59:35 -06:00
colm
5fa53dae50 FS-9775: Define for max nodes in a find_closestnodes query 2017-01-25 14:59:35 -06:00
colm
779592a9aa FS-9775: Updates for latest dht_bucket changes 2017-01-25 14:59:35 -06:00
colm
0842616add FS-9775: Update touch time on existing node in create_node. Rename enums 2017-01-25 14:59:35 -06:00
Shane Bryldt
b88437fcbe FS-9775: Some cleanup, some commenting, some fixes. 2017-01-25 14:59:35 -06:00
Shane Bryldt
9e9adb8e4b FS-9775: Incorporated route table to test find_node before adding deep searching, but routetable bug is currently returning same values for all closest nodes results 2017-01-25 14:59:35 -06:00
Shane Bryldt
e56c388707 FS-9775: Adjusted to proper destructor pattern, cleaned up unneccessary zeroing in allocators, and reduced preallocs to use memset 2017-01-25 14:59:35 -06:00
colm
fdd7e7ec1c FS-9775: findclosest_nodes support for local/remote and ip family 2017-01-25 14:59:35 -06:00
colm
579e32013e FS-9775: add tests for dht buckets 2017-01-25 14:59:35 -06:00
colm
86d295ded1 FS-9775: Indentify local nodes, allow query to distingush local v remote 2017-01-25 14:59:35 -06:00
Anthony Minessale
1642b36eae update whitespace changes 2017-01-25 14:59:35 -06:00
Anthony Minessale
101e261f6b missed a spot 2017-01-25 14:59:35 -06:00
Anthony Minessale
61157bb516 fix imaginary compiler error on psuedo-code 2017-01-25 14:59:35 -06:00
Anthony Minessale
4d7f864495 format cleanup 2017-01-25 14:59:34 -06:00
Shane Bryldt
dc76746bf2 FS-9775: Significant work towards supporting BEP44, "get" is nearly working committing to merge routetable updates 2017-01-25 14:59:34 -06:00
colm
aa47b4bec2 FS-9775: Match up datatypes, alloc node_t, remove ks_dht_bucket.h 2017-01-25 14:59:34 -06:00
Shane Bryldt
c8c2dc87f7 FS-9775: Fixed autorouting, must be checked before message generation as the message may include a nodeid that is specific to the endpoint used 2017-01-25 14:59:34 -06:00
Shane Bryldt
c22b252ca0 FS-9775: Adjusted ks_dht_nodeid_t back to a structure as you cannot cast raw data to a fixed array 2017-01-25 14:59:34 -06:00
Shane Bryldt
70fcffc48c FS-9775: Refactored some code to create ks_dht_setup_response for reusability 2017-01-25 14:59:34 -06:00
Shane Bryldt
9e5121eb00 FS-9775: Changed local nodeid to be per endpoint, and removed ks_dht_node_t in preparation for changes based on route table discussions 2017-01-25 14:59:34 -06:00
Shane Bryldt
88ee82a380 FS-9775: Removed building of old dht code, renamed new dht code from dht2 to dht 2017-01-25 14:59:34 -06:00
Shane Bryldt
253b808f1b FS-9775: Some refactoring for consistency, reduction of nodeid to simpler type, added preliminary type for node to track externally after discussions on route table responsibilities 2017-01-25 14:59:34 -06:00
Shane Bryldt
4f4656055c FS-9775: Resolved conflicts during merge 2017-01-25 14:59:34 -06:00
colm
0302eca52a FS-9775: Mark suspect and expired nodes. Add to makefile 2017-01-25 14:59:34 -06:00
Shane Bryldt
d034968774 FS-9775: Added preliminary support for processing find_nodes query, including calls to compact addresses and node info 2017-01-25 14:59:34 -06:00
Shane Bryldt
3e12cca293 FS-9775: Refactored sending of messages to utilize a more scalable and throttled queue for outgoing messages 2017-01-25 14:59:34 -06:00
colm
b51038f618 FS-9775: Match up data types with existing code 2017-01-25 14:59:34 -06:00
Shane Bryldt
7ac7a7e75b FS-9775: Added support for removing finished transactions via latent purging while expiring
Also added support to send error message responses and updated the test to confirm, errors still need to be updated to send an error responses
2017-01-25 14:59:34 -06:00
Shane Bryldt
f95ca83b06 FS-9775: Fixed some bugs, unit test now successfully sends, processes, responds, and receives and validates a ping, more on this soon 2017-01-25 14:59:34 -06:00
Shane Bryldt
e4176f5873 FS-9775: Initial work towards sending messages, refactored into less headers, test updated 2017-01-25 14:59:33 -06:00
Shane Bryldt
d9c1dba85f FS-9775: Removing a file that got added because of a typo on the shell 2017-01-25 14:59:33 -06:00
Shane Bryldt
61e1545e8f FS-9775: Replaced initialization of nodeid to use safer passing through raw fixed size type 2017-01-25 14:59:33 -06:00
Shane Bryldt
ed8e4dc610 FS-9775: Renamed registries, added query registry with ping callback, unit test updated 2017-01-25 14:59:33 -06:00
Shane Bryldt
e9fdd9c946 FS-9775: Encapsulated message details into ks_dht2_message_t 2017-01-25 14:59:33 -06:00
Shane Bryldt
6eed8d3f94 FS-9775: Added initial registry for 'y' keys, and some unit testing 2017-01-25 14:59:33 -06:00
Shane Bryldt
f9ed958ecc FS-9775: Added some preliminary message processing, and unit testing for it 2017-01-25 14:59:33 -06:00
Shane Bryldt
2b3b2ef93d FS-9775: Added initial unit test of preliminary allocation, initialization and binding code 2017-01-25 14:59:33 -06:00
Shane Bryldt
d86a8d89a4 FS-9775: Renamed calls *_salloc to *_prealloc 2017-01-25 14:59:33 -06:00
Shane Bryldt
b331b72ebe FS-9775: Added salloc calls for other entities
The use of salloc in the main ks_dht_t for the inner nodeid suggests salloc calls
should be renamed prealloc to avoid confusion where not used on stack variables
2017-01-25 14:59:33 -06:00
Shane Bryldt
63d0d8dc4a FS-9775: Added salloc call to dht for stack allocation, passing on the pool
This will be replicated to other allocations
2017-01-25 14:59:33 -06:00
Shane Bryldt
d0791961c4 FS-9775: Initial commit of the first portion of the DHT rewrite for peer review
Code compiles, but not yet functional, unit tests to come soon for current code
2017-01-25 14:59:33 -06:00
Anthony Minessale
82b49c30d5 add coding guidelines 2016-12-09 13:59:17 -06:00
Anthony Minessale
b6df83dd10 FS-9820 #resolve [Add thread_pool to libks] 2016-12-06 16:46:08 -06:00
Seven Du
b26fa6e17c FS-9810 fix ws write fail on slow network 2016-12-04 12:49:46 +08:00
Anthony Minessale
a0180288cf FS-9803 #resolve [Add support for arbitrary data as hash keys] 2016-12-01 18:11:52 -06:00