commit 6e363bc097a7054d6c89741b34dc9c2b7c04e72d
parent 1a8425ff5daed0deaf059b035c4aac4cf4b0c8b0
Author: ThomasV <thomasv@gitorious>
Date: Wed, 3 Sep 2014 16:35:35 +0200
check length in OP_RETURN
Diffstat:
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/lib/wallet.py b/lib/wallet.py
@@ -740,11 +740,12 @@ class Abstract_Wallet(object):
return default_label
def make_unsigned_transaction(self, outputs, fee=None, change_addr=None, domain=None, coins=None ):
- for type, address, x in outputs:
+ for type, data, value in outputs:
if type == 'op_return':
- continue
+ assert len(data) < 41, "string too long"
+ assert value == 0
if type == 'address':
- assert is_address(address), "Address " + address + " is invalid!"
+ assert is_address(data), "Address " + data + " is invalid!"
amount = sum( map(lambda x:x[2], outputs) )
inputs, total, fee = self.choose_tx_inputs( amount, fee, len(outputs), domain, coins )
if not inputs: