Changeset View
Changeset View
Standalone View
Standalone View
src/validation.cpp
| Show First 20 Lines • Show All 1,590 Lines • ▼ Show 20 Lines | static uint32_t GetNextBlockScriptFlags(const Config &config, | ||||
| // alternative. We also start enforcing push only signatures and | // alternative. We also start enforcing push only signatures and | ||||
| // clean stack. | // clean stack. | ||||
| if (IsMagneticAnomalyEnabled(config, pindex)) { | if (IsMagneticAnomalyEnabled(config, pindex)) { | ||||
| flags |= SCRIPT_VERIFY_CHECKDATASIG_SIGOPS; | flags |= SCRIPT_VERIFY_CHECKDATASIG_SIGOPS; | ||||
| flags |= SCRIPT_VERIFY_SIGPUSHONLY; | flags |= SCRIPT_VERIFY_SIGPUSHONLY; | ||||
| flags |= SCRIPT_VERIFY_CLEANSTACK; | flags |= SCRIPT_VERIFY_CLEANSTACK; | ||||
| } | } | ||||
| // Permanently and retroactively, we start accepting | |||||
| // 65/64-byte Schnorr signatures in CHECKSIG and CHECKDATASIG respectively, | |||||
| // and their verify variants. We also stop accepting 65 byte signatures in | |||||
| // CHECKMULTISIG and its verify variant. | |||||
| flags |= SCRIPT_ENABLE_SCHNORR; | |||||
| // We make sure this node will have replay protection during the next hard | // We make sure this node will have replay protection during the next hard | ||||
| // fork. | // fork. | ||||
| if (IsReplayProtectionEnabled(config, pindex)) { | if (IsReplayProtectionEnabled(config, pindex)) { | ||||
| flags |= SCRIPT_ENABLE_REPLAY_PROTECTION; | flags |= SCRIPT_ENABLE_REPLAY_PROTECTION; | ||||
| } | } | ||||
| return flags; | return flags; | ||||
| } | } | ||||
| ▲ Show 20 Lines • Show All 4,029 Lines • Show Last 20 Lines | |||||