Skip to content

CTransaction.stream_deserialize allows empty witness record when witness is signalled #221

Open
@dgpv

Description

@dgpv

in CTransaction.stream_deserialize(), if it detects that witness is signalled, it just tries to deserialize the witness and does not check if it is null. Core has a check in this case:

         if (!tx.HasWitness()) {
            /* It's illegal to encode witnesses when all witness stacks are empty. */
            throw std::ios_base::failure("Superfluous witness record");
        }

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions