From c26a7532c98c3c5ac70a4e5e39ada7b2a8633744 Mon Sep 17 00:00:00 2001 From: Keith Yeung <kungfukeith11@gmail.com> Date: Tue, 24 Jan 2023 07:19:45 +0900 Subject: [PATCH] XCM: Add HRMP to SafeCallFilter (#6606) * XCM: Add HRMP to SafeCallFilter * Whitelist several paras_registrar calls --- polkadot/runtime/kusama/src/xcm_config.rs | 10 +++++++++- polkadot/runtime/polkadot/src/xcm_config.rs | 10 +++++++++- polkadot/runtime/rococo/src/xcm_config.rs | 10 +++++++++- polkadot/runtime/westend/src/xcm_config.rs | 10 +++++++++- 4 files changed, 36 insertions(+), 4 deletions(-) diff --git a/polkadot/runtime/kusama/src/xcm_config.rs b/polkadot/runtime/kusama/src/xcm_config.rs index 96679c3919a..f46eca0c818 100644 --- a/polkadot/runtime/kusama/src/xcm_config.rs +++ b/polkadot/runtime/kusama/src/xcm_config.rs @@ -26,7 +26,7 @@ use frame_support::{ traits::{Contains, Everything, Nothing}, weights::Weight, }; -use runtime_common::{xcm_sender, ToAuthor}; +use runtime_common::{paras_registrar, xcm_sender, ToAuthor}; use sp_core::ConstU32; use xcm::latest::prelude::*; use xcm_builder::{ @@ -326,6 +326,14 @@ impl Contains<RuntimeCall> for SafeCallFilter { pallet_nomination_pools::Call::update_roles { .. } | pallet_nomination_pools::Call::chill { .. }, ) | + RuntimeCall::Hrmp(..) | + RuntimeCall::Registrar( + paras_registrar::Call::deregister { .. } | + paras_registrar::Call::swap { .. } | + paras_registrar::Call::remove_lock { .. } | + paras_registrar::Call::reserve { .. } | + paras_registrar::Call::add_lock { .. }, + ) | RuntimeCall::XcmPallet(pallet_xcm::Call::limited_reserve_transfer_assets { .. }) => true, diff --git a/polkadot/runtime/polkadot/src/xcm_config.rs b/polkadot/runtime/polkadot/src/xcm_config.rs index abdd850f9e6..4f817093703 100644 --- a/polkadot/runtime/polkadot/src/xcm_config.rs +++ b/polkadot/runtime/polkadot/src/xcm_config.rs @@ -25,7 +25,7 @@ use frame_support::{ traits::{Contains, Everything, Nothing}, weights::Weight, }; -use runtime_common::{xcm_sender, ToAuthor}; +use runtime_common::{paras_registrar, xcm_sender, ToAuthor}; use sp_core::ConstU32; use xcm::latest::prelude::*; use xcm_builder::{ @@ -290,6 +290,14 @@ impl Contains<RuntimeCall> for SafeCallFilter { pallet_nomination_pools::Call::update_roles { .. } | pallet_nomination_pools::Call::chill { .. }, ) | + RuntimeCall::Hrmp(..) | + RuntimeCall::Registrar( + paras_registrar::Call::deregister { .. } | + paras_registrar::Call::swap { .. } | + paras_registrar::Call::remove_lock { .. } | + paras_registrar::Call::reserve { .. } | + paras_registrar::Call::add_lock { .. }, + ) | RuntimeCall::XcmPallet(pallet_xcm::Call::limited_reserve_transfer_assets { .. }) => true, diff --git a/polkadot/runtime/rococo/src/xcm_config.rs b/polkadot/runtime/rococo/src/xcm_config.rs index 4b6702afa7b..229df3a5df9 100644 --- a/polkadot/runtime/rococo/src/xcm_config.rs +++ b/polkadot/runtime/rococo/src/xcm_config.rs @@ -25,7 +25,7 @@ use frame_support::{ traits::{Contains, Everything, Nothing}, weights::Weight, }; -use runtime_common::{xcm_sender, ToAuthor}; +use runtime_common::{paras_registrar, xcm_sender, ToAuthor}; use sp_core::ConstU32; use xcm::latest::prelude::*; use xcm_builder::{ @@ -261,6 +261,14 @@ impl Contains<RuntimeCall> for SafeCallFilter { pallet_bounties::Call::close_bounty { .. }, ) | RuntimeCall::ChildBounties(..) | + RuntimeCall::Hrmp(..) | + RuntimeCall::Registrar( + paras_registrar::Call::deregister { .. } | + paras_registrar::Call::swap { .. } | + paras_registrar::Call::remove_lock { .. } | + paras_registrar::Call::reserve { .. } | + paras_registrar::Call::add_lock { .. }, + ) | RuntimeCall::XcmPallet(pallet_xcm::Call::limited_reserve_transfer_assets { .. }) => true, diff --git a/polkadot/runtime/westend/src/xcm_config.rs b/polkadot/runtime/westend/src/xcm_config.rs index 5e887dafe9a..ef38ca5d297 100644 --- a/polkadot/runtime/westend/src/xcm_config.rs +++ b/polkadot/runtime/westend/src/xcm_config.rs @@ -24,7 +24,7 @@ use frame_support::{ parameter_types, traits::{Contains, Everything, Nothing}, }; -use runtime_common::{xcm_sender, ToAuthor}; +use runtime_common::{paras_registrar, xcm_sender, ToAuthor}; use sp_core::ConstU32; use xcm::latest::prelude::*; use xcm_builder::{ @@ -201,6 +201,14 @@ impl Contains<RuntimeCall> for SafeCallFilter { pallet_nomination_pools::Call::update_roles { .. } | pallet_nomination_pools::Call::chill { .. }, ) | + RuntimeCall::Hrmp(..) | + RuntimeCall::Registrar( + paras_registrar::Call::deregister { .. } | + paras_registrar::Call::swap { .. } | + paras_registrar::Call::remove_lock { .. } | + paras_registrar::Call::reserve { .. } | + paras_registrar::Call::add_lock { .. }, + ) | RuntimeCall::XcmPallet(pallet_xcm::Call::limited_reserve_transfer_assets { .. }) => true, -- GitLab