message: Ban all peers for all block script failures
  This eliminates a discrepancy between block validation with multiple
  script check threads, versus a single script check thread.
diff: @@ -1998,9 +1998,13 @@ bool CChainState::ConnectBlock(const CBlock& block, CValidationState& state, CBl
  {
  std::vector<CScriptCheck> vChecks;
  bool fCacheResults = fJustCheck; /* Don't cache results if we're actually connecting blocks (still consult the cache, though) */
  - if (!CheckInputs(tx, state, view, fScriptChecks, flags, fCacheResults, fCacheResults, txdata[i], nScriptCheckThreads ? &vChecks : nullptr))
  + if (!CheckInputs(tx, state, view, fScriptChecks, flags, fCacheResults, fCacheResults, txdata[i], nScriptCheckThreads ? &vChecks : nullptr)) {
  + // With parallel script checks, we always set DoS to 100; do
  + // that here as well for simplicity (for now).
  + state.DoS(100, false, state.GetRejectCode(), state.GetRejectReason(), state.CorruptionPossible(), state.GetDebugMessage());
  return error("ConnectBlock(): CheckInputs on %s failed with %s",
  tx.GetHash().ToString(), FormatStateMessage(state));
  + }
  control.Add(vChecks);
  }
  