@@ -59,8 +59,30 @@ Notable changes
59
59
P2P and network changes
60
60
-----------------------
61
61
62
+ - Added NAT-PMP port mapping support via
63
+ [ ` libnatpmp ` ] ( https://miniupnp.tuxfamily.org/libnatpmp.html ) . (#18077 )
64
+
62
65
Updated RPCs
63
66
------------
67
+
68
+ - Due to [ BIP 350] ( https://github.com/bitcoin/bips/blob/master/bip-0350.mediawiki )
69
+ being implemented, behavior for all RPCs that accept addresses is changed when
70
+ a native witness version 1 (or higher) is passed. These now require a Bech32m
71
+ encoding instead of a Bech32 one, and Bech32m encoding will be used for such
72
+ addresses in RPC output as well. No version 1 addresses should be created
73
+ for mainnet until consensus rules are adopted that give them meaning
74
+ (e.g. through [ BIP 341] ( https://github.com/bitcoin/bips/blob/master/bip-0341.mediawiki ) ).
75
+ Once that happens, Bech32m is expected to be used for them, so this shouldn't
76
+ affect any production systems, but may be observed on other networks where such
77
+ addresses already have meaning (like signet). (#20861 )
78
+
79
+ - The ` getpeerinfo ` RPC returns two new boolean fields, ` bip152_hb_to ` and
80
+ ` bip152_hb_from ` , that respectively indicate whether we selected a peer to be
81
+ in compact blocks high-bandwidth mode or whether a peer selected us as a
82
+ compact blocks high-bandwidth peer. High-bandwidth peers send new block
83
+ announcements via a ` cmpctblock ` message rather than the usual inv/headers
84
+ announcements. See BIP 152 for more details. (#19776 )
85
+
64
86
- ` getpeerinfo ` no longer returns the following fields: ` addnode ` , ` banscore ` ,
65
87
and ` whitelisted ` , which were previously deprecated in 0.21. Instead of
66
88
` addnode ` , the ` connection_type ` field returns manual. Instead of
@@ -72,8 +94,8 @@ Updated RPCs
72
94
` /rest/getutxos ` , ` /rest/block ` deprecated the following fields (which are no
73
95
longer returned in the responses by default): ` addresses ` , ` reqSigs ` .
74
96
The ` -deprecatedrpc=addresses ` flag must be passed for these fields to be
75
- included in the RPC response. This flag/option will be available until v23, at which
76
- point the deprecation will be removed entirely. Note that these fields are attributes of
97
+ included in the RPC response. This flag/option will be available only for this major release, after which
98
+ the deprecation will be removed entirely. Note that these fields are attributes of
77
99
the ` scriptPubKey ` object returned in the RPC response. However, in the response
78
100
of ` decodescript ` these fields are top-level attributes, and included again as attributes
79
101
of the ` scriptPubKey ` object. (#20286 )
@@ -93,6 +115,10 @@ Build System
93
115
New settings
94
116
------------
95
117
118
+ - The ` -natpmp ` option has been added to use NAT-PMP to map the listening port.
119
+ If both UPnP and NAT-PMP are enabled, a successful allocation from UPnP
120
+ prevails over one from NAT-PMP. (#18077 )
121
+
96
122
Updated settings
97
123
----------------
98
124
@@ -121,11 +147,20 @@ Low-level changes
121
147
122
148
RPC
123
149
---
150
+
124
151
- The RPC server can process a limited number of simultaneous RPC requests.
125
- Previously, if this limit was exceeded, ` bitcoind ` would respond with
152
+ Previously, if this limit was exceeded, the RPC server would respond with
126
153
[ status code 500 (` HTTP_INTERNAL_SERVER_ERROR ` )] ( https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#5xx_server_errors ) .
127
154
Now it returns status code 503 (` HTTP_SERVICE_UNAVAILABLE ` ). (#18335 )
128
155
156
+ - Error codes have been updated to be more accurate for the following error cases (#18466 ):
157
+ - ` signmessage ` now returns RPC_INVALID_ADDRESS_OR_KEY (-5) if the
158
+ passed address is invalid. Previously returned RPC_TYPE_ERROR (-3).
159
+ - ` verifymessage ` now returns RPC_INVALID_ADDRESS_OR_KEY (-5) if the
160
+ passed address is invalid. Previously returned RPC_TYPE_ERROR (-3).
161
+ - ` verifymessage ` now returns RPC_TYPE_ERROR (-3) if the passed signature
162
+ is malformed. Previously returned RPC_INVALID_ADDRESS_OR_KEY (-5).
163
+
129
164
Tests
130
165
-----
131
166
0 commit comments