Commit graph

332 commits

Author SHA1 Message Date
James Dorfman
0027999db1 Merge 002411dc53 into merged_master (Bitcoin PR bitcoin/bitcoin#25157) 2024-08-13 04:12:31 +00:00
James Dorfman
cac4a07224 Merge dd9f61a184 into merged_master (Bitcoin PR bitcoin/bitcoin#25102) 2024-08-09 21:19:15 +00:00
James Dorfman
1fda45d8e8 Merge 3bbc46ddaf into merged_master (Bitcoin PR bitcoin/bitcoin#24632) 2024-07-30 05:26:33 +00:00
James Dorfman
5499524906 Merge d906329c28 into merged_master (Bitcoin PR bitcoin/bitcoin#24681) 2024-07-29 19:05:12 +00:00
Byron Hambly
51fbed170b Merge 3c565302aa into merged_master (Bitcoin PR bitcoin/bitcoin#24409) 2023-07-02 13:45:31 +00:00
Byron Hambly
d8cfd68e37 Merge 48a90c61e2 into merged_master (Bitcoin PR bitcoin/bitcoin#24370) 2023-07-02 06:36:21 +00:00
Byron Hambly
545d29ca21 Merge 85ae549a46 into merged_master (Bitcoin PR bitcoin/bitcoin#24137) 2023-07-02 05:40:27 +00:00
Byron Hambly
d66042de13 Merge 66636ca438 into merged_master (Bitcoin PR bitcoin/bitcoin#24360) 2023-07-01 06:06:18 +00:00
Byron Hambly
47626b5a64 Merge 623745ca74 into merged_master (Bitcoin PR bitcoin/bitcoin#23912) 2023-06-14 15:44:11 +00:00
Byron Hambly
acd5824106 Merge caf8b26b52 into merged_master (Bitcoin PR bitcoin/bitcoin#23175) 2023-05-26 09:24:30 +00:00
Byron Hambly
0486fef47e Merge 3fc3641043 into merged_master (Bitcoin PR bitcoin/bitcoin#22766) 2023-05-16 13:26:27 +00:00
Byron Hambly
177c708c84 Merge ee1294f155 into merged_master (Bitcoin PR bitcoin/bitcoin#23324) 2023-05-14 09:41:42 +00:00
Byron Hambly
2b8eef42dd Merge 1884ce2f4c into merged_master (Bitcoin PR bitcoin/bitcoin#22937) 2023-05-11 12:38:50 +00:00
Byron Hambly
eea9829aa6 Merge 825f4a64e6 into merged_master (Bitcoin PR bitcoin/bitcoin#22976) 2023-04-24 11:40:49 +00:00
James Dorfman
0508c357e9 Merge d809d8bf12 into merged_master (Bitcoin PR bitcoin/bitcoin#22959) 2023-04-21 18:56:41 +00:00
Byron Hambly
d5914ae484 Merge 0de84b7328 into merged_master (Bitcoin PR bitcoin/bitcoin#22544) 2023-04-21 12:12:15 +00:00
James Dorfman
62c3446ccb Merge 1d0c57a05c into merged_master (Bitcoin PR bitcoin/bitcoin#22914) 2023-04-21 05:15:56 +00:00
James Dorfman
24ea38c570 Merge 4bd56bc291 into merged_master (Bitcoin PR bitcoin/bitcoin#22894) 2023-04-20 21:12:16 +00:00
Byron Hambly
d0a717ca58 Merge a70768d159 into merged_master (Bitcoin PR bitcoin/bitcoin#22501) 2023-04-13 12:26:40 +00:00
Byron Hambly
e2ccc3a707 Merge cea38b491f into merged_master (Bitcoin PR bitcoin/bitcoin#22183) 2023-04-11 06:15:07 +00:00
Byron Hambly
e43446ce3d Merge ce0913148b into merged_master (Bitcoin PR bitcoin/bitcoin#22547) 2023-04-09 05:27:10 +00:00
Glenn Willen
72a0ba0291 Merge cac38cdd02 into merged_master (Bitcoin PR bitcoin/bitcoin#21832) 2023-03-21 03:59:44 +00:00
Jon Atack
3a998d2e37 Use steady_clock in ConnectAndCallRPC and inline time call in loop conditional
to avoid unnecessary invocations and an unneeded local variable allocation.
2022-05-17 16:56:50 +02:00
Jon Atack
3799d2dcdd Fix -rpcwait with -netinfo printing negative time durations
Fixes negative time duration values in the "send", "recv",
and "age" columns (potentially the "txn" and "blk" columns also)
for the first run of -rpcwait -netinfo after bitcoind startup.

To reproduce, start bitcoind on mainnet and run
`bitcoin-cli -rpcwait -netinfo <n>` where n is 1 or larger.

The negative times will be larger/more apparent with a slower
CPU speed or e.g. higher checkblocks/checklevel config option
settings.
2022-05-17 16:18:22 +02:00
MacroFake
fab9e8a29c
Remove unused GetTimeSeconds 2022-05-11 16:39:23 +02:00
laanwj
3bbc46ddaf
Merge bitcoin/bitcoin#24632: add (none) in -getinfo Warnings: if no warning returned
0cea7b10f1 print `(none)` if no warnings in -getinfo (/dev/fd0)

Pull request description:

  Adds `(none)` in warnings when no warnings returned by -getinfo

  Reviewers can test this by making the following change in `/src/warnings.cpp`:

  ```diff
  bilingual_str GetWarnings(bool verbose)
  {
      bilingual_str warnings_concise;
      std::vector<bilingual_str> warnings_verbose;

      LOCK(g_warnings_mutex);

      // Pre-release build warning
      if (!CLIENT_VERSION_IS_RELEASE) {
  -        warnings_concise = _("This is a pre-release test build - use at your own risk - do not use for mining or merchant applications");;
  +        warnings_concise = _("");;
  ```

  Before this pull request:

  ```
  $ bitcoin-cli -getinfo
  Chain: regtest
  Blocks: 0
  Headers: 0
  Verification progress: 100.0000%
  Difficulty: 4.656542373906925e-10

  Network: in 0, out 0, total 0
  Version: 239900
  Time offset (s): 0
  Proxies: n/a
  Min tx relay fee rate (BTC/kvB): 0.00001000

  Warnings:
  ```

  After this pull request:

  ```diff
  $ bitcoin-cli -getinfo
  Chain: regtest
  Blocks: 0
  Headers: 0
  Verification progress: 100.0000%
  Difficulty: 4.656542373906925e-10

  Network: in 0, out 0, total 0
  Version: 239900
  Time offset (s): 0
  Proxies: n/a
  Min tx relay fee rate (BTC/kvB): 0.00001000

  Warnings: (none)
  ```

ACKs for top commit:
  jonatack:
    ACK 0cea7b10f1
  laanwj:
    Tested ACK 0cea7b10f1

Tree-SHA512: a12499d11ff84bc954db354f968eb1f5ee4999d8b80581fe0bdf604732b2e2f608cb5c35c4ca8cb5a430f3991954a6207f0758302618662e6b9505044cf2dc95
2022-04-13 21:49:22 +02:00
/dev/fd0
0cea7b10f1 print (none) if no warnings in -getinfo 2022-04-08 20:33:07 +05:30
fanquake
0598f36852
refactor: account for requiring libevent 2.1.8+ 2022-03-30 14:00:12 +02:00
fanquake
2618fb8d15
Output license info when binaries are passed -version
Consolidate to outputting the licensing info when we pass -version to a binary,
i.e bitcoind -version:
```bash
itcoin Core version v22.99.0-fc1f355913f6-dirty
Copyright (C) 2009-2022 The Bitcoin Core developers

Please contribute if you find Bitcoin Core useful. Visit
<https://bitcoincore.org/> for further information about the software.
The source code is available from <https://github.com/bitcoin/bitcoin>.

This is experimental software.
Distributed under the MIT software license, see the accompanying file COPYING
or <https://opensource.org/licenses/MIT>
```
2022-02-22 15:36:19 +00:00
Jon Atack
ce690847b6
cli: describe quality/recency filtering in -addrinfo
Co-authored-by: Martin Zumsande <mzumsande@gmail.com>
2022-02-21 14:16:48 +01:00
MarcoFalke
fa30e62cc6
doc: Rework generate* doc
Can be reviewed with --word-diff-regex=. --ignore-all-space
2022-02-21 11:02:20 +01:00
Jon Atack
a4da16fbd4
Improve -netinfo help based on feedback from users and devs
- clarify that the peer counts table is of reachable networks

- a few other clarifications
2022-02-16 18:38:37 +01:00
Hennadii Stepanov
f47dda2c58
scripted-diff: Bump copyright headers
-BEGIN VERIFY SCRIPT-
./contrib/devtools/copyright_header.py update ./
-END VERIFY SCRIPT-

Commits of previous years:
* 2020: fa0074e2d8
* 2019: aaaaad6ac9
2021-12-30 19:36:57 +02:00
Jon Atack
7b6528746a
cli: hoist networks class data members to a constant 2021-11-11 13:14:01 +01:00
Jon Atack
5bd40a3e84
cli: add cjdns network to -addrinfo and -netinfo 2021-11-11 13:13:59 +01:00
Russell Yanofsky
c5d7e34bd9 scripted-diff: disable unimplemented ArgsManager BOOL/INT/STRING flags
This commit does not change behavior in any way. See previous commit for
complete rationale, but these flags are being disabled because they
aren't implemented and will otherwise break backwards compatibility when
they are implemented.

-BEGIN VERIFY SCRIPT-
sed -i 's:\(ALLOW_.*\)   \(//!< unimplemented\):// \1\2:' src/util/system.h
sed -i '/DISALLOW_NEGATION.*scripted-diff/d' src/util/system.cpp
git grep -l 'ArgsManager::ALLOW_\(INT\|STRING\)'  | xargs sed -i 's/ArgsManager::ALLOW_\(INT\|STRING\)/ArgsManager::ALLOW_ANY | ArgsManager::DISALLOW_NEGATION/g'
git grep -l 'ALLOW_BOOL' -- ':!src/util/system.h' | xargs sed -i 's/ALLOW_BOOL/ALLOW_ANY/g'
-END VERIFY SCRIPT-
2021-10-25 10:44:17 -04:00
Jon Atack
96f469f91b
netinfo: print peer counts for all reachable networks
instead of only for networks we have peer connections to.

Users reported the previous behavior caused confusion,
as no column was printed when a network was reachable
but no peers were connected. Users expected a column
to be printed with 0 peers. This commit aligns
behavior with that expectation.
2021-10-20 15:52:54 +02:00
Russell Yanofsky
6544ea5035 refactor: Block unsafe fs::path std::string conversion calls
There is no change in behavior. This just helps prepare for the
transition from boost::filesystem to std::filesystem by avoiding calls
to methods which will be unsafe after the transaction to std::filesystem
to due lack of a boost::filesystem::path::imbue equivalent and inability
to set a predictable locale.

Co-authored-by: Hennadii Stepanov <32963518+hebasto@users.noreply.github.com>
Co-authored-by: Kiminuo <kiminuo@protonmail.com>
Co-authored-by: MarcoFalke <falke.marco@gmail.com>
2021-10-05 11:10:47 -04:00
Russell Yanofsky
93b9800fec scripted-diff: Rename overloaded int GetArg to GetIntArg
Improve readability of code, simplify future scripted diff cleanup PRs, and be
more consistent with naming for GetBoolArg.

This will also be useful for replacing runtime settings type checking
with compile time checking.

-BEGIN VERIFY SCRIPT-
git grep -l GetArg | xargs sed -i 's/GetArg(\([^)]*\( [0-9]\+\|-1\|port\|BaseParams().RPCPort()\|Params().GetDefaultPort()\|_TIMEOUT\|Height\|_WORKQUEUE\|_THREADS\|_CONNECTIONS\|LIMIT\|SigOp\|Bytes\|_VERSION\|_AGE\|_CHECKS\|Checks() ? 1 : 0\|_BANTIME\|Cache\|BLOCKS\|LEVEL\|Weight\|Version\|BUFFER\|TARGET\|WEIGHT\|TXN\|TRANSACTIONS\|ADJUSTMENT\|i64\|Size\|nDefault\|_EXPIRY\|HEIGHT\|SIZE\|SNDHWM\|_TIME_MS\)\))/GetIntArg(\1)/g'
-END VERIFY SCRIPT-

Co-authored-by: Hennadii Stepanov <32963518+hebasto@users.noreply.github.com>
2021-09-27 06:57:20 -04:00
klementtan
7c3712fa32
cli: Display all proxies in -getinfo 2021-09-20 18:52:04 +08:00
W. J. van der Laan
0de84b7328
Merge bitcoin/bitcoin#22544: cli -addrinfo: drop torv2; torv3 becomes onion per GetNetworkName()
49d503aefa doc: update -addrinfo in release-notes.md and tor.md (Jon Atack)
75ea9ecf11 cli -addrinfo: drop torv2, torv3 becomes onion per GetNetworkName() (Jon Atack)

Pull request description:

  #22050 removed torv2 support from 22.0. For 23.0 and subsequent releases, we can probably remove torv2 from -addrinfo.

  before
  ```
    "addresses_known": {
      "ipv4": 58305,
      "ipv6": 5138,
      "torv2": 0,
      "torv3": 5441,
      "i2p": 14,
      "total": 68898
    }
  ```
  after
  ```
    "addresses_known": {
      "ipv4": 58305,
      "ipv6": 5138,
      "onion": 5441,
      "i2p": 14,
      "total": 68898
    }
  ```
  Per the naming of `netbase.{h, cpp}::GetNetworkName()`, torv3 becomes onion, which is what is printed in the output of getpeerinfo, getnetworkinfo and getnodeaddresses.

ACKs for top commit:
  practicalswift:
    cr ACK 49d503aefa
  Zero-1729:
    tACK 49d503aefa 🧉
  klementtan:
    Code review and tested ACK 49d503aefa

Tree-SHA512: bca52520d8b12c26f1c329d661b9e22c567954ed2af7d2a16d7669eae1a221eada20944f8b2f4e78e31a7190d5f3d3fbfd37509e5edf2d9a3747a0a8f4e375bb
2021-09-16 18:44:20 +02:00
fanquake
6045a14642
util: remove libevent <= 2.0.18 back-compat code
Now that we require libevent >=2.0.21, remove backwards compatibility
code for older versions.
2021-09-09 21:37:42 +08:00
Jon Atack
e952d7557e
netinfo: clarify client and server versions in header 2021-09-05 12:44:16 +02:00
W. J. van der Laan
a70768d159
Merge bitcoin/bitcoin#22501: netinfo: display addr_{processed, rate_limited, relay_enabled} and relaytxes data
218862a018 Display peers in -netinfo that we don't relay addresses to (Jon Atack)
3834e23b25 Display peers in -netinfo that request we not relay transactions (Jon Atack)
0a9ee3a2c7 Simplify a few conditionals in -netinfo (Jon Atack)
5eeea8e257 Add addr_processed and addr_rate_limited stats to -netinfo (Jon Atack)

Pull request description:

  Update CLI -netinfo to display the getpeerinfo `addr_processed`, `addr_rate_limited`, `addr_relay_enabled` and `relaytxes` data with auto-adjusting column widths.

  ```
  $ ./src/bitcoin-cli -netinfo help

    txn      Time since last novel transaction received from the peer and accepted into our mempool, in minutes
             "*" - the peer requested we not relay transactions to it (relaytxes is false)

    addrp    Total number of addresses processed, excluding those dropped due to rate limiting
             "." - we do not relay addresses to this peer (addr_relay_enabled is false)

    addrl    Total number of addresses dropped due to rate limiting
  ```

  ![Screenshot from 2021-08-22 14-31-40](https://user-images.githubusercontent.com/2415484/130355514-f6fd4f21-79d6-463b-9791-de01ebef20b1.png)

ACKs for top commit:
  0xB10C:
    Code review and tested ACK 218862a018
  Zero-1729:
    re-tACK 218862a018
  vasild:
    ACK 218862a018
  jarolrod:
    tACK 218862a018

Tree-SHA512: bb9da4bdd71859b234f6e4c2c46257a57ef0d0e0b363d2b8fded128bcaa28132f64a0a4651c622e1de1e3b7c05c7587a4369e9e79799895884fda9745c63409d
2021-09-02 17:12:48 +02:00
Kiminuo
aa5e7c9471 Fix typo in bitcoin-cli.cpp 2021-08-24 07:44:09 +02:00
Jon Atack
218862a018
Display peers in -netinfo that we don't relay addresses to
i.e. peers where getpeerinfo#addr_relay_enabled is false
2021-08-13 12:20:07 +02:00
Jon Atack
3834e23b25
Display peers in -netinfo that request we not relay transactions
i.e. peers where getpeerinfo#relaytxes is false
2021-08-13 12:19:54 +02:00
Jon Atack
0a9ee3a2c7
Simplify a few conditionals in -netinfo 2021-08-10 12:17:07 +02:00
Jon Atack
5eeea8e257
Add addr_processed and addr_rate_limited stats to -netinfo 2021-08-10 12:17:05 +02:00
klementtan
b851a92c06
cli: Add progress bar for -getinfo
Co-authored-by: jonatack <jon@atack.com>
2021-08-03 00:58:12 +08:00