dash/doc
pasta 7330982631
Merge #6100: feat: make whitelist works with composite commands for platform needs
85abbb97b4 chore: add release notes for composite command for whitelist (Konstantin Akimov)
78ad778bb0 feat: test composite commands in functional test for whitelist (Konstantin Akimov)
a102a59787 feat: add support of composite commands in RPC'c whitelists (Konstantin Akimov)

Pull request description:

  ## Issue being fixed or feature implemented
  https://github.com/dashpay/dash-issues/issues/66
  https://github.com/dashpay/dash-issues/issues/65

  ## What was done?
  Our composite commands such as "quorum list" have been refactored to make them truly compatible with other features, such as whitelist, see https://github.com/dashpay/dash/pull/6052 https://github.com/dashpay/dash/pull/6051 https://github.com/dashpay/dash/pull/6055 and other related PRs

  This PR makes whitelist feature to be compatible with composite commands.

  Instead implementing additional users such "dapi" better to provide universal way which do not require new build for every new API that has been used by platform, let's simplify things.

  Platform at their side can use config such as this one (created based on shumkov's example):
  ```
  rpc: {
            host: '127.0.0.1',
            port: 9998,
            users: [
              {
                user: 'dashmate',
                password: 'rpcpassword',
                whitelist: null,
                lowPriority: false,
              },
              {
                username: 'platform-dapi',
                password: 'rpcpassword',
                whitelist: [],
                lowPriority: true,
              },
              {
                username: 'platform-drive-consensus',
                password: 'rpcpassword',
                whitelist: [getbestchainlock,getblockchaininfo,getrawtransaction,submitchainlock,verifychainlock,protx_listdiff,quorum_listextended,quorum_info,getassetunlockstatuses,sendrawtransaction,mnsync_status]
                lowPriority: false,
              },
              {
                username: 'platform-drive-other',
                password: 'rpcpassword',
                whitelist: [getbestchainlock,getblockchaininfo,getrawtransaction,submitchainlock,verifychainlock,protx_listdiff,quorum_listextended,quorum_info,getassetunlockstatuses,sendrawtransaction,mnsync_status]
  ],
                lowPriority: true,
              },
            ],
            allowIps: ['127.0.0.1', '172.16.0.0/12', '192.168.0.0/16'],
          },
  ```

  ## How Has This Been Tested?
  Updated functional tests, see commits

  ## Breaking Changes
  n/a

  ## Checklist:
  - [x] I have performed a self-review of my own code
  - [x] I have commented my code, particularly in hard-to-understand areas
  - [x] I have added or updated relevant unit/integration/functional/e2e tests
  - [ ] I have made corresponding changes to the documentation
  - [x] I have assigned this pull request to a milestone

ACKs for top commit:
  UdjinM6:
    LGTM, utACK 85abbb97b4
  PastaPastaPasta:
    utACK 85abbb97b4

Tree-SHA512: 88608179c347420269880c352cf9f3b46272f3fc62e8e7158042e53ad69dc460d5210a1f89e1e09081d090250c87fcececade88e2ddec09f73f1175836d7867b
2024-07-15 11:51:59 -05:00
..
man docs: update manpages for 20.1 2024-03-04 18:44:18 +03:00
release-notes/dash docs: add v20.1.1 release notes 2024-04-03 13:12:29 -05:00
.gitignore
assets-attribution.md
benchmarking.md Merge bitcoin/bitcoin#22292: bench, doc: benchmarking updates and fixups 2024-05-15 03:03:18 +07:00
bips.md Merge #20119: BIP155 follow-ups 2024-01-22 19:47:13 -06:00
bitcoin_logo_doxygen.png
build-freebsd.md Merge bitcoin/bitcoin#24646: doc: remove unneeded documentation on basic package management on FreeBSD 2024-01-01 17:48:18 -06:00
build-netbsd.md Merge bitcoin/bitcoin#25166: doc: Add link to NetBSD release 2024-01-14 11:05:37 -06:00
build-openbsd.md Merge #20512: doc: Add bash as an OpenBSD dependency 2024-04-03 14:11:35 +07:00
build-osx.md Merge #21346: doc: install qt5 when building on macOS 2024-01-23 22:14:10 -06:00
build-unix.md Merge #21205: build: actually fail when Boost is missing 2024-06-20 12:23:12 +07:00
build-windows.md merge bitcoin#22093: Try posix-specific CXX first for mingw32 host 2024-06-25 13:39:57 +00:00
cjdns.md merge bitcoin#24555: create initial doc/cjdns.md for CJDNS how-to documentation 2024-05-29 18:07:45 +00:00
dash-conf.md Merge bitcoin/bitcoin#25883: doc: Security config warning 2024-02-29 09:35:00 -06:00
dependencies.md Merge bitcoin/bitcoin#28769: build: Update qt package up to 5.15.11 2024-05-24 13:21:05 -05:00
descriptors.md Merge bitcoin/bitcoin#25925: doc: add {import,list}descriptors to list of descriptor RPCs 2024-06-08 20:59:36 -05:00
developer-notes.md Merge #20691: ci, doc: Travis CI features and mentions cleanup 2024-03-27 00:48:26 +07:00
dnsseed-policy.md
Doxyfile.in Merge #15382: util: add RunCommandParseJSON 2024-02-01 09:22:03 -06:00
files.md Merge bitcoin/bitcoin#21818: doc: fixup -coinstatsindex help, update bitcoin.conf and files.md 2024-02-27 12:01:02 -06:00
fuzzing.md Merge #20380: doc: Add instructions on how to fuzz the P2P layer using Honggfuzz NetDriver 2024-01-16 09:29:51 -06:00
guix.md Merge #20619: guix: Quality of life improvements 2023-03-26 16:50:26 -05:00
i2p.md merge bitcoin#24555: create initial doc/cjdns.md for CJDNS how-to documentation 2024-05-29 18:07:45 +00:00
init.md Merge #21075: doc: Fix markdown formatting 2024-04-11 02:25:05 +07:00
instantsend.md
JSON-RPC-interface.md merge bitcoin#19762: Allow named and positional arguments to be used together 2023-07-28 00:18:27 -05:00
managing-wallets.md Merge bitcoin/bitcoin#22523: Document about wallet backup and restoration 2023-12-11 15:48:44 -06:00
masternode-budget.md
multiprocess.md Merge #17934: doc: Use CONFIG_SITE variable instead of --prefix option 2024-04-11 02:26:03 +07:00
productivity.md Merge bitcoin/bitcoin#25359: doc: add distcc to productivity notes 2024-02-22 20:58:44 -06:00
psbt.md Merge #16047: doc: analyzepsbt description in doc/psbt.md 2023-02-10 23:34:57 +03:00
README_doxygen.md
README_windows.txt
README.md merge bitcoin#24663: add links to doc/cjdns.md 2024-05-29 18:07:45 +00:00
reduce-memory.md Merge bitcoin/bitcoin#21709: doc: update reduce-memory.md and bitcoin.conf -maxconnections info 2022-04-05 23:10:05 -05:00
reduce-traffic.md merge bitcoin#19191: Extract download permission from noban 2023-06-05 10:11:03 -05:00
release-notes-5342.md docs: add release notes for 5342 (#5568) 2023-09-09 12:26:36 -05:00
release-notes-5493.md docs: Added release notes for #5493 (#5556) 2023-09-07 12:06:28 -05:00
release-notes-5861.md merge bitcoin#19969: Send RPC bug fix and touch-ups 2024-03-07 09:29:09 +00:00
release-notes-5965.md chore: release notes for 5965 with wallet tool improvements 2024-04-12 12:31:48 +07:00
release-notes-5978.md merge bitcoin#22618: Small follow-ups to 21528 2024-04-12 16:55:05 +00:00
release-notes-6017.md chore: add release notes for sethdseed RPC 2024-05-10 14:28:16 +07:00
release-notes-6050.md Merge bitcoin/bitcoin#26628: RPC: Reject RPC requests with same named parameter specified multiple times 2024-06-10 11:26:11 -05:00
release-notes-6078.md rpc: don't use GetUTXOCoin in CDeterministicMN::ToJson() 2024-06-26 11:25:05 +00:00
release-notes-6080.md feat: bump protocol version to distinguish v21 from v20.1 2024-06-25 09:19:50 -05:00
release-notes-6100.md Merge #6100: feat: make whitelist works with composite commands for platform needs 2024-07-15 11:51:59 -05:00
release-notes-14582.md Merge #19743: -maxapsfee follow-up 2024-03-18 16:01:39 +07:00
release-notes-16528.md Merge #6095: fix: createwallet to require 'load_on_startup' for descriptor wallets 2024-07-15 11:51:38 -05:00
release-notes-18202.md Merge #18202: refactor: consolidate sendmany and sendtoaddress code 2024-05-29 13:57:02 +07:00
release-notes-19200.md Merge #19200: rpc: remove deprecated getaddressinfo fields 2024-03-16 02:39:42 +07:00
release-notes-19202.md Merge #19202: log: remove deprecated db log category 2024-05-27 21:55:48 +07:00
release-notes-19405.md Merge #19405: rpc, cli: add network in/out connections to getnetworkinfo and -getinfo 2024-03-16 02:39:45 +07:00
release-notes-19464.md Merge #19464: net: remove -banscore configuration option 2024-03-22 11:08:10 -05:00
release-notes-19469.md Merge #19469: rpc: deprecate banscore field in getpeerinfo 2024-03-22 11:08:10 -05:00
release-notes-19473.md Merge #19473: net: Add -networkactive option 2024-03-06 02:00:39 +07:00
release-notes-19501.md Merge #20043: doc: Add 19501 release notes 2024-05-29 14:03:56 +07:00
release-notes-19725.md Merge #19725: [RPC] Add connection type to getpeerinfo, improve logs 2024-05-29 14:03:55 +07:00
release-notes-19776.md merge bitcoin#19776: expose high bandwidth mode state via getpeerinfo 2024-06-10 17:31:23 +00:00
release-notes-20282.md Merge #20282: wallet: change upgradewallet return type to be an object 2024-03-07 02:06:28 +07:00
release-notes-20286.md merge bitcoin#20286: deprecate addresses and reqSigs from rpc outputs 2024-06-27 19:27:37 +00:00
release-notes-21049.md Merge #21049: Add release notes for listdescriptors RPC 2024-03-09 03:00:29 +07:00
release-notes-21056.md Merge bitcoin/bitcoin#21056: rpc: Add a -rpcwaittimeout parameter to limit time spent waiting 2024-03-22 10:29:15 -05:00
release-notes-21359.md merge bitcoin#21359: include_unsafe option for fundrawtransaction 2024-06-27 19:27:37 +00:00
release-notes-21595.md Merge #21595: cli: create -addrinfo 2024-04-16 09:20:32 -05:00
release-notes-21602.md Merge #21602: rpc: add additional ban time fields to listbanned 2024-04-11 02:26:04 +07:00
release-notes-21832.md merge bitcoin#21832: Implement human readable -getinfo 2024-05-26 22:26:56 +00:00
release-notes-22544.md merge bitcoin#22544: drop torv2; torv3 becomes onion per GetNetworkName() 2024-05-26 22:26:57 +00:00
release-notes-22834.md merge bitcoin#22834: respect -onlynet= when making outbound connections 2024-05-29 18:07:45 +00:00
release-notes-25355.md merge bitcoin#25355: add support for transient addresses for outbound connections 2024-05-29 11:48:37 -05:00
release-notes.md docs: add v20.1.1 release notes 2024-04-03 13:12:29 -05:00
release-process.md docs: update release process for generating seeds: new PR as a reference 2024-03-03 23:34:35 -06:00
REST-interface.md merge bitcoin#20286: deprecate addresses and reqSigs from rpc outputs 2024-06-27 19:27:37 +00:00
shared-libraries.md Merge #20577: doc: libconsensus: add missing error code description, fix NBitcoin link 2024-01-16 07:57:33 -06:00
tor.md Merge #6031: backport: merge bitcoin#23077, #22834, #24165, #24555, #24663, #24205, #24687, #25173, #24991, partial bitcoin#24468 (cjdns support) 2024-06-10 11:11:11 -05:00
translation_process.md Merge #21695: Remove no longer used contrib/bitcoin-qt.pro from the repo 2024-04-16 09:20:31 -05:00
translation_strings_policy.md Merge #16224: gui: Bilingual GUI error messages 2022-04-07 10:41:24 -05:00
zmq.md Merge #16404: qa: Test ZMQ notification after chain reorg 2024-03-18 16:01:40 +07:00

Dash Core

This is the official reference wallet for Dash digital currency and comprises the backbone of the Dash peer-to-peer network. You can download Dash Core or build it yourself using the guides below.

Running

The following are some helpful notes on how to run Dash Core on your native platform.

Unix

Unpack the files into a directory and run:

  • bin/dash-qt (GUI) or
  • bin/dashd (headless)

Windows

Unpack the files into a directory, and then run dash-qt.exe.

macOS

Drag Dash Core to your applications folder, and then run Dash Core.

Need Help?

Building

The following are developer notes on how to build Dash Core on your native platform. They are not complete guides, but include notes on the necessary libraries, compile flags, etc.

Development

The Dash Core repo's root README contains relevant information on the development process and automated testing.

Resources

Miscellaneous

License

Distributed under the MIT software license.