Skip to content
  • Branislav Kontur's avatar
    [xcm] Small enhancements for `NetworkExportTable` and `xcm-builder` (#1848) · 5cdd819e
    Branislav Kontur authored
    
    
    ## Summary
    
    This PR introduces several enhancements.
    
    The current implementation of `NetworkExportTable` lacks remote location
    filtering support beyond `NetworkId` lookup. To provide more control and
    granularity, it's essential to allow configuration for bridging to
    different consensus `NetworkId` while restricting access e.g. to
    particular remote parachains.
    
    Additionally, the `StartsWith` and `Equals` and
    `StartsWithExplicitGlobalConsensus` helper functions, which are in
    active use, are moved to the `xcm-builder` and `frame_support` modules
    for better code organization.
    
    Adds a new `LocationWithAssetFilters` filter to enable location-based
    and asset-related filtering. This filter is useful for configuring the
    `pallet_xcm` filter for
    [XcmTeleportFilter](https://github.com/paritytech/polkadot-sdk/blob/master/polkadot/xcm/pallet-xcm/src/lib.rs#L212)
    and
    [XcmReserveTransferFilter](https://github.com/paritytech/polkadot-sdk/blob/master/polkadot/xcm/pallet-xcm/src/lib.rs#L216)
    to restrict specific assets.
    
    Furthermore, the `BridgeMessage` fields are not accessible outside of
    `xcm-builder`, limiting the ability to create custom logic dependent on
    it.
    
    ---------
    
    Co-authored-by: default avatarFrancisco Aguirre <[email protected]>
    5cdd819e