Matthew Little
9a42211c38
Converted init coin info detection from RPC waterfall to batch RPC call. Added getblocktemplate after submitting block
2014-04-19 13:46:34 -06:00
Matthew Little
8806aa8896
Fixed block hash generation for various algos
2014-04-18 21:41:55 -06:00
Matt
7b24ce543d
Fixed share diff for quarkcoin (blocks submit successfully but NOMP does not detect them due to the block hash not being generated correctly)
2014-04-18 16:28:11 -06:00
Matt
1dee4a5a0a
Fixed job rebroadcast sending duplicate jobs. Rebroadcasting should work with miners such as bfgminer now.
2014-04-18 14:34:44 -06:00
Matt
a4b087cec4
Fixed block solutions not being reported
2014-04-18 13:33:17 -06:00
Matthew Little
3db1b47199
Changes in how max difficulty and share validation works. Should be more accurate for scrypt based algos and x11
2014-04-17 12:52:52 -06:00
Matt
ca27990228
Updated readme overscrolling text
2014-04-16 17:59:13 -06:00
Matt
5d236c63fb
Added documentation for p2p usage
2014-04-16 11:50:58 -06:00
LucasJones
0de1e50f59
Some work on the p2p system
...
Fix several bugs in peer.js and enable it to successfully connect to a peer (tested with bitcoind).
2014-04-16 13:14:29 +01:00
LucasJones
cf3ffa375d
Improve stratum message handling
...
Prevent the case where multiple messages are chunked together without being processed (occasionally leading to the buffer growing too large and the client being kicked).
Recognize messages consisting only of spaces as malformed.
2014-04-16 03:28:29 +01:00
Matt
fefa6986ea
Added official haproxy support/configuration. Optimized/fixed banning.
2014-04-15 16:37:04 -06:00
suchpool
911ba75d75
Update to stratum.js
...
I got this handed to me by zone117x to enable the haproxy to send the real user ip using the send-proxy flag. He will re-work it and integrate it better, but I've pushed this commit for now for those who want to have it working.
Also, I fixed an issue where miners using Uppercase characters in their workers wouldn't get authed by the stratum. I simply added .toLowerCase(); where the stratum looks in the db for the workername.
2014-04-15 04:20:26 -04:00
Jerry Brady
7f9623b2f8
Keccak hash rate adjustment per piotrrojek
2014-04-09 01:40:15 +00:00
Matt
91940045ca
Exposed vardiff object for external use
2014-04-08 12:24:24 -06:00
Matt
a9208a39d3
Added check for if daemons config is not array
2014-04-08 11:41:50 -06:00
Matt
86a4c05429
Added check for missing daemon config
2014-04-08 11:38:36 -06:00
Jerry Brady
7bdf345843
fixes to handle proxy switching accounting
2014-04-07 02:34:44 +00:00
Matthew Little
54b73dd0df
Added low share diff tolerance.
2014-04-03 14:38:40 -06:00
Matt
d8abc4008d
Accept low shares within a threshold - not finished
2014-04-03 12:31:48 -06:00
Matt
68f9fb566c
Added "emitInvalidBlockHashes" option for those in MPOS mode that require it
2014-04-02 13:01:45 -06:00
Matt
78f6a8c2e6
Change diffs to stay in buffer or bignum format rather than hex or js number
2014-04-01 22:22:47 -06:00
Matt
7d5c7ed277
Added check to see if a submitted share matched a miner's previous difficulty from before vardiff retarget.
2014-04-01 16:58:20 -06:00
Matt
1e9bd77072
Use truncated diff1 (max difficulty) for algos by default. Report difficulty of low-diff shares.
2014-04-01 16:31:34 -06:00
Matt
bbb759cf37
Refactored pukkeyToScript for clarity
2014-04-01 11:18:31 -06:00
Matt
e049c413ba
Refactored addressToScript for clarity
2014-04-01 10:29:38 -06:00
Matt
a50beb1932
Added jobRebroadcastTimeout configuration
2014-04-01 10:10:50 -06:00
Matt
a6e38a6bb0
Comment for hardcoding diff
2014-03-31 18:07:52 -06:00
Matt
d27f384461
Comment for hardcoding diff
2014-03-31 18:06:13 -06:00
Matt
4007a7e30c
Made scrypt-n have configurable timeTables.
2014-03-31 16:40:22 -06:00
Matt
2d069546cc
Increased percent digits
2014-03-30 17:15:34 -06:00
Matt
244d3a406d
1) Updated x11 to more accurate diff. 2) Low diff shares report percent off now - to detect if diff is too hard or you just have abusing miners. 3) Only 1 thread does the rpc calls to generate blockchain sync status
2014-03-30 17:03:23 -06:00
Matt
8505ca6c50
Port diff warnings were happening on accident
2014-03-30 14:39:07 -06:00
Matt
6c39d2d201
Fixed multiplier for x11
2014-03-30 04:15:06 -06:00
Matt
70c93178c6
Merged all hashing algos into one native addon, hurray! Diffs are dynamically calculated based off values in coin source code.
2014-03-30 03:09:44 -06:00
Matt
fa0414ee6d
Ignore mining.get_transactions...
2014-03-29 19:22:05 -06:00
Matt
f7475a7fe8
Fixed broken hashing for sha256d
2014-03-29 14:01:32 -06:00
Matt
aacd5be06a
More research on multi-algo
2014-03-28 16:40:26 -06:00
Matt
71d5f41257
Put all the different hashing algo info in the same place. Attempted to add keccak - it may or may not work.
2014-03-27 18:10:38 -06:00
Matt
615c1dbfbf
Better logging..
2014-03-27 09:33:13 -06:00
Matt
c8355ea211
Prettier log messages on init
2014-03-26 23:25:56 -06:00
Matt
b05f7689f3
Restructured pool object - much cleaner and easier to follow flow.
2014-03-26 22:41:25 -06:00
Matt
5b849dce59
Updated some git naming info
2014-03-26 20:13:25 -06:00
Matthew Little
41b121ab56
Fixed bugs that happen when banning is disabled. Attempted to add keccak (maxcoin).
2014-03-26 15:07:03 -06:00
Matt
1ae82cb21b
Fixed difficulty not being correct for anything not scrypt. Fixed maxDiff for x11 hash.
2014-03-25 15:52:45 -06:00
Matt
57d2f02b28
Show progress is module was spawned without forkid
2014-03-23 22:24:57 -06:00
Matt
ffc01054c6
Added fixes for POS. And when getblocktemplate fails because its out of sync then it shows syncing progress :)
2014-03-23 22:22:01 -06:00
Matt
32dc22944e
Better logging
2014-03-23 00:16:22 -06:00
Matt
a07bfd3a2e
Refactored fix for previous commit
2014-03-22 12:44:12 -06:00
Daniel Zuwala
e1d9332e9a
Fixed issue #39
2014-03-21 21:12:25 +01:00
Matt
b965b2d61d
Another fix where vardiff was breaking things
2014-03-20 12:20:08 -06:00
Matt
b2052b6fbd
Fixed vardiff (thanks pokecheck)
2014-03-20 01:24:13 -06:00
Matt
ed75a50d11
Do not depend on getmininginfo to see network diff
2014-03-19 15:20:06 -06:00
Matt
50c8fb7c1b
Added txRefreshInterval
2014-03-19 14:52:27 -06:00
Matt
98d3dcc532
Added log error for socket error
2014-03-15 17:50:10 -06:00
Matt
5fd4097ce6
Removed console.logs not needed
2014-03-14 17:50:11 -06:00
Matt
b85f78ef09
Fixed tx was removed during merge
2014-03-14 17:37:10 -06:00
Matt
a4ba169300
Fixed typo in stratum.js
2014-03-14 16:25:35 -06:00
Andrea
bcad84af80
Fixed merging shit lol
2014-03-14 20:53:20 +00:00
Andrea
a4f302b526
Stuff for miners switch
2014-03-14 19:11:52 +00:00
Matt
7cf448d1e2
Added reward to share emit (for payment processing ;) )
2014-03-12 15:55:58 -06:00
Matt
585baf7b92
Added tx to share emit
2014-03-09 20:32:24 -06:00
Matt
a608380597
Catch error better for invalid rpc auth
2014-03-09 13:28:39 -06:00
Matt
4a088b19fc
Fix for miners disconnecting. Jobs are broadcasted at least every 30 seconds.
2014-03-09 13:16:47 -06:00
Bradley Matusiak
80658e8824
Update varDiff.js
...
options where not defined.. turned out its under key in ports object
2014-03-07 03:31:18 -05:00
Bradley Matusiak
41fcb8b204
Update varDiff.js
2014-03-07 03:03:04 -05:00
Matt
f43a5833cf
Added the gibberish mining.set_difficulty flag to subscription - needed by some miners
2014-03-06 15:55:10 -07:00
Matt
bd2de18dab
Made ban purge interval a config
2014-03-06 14:27:23 -07:00
Matt
43aa152c85
Added worker banning feature and updated readme
2014-03-06 13:46:16 -07:00
Matt
56e1905bb3
connection timeout to ms
2014-03-06 01:52:24 -07:00
Matt
7dbcc4f863
Updated readme desc
2014-03-06 01:50:43 -07:00
Matt
78d2e9bb14
Bug fix with stratum auth
2014-03-04 13:24:24 -07:00
Matt
98e57a1712
Removed innaccurate log message
2014-03-04 01:34:24 -07:00
Matt
eaf8f99d30
Added support for multiple ports with their own diffs and vardiff
2014-03-03 22:54:20 -07:00
Andrea Baccega
1716d6d738
Fixes issue #17 . Damn semicolumn!
2014-03-03 22:16:10 +01:00
Andrea Baccega
db331a697c
Fix issue #16
...
Fix issue #16
2014-03-03 09:38:22 +01:00
Andrea Baccega
1e3c47d527
Refactored handleAuthorize to accept a new parameter used to reply or not to the socket
2014-03-02 15:57:06 +01:00
Matt
a0a46621a2
Restructured module - removed stratum object so only pool object is exposed
2014-03-01 12:18:18 -07:00
Andrea Baccega
75dfeccd8c
Added basic API + first draft of miner moving methods
2014-03-01 20:04:13 +01:00
Matt
06e882d80e
Moved blocknotify related code out of this repo into the portal repo where it is more appropriately used
2014-02-28 20:13:51 -07:00
Matt
c81d9c463a
Refactored configuration options to preparation for portal software
2014-02-27 16:59:32 -07:00
Matt
b33d5f7941
Made network difficulty different than share difficulty - had accidently made them duplicate
2014-02-27 12:32:54 -07:00
Matt
b6c8039168
Fixed type rcpCommand -> rpcCommand lol
2014-02-27 11:40:50 -07:00
Matthew Little
d45c2fadc6
Merge pull request #13 from bricecarpentier/master
...
Fixed issue #12
2014-02-27 11:33:42 -07:00
Matt
6cc97aff5b
Better error handling when dealing with multiple RPC daemons
2014-02-27 11:27:09 -07:00
Brice Carpentier
eb8907e1a9
fixed #12 JobManager's newBlock event never gets emitted
...
The `init` function does not auto-execute anymore. It is instead added as a public member for `DaemonInterface` and called by `Pool.SetupDaemonInterface`.
2014-02-27 10:27:43 +01:00
Matt
16807d3226
Added more details for upcoming new hashing algos
2014-02-27 01:31:17 -07:00
Matt
4bad017613
Added block/network difficulty to pool on share emitter
2014-02-27 01:26:43 -07:00
Matt
2d1b23ddb8
Minor logging improvements
2014-02-27 00:25:23 -07:00
Matt
0f38fd5549
Fixed bug where block was not being reported as found when it actually was
2014-02-26 22:56:47 -07:00
Matt
57f8dc3ffa
Add block height to data emitted on pool share
2014-02-26 21:34:04 -07:00
Matt
79c1a95b59
Switch vardiff.mode to safe by default.
2014-02-26 21:21:41 -07:00
Matt
5b0c39e840
Fix for broken block polling
2014-02-26 18:37:12 -07:00
Matt
2d3416a02f
Added support for multiple daemons/rpc for redundancy when they occasionally die or drop out-of-sync
2014-02-26 18:16:18 -07:00
Matt
37ab36f776
Check for updates with block transactions
2014-02-25 14:19:11 -07:00
Matthew Little
6d310ef968
Cleaner message stream reading
2014-02-22 21:13:14 -07:00
Matthew Little
47892ab6d8
Cleaner message stream reading
2014-02-22 20:52:11 -07:00
Matthew Little
0a6f05a067
Update peer.js
...
Added documentation for relay transaction flag.
2014-02-22 19:28:02 -07:00
Matthew Little
69feb04da1
Convert diff dividend to bignum only on init.
2014-02-21 23:09:02 -07:00
Matthew Little
070d7c2f2a
Merge pull request #7 from bart-is/master
...
Fixed calculating user share target by using bignum
2014-02-21 21:09:25 -07:00
Matt
31d42f3f51
Began work on creating a peer node module for more efficient block notifications
2014-02-21 17:49:59 -07:00
bart-is
b2f4596f1c
Fixed calculating user share target by using bignum
2014-02-21 23:38:15 +00:00
Matt
b5da5857be
Close socket on flooding detection
2014-02-20 16:32:13 -07:00
Matt
04ba84f185
Closes socket when receiving malformed messages from client. Node-stratum now passes 20k concurrent requests with apache benchmark test.
2014-02-20 15:49:43 -07:00
Matt
422822ff14
Very miner code reformatting
2014-02-20 00:14:19 -07:00
Matt
a202be4976
Added log message for if running on testnet or live blockchain
2014-02-20 00:11:30 -07:00
Matt
c898ecd52c
Updated some comments
2014-02-20 00:02:18 -07:00
Matt
2f4425a087
Updated readme setup options
2014-02-19 23:46:14 -07:00
Matt
1b7a0fd7ad
vardiff mode
2014-02-19 17:26:20 -07:00
Andrea Baccega
969292c111
Removed debuglogging
...
Moved the difficultyChanged code
2014-02-20 01:04:04 +01:00
Andrea Baccega
3ed4e93b5f
Refactored Matthew fix for vardiff.
...
Fixed .size() bug that was causing crash
Merge branch 'master' of https://github.com/zone117x/node-stratum
Conflicts:
lib/jobManager.js
2014-02-20 00:45:32 +01:00
Matt
25df42692c
Uses pendingDifficulty
2014-02-19 16:32:38 -07:00
Andrea Baccega
04ddb472ee
Fixed nTime check. We were comparing the nTime(hex) with an int. So string comparison were going on!
2014-02-20 00:09:15 +01:00
Matt
9d8255a620
Vardiff perfect fix
2014-02-19 16:07:25 -07:00
Matt
96cfc412a8
Added random or configurable instance ID
2014-02-19 15:53:36 -07:00
Matt
d6b99ba0d9
Added X11-hashing for DarkCoin
2014-02-19 14:59:39 -07:00
Matt
c8553e63af
Fixed duplicate shares on vardiff difficulty update. Added more comments.
2014-02-19 13:54:59 -07:00
Matt
0dcccbd56e
Fixed duplicate shares on vardiff difficulty update. Added more comments.
2014-02-19 13:52:43 -07:00
Matt
897dadbf11
Fixed duplicate shares on vardiff difficulty update. Added more comments.
2014-02-19 13:46:17 -07:00
Andrea Baccega
3054616736
Fixed getdifficulty request to rpc
...
Fixed vardiff (currently not taking into account daemon difficulty since it looks like it's non-sense)
2014-02-19 01:15:30 +01:00
Matt
700160fdb9
Another fix for serializing height in coinbase. and removed old code
2014-02-18 14:31:46 -07:00
Matt
3e77791509
Another fix for serializing height in coinbase. and removed old code
2014-02-18 14:27:48 -07:00
Matt
5328250d06
Fix packInt64
2014-02-18 13:57:52 -07:00
Matt
9edaa33c8b
Fix for counter
2014-02-18 13:55:45 -07:00
Matt
028321a248
Fix for counter
2014-02-18 13:55:09 -07:00
Matt
880c9d06a8
Fix for counter
2014-02-18 13:53:31 -07:00
Matt
f8e0363cda
Fixed bug in util.packUInt16LE
2014-02-18 13:42:16 -07:00
Matt
d0953c4196
Removed binpack as dependency. Possible fix with invalid height in coinbase problem.
2014-02-18 13:35:23 -07:00
Andrea Baccega
bda4c57bd9
Fixed crash when running over a POS coin
...
Added emitLog for debugging the Block Submit
2014-02-14 12:03:25 +01:00
Andrea Baccega
e1c143de18
Merge branch 'master' of https://github.com/zone117x/node-stratum
...
Conflicts:
lib/pool.js
2014-02-13 22:25:33 +01:00
Andrea Baccega
4fdd4fcf51
Fixed a couple of bugs that were preventing the thing to start in case of POS
2014-02-13 22:23:51 +01:00
Matt
6dde238374
Added POS and transaction comment support
2014-02-13 14:16:07 -07:00
Matt
863c8bbf5f
Added POS and transaction comment support
2014-02-13 14:02:58 -07:00
Matt
4691df0dc5
Added POS and transaction comment support
2014-02-13 13:59:47 -07:00
Brice Carpentier
bf6f976ab0
fixed variable name mismatch
2014-02-09 16:40:33 +01:00
Matthew Little
d5fdc519e5
Added socket buffer flooding detection
2014-01-17 14:21:18 -07:00
Matthew Little
d38b332f81
Better errors on init
2014-01-17 12:48:23 -07:00
Matthew Little
beff912825
Better errors on init
2014-01-17 12:41:35 -07:00
Matthew Little
6cdc9214ac
Added events for mpos compatibility
2014-01-16 17:21:23 -07:00
Matthew Little
524e366dba
Added pool.start() so log event can be hooked in time for initialization
2014-01-16 12:27:27 -07:00
Matthew Little
1205706ca0
vardiff bug fixes
2014-01-16 12:17:48 -07:00
Matthew Little
08e16cfb28
some comments
2014-01-16 10:05:44 -07:00
Matthew Little
e1c24559f0
Added initial vardiff. Needs testing...
2014-01-15 21:54:41 -07:00
Matthew Little
cca1313430
Added initial vardiff. Needs testing...
2014-01-15 20:57:18 -07:00
Matthew Little
13b04ab509
Added initial vardiff. Needs testing...
2014-01-15 20:56:55 -07:00
Matthew Little
8e3b28cea3
Fixed up error handling for stratum socket
2014-01-15 17:52:05 -07:00
Matthew Little
e02b265d13
Added lots of comments, cleaned up a some code
2014-01-15 17:37:43 -07:00
Matthew Little
11338e0f16
Optimized generation transaction building. Should be a bit faster.
2014-01-15 16:49:22 -07:00
Matthew Little
cb5d7c7bdc
Add check for if submitblock was successful and refined the data emitted by onShare
2014-01-15 16:03:30 -07:00
Matthew Little
cbcaa1cf98
Added proper block hash to share solution. Added members to emitted share data.
2014-01-14 18:40:19 -07:00
Andrea Baccega
61db6d7ea4
Removed jobs object from jobManager since we only need one job! There's no need to keep the olders in memory.
...
Refactored, a bit, the emit log event introducing a key for every log message Current keys are:
- 'client': for all the client related events
- 'submitblock': dedicated only to events about the block submission!
- 'system': all log events about the stratum pool
2014-01-14 14:32:30 +01:00
Matthew Little
a67082131d
Updated structure
2014-01-13 19:02:07 -07:00
Matthew Little
5e8353edc8
Updated structure
2014-01-13 18:06:39 -07:00
Matthew Little
cea68b771f
Updated structure
2014-01-13 17:45:10 -07:00