From 6e363bc097a7054d6c89741b34dc9c2b7c04e72d Mon Sep 17 00:00:00 2001 From: ThomasV Date: Wed, 3 Sep 2014 16:35:35 +0200 Subject: [PATCH] check length in OP_RETURN --- lib/wallet.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/lib/wallet.py b/lib/wallet.py index 4b6398fcb..8f72a1238 100644 --- 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: