Commit Graph

139 Commits

Author SHA1 Message Date
Anthony Minessale 68e5321da0 regression from nolock mode 2017-01-25 14:59:36 -06:00
colm aed03077ef FS-9775: Bucket synchronization fixes & Updated tests 2017-01-25 14:59:36 -06:00
Anthony Minessale a42ed8f8f0 add flags to disable auto assert and auto memset 2017-01-25 14:59:36 -06:00
Anthony Minessale a0e3c93b09 get rid of FLAG_DEFAULT and juggle some params 2017-01-25 14:59:36 -06:00
Anthony Minessale ec0906e2d4 add nolock to hash and make it default 2017-01-25 14:59:36 -06:00
Shane Bryldt 4517a511d5 FS-9775: Major cleanup around allocations, more work on search functionality, adjusted polling to reduce timeout when outgoing messages are pending 2017-01-25 14:59:36 -06:00
colm d7222718aa FS-9775: Exempt local nodes from expiration. Add release_querynodes api 2017-01-25 14:59:36 -06:00
colm 6013808781 FS-9775: Thread safe dht buckets continued 2017-01-25 14:59:36 -06:00
colm fbc46839d9 FS-9775: Thread safe dht buckets 2017-01-25 14:59:36 -06:00
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
Mike Jerris 7884bee06a FS-9768: [build] don't limit to just clang 2016-11-23 15:05:12 -06:00
Shane Bryldt 198a6debff FS-9767: Fixed the size of the keys to use crypto_sign_XXXXBYTES for proper key size
Also added parsing of identity in message_mutable to force directing test messages
which are now recieved by the designated peer
2016-11-23 20:20:26 +00:00
Shane Bryldt 2d1e0ae275 FS-9766: Added 1 byte to ben_encode output and terminates output 2016-11-23 19:49:48 +00:00
Mike Jerris 3ddaf0f269 cleanup new libks deleted files 2016-11-23 13:29:36 -06:00
Mike Jerris 9fd0b6bd2f update libks 2016-11-23 13:23:33 -06:00
Anthony Minessale 26bed941b3 FS-8160 Additional vulnerability in json parsing malformed utf encoded chars discovered by Brian Martin - Tenable Security Response CVE-2015-7392 2015-11-19 13:45:04 -06:00
Michael Jerris cf892528a1 FS-8160: properly handle malformed json when parsing json with \u at the end of a json string 2015-09-14 17:56:55 -04:00
Mike Jerris 6445012dd6 windows test program working 2015-09-04 16:37:49 -04:00
Anthony Minessale 93a647468b move some defs to platform 2015-09-04 15:18:55 -05:00
Anthony Minessale 8a5cd7e734 cleanup 2015-09-04 15:10:55 -05:00
Anthony Minessale 6bb3e86629 add test 2015-09-04 15:06:52 -05:00
Anthony Minessale 01e7aaab89 temp build test func 2015-09-04 15:04:21 -05:00
Anthony Minessale e5bcf53b17 rm wtf 2015-09-04 15:04:21 -05:00
Anthony Minessale fd98f7f4fb formatting 2015-09-04 15:04:21 -05:00
Anthony Minessale 8142b5eb81 formatting 2015-09-04 15:04:21 -05:00
Mike Jerris 25b9c4810a turn on all warnings in windows build, silence specific ones we don't want 2015-09-04 14:49:52 -04:00
Anthony Minessale ecca125c6a add types and platform headers 2015-09-04 12:54:37 -05:00
Mike Jerris 84504b04c8 fully clean windows build 2015-09-04 13:28:55 -04:00
Mike Jerris 5b4b82c4f0 working windows build 2015-09-04 13:25:32 -04:00
Anthony Minessale 9830fb63f6 eliminate sbrk and make build on mac 2015-09-04 12:05:06 -05:00
Mike Jerris 17f7afe76a almost working windows build 2015-09-04 12:58:46 -04:00
Anthony Minessale b434e2b7fe add map_anonymoys support 2015-09-04 11:38:16 -05:00
Anthony Minessale aebc6467fb formatting 2015-09-04 11:34:51 -05:00
Anthony Minessale ab4514d1e5 fix indenting 2015-09-04 11:26:21 -05:00
Michael Jerris 3947d443fa add some code to test 2015-09-04 12:07:05 -04:00
Anthony Minessale 4d12bef20b revert 2015-08-31 13:00:08 -05:00
Anthony Minessale d623f9d660 add cjson to libks 2015-08-31 12:51:53 -05:00
Ken Rice 6e7d5d0897 update copyright header for 2014 2014-02-12 12:08:56 -06:00
Nathan Neulinger 32adc789f6 make noexpandtab explicit in all vim modelines other than xml files 2013-06-25 11:50:17 -05:00
Anthony Minessale cd6ead9178 add libks (kitchen sink) as a new lib to collect random cool cross platform BSD licensed C funcs 2012-09-19 12:44:34 -05:00