Remove legacy checkings.
[novacoin.git] / src / script.h
index 157f41f..0b94f41 100644 (file)
@@ -71,9 +71,6 @@ static const unsigned int MANDATORY_SCRIPT_VERIFY_FLAGS = SCRIPT_VERIFY_P2SH;
 // blocks and we must accept those blocks.
 static const unsigned int STRICT_FLAGS = MANDATORY_SCRIPT_VERIFY_FLAGS | STRICT_FORMAT_FLAGS;
 
-// Soft verifications, no extended signature format checkings
-static const unsigned int SOFT_FLAGS = STRICT_FLAGS & ~STRICT_FORMAT_FLAGS;
-
 enum txnouttype
 {
     TX_NONSTANDARD,
@@ -447,7 +444,7 @@ public:
         // Immediate operand
         if (opcode <= OP_PUSHDATA4)
         {
-            uint32_t nSize;
+            uint32_t nSize = OP_0;
             if (opcode < OP_PUSHDATA1)
             {
                 nSize = opcode;
@@ -462,7 +459,6 @@ public:
             {
                 if (end() - pc < 2)
                     return false;
-                nSize = 0;
                 memcpy(&nSize, &pc[0], 2);
                 pc += 2;
             }
@@ -603,9 +599,9 @@ public:
 };
 
 bool IsCanonicalPubKey(const std::vector<unsigned char> &vchPubKey, unsigned int flags);
+bool IsDERSignature(const valtype &vchSig, bool fWithHashType=false, bool fCheckLow=false);
 bool IsCanonicalSignature(const std::vector<unsigned char> &vchSig, unsigned int flags);
 
-
 bool EvalScript(std::vector<std::vector<unsigned char> >& stack, const CScript& script, const CTransaction& txTo, unsigned int nIn, unsigned int flags, int nHashType);
 bool Solver(const CScript& scriptPubKey, txnouttype& typeRet, std::vector<std::vector<unsigned char> >& vSolutionsRet);
 int ScriptSigArgsExpected(txnouttype t, const std::vector<std::vector<unsigned char> >& vSolutions);