Skip to content

Commit

Permalink
Changed the x42 MaxOpReturnRelay to 83 (#165)
Browse files Browse the repository at this point in the history
  • Loading branch information
DennisAMenace authored Jun 23, 2020
1 parent 2e01a8c commit 3ad6e00
Showing 1 changed file with 46 additions and 45 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -5,16 +5,17 @@

namespace x42.Networks.Policies
{
/// <summary>
/// Blockcore sample coin-specific standard transaction definitions.
/// </summary>
public class x42StandardScriptsRegistry : StandardScriptsRegistry
{
// See MAX_OP_RETURN_RELAY in stratisX, <script.h>
public const int MaxOpReturnRelay = 40;

// Need a network-specific version of the template list
private readonly List<ScriptTemplate> standardTemplates = new List<ScriptTemplate>
/// <summary>
/// x42 coin-specific standard transaction definitions.
/// </summary>
public class x42StandardScriptsRegistry : StandardScriptsRegistry
{
// See MAX_OP_RETURN_RELAY in Bitcoin Core, <script/standard.h.>
// 80 bytes of data, +1 for OP_RETURN, +2 for the pushdata opcodes.
public const int MaxOpReturnRelay = 83;

// Need a network-specific version of the template list
private readonly List<ScriptTemplate> standardTemplates = new List<ScriptTemplate>
{
PayToPubkeyHashTemplate.Instance,
PayToPubkeyTemplate.Instance,
Expand All @@ -24,39 +25,39 @@ public class x42StandardScriptsRegistry : StandardScriptsRegistry
PayToWitTemplate.Instance
};

public override List<ScriptTemplate> GetScriptTemplates => standardTemplates;

public override void RegisterStandardScriptTemplate(ScriptTemplate scriptTemplate)
{
if (!standardTemplates.Any(template => (template.Type == scriptTemplate.Type)))
{
standardTemplates.Add(scriptTemplate);
}
}

public override bool IsStandardTransaction(Transaction tx, Network network)
{
return base.IsStandardTransaction(tx, network);
}

public override bool AreOutputsStandard(Network network, Transaction tx)
{
return base.AreOutputsStandard(network, tx);
}

public override ScriptTemplate GetTemplateFromScriptPubKey(Script script)
{
return standardTemplates.FirstOrDefault(t => t.CheckScriptPubKey(script));
}

public override bool IsStandardScriptPubKey(Network network, Script scriptPubKey)
{
return base.IsStandardScriptPubKey(network, scriptPubKey);
}

public override bool AreInputsStandard(Network network, Transaction tx, CoinsView coinsView)
{
return base.AreInputsStandard(network, tx, coinsView);
}
}
public override List<ScriptTemplate> GetScriptTemplates => this.standardTemplates;

public override void RegisterStandardScriptTemplate(ScriptTemplate scriptTemplate)
{
if (!this.standardTemplates.Any(template => (template.Type == scriptTemplate.Type)))
{
this.standardTemplates.Add(scriptTemplate);
}
}

public override bool IsStandardTransaction(Transaction tx, Network network)
{
return base.IsStandardTransaction(tx, network);
}

public override bool AreOutputsStandard(Network network, Transaction tx)
{
return base.AreOutputsStandard(network, tx);
}

public override ScriptTemplate GetTemplateFromScriptPubKey(Script script)
{
return this.standardTemplates.FirstOrDefault(t => t.CheckScriptPubKey(script));
}

public override bool IsStandardScriptPubKey(Network network, Script scriptPubKey)
{
return base.IsStandardScriptPubKey(network, scriptPubKey);
}

public override bool AreInputsStandard(Network network, Transaction tx, CoinsView coinsView)
{
return base.AreInputsStandard(network, tx, coinsView);
}
}
}

0 comments on commit 3ad6e00

Please sign in to comment.