diff --git a/CHANGELOG.md b/CHANGELOG.md index efc2200872..2ece124d38 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,6 +11,10 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). - Fix missing Encointer democracy pallet hook needed for enactment ([polkadot-fellows/runtimes/pull/508](https://github.com/polkadot-fellows/runtimes/pull/508)) - Improve benchmark configuration: fix storage whitelist in benchmarks ([polkadot-fellows/runtimes/pull/525](https://github.com/polkadot-fellows/runtimes/pull/525)) +### Fixed + +- Disallow `add_sub` and `set_subs` from `NonTransfer` proxy type in people chain runtimes ([polkadot-fellows/runtimes#518](https://github.com/polkadot-fellows/runtimes/pull/518)) + ### Added - Location conversion tests for relays and parachains ([polkadot-fellows/runtimes#487](https://github.com/polkadot-fellows/runtimes/pull/487)) diff --git a/system-parachains/people/people-kusama/src/lib.rs b/system-parachains/people/people-kusama/src/lib.rs index a7030d67d5..abb6f2c213 100644 --- a/system-parachains/people/people-kusama/src/lib.rs +++ b/system-parachains/people/people-kusama/src/lib.rs @@ -492,7 +492,11 @@ impl InstanceFilter for ProxyType { c, RuntimeCall::Balances { .. } | // `request_judgement` puts up a deposit to transfer to a registrar - RuntimeCall::Identity(pallet_identity::Call::request_judgement { .. }) + RuntimeCall::Identity(pallet_identity::Call::request_judgement { .. }) | + // `set_subs` and `add_sub` will take and repatriate deposits from the proxied + // account, should not be allowed. + RuntimeCall::Identity(pallet_identity::Call::add_sub { .. }) | + RuntimeCall::Identity(pallet_identity::Call::set_subs { .. }) ), ProxyType::CancelProxy => matches!( c, diff --git a/system-parachains/people/people-polkadot/src/lib.rs b/system-parachains/people/people-polkadot/src/lib.rs index 31abacce2b..2274aa3d70 100644 --- a/system-parachains/people/people-polkadot/src/lib.rs +++ b/system-parachains/people/people-polkadot/src/lib.rs @@ -456,7 +456,11 @@ impl InstanceFilter for ProxyType { c, RuntimeCall::Balances { .. } | // `request_judgement` puts up a deposit to transfer to a registrar - RuntimeCall::Identity(pallet_identity::Call::request_judgement { .. }) + RuntimeCall::Identity(pallet_identity::Call::request_judgement { .. }) | + // `set_subs` and `add_sub` will take and repatriate deposits from the proxied + // account, should not be allowed. + RuntimeCall::Identity(pallet_identity::Call::add_sub { .. }) | + RuntimeCall::Identity(pallet_identity::Call::set_subs { .. }) ), ProxyType::CancelProxy => matches!( c,