-
Notifications
You must be signed in to change notification settings - Fork 1.2k
backport: bitcoin#22235, #23635, #23662, #24147, #24152, #24538, #24786, #24796, #24906, #25043, #25067 #6871
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
f557dc4
796fea7
844eaaf
fcfb96e
5867f71
c5b3773
f8c17c6
38bc996
a061cb9
b282987
b8a20d9
9dc3360
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,185 +1 @@ | ||
| ## | ||
| ## dash.conf configuration file. Lines beginning with # are comments. | ||
| ## | ||
|
|
||
| # Network-related settings: | ||
|
|
||
| # Note that if you use testnet or regtest, particularly with the options | ||
| # addnode, connect, port, bind, rpcport, rpcbind or wallet, you will also | ||
| # want to read "[Sections]" further down. | ||
|
|
||
| # Run on the test network instead of the real dash network. | ||
| #testnet=0 | ||
|
|
||
| # Run a regression test network | ||
| #regtest=0 | ||
|
|
||
| # Connect via a SOCKS5 proxy | ||
| #proxy=127.0.0.1:9050 | ||
|
|
||
| # Bind to given address and always listen on it. Use [host]:port notation for IPv6 | ||
| #bind=<addr> | ||
|
|
||
| # Bind to given address and add permission flags to peers connecting to it. Use [host]:port notation for IPv6 | ||
| #whitebind=perm@<addr> | ||
|
|
||
| ############################################################## | ||
| ## Quick Primer on addnode vs connect ## | ||
| ## Let's say for instance you use addnode=4.2.2.4 ## | ||
| ## addnode will connect you to and tell you about the ## | ||
| ## nodes connected to 4.2.2.4. In addition it will tell ## | ||
| ## the other nodes connected to it that you exist so ## | ||
| ## they can connect to you. ## | ||
| ## connect will not do the above when you 'connect' to it. ## | ||
| ## It will *only* connect you to 4.2.2.4 and no one else.## | ||
| ## ## | ||
| ## So if you're behind a firewall, or have other problems ## | ||
| ## finding nodes, add some using 'addnode'. ## | ||
| ## ## | ||
| ## If you want to stay private, use 'connect' to only ## | ||
| ## connect to "trusted" nodes. ## | ||
| ## ## | ||
| ## If you run multiple nodes on a LAN, there's no need for ## | ||
| ## all of them to open lots of connections. Instead ## | ||
| ## 'connect' them all to one node that is port forwarded ## | ||
| ## and has lots of connections. ## | ||
| ## Thanks goes to [Noodle] on Freenode. ## | ||
| ############################################################## | ||
|
|
||
| # Use as many addnode= settings as you like to connect to specific peers | ||
| #addnode=69.164.218.197 | ||
| #addnode=10.0.0.2:9999 | ||
|
|
||
| # Alternatively use as many connect= settings as you like to connect ONLY to specific peers | ||
| #connect=69.164.218.197 | ||
| #connect=10.0.0.1:9999 | ||
|
|
||
| # Listening mode, enabled by default except when 'connect' is being used | ||
| #listen=1 | ||
|
|
||
| # Port on which to listen for connections (default: 9999, testnet: 19999, regtest: 19899) | ||
| #port= | ||
|
|
||
| # Maximum number of inbound + outbound connections (default: 125). This option | ||
| # applies only if inbound connections are enabled; otherwise, the number of connections | ||
| # will not be more than 11: 8 full-relay connections, 2 block-relay-only ones, and | ||
| # occasionally 1 short-lived feeler or extra outbound block-relay-only connection. | ||
| # These limits do not apply to connections added manually with the -addnode | ||
| # configuration option or the addnode RPC, which have a separate limit of 8 connections. | ||
| #maxconnections= | ||
|
|
||
| # Maximum upload bandwidth target in MiB per day (e.g. 'maxuploadtarget=1024' is 1 GiB per day). | ||
| # This limits the upload bandwidth for those with bandwidth limits. 0 = no limit (default: 0). | ||
| # -maxuploadtarget does not apply to peers with 'download' permission. | ||
| # For more information on reducing bandwidth utilization, see: doc/reduce-traffic.md. | ||
| #maxuploadtarget= | ||
|
|
||
| # | ||
| # JSON-RPC options (for controlling a running Dash/dashd process) | ||
| # | ||
|
|
||
| # server=1 tells Dash-Qt and dashd to accept JSON-RPC commands | ||
| #server=0 | ||
|
|
||
| # Bind to given address to listen for JSON-RPC connections. | ||
| # Refer to the manpage or dashd -help for further details. | ||
| #rpcbind=<addr> | ||
|
|
||
| # If no rpcpassword is set, rpc cookie auth is sought. The default `-rpccookiefile` name | ||
| # is .cookie and found in the `-datadir` being used for dashd. This option is typically used | ||
| # when the server and client are run as the same user. | ||
| # | ||
| # If not, you must set rpcuser and rpcpassword to secure the JSON-RPC API. | ||
| # | ||
| # The config option `rpcauth` can be added to server startup argument. It is set at initialization time | ||
| # using the output from the script in share/rpcauth/rpcauth.py after providing a username: | ||
| # | ||
| # ./share/rpcauth/rpcauth.py alice | ||
| # String to be appended to dash.conf: | ||
| # rpcauth=alice:f7efda5c189b999524f151318c0c86$d5b51b3beffbc02b724e5d095828e0bc8b2456e9ac8757ae3211a5d9b16a22ae | ||
| # Your password: | ||
| # DONT_USE_THIS_YOU_WILL_GET_ROBBED_8ak1gI25KFTvjovL3gAM967mies3E= | ||
| # | ||
| # On client-side, you add the normal user/password pair to send commands: | ||
| #rpcuser=alice | ||
| #rpcpassword=DONT_USE_THIS_YOU_WILL_GET_ROBBED_8ak1gI25KFTvjovL3gAM967mies3E= | ||
| # | ||
| # You can even add multiple entries of these to the server conf file, and client can use any of them: | ||
| # rpcauth=bob:b2dd077cb54591a2f3139e69a897ac$4e71f08d48b4347cf8eff3815c0e25ae2e9a4340474079f55705f40574f4ec99 | ||
|
|
||
| # How many seconds Dash Core will wait for a complete RPC HTTP request. | ||
| # after the HTTP connection is established. | ||
| #rpcclienttimeout=30 | ||
|
|
||
| # By default, only RPC connections from localhost are allowed. | ||
| # Specify as many rpcallowip= settings as you like to allow connections from other hosts, | ||
| # either as a single IPv4/IPv6 or with a subnet specification. | ||
|
|
||
| # NOTE: opening up the RPC port to hosts outside your local trusted network is NOT RECOMMENDED, | ||
| # because the rpcpassword is transmitted over the network unencrypted. | ||
|
|
||
| # server=1 tells Dash-Qt to accept JSON-RPC commands. | ||
| # it is also read by dashd to determine if RPC should be enabled | ||
| #rpcallowip=10.1.1.34/255.255.255.0 | ||
| #rpcallowip=1.2.3.4/24 | ||
| #rpcallowip=2001:db8:85a3:0:0:8a2e:370:7334/96 | ||
|
|
||
| # Listen for RPC connections on this TCP port: | ||
| #rpcport=9998 | ||
|
|
||
| # You can use Dash or dashd to send commands to Dash/dashd | ||
| # running on another host using this option: | ||
| #rpcconnect=127.0.0.1 | ||
|
|
||
| # Wallet options | ||
|
|
||
| # Specify where to find wallet, lockfile and logs. If not present, those files will be | ||
| # created as new. | ||
| #wallet=</path/to/dir> | ||
|
|
||
| # Create transactions that have enough fees so they are likely to begin confirmation within n blocks (default: 6). | ||
| # This setting is over-ridden by the -paytxfee option. | ||
| #txconfirmtarget=n | ||
|
|
||
| # Pay a transaction fee every time you send dash. | ||
| #paytxfee=0.000x | ||
|
|
||
| # Miscellaneous options | ||
|
|
||
| # Pre-generate this many public/private key pairs, so wallet backups will be valid for | ||
| # both prior transactions and several dozen future transactions. | ||
| #keypool=100 | ||
|
|
||
| # Maintain coinstats index used by the gettxoutsetinfo RPC (default: 0). | ||
| #coinstatsindex=1 | ||
|
|
||
| # Enable pruning to reduce storage requirements by deleting old blocks. | ||
| # This mode is incompatible with -txindex, -coinstatsindex and -rescan. | ||
| # 0 = default (no pruning). | ||
| # 1 = allows manual pruning via RPC. | ||
| # >=945 = target to stay under in MiB. | ||
| #prune=945 | ||
|
|
||
| # User interface options | ||
|
|
||
| # Start Dash minimized | ||
| #min=1 | ||
|
|
||
| # Minimize to the system tray | ||
| #minimizetotray=1 | ||
|
|
||
| # [Sections] | ||
| # Most options apply to mainnet, testnet and regtest. | ||
| # If you want to confine an option to just one network, you should add it in the | ||
| # relevant section below. | ||
| # EXCEPTIONS: The options addnode, connect, port, bind, rpcport, rpcbind and wallet | ||
| # only apply to mainnet unless they appear in the appropriate section below. | ||
|
|
||
| # Options only for mainnet | ||
| [main] | ||
|
|
||
| # Options only for testnet | ||
| [test] | ||
|
|
||
| # Options only for regtest | ||
| [regtest] | ||
| # This is a placeholder file. Please follow the instructions in `contrib/devtools/README.md` to generate a dash.conf file. |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,80 @@ | ||
| #!/usr/bin/env bash | ||
| # Copyright (c) 2021 The Bitcoin Core developers | ||
| # Distributed under the MIT software license, see the accompanying | ||
| # file COPYING or http://www.opensource.org/licenses/mit-license.php. | ||
|
|
||
| export LC_ALL=C | ||
| TOPDIR=${TOPDIR:-$(git rev-parse --show-toplevel)} | ||
| BUILDDIR=${BUILDDIR:-$TOPDIR} | ||
| BINDIR=${BINDIR:-$BUILDDIR/src} | ||
| DASHD=${DASHD:-$BINDIR/dashd} | ||
| SHARE_EXAMPLES_DIR=${SHARE_EXAMPLES_DIR:-$TOPDIR/contrib/debian/examples/} | ||
| EXAMPLE_CONF_FILE=${EXAMPLE_CONF_FILE:-$SHARE_EXAMPLES_DIR/dash.conf} | ||
|
|
||
| [ ! -x "$DASHD" ] && echo "$DASHD not found or not executable." && exit 1 | ||
|
|
||
| DIRTY="" | ||
| VERSION_OUTPUT=$($DASHD --version) | ||
| if [[ $VERSION_OUTPUT == *"dirty"* ]]; then | ||
| DIRTY="${DIRTY}${DASHD}\n" | ||
| fi | ||
|
|
||
| if [ -n "$DIRTY" ] | ||
| then | ||
| echo -e "WARNING: $DASHD was built from a dirty tree.\n" | ||
| echo -e "To safely generate a dash.conf file, please commit your changes to $DASHD, rebuild, then run this script again.\n" | ||
| fi | ||
|
|
||
| echo 'Generating example dash.conf file in contrib/debian/examples/' | ||
|
|
||
| # create the directory, if it doesn't exist | ||
| mkdir -p "${SHARE_EXAMPLES_DIR}" | ||
|
|
||
| # create the header text | ||
| cat > "${EXAMPLE_CONF_FILE}" << 'EOF' | ||
| ## | ||
| ## dash.conf configuration file. | ||
| ## Generated by contrib/devtools/gen-dash-conf.sh. | ||
| ## | ||
| ## Lines beginning with # are comments. | ||
| ## All possible configuration options are provided. To use, copy this file | ||
| ## to your data directory (default or specified by -datadir), uncomment | ||
| ## options you would like to change, and save the file. | ||
| ## | ||
|
|
||
|
|
||
| ### Options | ||
| EOF | ||
|
|
||
| # parse the output from dashd --help | ||
| # adding newlines is a bit funky to ensure portability for BSD | ||
| # see here for more details: https://stackoverflow.com/a/24575385 | ||
| ${DASHD} --help \ | ||
| | sed '1,/Print this help message and exit/d' \ | ||
| | sed -E 's/^[[:space:]]{2}\-/#/' \ | ||
| | sed -E 's/^[[:space:]]{7}/# /' \ | ||
| | sed -E '/[=[:space:]]/!s/#.*$/&=1/' \ | ||
| | awk '/^#[a-z]/{x=$0;next}{if (NF==0) print x"\n",x="";else print}' \ | ||
| | sed 's,\(^[[:upper:]].*\)\:$,\ | ||
| ### \1,' \ | ||
| | sed 's/[[:space:]]*$//' >> "${EXAMPLE_CONF_FILE}" | ||
|
|
||
| # create the footer text | ||
| cat >> "${EXAMPLE_CONF_FILE}" << 'EOF' | ||
|
|
||
| # [Sections] | ||
| # Most options will apply to all networks. To confine an option to a specific | ||
| # network, add it under the relevant section below. | ||
| # | ||
| # Note: If not specified under a network section, the options addnode, connect, | ||
| # port, bind, rpcport, rpcbind, and wallet will only apply to mainnet. | ||
|
|
||
| # Options for mainnet | ||
| [main] | ||
|
|
||
| # Options for testnet | ||
| [test] | ||
|
|
||
| # Options for regtest | ||
| [regtest] | ||
| EOF | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -63,4 +63,12 @@ Windows | `%APPDATA%\DashCore\` | `C:\Users\username\AppData\Roaming\DashCore\da | |
| Linux | `$HOME/.dashcore/` | `/home/username/.dashcore/dash.conf` | ||
| macOS | `$HOME/Library/Application Support/DashCore/` | `/Users/username/Library/Application Support/DashCore/dash.conf` | ||
|
|
||
| You can find an example dash.conf file in [share/examples/dash.conf](../share/examples/dash.conf). | ||
| An example configuration file can be generated by [contrib/devtools/gen-dash-conf.sh](../contrib/devtools/gen-dash-conf.sh). | ||
| Run this script after compiling to generate an up-to-date configuration file. | ||
| The output is placed under `contrib/debian/examples/dash.conf`. | ||
| To use the generated configuration file, copy the example file into your data directory and edit it there, like so: | ||
|
|
||
| ``` | ||
| # example copy command for linux user | ||
| cp contrib/debian/examples/dash.conf ~/.dashcore | ||
|
Comment on lines
+71
to
+73
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Specify language for fenced code block. The code block lacks a language identifier, which violates markdown linting rules (MD040). Add a language specifier (e.g., Apply this diff: -```
+```bash
# example copy command for linux user
cp contrib/debian/examples/dash.conf ~/.dashcore
-```
+```🧰 Tools🪛 markdownlint-cli2 (0.18.1)71-71: Fenced code blocks should have a language specified (MD040, fenced-code-language) 🤖 Prompt for AI Agents |
||
| ``` | ||
Uh oh!
There was an error while loading. Please reload this page.