340 Commits (ec932cb970fb89b195b13e1fdbf3c085cef8ae40)

Author SHA1 Message Date
Con Kolivas 5e813ad10b Use separate structures for different linked lists on clients in the connector to prevent cross list corruption. 7 years ago
Con Kolivas 7a1e907fa7 Rename json_set_object to json_steal_object to make it clear what the function does and nullify the original pointer preventing use after free. 8 years ago
Con Kolivas 137f0b7842 Use a virtualid to reference subclients in remote servers to be able to speak to the upstream pool, allowing them to work with passthroughs. 8 years ago
Con Kolivas 7d8417774f Properly drop subclients when the parent dies by testing whether the parent exists instead of the masked subclient id. 8 years ago
Con Kolivas 22ad7d440a Filter out node.method from going to clients by sending json and intercepting that, avoiding the need to dump it and reencode it. 8 years ago
Con Kolivas 8b7e3b68bc Whitelist clients that have already submitted valid shares in redirector mode by IP and redirect them immediately once they have authorised. 8 years ago
Con Kolivas 556619cfe6 Redirect miners in redirector mode after returning their share results. 8 years ago
Con Kolivas 3e954e225f Parse upstream requests for transactions, returning any found in the remote's transaction table. 8 years ago
Con Kolivas f3f8924ce6 Drop any parent clients explicitly in the stratifier from the connector, tagging any subclients to be dropped lazily. 8 years ago
Con Kolivas 890ed35bd9 Make trusted stratifier wait for connector to connect to upstream pool and retry indefinitely instead of failing on first connect. 8 years ago
Con Kolivas dcfb734ec6 Send upstream blocks to remote servers to be submitted locally. 8 years ago
Con Kolivas bd367364c1 Propagate workinfos to all remote trusted servers to be able to submit all blocks at all remote servers. 8 years ago
Con Kolivas fe94172f2e Strip remote field that won't be used or are recrated upstream. 8 years ago
Con Kolivas 52fc524f07 Remove remaining users of send_procmsg from ckpool.c 8 years ago
Con Kolivas 5faa21ffba Remove use of send_recv_proc entirely between threads. 8 years ago
Con Kolivas 72e2763594 Use a common start ping mechanism between threads. 8 years ago
Con Kolivas 1688b4f5d7 Remove use of send_recv_proc internally from ckpool.c 8 years ago
Con Kolivas 17d9c837d1 Parse and act upon upstream auth responses in trusted mode. 8 years ago
Con Kolivas 05c1074d1b Add console message when remote trusted server disconnects, displaying IP for disconnected passthroughs as well as id. 8 years ago
Con Kolivas e011d17321 Upstream messages directly from stratifier to connector in trusted mode. 8 years ago
Con Kolivas d9e5cf03f1 Send transactions up and downstream in trusted mode to be submitted to the local btcd. 8 years ago
Con Kolivas 93f0c27fd5 Add locking for redirector share management. 8 years ago
Con Kolivas a568baf4fa Increase verbosity of connector drop message for passthroughs 9 years ago
Con Kolivas 689ab86fd0 Now that we've confirmed failing to find a client id in the receiver is a rare event again, the loglevel can be dropped in priority 9 years ago
Con Kolivas 7357525712 Rearm the epoll client fd only when it's still valid after processing its message 9 years ago
Con Kolivas 2ed69d2534 Allow the socket close to be responsible for removing client fds from the epoll list 9 years ago
Con Kolivas aca7bb39bf Wait for stratifier before processing messages in connector receiver 9 years ago
Con Kolivas bde77b155c Connector loop should never return 9 years ago
Con Kolivas 31434bc0b9 Create unix receivers during child setup 9 years ago
Con Kolivas 42d2e0f5c2 Increment client reference before adding it to the epoll list 9 years ago
Con Kolivas 5f0cf43db3 Fix inappropriate setting of proxy bool in trusted mode 9 years ago
Con Kolivas 9e17bec09c Inherit serverurl correctly when none is specified 9 years ago
Con Kolivas 0d8746249e Pass the generator json structures avoiding duplicating codec 9 years ago
Con Kolivas 43a18946ce Send the connector json structures from the stratifier to avoid json codec duplication 9 years ago
Con Kolivas 84c340c1c4 Send stratifier json structures from the connector where possible, avoiding the duplication of json codec 9 years ago
Con Kolivas 3c965946e7 Replace unnecessary multiprocess model with simpler thread based model for each component for future removal of duplication of work when communicating between threads 9 years ago
Con Kolivas 6c8f6bb93d Move private data to different names 9 years ago
Con Kolivas 0b0dfe4f83 Move json decoding to threaded client_message_processor 9 years ago
Con Kolivas 0f5fc8ea8b Use fresh event structure after handing it off to the client event processor 9 years ago
Con Kolivas 75923f6daa Make client epoll event handling scalable ckmsgq threads 9 years ago
Con Kolivas f0e07c24a4 Make client event handling a oneshot event that is rearmed to allow us to thread the work 9 years ago
Con Kolivas 39070094cf Invalidate clients in common location after parse_client_msg 9 years ago
Con Kolivas ebedb77629 Cache reused variables in creceiver 9 years ago
Con Kolivas 0cb8d0af48 Fix client buffer leak in connector 9 years ago
Con Kolivas 8007f6524b Writes blocking in send_sender_send are not an unlikely event 9 years ago
Con Kolivas 6986ba95fc Make client message processing a ckmsq to minimise connector_loop holdup 9 years ago
Con Kolivas f9d4e7999a Remove unused zlib header 9 years ago
Con Kolivas eedc3eec1c Avoid needing to duplicate buffer to parse messages in parse_client_msg 9 years ago
Con Kolivas bd26f1e6b4 Increase bidirectional buffer sizes to trusted remotes to 2MB default 9 years ago
Con Kolivas fbbed17d7a Roll back to M22 9 years ago