Page MenuHomePhabricator

Disallow using addresses in createmultisig
Needs RevisionPublic

Authored by deadalnix on Nov 2 2018, 22:36.

Details

Reviewers
schancel
Fabien
Group Reviewers
Restricted Project
Summary

Make createmultisig only accept public keys with the old functionality
marked as deprecated.

Splits _createmultisig_redeemscript into two functions, one for
getting public keys from UniValue and one for getting addresses
from UniValue and then their respective public keys. The one for
retrieving address's public keys is located in rpcwallet.cpp

Adds a test to deprecated_rpc.py for testing the deprecation.

Update the tests to give only public keys to createmultisig.

Depends on D1967 and D2001

Backport of Core PR11415

Test Plan
make VERBOSE=1 check && ./test/functional/test_runner.py

Diff Detail

Repository
rABC Bitcoin ABC
Branch
D2002
Lint
Lint OK
Unit
No Unit Test Coverage
Build Status
Buildable 4428
Build 6921: Bitcoin ABC Teamcity Staging
Build 6920: arc lint + arc unit

Event Timeline

schancel created this revision.Nov 2 2018, 22:36
Herald added a reviewer: Restricted Project. · View Herald TranscriptNov 2 2018, 22:36
schancel updated this revision to Diff 5682.Nov 6 2018, 23:58

Rebase on IsDeprecatedRPCEnabled parameter update

schancel edited the summary of this revision. (Show Details)Nov 7 2018, 00:04
deadalnix commandeered this revision.Jan 4 2019, 14:31
deadalnix added a reviewer: schancel.
deadalnix updated this revision to Diff 6499.Jan 4 2019, 14:33

Rebase, fix build, fix tests

Fabien requested changes to this revision.Jan 9 2019, 16:55
Fabien added a subscriber: Fabien.

Update version in the comments:

  • Deprecate from v0.19
  • Remove from v0.20

Also add an entry in the release note

This revision now requires changes to proceed.Jan 9 2019, 16:55