From afdcef0d44c23dd6b94ae0145821204d31a68915 Mon Sep 17 00:00:00 2001 From: obigal Date: Sun, 15 Dec 2013 13:25:45 -0500 Subject: [PATCH] support for tx-comment / enable independant configuration --- lib/coinbasetx.py | 13 ++++-- lib/halfnode.py | 117 +++++++++++++++++++++------------------------- 2 files changed, 60 insertions(+), 70 deletions(-) diff --git a/lib/coinbasetx.py b/lib/coinbasetx.py index 3387260..f1fa955 100644 --- a/lib/coinbasetx.py +++ b/lib/coinbasetx.py @@ -35,7 +35,9 @@ if settings.COINDAEMON_Reward == 'POW': tx_out = halfnode.CTxOut() tx_out.nValue = value tx_out.scriptPubKey = coinbaser.get_script_pubkey() - + + if settings.COINDAEMON_SHA256_TX == 'yes': + self.strTxComment = "" self.vin.append(tx_in) self.vout.append(tx_out) @@ -48,7 +50,7 @@ if settings.COINDAEMON_Reward == 'POW': (part1, part2) = self.vin[0]._scriptSig_template self.vin[0].scriptSig = part1 + extranonce + part2 -elif settings.COINDAEMON_Reward == 'POS' and settings.COINDAEMON_SHA256_TX == 'yes': +elif settings.COINDAEMON_Reward == 'POS': class CoinbaseTransaction(halfnode.CTransaction): '''Construct special transaction used for coinbase tx. It also implements quick serialization using pre-cached @@ -81,8 +83,9 @@ elif settings.COINDAEMON_Reward == 'POS' and settings.COINDAEMON_SHA256_TX == ' tx_out.nValue = value tx_out.scriptPubKey = coinbaser.get_script_pubkey() - self.nTime = ntime - self.strTxComment = "Mined By AhmedBodi's CryptoExpert Pools" + self.nTime = ntime + if settings.COINDAEMON_SHA256_TX == 'yes': + self.strTxComment = "" self.vin.append(tx_in) self.vout.append(tx_out) @@ -128,7 +131,7 @@ else: tx_out.nValue = value tx_out.scriptPubKey = coinbaser.get_script_pubkey() - self.nTime = ntime + self.nTime = ntime self.vin.append(tx_in) self.vout.append(tx_out) diff --git a/lib/halfnode.py b/lib/halfnode.py index d0a633a..1aa08f5 100644 --- a/lib/halfnode.py +++ b/lib/halfnode.py @@ -33,7 +33,7 @@ else: print("########################################### NOT Loading POS Support ######################################################") pass -if settings.COINDAEMON_Reward == 'POS' and settings.COINDAEMON_SHA256_TX == 'yes': +if settings.COINDAEMON_SHA256_TX == 'yes': print("########################################### Loading SHA256 Transaction Message Support #########################################################") pass else: @@ -155,74 +155,61 @@ class CTxOut(object): class CTransaction(object): def __init__(self): - if settings.COINDAEMON_Reward == 'POW': - self.nVersion = 1 - self.vin = [] - self.vout = [] - self.nLockTime = 0 - self.sha256 = None - elif settings.COINDAEMON_Reward == 'POS' and settings.COINDAEMON_SHA256_TX == 'yes': - self.nVersion = 1 - self.nTime = 0 - self.vin = [] - self.vout = [] - self.nLockTime = 0 - self.sha256 = None - self.strTxComment = "" - else: - self.nVersion = 1 - self.nTime = 0 - self.vin = [] - self.vout = [] - self.nLockTime = 0 - self.sha256 = None + if settings.COINDAEMON_Reward == 'POW': + self.nVersion = 1 + if settings.COINDAEMON_SHA256_TX == 'yes': + self.nVersion = 2 + self.vin = [] + self.vout = [] + self.nLockTime = 0 + self.sha256 = None + elif settings.COINDAEMON_Reward == 'POS': + self.nVersion = 1 + if settings.COINDAEMON_SHA256_TX == 'yes': + self.nVersion = 2 + self.nTime = 0 + self.vin = [] + self.vout = [] + self.nLockTime = 0 + self.sha256 = None + if settings.COINDAEMON_SHA256_TX == 'yes': + self.strTxComment = "" + def deserialize(self, f): if settings.COINDAEMON_Reward == 'POW': - self.nVersion = struct.unpack("