Con Kolivas
e0157208ab
Add management for dead GBT pools.
2012-11-05 23:44:00 +11:00
Con Kolivas
9ebc321cd1
Merge branch 'master' into gbt
2012-11-05 23:34:58 +11:00
Con Kolivas
bddbddd65d
Merge branch 'master' of github.com:ckolivas/cgminer
2012-11-05 23:33:03 +11:00
Con Kolivas
ab1fa25344
Merge pull request #324 from CyberLeo/build_on_freebsd
...
Changes to build prototypes to support building on FreeBSD 9.1-RC2 amd64
2012-11-05 04:32:22 -08:00
Con Kolivas
ffb8a29abf
Count lost shares with stratum as submit stale lost.
2012-11-05 23:25:36 +11:00
Con Kolivas
0465fef553
Discard record of stratum shares sent and report lost shares on disconnection since they will never be reported back.
2012-11-05 23:22:36 +11:00
Con Kolivas
0314081157
Swab, don't just swap the bytes in the GBT target.
2012-11-05 22:12:27 +11:00
Con Kolivas
275bb9c05e
Change status window message for GBT connected pools versus LP.
2012-11-05 18:05:25 +11:00
Con Kolivas
1321cb0e0d
Generate a gbt work item from longpoll when required to set new block and message appropriately.
2012-11-05 17:57:33 +11:00
Con Kolivas
10ea5fbf97
Use existing pool submit_old bool from gbt data.
2012-11-05 16:57:48 +11:00
Con Kolivas
f71b423080
Retrieve a new block template if more than 30 seconds has elapsed since the last one to keep the data current and test the pool is still alive.
2012-11-05 16:48:19 +11:00
Con Kolivas
fc94e00fd1
Update GBT longpollid every time we request a new longpoll.
2012-11-05 16:34:44 +11:00
Con Kolivas
cc7c274543
Manage appropriate response codes for share submission with GBT.
2012-11-05 16:28:52 +11:00
Con Kolivas
345e72e66e
Allow the longpoll thread to start with GBT and only set the longpollid once.
2012-11-05 16:17:04 +11:00
Con Kolivas
85f400bf80
Correct last few components of GBT block generation courtesy of Luke-jr.
2012-11-05 15:57:47 +11:00
Con Kolivas
14c436ee1f
Use correct length for offsetting extra nonce and remaining data.
2012-11-05 15:28:07 +11:00
Con Kolivas
a4e78be1ed
Flip all 80 bytes in the flip function which was wrongly named flip256 for its purpose.
2012-11-05 14:56:57 +11:00
Con Kolivas
8bc677a6ca
Calculate midstate for gbt work and remove now unused variable.
2012-11-05 14:44:58 +11:00
Con Kolivas
0ba5f0f94b
Use a standard function for flipping bytes.
2012-11-05 14:02:43 +11:00
Con Kolivas
734f3d1c54
Insert the extra nonce and remaining data in the correct position in the coinbase.
2012-11-05 11:49:22 +11:00
Con Kolivas
611c3164dc
Remove txn size debugging and enlarge gbt block string to prevent overflow.
2012-11-05 10:55:55 +11:00
Con Kolivas
bd384883da
Remove varint display debugging.
2012-11-05 08:39:33 +11:00
Con Kolivas
cb6f0340cd
Build varint correctly for share submission and sleep 5 seconds before retrying submit.
2012-11-05 08:27:20 +11:00
Con Kolivas
88b6f7924c
Make gbt_coinbase large enough for submissions, swap bytes correctly to make a header from GBT and encode the number of transactions in share submission.
2012-11-04 18:01:09 +11:00
Con Kolivas
889ed23934
Store the fixed size entries as static variables in GBT in binary form, byteswapping as is required.
2012-11-04 15:28:13 +11:00
Con Kolivas
cdc3c8779a
32 bit hex encoded variables should be in LE with GBT.
2012-11-04 14:58:24 +11:00
Con Kolivas
2914a5eddf
Target and prevblockhash need to be reversed from GBT variables.
2012-11-04 12:18:59 +11:00
Con Kolivas
6b34faf83c
Construct block for submission when using GBT.
2012-11-04 10:24:09 +11:00
Con Kolivas
59087a5d77
Use same string for debug as for submission and make string larger to cope with future GBT messages.
2012-11-04 08:59:00 +11:00
Con Kolivas
914e88bbad
Skip trying to decipher LP url if we have GBT support.
2012-11-04 08:46:58 +11:00
Con Kolivas
c5c5fb8273
Store all the transaction hashes in pool->txn_hashes instead of separating txn0 and correct generation of merkle root, fixing memory overwrites.
2012-11-04 08:35:50 +11:00
Con Kolivas
5acb182ec1
Hook into various places to generate GBT work where appropriate.
2012-11-04 02:07:45 +11:00
Con Kolivas
875ca0fcc6
Create extra work fields when generating GBT work.
2012-11-04 01:07:01 +11:00
Con Kolivas
2bfb293fe3
Generate header from correct hashing generation of the merkle root for GBT.
2012-11-04 00:52:50 +11:00
Con Kolivas
cbc246eace
Generate the merkle root for gbt work generation.
2012-11-03 19:45:37 +11:00
Con Kolivas
8d0f748246
Create a store of the transactions with GBT in the minimum size form required to generate work items with a varied coinbase.
2012-11-03 13:27:41 +11:00
Con Kolivas
4a72a1574f
Create a function that generates a GBT coinbase from the existing pool variables.
2012-11-01 22:34:08 +11:00
Con Kolivas
813e814f6c
Extract and store the various variables GBT uses when decoding gbt work.
2012-11-01 16:56:54 +11:00
Con Kolivas
432b2636d5
Check for invalid json result in work_decode.
2012-11-01 15:41:32 +11:00
Con Kolivas
56b16953a9
Decode work in separate functions for getwork vs gbt.
2012-11-01 15:40:07 +11:00
Con Kolivas
26e0115030
Check for the coinbase/append mutable in GBT support to decide whether to use it or not.
2012-11-01 15:36:22 +11:00
Con Kolivas
d10699d4c3
Add a gbt mutex within the pool struct for protecting the gbt values.
2012-11-01 14:24:55 +11:00
Con Kolivas
8afc1f6512
Convert work decode function to prepare for decoding block templates.
2012-11-01 14:05:25 +11:00
Con Kolivas
1c456d4fb3
Check for GBT support on first probing the pool and convert to using the GBT request as the rpc request for that pool.
2012-11-01 13:53:12 +11:00
Con Kolivas
f4cc59f25f
Make the rpc request used with getwork a pool variable to allow it to be converted to/from gbt requests.
2012-11-01 13:06:34 +11:00
CyberLeo
dc7c57d9c3
Changes to build prototypes to support building on FreeBSD 9.1-RC2 amd64
...
* Bashism in configure:
./configure: ${ac_cv_search_addstr:2}: Bad substitution
* Configure finds libcurl in /usr/local, but /usr/local/include isn't in CFLAGS:
cgminer.c:39:10: fatal error: 'curl/curl.h' file not found
* Configure misdetects amd64 as 32-bit; fails when trying to link in sse2_64:
cgminer-sha256_sse2_amd64.o: In function `scanhash_sse2_64':
./cgminer/sha256_sse2_amd64.c:98: undefined reference to `sha256_sse2_64_new'
cgminer-sha256_sse4_amd64.o: In function `scanhash_sse4_64':
./cgminer/sha256_sse4_amd64.c:96: undefined reference to `CalcSha256_x64_sse4'
./cgminer/sha256_sse4_amd64.c:97: undefined reference to `CalcSha256_x64_sse4'
2012-10-30 12:30:17 -05:00
Luke Dashjr
c2b5c5ee4c
Bugfix: Free old stratum_work data before replacing it
2012-10-30 19:30:11 +11:00
Con Kolivas
c2861d683a
There is no need for addrinfo any more.
2012-10-30 19:22:02 +11:00
ckolivas
a2d5783509
server and client sockaddr_in are no longer used in struct pool.
2012-10-30 16:45:27 +11:00
Con Kolivas
7e17af6913
Merge pull request #322 from luke-jr/bugfix_stratum_tmpwork
...
Bugfix: Initialize temporary stratum work
2012-10-29 21:48:59 -07:00