Con Kolivas
|
6d3c880a25
|
Make sure to check pool stratum curl exists under lock before attempting any recv to not risk dereferencing upon attempting to reinitiate stratum.
|
12 years ago |
Con Kolivas
|
e575763a80
|
Avoid redefining macros and align to 4 byte boundaries.
|
12 years ago |
ckolivas
|
bb4bec98d5
|
Use select on stratum send to make sure the socket is writeable.
|
12 years ago |
Con Kolivas
|
99adf397bd
|
Failure to calloc in bin2hex is a fatal failure always so just check for that failure within the function and abort, simplifying the rest of the code.
|
12 years ago |
Con Kolivas
|
b3d4258940
|
Provide locking around the change of the stratum curl structures to avoid possible races.
|
12 years ago |
Con Kolivas
|
e5babfa25b
|
Watch for buffer overflows on receiving data into the socket buffer.
|
12 years ago |
Con Kolivas
|
2a9b3e33d3
|
String alignment to 4 byte boundaries and optimisations for bin<->hex conversions.
|
12 years ago |
Con Kolivas
|
fc72ad5563
|
Off by one error.
|
12 years ago |
Con Kolivas
|
9ccfcee6dc
|
Prevent overflows of the port char array in extract_sockaddr.
|
12 years ago |
ckolivas
|
7f522ef83c
|
Add support for client.get_version for stratum.
|
12 years ago |
Con Kolivas
|
a533f106fd
|
Update reconnect message to show whole address including port.
|
12 years ago |
Con Kolivas
|
5226a399c7
|
Look for null values and parse correct separate array entries for url and port with client reconnect commands for stratum.
|
12 years ago |
Con Kolivas
|
7c04a00e62
|
The command for stratum is client.reconnect, not mining.reconnect.
|
12 years ago |
Con Kolivas
|
783af8768b
|
Implement rudimentary mining.reconnect support for stratum.
|
12 years ago |
Con Kolivas
|
974f65c67f
|
Ignore the value of stratum_active on calling initiate_stratum and assume we're always trying to reinitiate it, and set the active flag to false in that function.
|
12 years ago |
Con Kolivas
|
07605fad60
|
stratum auth can be unset if we fail to authorise on subsequent calls to auth_stratum which undoes the requirement of setting it in one place so set it in pool_active.
|
12 years ago |
Con Kolivas
|
ef822a25ed
|
Detect stratum outage based on either select timing out or receiving an empty buffer and properly re-establish connection by disabling the stratum_active flag, coping with empty buffers in parse_stratum.
|
12 years ago |
Con Kolivas
|
7a01578cc5
|
Only hand off to stratum from getwork if we succeed in initiating the protocol.
|
12 years ago |
Con Kolivas
|
ef63ea3151
|
Drop stratum connect failed message to verbose level only since it's a regular probing message.
|
12 years ago |
Con Kolivas
|
fa444294bf
|
TCP Keepalive in curl is only in very recent versions and not required with regular messages on stratum anyway.
|
12 years ago |
Con Kolivas
|
a8d693029a
|
Move stratum sockets to curl infrastructure with locking around send+recv to begin support for proxies and ssl.
|
12 years ago |
Con Kolivas
|
deb0a9b644
|
Windows doesn't work with MSG_PEEK on recv so move to a continuously updating buffer for incoming messages.
|
12 years ago |
Con Kolivas
|
77c5a006aa
|
Alloca is unreliable on windows so use static arrays in util.c stratum code.
|
12 years ago |
Con Kolivas
|
c113534feb
|
Begin support for mingw stratum build.
Conflicts:
configure.ac
|
12 years ago |
Con Kolivas
|
2fae906440
|
Don't try to parse unneeded parameters in response to mining.subscribe.
|
12 years ago |
Con Kolivas
|
9698858abc
|
Remove the sshare hash entry if we failed to send it.
|
12 years ago |
Con Kolivas
|
3cb373d692
|
Change notify message to info level to avoid spamming repeatedly when a pool is down.
|
12 years ago |
Con Kolivas
|
1b7aa48c8f
|
Initiate stratum the first time in pool_active only, allowing us to switch to it on getting a failed getwork and detecting the presence of stratum on the url at that time.
|
12 years ago |
Con Kolivas
|
d122a789ed
|
Use 5 second timeout on sock full for now as a temporary workaround.
|
12 years ago |
Con Kolivas
|
d851bf3d65
|
Revert "Don't wait on select when first detecting stratum, just receive one line."
This reverts commit 496af92afd .
Not quite right.
|
12 years ago |
Con Kolivas
|
496af92afd
|
Don't wait on select when first detecting stratum, just receive one line.
|
12 years ago |
Con Kolivas
|
bbb092e0da
|
Make the stratum recv buffer larger than the recvsize.
|
12 years ago |
Con Kolivas
|
2941febd05
|
Store a sockaddr url of the stripped url used in determining sockaddr to not confuse it with the stratum url and fix build warnings.
|
12 years ago |
Con Kolivas
|
eaf7ed0dcd
|
Detect if a getwork based pool has the X-Stratum header on startup, and if so, switch to the stratum based pool.
|
12 years ago |
Con Kolivas
|
b5617734fa
|
Provide locking around stratum send operations to avoid races.
|
12 years ago |
Con Kolivas
|
8baac0d66d
|
Submit shares from stratum through the abstracted submit share function detecting what message they belong to and showing the data from the associated work, and then deleting it from the hash.
|
12 years ago |
Con Kolivas
|
fa4c9bf60f
|
Use a more robust mechanism to obtain a \n terminated string over a socket.
|
12 years ago |
Con Kolivas
|
2de951518e
|
Abstract out share submit as a function to be useable by stratum.
|
12 years ago |
Con Kolivas
|
739cba28a7
|
Rename parse_stratum to parse_method as it is only for stratum messages that contain methods.
|
12 years ago |
Con Kolivas
|
9180a557c3
|
Count each stratum notify as a getwork equivalent.
|
12 years ago |
Con Kolivas
|
aa6aa29c4d
|
Check that stratum is already active in initiate_stratum to avoid de-authorising ourselves by subscribing again.
|
12 years ago |
Con Kolivas
|
7415d7aaa0
|
Begin implementing a hash database of submissions and attempt sending results.
|
12 years ago |
Con Kolivas
|
ac47f7f3a6
|
Store and display stripped url in its own variable.
|
12 years ago |
Con Kolivas
|
636f4b14d7
|
Generate the work target in gen_stratum_work, setting default diff to 1 in case it is not yet set.
|
12 years ago |
Con Kolivas
|
1f6fe55152
|
Generate the coinbase for generation of stratum based work.
|
12 years ago |
Con Kolivas
|
1f64491f62
|
The number of transactions is variable so make merkle a variable length dynamically allocated array and track how many there are for stratum.
|
12 years ago |
Con Kolivas
|
1221a80d41
|
Rename nonce2 to n2size reflecting that it's a size variable and not the actual nonce.
|
12 years ago |
Con Kolivas
|
56255a0c86
|
Create a stratum thread per pool that has stratum that monitors the socket and serves received data.
|
12 years ago |
Con Kolivas
|
31c3759ecd
|
Check return value of stratum_parse.
|
12 years ago |
Con Kolivas
|
ac9a4378d1
|
Complete authorisation in stratum.
|
12 years ago |