292 Commits (220eb85818ec569297d306625bd3a6a8445fa304)

Author SHA1 Message Date
Con Kolivas 1e14748c68 Small timeouts on select() instead of instant timeout increase reliability of socket reads and writes. 12 years ago
Con Kolivas c6ca12f084 Differentiate socket closed from socket error in recv_line. 12 years ago
Con Kolivas b6e3d5b4fa Make pool adding while running asynchronous, using the pool test thread functionality. 12 years ago
Con Kolivas 1a74bc5631 Only curl easy cleanup a stratum curl if it exists. 12 years ago
Con Kolivas 195ea63589 Sacrifice the ram of curl handles in stratum disconnects when we have built with old libcurl to avoid crashes. 12 years ago
Con Kolivas 26ddd1fd20 Move the stratum and GBT data to be protected under a new cg_lock data_lock. 12 years ago
Con Kolivas 66c567ab2e Use curl_easy_cleanup to close any open stratum sockets. 12 years ago
Con Kolivas 7e3ca57049 Set sockd to false should curl setup fail on stratum. 12 years ago
Con Kolivas 56068d6839 Close any open sockets when reusing a curl handle and reopen the socket whenever we're retrying stratum. 12 years ago
Con Kolivas 09c02b1c7b Shorten the time before keepalive probes are sent out and how frequently they're sent with stratum curls. 12 years ago
Con Kolivas 501f4cd6ec Clear the socket of anything in the receive buffer if we're going to retry connecting. 12 years ago
Con Kolivas c9b4f5c757 Revert "Cope with out of order messages coming in upon attempting to auth_stratum." 12 years ago
Con Kolivas ed903ddf31 Clear just the socket buffer when we don't care what is left in a stratum socket. 12 years ago
Con Kolivas fbb25c4ba5 Clear the stratum socket whenever we are closing it since the buffer is going to be reused. 12 years ago
Con Kolivas 0810212c9a Reset stratum_notify flag on suspend_stratum as well. 12 years ago
Con Kolivas 07ae6172cc Close any sockets opened if we fail to initiate stratum but have opened the socket. 12 years ago
Con Kolivas 6875dc46b6 Close any existing stratum socket if we are attempting to restart stratum so the pool knows the connection has gone. 12 years ago
Con Kolivas 237f67c617 Cope with out of order messages coming in upon attempting to auth_stratum. 12 years ago
Con Kolivas e3151799b6 Implement client.show_message support for stratum. 12 years ago
Con Kolivas 0be6e9e76c Make sure to retry only once with noresume support for stratum. 12 years ago
Con Kolivas 3c949e5f6c Try to extract the sessionid associated with mining.notify on 3rd level array and submit it along with the userid to support mining resume, failing gracefully and restarting if the pool rejects it. 12 years ago
Con Kolivas 5a3b374962 Update copyright dates. 12 years ago
Con Kolivas 3dcdb94921 Cope with misread sessionid on stratum for now. 12 years ago
ckolivas 6a0882f05b Use the sessionid as passed on stratum connect to attempt to resume a connection once and then clear it if it fails, to use a new connection. 12 years ago
ckolivas 68d691093c Move to storing the nonce1 in the work struct instead of the sessionid for the now defunct first draft mining.resume protocol. 12 years ago
Luke Dashjr 7473c3dc94 Bugfix: Missing pool_no parameter to applog for no-stratum-sessionid debug message 12 years ago
Con Kolivas be4705a003 Provide support for mining.resume with stratum, currently re-authorising after successful resumption pending finalising of the protocol process. 12 years ago
Con Kolivas 4cde791e9f Provide basic framework for restarting stratum depending on whether resume support exists or not. 12 years ago
Con Kolivas c29df9760f Abstract out the setting up of the stratum curl socket. 12 years ago
Con Kolivas c851f39598 Store session id for stratum if the pool supports it for future mining.resume support. 12 years ago
Kano c432c655f7 debug_cb buffer type warning 12 years ago
Con Kolivas 903c666326 Fix logic fail on partial writes with stratum send that was leading to corrupt message submissions. 12 years ago
Con Kolivas d644fdf1f4 Cache the coinbase length to speed up stratum work generation. 12 years ago
Con Kolivas 0870ab7532 Cache the header length when generating stratum work to avoid calculating it on every work generation, and to only need one alloc+sprintf, speeding up work generation. 12 years ago
Con Kolivas 51d11a28f9 Provide a wrapper for aligning lengths of size_t to 4 byte boundaries. 12 years ago
Kano c1eae36f7b API stats - include pool network bytes + in miner.php 12 years ago
Con Kolivas e1387dc85c Change the pool stratum socket buffer to be dynamically allocated to accomodate any size coinbase and keep receiving data in recv line for up to 60s if no end of line has been received. 12 years ago
Con Kolivas 6e2e7d36de Differentiate socket full from sock full. 12 years ago
Con Kolivas 7f46f6e91f Allow stratum to startup without notify but check it is valid before creating stratum work. 12 years ago
Con Kolivas e1d7ecdd35 Do not try to generate stratum work unless the notify command has succeeded. 12 years ago
Con Kolivas 944af31b99 Parse anything in the stratum socket if it's full without waiting. Empty the socket even if a connection is not needed in case there are share returns. 12 years ago
Con Kolivas cada0d3195 Check for EWOULDBLOCK when supported in send and recv as well. 12 years ago
Con Kolivas 2274af6a05 Use the raw send() command instead of curl_easy_send since curl raw socket usage introduces random bugs on windows. 12 years ago
Con Kolivas f66d59df03 Use raw recv() command in place of curl_easy_recv since the curl implementation introduces random bugs on windows builds when the recv fails. 12 years ago
Kano 138465bf0c Pool store data transfer stats 12 years ago
Con Kolivas ac3020f45b Include prctl header for thread renaming to work. 12 years ago
Con Kolivas 15e5e36bcd Return value of keep_sockalive is no longer used. 12 years ago
Con Kolivas 8fcc67f308 Remove dependency on mstcpip.h for windows build by making curl version >= 7.25.0 mandatory on windows builds, and use curl functions for keepalive whenever possible instead. 12 years ago
Con Kolivas 68f1b2c4b5 Set successful connect to true on auth stratum to allow summary on exit from single stratum pool. 12 years ago
Con Kolivas be013e9699 Set pool probed to true on successful authorisation with stratum to avoid it being pinged later with pool_getswork. 12 years ago