From c08d8caf4f89c47a80779c903e54176bbe339d30 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pablo=20Andr=C3=A9s=20Dorado=20Su=C3=A1rez?= Date: Fri, 17 May 2024 09:23:15 -0500 Subject: [PATCH] Allow Sending XCM messages using a Signed origin on Kusama (#290) Since the introduction of this origin control, the XCMv3 release has been integrated on Kusama, and now the `xcm-pallet` is perfectly able to prepend a `DescendOrigin` instruction to the sent message when calling `send`. Allowing signed origins to send messages through the network would extend the possibilities for better integrations with parachains. --------- Co-authored-by: fellowship-merge-bot[bot] <151052383+fellowship-merge-bot[bot]@users.noreply.github.com> --- CHANGELOG.md | 1 + relay/kusama/src/xcm_config.rs | 11 ++++++----- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index fad68b5c5d..26b70a801d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -21,6 +21,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). - Remove one-shot migrations from Kusama Coretime ([polkadot-fellows/runtimes#300](https://github.com/polkadot-fellows/runtimes/pull/300)) - Remove DMP queue and allow `system::authorize_upgrade` in XCM's call filter ([polkadot-fellows/runtimes#280](https://github.com/polkadot-fellows/runtimes/pull/280)) +- Allow Sending XCM messages using a Signed origin on Kusama ([polkadot-fellows/runtimes#290](https://github.com/polkadot-fellows/runtimes/pull/290)) ### Fixed diff --git a/relay/kusama/src/xcm_config.rs b/relay/kusama/src/xcm_config.rs index 9c6e8fbe78..316f14ff3a 100644 --- a/relay/kusama/src/xcm_config.rs +++ b/relay/kusama/src/xcm_config.rs @@ -248,20 +248,21 @@ pub type FellowsToPlurality = OriginToPluralityVoice, ); impl pallet_xcm::Config for Runtime { type RuntimeEvent = RuntimeEvent; - // We only allow the root, fellows and the staking admin to send messages. // This is basically safe to enable for everyone (safe the possibility of someone spamming the - // parachain if they're willing to pay the KSM to send from the Relay-chain), but it's useless - // until we bring in XCM v3 which will make `DescendOrigin` a bit more useful. - type SendXcmOrigin = xcm_builder::EnsureXcmOrigin; + // parachain if they're willing to pay the KSM to send from the Relay-chain). + type SendXcmOrigin = + xcm_builder::EnsureXcmOrigin; type XcmRouter = XcmRouter; // Anyone can execute XCM messages locally. type ExecuteXcmOrigin = xcm_builder::EnsureXcmOrigin;