Merge pull request #1 from Retropex/datacarrier-option

add some policy options in ui
This commit is contained in:
Léo Haf 2024-02-07 14:04:14 +01:00 committed by GitHub
commit b37fde68e2
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 119 additions and 0 deletions

View File

@ -35,6 +35,9 @@ const DEFAULT_ADVANCED_SETTINGS = {
maxmempool: 300, maxmempool: 300,
mempoolexpiry: 336, mempoolexpiry: 336,
persistmempool: true, persistmempool: true,
datacarrier: true,
datacarriersize: 42,
permitbaremultisig: false,
maxorphantx: 100, maxorphantx: 100,
reindex: false, reindex: false,
// RPC/REST // RPC/REST
@ -156,6 +159,22 @@ function settingsToMultilineConfString(settings) {
umbrelBitcoinConfig.push('persistmempool=1'); umbrelBitcoinConfig.push('persistmempool=1');
} }
// datacarrier
if (!settings.datacarrier) {
umbrelBitcoinConfig.push("# Relay and mine data carrier transactions.");
umbrelBitcoinConfig.push('datacarrier=0');
}
// datacarriersize
umbrelBitcoinConfig.push("# Maximum size of arbitrary data to relay and mine.");
umbrelBitcoinConfig.push(`datacarriersize=${settings.datacarriersize}`);
// permitbaremultisig
if (settings.permitbaremultisig) {
umbrelBitcoinConfig.push("# Relay non-P2SH multisig.");
umbrelBitcoinConfig.push('permitbaremultisig=1');
}
// maxorphantx // maxorphantx
umbrelBitcoinConfig.push("# Maximum number of orphan transactions to be kept in memory."); umbrelBitcoinConfig.push("# Maximum number of orphan transactions to be kept in memory.");
umbrelBitcoinConfig.push(`maxorphantx=${settings.maxorphantx}`); umbrelBitcoinConfig.push(`maxorphantx=${settings.maxorphantx}`);

View File

@ -655,6 +655,97 @@
</div> </div>
</b-card-body> </b-card-body>
<!-- DATACARRIER -->
<b-card-body class="subsetting-body px-2 px-sm-3">
<div>
<div class="d-flex justify-content-between align-items-center">
<div class="flex-sm-grow-1">
<label class="mb-0" for="mempool">
<p class="subsetting-title font-weight-bold mb-0 mr-1">
Relay transaction with embedded data
<span class="subsetting-config-name text-monospace font-weight-normal d-block">
datacarrier
</span>
</p>
</label>
</div>
<div>
<toggle-switch
id="datacarrier"
class="align-self-center"
:on="settings.datacarrier"
@toggle="status => (settings.datacarrier = status)"
></toggle-switch>
</div>
</div>
<small class="w-lg-75 d-block text-muted mt-1">
Relay and mine data carrier transactions.
</small>
</div>
</b-card-body>
<!-- DATACARRIERSIZE -->
<b-card-body class="subsetting-body px-2 px-sm-3">
<div>
<div class="d-flex justify-content-between align-items-center">
<div class="flex-sm-grow-1">
<label class="mb-0" for="mempoolexpiry">
<p class="subsetting-title font-weight-bold mb-0 mr-1">
Maximum size of relayed transactions with embedded data
<span class="subsetting-config-name text-monospace font-weight-normal d-block">
datacarriersize
</span>
</p>
</label>
</div>
<div class="input-container ml-1">
<b-input-group append="bytes">
<b-form-input
class="advanced-settings-input"
id="datacarriersize"
type="number"
v-model="settings.datacarriersize"
number
></b-form-input>
</b-input-group>
</div>
</div>
<small class="w-lg-75 d-block text-muted mt-1">
Adjust the maximum size of relayed transactions containing arbitrary data.
Note: datacarrier takes precedence over datacarriersize.
</small>
</div>
</b-card-body>
<!-- PERMITBAREMULTISIG -->
<b-card-body class="subsetting-body px-2 px-sm-3">
<div>
<div class="d-flex justify-content-between align-items-center">
<div class="flex-sm-grow-1">
<label class="mb-0" for="mempool">
<p class="subsetting-title font-weight-bold mb-0 mr-1">
Relay old type of multisig transaction
<span class="subsetting-config-name text-monospace font-weight-normal d-block">
permitbaremultisig
</span>
</p>
</label>
</div>
<div>
<toggle-switch
id="permitbaremultisig"
class="align-self-center"
:on="settings.permitbaremultisig"
@toggle="status => (settings.permitbaremultisig = status)"
></toggle-switch>
</div>
</div>
<small class="w-lg-75 d-block text-muted mt-1">
Relay non-P2SH multisig.
</small>
</div>
</b-card-body>
<!-- PRUNE --> <!-- PRUNE -->
<b-card-body class="subsetting-body px-2 px-sm-3"> <b-card-body class="subsetting-body px-2 px-sm-3">
<div> <div>

View File

@ -93,6 +93,15 @@ function validateSettingsRequest(settings) {
// Persist Mempool // Persist Mempool
checkBooleanSetting({ setting: settings.persistmempool, settingName: "Persist Mempool" }); checkBooleanSetting({ setting: settings.persistmempool, settingName: "Persist Mempool" });
// Datacarrier
checkBooleanSetting({ setting: settings.datacarrier, settingName: "datacarrier" });
// Datacarriersize
checkNumberSetting({ setting: settings.datacarriersize, settingName: "datacarriersize", min: 0 });
// Datacarriersize
checkBooleanSetting({ setting: settings.permitbaremultisig, settingName: "permitbaremultisig" });
// Max Orphan Transactions // Max Orphan Transactions
// No min or max specified. // No min or max specified.
checkNumberSetting({ setting: settings.maxorphantx, settingName: "Max Orphan Transactions", min: 0 }); checkNumberSetting({ setting: settings.maxorphantx, settingName: "Max Orphan Transactions", min: 0 });