Skip to content
Bitcoin Roots

v30.3-roots.1 · Commit 3: [PATCH 03/68] feat(policy): preserve Roots relay and network controls on Core 30.3

src/script/script.h

Before: src/script/script.h · After: src/script/script.h

File metadata
index b556aae6060d61065638b22c7c9d403667e78f61..dbf77a9dd0419934b2bd3dedbda5b1333fd0eaec 100644

Download original patch · Release notes

Diff rows 1–18 of 18. Line numbers refer to the original before/after files.

+ Added− RemovedUnmarked lines are context.

Scroll the code area horizontally to read long lines. Before is on the left; after is on the right. Unified view fits narrow screens more easily.

src/script/script.h CHANGED
@@ -408,6 +408,8 @@ using CScriptBase = prevector<36, uint8_t>;
408
 
409
  bool GetScriptOp(CScriptBase::const_iterator& pc, CScriptBase::const_iterator end, opcodetype& opcodeRet, std::vector<unsigned char>* pvchRet);
410
 
 
 
411
  /** Serialized script, used inside transaction inputs and outputs */
412
  class CScript : public CScriptBase
413
  {
@@ -573,6 +575,10 @@ public:
573
  return (size() > 0 && *begin() == OP_RETURN) || (size() > MAX_SCRIPT_SIZE);
574
  }
575
 
 
 
 
 
576
  void clear()
577
  {
578
  // The default prevector::clear() does not release memory
 
408
 
409
  bool GetScriptOp(CScriptBase::const_iterator& pc, CScriptBase::const_iterator end, opcodetype& opcodeRet, std::vector<unsigned char>* pvchRet);
410
 
411
+ struct CScriptWitness;
412
+
413
  /** Serialized script, used inside transaction inputs and outputs */
414
  class CScript : public CScriptBase
415
  {
 
575
  return (size() > 0 && *begin() == OP_RETURN) || (size() > MAX_SCRIPT_SIZE);
576
  }
577
 
578
+ size_t OPNetWitnessSize(const CScriptWitness& witness) const;
579
+ size_t IsOLGA(size_t remaining_outputs) const;
580
+ std::pair<size_t, size_t> DatacarrierBytes(size_t remaining_outputs, const CScriptWitness* witness = nullptr) const;
581
+
582
  void clear()
583
  {
584
  // The default prevector::clear() does not release memory