private boolean validateBlockWithoutPersisting(final Block block) {

    final BlockValidator blockValidator =
        protocolSchedule.getByBlockHeader(block.getHeader()).getBlockValidator();

    final var validationResult =
        blockValidator.validateAndProcessBlock(
            protocolContext, block, HeaderValidationMode.LIGHT, HeaderValidationMode.FULL, false);

    if (validationResult.isFailed()) {
      LOG.info(
          "Invalid Proposal message, block did not pass validation. Reason {}",
          validationResult.errorMessage);
      return false;
    }

    return true;
  }
Validate proposal.

@param msg the msg
@return the boolean
consensus/ibft/src/main/java/org/hyperledger/besu/consensus/ibft/validation/MessageValidator.java