message: Disallow extended encoding for non-witness transactions
  Github-Pull:
  Rebased-From:
diff: @@ -222,6 +222,10 @@ inline void UnserializeTransaction(TxType& tx, Stream& s) {
  for (size_t i = 0; i < tx.vin.size(); i++) {
  s >> tx.vin[i].scriptWitness.stack;
  }
  + if (!tx.HasWitness()) {
  + /* It's illegal to encode witnesses when all witness stacks are empty. */
  + throw std::ios_base::failure("Superfluous witness record");
  + }
  }
  if (flags) {
  /* Unknown flag in the serialization */
  