Fixed mpos compatibility layer
This commit is contained in:
parent
b0f70f840f
commit
c7e61d681b
|
@ -1,5 +1,5 @@
|
||||||
var mysql = require('mysql');
|
var mysql = require('mysql');
|
||||||
|
var cluster = require('cluster');
|
||||||
module.exports = function(logger, poolConfigs){
|
module.exports = function(logger, poolConfigs){
|
||||||
|
|
||||||
var dbConnections = (function(){
|
var dbConnections = (function(){
|
||||||
|
@ -92,14 +92,24 @@ module.exports = function(logger, poolConfigs){
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
this.handleShare = function(isValidShare, isValidBlock, data){
|
this.handleShare = function(data){
|
||||||
|
var isValidShare = data.isValidShare;
|
||||||
|
var isValidBlock = data.isValidBlock;
|
||||||
if ((!data.coin in dbConnections)) return;
|
if ((!data.coin in dbConnections)) return;
|
||||||
|
|
||||||
var connection = dbConnections[data.coin];
|
var connection = dbConnections[data.coin];
|
||||||
|
var dbData = [
|
||||||
|
data.share.ip,
|
||||||
|
data.share.worker,
|
||||||
|
isValidShare ? 'Y' : 'N',
|
||||||
|
isValidBlock ? 'Y' : 'N',
|
||||||
|
data.share.difficulty,
|
||||||
|
typeof(data.share.error)==='undefined'?null:data.share.error,
|
||||||
|
typeof(data.solution)==='undefined'?'':data.solution // solution?
|
||||||
|
];
|
||||||
connection.query(
|
connection.query(
|
||||||
'INSERT INTO `shares` SET time = NOW(), rem_host = ?, username = ?, our_result = ?, upstream_result = ?, difficulty = ?, reason = ?, solution = ?',
|
'INSERT INTO `shares` SET time = NOW(), rem_host = ?, username = ?, our_result = ?, upstream_result = ?, difficulty = ?, reason = ?, solution = ?',
|
||||||
[data.ip, data.worker, isValidShare ? 'Y' : 'N', isValidBlock ? 'Y' : 'N', data.difficulty, data.error, data.solution],
|
dbData,
|
||||||
function(err, result) {
|
function(err, result) {
|
||||||
if (err)
|
if (err)
|
||||||
logger.logError('shareProcessor', 'mysql', 'MySQL insert error when adding share: ' +
|
logger.logError('shareProcessor', 'mysql', 'MySQL insert error when adding share: ' +
|
||||||
|
|
|
@ -28,8 +28,9 @@ module.exports = function(logger){
|
||||||
break;
|
break;
|
||||||
case 'mposAuth':
|
case 'mposAuth':
|
||||||
var callbackId = message.callbackId;
|
var callbackId = message.callbackId;
|
||||||
if (callbackId in mposAuthCallbacks)
|
if (callbackId in mposAuthCallbacks) {
|
||||||
mposAuthCallbacks[callbackId](message.authorized);
|
mposAuthCallbacks[callbackId](message.authorized);
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
@ -93,7 +94,7 @@ module.exports = function(logger){
|
||||||
|
|
||||||
|
|
||||||
var pool = Stratum.createPool(poolOptions, authorizeFN);
|
var pool = Stratum.createPool(poolOptions, authorizeFN);
|
||||||
pool.on('share', function(isValidShare, isValidBlock, data){
|
pool.on('share', function(isValidShare, isValidBlock, data, blockHex){
|
||||||
|
|
||||||
var shareData = JSON.stringify(data);
|
var shareData = JSON.stringify(data);
|
||||||
|
|
||||||
|
@ -107,17 +108,18 @@ module.exports = function(logger){
|
||||||
logDebug(logIdentify, 'client', 'Valid share submitted, share data: ' + shareData);
|
logDebug(logIdentify, 'client', 'Valid share submitted, share data: ' + shareData);
|
||||||
process.send({
|
process.send({
|
||||||
type: 'share',
|
type: 'share',
|
||||||
share: shareData,
|
share: data,
|
||||||
coin: poolOptions.coin.name,
|
coin: poolOptions.coin.name,
|
||||||
isValidShare: isValidShare,
|
isValidShare: isValidShare,
|
||||||
isValidBlock: isValidBlock
|
isValidBlock: isValidBlock,
|
||||||
|
solution: blockHex
|
||||||
});
|
});
|
||||||
|
|
||||||
if (isValidBlock){
|
if (isValidBlock){
|
||||||
logDebug(logIdentify, 'client', 'Block found, solution: ' + shareData.solution);
|
logDebug(logIdentify, 'client', 'Block found, solution: ' + shareData.solution);
|
||||||
process.send({
|
process.send({
|
||||||
type: 'block',
|
type: 'block',
|
||||||
share: shareData,
|
share: data,
|
||||||
coin: poolOptions.coin.name
|
coin: poolOptions.coin.name
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue