Commit Graph

18446 Commits

Author SHA1 Message Date
Jack Grigg f5e914dfda CI: Migrate from `macos-11` runner to `macos-12` runner
The `macos-11` GitHub runner is deprecated and will be removed on
2024-06-28.
2024-06-24 14:24:34 +00:00
str4d 284c7e665d
Merge pull request #6893 from zcash/deprecating_buster
Deprecating buster
2024-06-13 12:15:16 +01:00
Kris Nuttycombe 3114738556
Merge pull request #6898 from PierreCrb/patch-1
Update README.md: fix discord link
2024-06-12 15:42:44 -06:00
Kris Nuttycombe 4e4295d909
Merge pull request #6880 from jimmycathy/master
chore: remove repetitive words
2024-06-12 15:40:49 -06:00
Kris Nuttycombe 86edc5bad4
Merge pull request #6894 from zcash/version-5.9.1
Zcashd release Version 5.9.1
2024-06-12 15:40:19 -06:00
0xPierre 8614c7a94e
Update README.md: fix discord link 2024-05-30 01:38:50 +02:00
str4d fe6faf49e6
Merge pull request #6897 from str4d/qa-fix-cargo-vet-audit-desc
qa: Simplify description for `license-reviewed` audit criteria
2024-05-24 03:25:12 +01:00
Kris Nuttycombe 457858a33b
Merge pull request #6896 from zcash/release-v5.9.1
Release v5.9.1
2024-05-23 18:00:55 -06:00
Jack Grigg 3744bacc63 qa: Simplify description for `license-reviewed` audit criteria
When aggregating audits, their criteria need to match exactly. The
description for `license-reviewed` previously made specific references
to aspects of this repository that do not apply to `zcash/librustzcash`
or other repos we want to aggregate from.
2024-05-23 19:01:35 +00:00
Kris Nuttycombe 56c58f6e8e make-release.py: Updated book for 5.9.1. 2024-05-23 12:56:26 -06:00
Kris Nuttycombe e1050db9a5 make-release.py: Updated release notes and changelog for 5.9.1. 2024-05-23 12:56:26 -06:00
Kris Nuttycombe 86b4632f4a make-release.py: Updated manpages for 5.9.1. 2024-05-23 12:56:25 -06:00
Kris Nuttycombe d7541a0ed5 make-release.py: Versioning changes for 5.9.1. 2024-05-23 12:53:32 -06:00
Kris Nuttycombe 8b40b16638
Merge pull request #6895 from zcash/release-v5.9.1-rc1
Release v5.9.1 rc1
2024-05-22 14:51:29 -06:00
Kris Nuttycombe ec418e1a5a make-release.py: Updated book for 5.9.1-rc1. 2024-05-22 10:36:47 -06:00
Kris Nuttycombe 29c3da9ceb make-release.py: Updated release notes and changelog for 5.9.1-rc1. 2024-05-22 10:36:47 -06:00
Kris Nuttycombe e1b95dc142 make-release.py: Updated manpages for 5.9.1-rc1. 2024-05-22 10:36:47 -06:00
Kris Nuttycombe b3f45212a2 make-release.py: Versioning changes for 5.9.1-rc1. 2024-05-22 10:33:29 -06:00
Kris Nuttycombe 479945ba81 Update release notes for v5.9.1 release. 2024-05-22 09:57:55 -06:00
Kris Nuttycombe 827ed7e570 Postpone updates for libcxx and native_clang version 18.1.6 2024-05-22 09:13:32 -06:00
str4d e78b3191af
Merge pull request #6781 from daira/disconnect-on-invalid-version-message
Disconnect on a malformed version message, and reject duplicate verack messages
2024-05-22 15:54:33 +01:00
y4ssi 9eb5bae653 deprecating buster 2024-05-20 14:05:46 -06:00
Daira-Emma Hopwood abe934ce79 net: define NodeId as an int64_t
This should make occurrences of NodeId wrapping essentially impossible for
real-world usage.

Backport of https://github.com/bitcoin/bitcoin/pull/10176

[zcashd] I have checked that zcashd has no current uses of NodeId that
depend on it being an `int`. All accesses to the global `nLastNodeId`
are under lock. `NodeId` *is* required to be a signed integral type,
because `-1` is used as a sentinel value. It is also formatted using
the `%d` tinyformat specifier, but unlike the C format specifier it is
inspired by, this correctly handles integral types of arbitrary width.

There are `NodeId` fields in `CNodeStats`, `NodeEvictionCandidate`, and
(test-only) `COrphanTx`, but those types are not serializable, and there
is no other ad-hoc serialization of `NodeId` values apart from its use
in the "id" field of the output from the `getpeerinfo` RPC. `UniValue` has
an override of `pushKV` for `int64_t`, and so that use will correctly
handle values up to the [maximum safe JSON/JavaScript integer](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/MAX_SAFE_INTEGER),
i.e. $2^{53} - 1$. As upstream did, we argue that it is not feasible to
cause that value to be exceeded.

Co-authored-by: Cory Fields <cory-nospam-@coryfields.com>
Signed-off-by: Daira-Emma Hopwood <daira@jacaranda.org>
2024-05-17 13:46:46 +01:00
Daira Emma Hopwood e6ac385de4 Reject duplicate verack.
Co-authored-by: Andrea Lanfranchi <andrea.lanfranchi@gmail.com>
Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2024-05-17 13:46:40 +01:00
Daira Emma Hopwood 285290fc30 Treat a malformed version message as cause for disconnection.
Co-authored-by: Andrea Lanfranchi <andrea.lanfranchi@gmail.com>
Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2024-05-17 13:30:47 +01:00
Daira Emma Hopwood 493acc5dee Fix some issues with handling of version messages:
* fields were deserialized into variables of platform-dependent length;
* pfrom->nVersion was set even if it does not meet the minimum version
  requirements;
* make sure that pfrom->nTimeOffset is set before
  pfrom->fSuccessfullyConnected.

At this point it is still possible for parsing to fail due to a
`std::ios_base::failure`, which will not cause a disconnect.

Co-authored-by: Andrea Lanfranchi <andrea.lanfranchi@gmail.com>
Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2024-05-17 13:30:47 +01:00
Daira Emma Hopwood 150ab1d34c Remove code that is definitely dead, because pfrom->nVersion must be
>= MIN_PEER_PROTO_VERSION (170100) at this point.

Signed-off-by: Daira Emma Hopwood <daira@jacaranda.org>
2024-05-17 13:30:47 +01:00
Kris Nuttycombe 77c5cfe416
Merge pull request #6891 from nuttycom/converttex
Backport upstream bech32m implementation & implement `converttex` RPC method.
2024-05-16 16:20:43 -06:00
jimmycathy b27eae1120 chore: remove repetitive words
Signed-off-by: jimmycathy <clonecode@outlook.com>
2024-05-16 14:00:48 -06:00
Kris Nuttycombe fa3af5f184 Update release notes to note the addition of `z_converttex` 2024-05-16 13:44:15 -06:00
Kris Nuttycombe 069ed753b0 Apply suggestions from code review
Co-authored-by: str4d <thestr4d@gmail.com>
2024-05-16 13:40:55 -06:00
Kris Nuttycombe 90888c63bd Add `converttex` wallet RPC method. 2024-05-16 11:31:34 -06:00
Pieter Wuille bd93cbeb98 Add references for the generator/constant used in Bech32(m)
(cherry picked from commit bitcoin/bitcoin@b8cd2a4292)
2024-05-16 11:31:34 -06:00
Fabian Jahr 67688d3dbb naming nits
(cherry picked from commit bitcoin/bitcoin@03346022d6)
2024-05-16 11:31:24 -06:00
Pieter Wuille 8ed485ff40 Implement Bech32m encoding/decoding
(cherry picked from commit bitcoin/bitcoin@da2bb6976d)
2024-05-16 11:31:14 -06:00
Pieter Wuille bd3983b070 Add some general std::vector utility functions
Added are:

* Vector(arg1,arg2,arg3,...) constructs a vector with the specified
  arguments as elements. The vector's type is derived from the
  arguments. If some of the arguments are rvalue references, they
  will be moved into place rather than copied (which can't be achieved
  using list initialization).

* Cat(vector1,vector2) returns a concatenation of the two vectors,
  efficiently moving elements when relevant.

Vector generalizes (and replaces) the Singleton function in
src/descriptor.cpp, and Cat replaces the Cat function in bech32.cpp

(cherry picked from commit bitcoin/bitcoin@e65e61c812)
2024-05-16 11:30:59 -06:00
Samuel Dobson 53039f6ff9 Assert that the HRP is lowercase in Bech32::Encode
(cherry picked from commit bitcoin/bitcoin@2457aea83c)
2024-05-16 11:30:28 -06:00
Kris Nuttycombe 1f0e133ee2 src/bech32.cpp: Make objects in range declarations immutable by default.
Partial backport of bitcoin/bitcoin@f34c8c466a
2024-05-16 11:30:10 -06:00
murrayn d3be4e28c4 Tighten up bech32::Decode(); add tests.
(cherry picked from commit bitcoin/bitcoin@60f61f9952)
2024-05-16 11:29:14 -06:00
str4d 402d303754
Merge pull request #6886 from daira/author-aliases
Fix a commit miscounting bug in `doc/authors.md`, and add some author aliases
2024-05-13 13:46:18 +01:00
Daira-Emma Hopwood ddd180a092 zcutil/release-notes.py: Make the doc/authors.md file correct Markdown.
Signed-off-by: Daira-Emma Hopwood <daira@jacaranda.org>
2024-05-12 01:29:07 +01:00
Daira-Emma Hopwood bf26e0f555 zcutil/release-notes.py: fix a bug in the counting of commits for each author.
Signed-off-by: Daira-Emma Hopwood <daira@jacaranda.org>
2024-05-12 01:29:07 +01:00
Yass 379fa698b0
Merge pull request #6889 from zcash/ci-skip-fork-permissions
CI: Alter `ci-skip.yml` to run in the context of the base of the PR
2024-05-09 12:36:56 -06:00
Jack Grigg 0e769ec55d CI: Alter `ci-skip.yml` to run in the context of the base of the PR
This enables the workflow to set the "CI / Required status checks"
status to "success" if the PR does not require CI.
2024-05-09 18:01:59 +00:00
str4d 664fd6108f
Merge pull request #6888 from str4d/ci-test-rpc-venv
CI: Alter how RPC test venvs are cached to improve reliability
2024-05-09 16:57:49 +01:00
Jack Grigg 7665bfa8c5 CI: Alter how RPC test venvs are cached to improve reliability 2024-05-09 15:18:31 +00:00
Yass 7901c797fd
Merge pull request #6887 from zcash/ci-fork-permissions
CI: Move required-pass checks behind a `workflow_run` event
2024-05-09 07:19:40 -06:00
Jack Grigg f8e1e8a618 CI: Move required-pass checks behind a `workflow_run` event
This should enable the triggered workflow to have permission to post a
status, even when the triggering workflow is in a fork.
2024-05-09 11:58:23 +00:00
str4d 033e94fbfb
Merge pull request #6885 from zcash/update-deps-5.10
Update dependencies for 5.10.0
2024-05-09 02:04:28 +01:00
Jack Grigg 693ba80276 depends: cxx 1.0.122 2024-05-08 22:41:48 +00:00