494 Commits (c72853fa408dcf30bda01371cd577bd6e10e49de)

Author SHA1 Message Date
Kano 5033dcd355 fix test/set of thr->pth to also work in windows 13 years ago
Con Kolivas 2257b5023a Simplify longpoll changeover to just check which pool it should grab its next longpoll from. This should prevent locking hangs and thread cancellation 13 years ago
Con Kolivas a51514d9d1 White space cleanup. 13 years ago
Con Kolivas b69aa23470 Use control_lock to protect thr->pth for thread creation/destruction. 13 years ago
Con Kolivas 59293a37d6 Only pthread_join when pthread_cancel does not return an error. 13 years ago
Con Kolivas 13c40f753b Zero all pthread_t identities upon cancelling threads. 13 years ago
Con Kolivas 689f8abbaa Try to use SSL if the server supports it. 13 years ago
Con Kolivas 4128b954a6 Add a --donation feature which reads a url/userpass from the author's site and contributes a percentage of getworks to the author, but default to off. 13 years ago
Kano ba14a6705e Remove EOL spaces from stderr and curses 13 years ago
Kano 8ecd15a616 Add BLOCK! notification and remove end of line blanks when not needed 13 years ago
Con Kolivas b8ea0dd194 Update curses logging to allow LOG_WARNING and LOG_ERR messages to still go through while within the menu, and drop share message to LOG_NOTICE. 13 years ago
Con Kolivas 8e2becc12d Change pth from being a pointer as we can dereference if we're unlucky on stopping longpoll. 13 years ago
Con Kolivas 833e020dfd Standardise the way all non-mining threads are destroyed to make sure we can safely cancel them, freeing ram and NULLifying pointers. 13 years ago
Luke Dashjr 1f15d7eafa Advertise rollntime extension support 13 years ago
Con Kolivas a0a5858d15 Use the presence of X-Roll-Ntime in the header as a bool for exists unless N is found in the response. 13 years ago
Con Kolivas 5d845f2fb1 If curl does not have sockopts, do not try to compile the json_rpc_call_sockopt_cb function, making it possible to build against older curl libraries. 14 years ago
Con Kolivas a593afdbeb Use the curses_lock to protect the curses_active variable and test it under lock. 14 years ago
Con Kolivas 437d6f05cc Disable curl debugging with opt protocol since it spews to stderr. 14 years ago
Con Kolivas 91a2e7012b Actually check the value returned for the x-roll-ntime extension to make sure it isn't saying N. 14 years ago
Con Kolivas 666fcc3f55 Move staged threads to hashes so we can sort them by time. 14 years ago
Con Kolivas dfec430cb8 Make the tcp setsockopts unique to linux in the hope it allows freebsd et. al to compile. 14 years ago
Con Kolivas d89a6c57b1 Since we check roll time per work item now, it need only be debug log level. 14 years ago
Con Kolivas 3edc1dfe2a Test at appropriate target difficulty now. 14 years ago
Con Kolivas 1e77f04481 Clean up the longpoll management to ensure the right paths go to the right pool and display whether we're connected to LP or not in the status line. 14 years ago
Con Kolivas 426f72dec7 As we have keepalives now, blaming network flakiness on timeouts appears to have been wrong. 14 years ago
Con Kolivas 657812ada4 Probe for slightly longer for when network conditions are lagging. 14 years ago
Con Kolivas d6dd5d700b Test each work item to see if it can be rolled instead of per-pool and roll whenever possible, adhering to the 60 second timeout. 14 years ago
Con Kolivas 5f667e7eab Get rid of extra line feeds. 14 years ago
Con Kolivas 53e05c6413 Log to the output file at any time with warnings and errors, instead of just when verbose mode is on. 14 years ago
Con Kolivas 0006eb2da4 Make the "quiet" mode still update the status and display errors, and add a new --real-quiet option which disables all output and can be set once while running. 14 years ago
Con Kolivas e82e390295 If work has been cloned it is already at the head of the list and when being reinserted into the queue it should be placed back at the head of the list. 14 years ago
Con Kolivas 98f609b5be Sanity check to prove locking. 14 years ago
Con Kolivas a187fe1e7b Try to do every curses manipulation under the curses lock. 14 years ago
Con Kolivas 5f54e164c9 Only use the sockoptfunction if the version of curl is recent enough. 14 years ago
Con Kolivas 401983136c Do away with GET for dealing with longpoll forever. POST is the one that works everywhere, not the other way around. 14 years ago
Ycros 0c25ff8416 OSX: fix setsockopt compile bug 14 years ago
Ycros d37c3fe56b Win32 threading and longpoll keepalive fixes. 14 years ago
Con Kolivas fe8b041654 Make --no-longpoll work again. 14 years ago
Con Kolivas b0a8f279f7 Implement the ability to live add, enable, disable, and switch to pools. 14 years ago
Michael Kedzierski d987006cd8 TCP KEEPALIVE support for long polling. 14 years ago
Con Kolivas b56ed74867 When json rpc errors occur they occur in spits and starts, so trying to limit them with the comms error bool doesn't stop a flood of them appearing. Make the json errors LOG_INFO level instead so they don't normally show up. 14 years ago
Con Kolivas 81ff7fb3dc Explicitly probe each pool to see if work can be retrieved from it and what it supports. 14 years ago
Con Kolivas 913e120262 Test for rolltime and save it correctly when testing for longpoll. 14 years ago
Con Kolivas 0ce3df10d2 Store whether each server supports X-Roll-Ntime or not. 14 years ago
Con Kolivas 321c4798d4 Make longpoll switch servers should it not match the current pool. 14 years ago
Con Kolivas cdc72daed9 Some servers regularly return empty responses. Drop the message from ERR to INFO. 14 years ago
Con Kolivas 44c975be65 Long timeouts are causing reset connections and longpoll can recover if the connection needs to be restarted, so remove the timeout settings. 14 years ago
Con Kolivas 0c253734e1 Provide a control lock around global bools to avoid racing on them. 14 years ago
Con Kolivas 6e30c0701c longpoll seems to work either way with post or get but some servers prefer get so change to httpget. 14 years ago
Con Kolivas 579bd42919 Revert "Change get_work to use a timeout when trying to tq_pop as a sanity failsafe in case of unusual circumstances." 14 years ago