160 Commits (338cc49c7e364dbf6afccf16f51b4c0e3e1e3c6f)

Author SHA1 Message Date
Con Kolivas 221825782b Check for a dead main process in the generator loop 11 years ago
Con Kolivas 454d3aec0e Break out of trying for a live proxy if main is dead 11 years ago
Con Kolivas 91b3f2b1d9 memset the json err variable before use 11 years ago
Con Kolivas 19c31ad0c3 Fix inappropriate json object stealing 11 years ago
Con Kolivas 007afe7ac8 Cancel and join proxy send and receive threads on shutdown to avoid deref after removing their memory 11 years ago
Con Kolivas 86e70edfbc Make all child processes ping the parent process at regular intervals and then die if it has disappeared. Do not attempt to send unix messages to dead processes and abort instantly on socket EINTR 11 years ago
Con Kolivas c4f0d57ae8 Fix various memory leaks 11 years ago
Con Kolivas d90b4ffddd Check return value of asprintf 11 years ago
Con Kolivas bfec616da3 Create new proxy entries on the fly with the client reconnect command and switch to it 11 years ago
Con Kolivas 601fb8cb34 Fix off-by-one error 11 years ago
Con Kolivas 3931e7bee9 Avoid realloc being required in send_json_msg 11 years ago
Con Kolivas 67fefd2675 Fall over to another bitcoind if any of our calls fail 11 years ago
Con Kolivas 0b4c6c7821 Make the gbtbase data the private data per server instance 11 years ago
Con Kolivas e959ba39a4 Iterate over the configured btcds, finding the first working one; failover to be added later 11 years ago
Con Kolivas ca176c8e1d Fall over to the first working stratum proxy whenever we are disconnected 11 years ago
Con Kolivas f48558d2b5 Detach child processes from the tty leaving only the main process to talk to it and exit all processes in a consistent way with more information on termination 11 years ago
Con Kolivas 305165914d Display a rudimentary pplns summary on solving a block to calculate payouts 11 years ago
Con Kolivas 0471340fdd Update notify when we have a new subscription and gracefully drop connections from the send process to be detected rapidly in the recv thread 11 years ago
Con Kolivas a50bb29d21 Free up old data in place if we are re-subscribing 11 years ago
Con Kolivas 9983c96ca0 Fix uninitialised variable 11 years ago
Con Kolivas 5b7af2f7ff Avoid accessing notify instances outside of the notify lock and avoid leaking memory when we can't match the msgid in proxy_send 11 years ago
Con Kolivas c9f550207f Send one on all process failure codes 11 years ago
Con Kolivas 1ac5fec1ee Timeout in 5 seconds on the stratum read socket allowing us to detect closed connections sooner 11 years ago
Con Kolivas acfa048991 Clear notifies completely including the ram and discard all notifies on reconnect 11 years ago
Con Kolivas b33e44c0fe Drop all clients when we do an update_subscribe 11 years ago
Con Kolivas 65a8b3d9fb Drop proxy connections on failing to submit messages 11 years ago
Con Kolivas f2361b921b Create a hashtable of shares we submit in proxy mode to compare responses for future logging 11 years ago
Con Kolivas 7c98ab5c1d Store structures for all possible upstream servers to allow us to choose an alive one for now with a view to enable switching 11 years ago
Con Kolivas 26cc00b013 Implement stratum show_message support 11 years ago
Con Kolivas a11d64f120 Parse the send_version request an return package/version 11 years ago
Con Kolivas e36e5ce010 Submit the actual shares sent to the proxy upstream 11 years ago
Con Kolivas d265e51664 Create a send processing queue in the proxy generator and receive shares that meet the parent pool target 11 years ago
Con Kolivas 6d11b8b546 Keep track of the most current stratum notification and age notifications older than 10 mins old 11 years ago
Con Kolivas 72e6026052 Fix various coinbase assembly issues 11 years ago
Con Kolivas db1b2b45a4 Parse the mining difficulty when proxying and store it in the stratifier as the current workbase diff. Update notify and diff in stratifier when a change is deteced. 11 years ago
Con Kolivas faf87ceeee Store the proxy base subscribe details in a struct protected by the workbase lock 11 years ago
Con Kolivas 860abc7903 Fail in proxy mode if the nonce2 length is too small to successfully proxy 11 years ago
Con Kolivas fae9983fd7 Inform the stratifier process of the data in subscribe and notify from the generator proxy 11 years ago
Con Kolivas 54883b37fd Make read_socket_line accept a timeout in seconds 11 years ago
Con Kolivas dacb261ad5 Store the proxy method results in a unique struct and add it to a hashtable of notifications 11 years ago
Con Kolivas a879f43f7a Parse stratum proxy responses till we get the authorisation response 11 years ago
Con Kolivas 0f4dff3144 Parse a proxy subscribe response as flexibly as possible 11 years ago
Con Kolivas 6ac33e57ac Create initial stratum proxy connection 11 years ago
Con Kolivas 8af64746bf Change config format to take url auth and pass for both btcd and proxy and choose which to use in the generator based on proxy bool 11 years ago
Con Kolivas 0256ad517b Accept an array of entries for bitcoinds and take initial values for proxying 11 years ago
Con Kolivas 78c1b2dfda Make process instances an array within the ckpool struct allowing us to enable only those we need when we add more modules to future code 11 years ago
Con Kolivas 8631f33809 Accept ping requests on the various unix sockets 11 years ago
Con Kolivas 7ab22aa1ec Consider other modes of generator failure terminal and shut down 11 years ago
Con Kolivas a615b56d76 Install signal handlers which push the signal to the top process which will try to gracefully shut down each child process 11 years ago
Con Kolivas 6a753c149d Clean up block solve notification and messages, sending a work restart immediately 11 years ago