Closed jackrobison closed 5 years ago
Someone to work on?
@BrannonKing, @lbrynaut i don't think returning transaction rejected will be suitable for this error, what you think? I'm to find out incorrect statements compile time, rather than returning error condition in runtime. Updating claimId should not make it with incorrect size (i investigate and still not see how the size can be incorrect) or non-existing claimIds.
@jackrobison if you're able include the specific examples of transactions you're able to broadcast but should not be able to, it'd make this ticket stronger.
Just noting that #192 does not solve the issue posted.
Edit: While it might help a user not create an invalid transaction, a tx created out of band would still be relayed/broadcasted, so it only addresses a small part of the problem.
Edit 2: On second thought, that shouldn't happen. @jackrobison Can you confirm if this issue is requesting not being able to create txs with invalid claims, or if in fact you saw txs with invalid claims being relayed?
@lbrynaut I had encountered this on lbryum-server, where it was running a lbrycrdd node and had made the broadcast
rpc call (passing through a transaction sent to it from a lbryum client). The rpc went through without returning an error (I believe it returned a txid).
I'll try this again later today and post the results.
The sendrawtransaction
method relays messages even if they aren't accepted into the local memory pool. This has been repaired in the upstream bitcoin, in mid 2016.
This is fixed now that we have the upstream master merged.
broadcast
will send transactions containing claim update outputs where the claim id is invalid. Invalid claim id sizes as well as incorrect or non-existent claim ids all get through. Attempting to broadcast such transactions should return a transaction rejected error.