Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feat(xcc): Open access for funding XCC sub-accounts #931

Merged
merged 1 commit into from
May 22, 2024

Conversation

birchmd
Copy link
Member

@birchmd birchmd commented May 22, 2024

Description

Quite a while ago we added the possibility to directly fund an XCC sub-account using a Near function call. The purpose of this function is to enable sponsoring XCC for an address without needing to use bridged wrapped $NEAR (which is somewhat inconvenient to work with).

To make this function work with Aurora Cloud instances, which may not bridge wNEAR at all, the args allow specifying the wNEAR account ID. But the field is optional because on the public Aurora Engine instances you do not need to specify it since the Engine can figure it out independently based on its own configuration.

Previously this XCC funding function was owner-only because if the wNEAR account ID is specified then it must be correct. However, this security restriction is only important if the optional field is actually specified since otherwise the Engine fills in the value itself. This PR makes XCC funding a public function if the wNEAR account ID is not specified.

Performance / NEAR gas cost considerations

N/A

Testing

Existing tests.

@birchmd birchmd requested review from aleksuss and raventid May 22, 2024 13:30
@birchmd birchmd added this pull request to the merge queue May 22, 2024
Merged via the queue into develop with commit a2f0061 May 22, 2024
24 checks passed
@birchmd birchmd deleted the feat/birchmd/open-fund-xcc branch May 22, 2024 14:04
aleksuss pushed a commit that referenced this pull request Oct 10, 2024
## Description

Quite a while ago we added the possibility to directly fund an XCC
sub-account using a Near function call. The purpose of this function is
to enable sponsoring XCC for an address without needing to use bridged
wrapped $NEAR (which is somewhat inconvenient to work with).

To make this function work with Aurora Cloud instances, which may not
bridge wNEAR at all, the args allow specifying the wNEAR account ID. But
the field is optional because on the public Aurora Engine instances you
do not need to specify it since the Engine can figure it out
independently based on its own configuration.

Previously this XCC funding function was owner-only because if the wNEAR
account ID is specified then it must be correct. However, this security
restriction is only important if the optional field is actually
specified since otherwise the Engine fills in the value itself. This PR
makes XCC funding a public function if the wNEAR account ID is not
specified.

## Performance / NEAR gas cost considerations

N/A

## Testing

Existing tests.
@aleksuss aleksuss mentioned this pull request Oct 10, 2024
aleksuss added a commit that referenced this pull request Oct 10, 2024
### Additions

- Added support of CANCUN hardfork by [@mrLSD]. ([#926])
- Added support of EIP-3607 by [@mrLSD]. ([#930])
- Removed restrictions from funding XCC sub-accounts by [@birchmd].
([#931])

### Changes

- Made some EVM gas costs optimisations by [@mrLSD]. ([#934])
- Refactored the gas charge logic form EVM exit reasons by [@mrLSD].
([#935])
- Updated some dependencies and rust-toolchain by [@mrLSD]. ([#936])
- Removed unused `bytes_to_hex` function by [@dwiekawki]. ([#942])
- Added building of actual version of the `near-sandbox` in the
scheduled CI job by [@aleksuss] ([#950])

### Fixes

- Removed duplicated `test` task in the `README.md` by [@dwiekawki].
([#943])
- Fixed some typos in the `README.md` and `Cargo.toml` by [@DemoYeti].
([#945]) ([#946])
- Fixed exceeded prepaid gas error in the `mirror_erc20_token`
transaction by [@aleksuss] ([#951])
- Modified `hardhat.config.js` to support contract verification by
[@spilin] ([#958])

[#926]: #926
[#930]: #930
[#931]: #931
[#934]: #934
[#935]: #935
[#936]: #936
[#942]: #942
[#943]: #943
[#945]: #945
[#946]: #946
[#950]: #950
[#951]: #951
[#958]: #958

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Michael Birch <michael.birch@aurora.dev>
Co-authored-by: Evgeny Ukhanov <evgeny@aurora.dev>
Co-authored-by: dwiekawki <176287097+dwiekawki@users.noreply.github.com>
Co-authored-by: dwiekawki <dwiekawki@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: DemoYeti <164791169+DemoYeti@users.noreply.github.com>
Co-authored-by: spilin <LyoshaKR@gmail.com>
aleksuss added a commit that referenced this pull request Oct 10, 2024
### Additions

- Added support of CANCUN hardfork by [@mrLSD]. ([#926])
- Added support of EIP-3607 by [@mrLSD]. ([#930])
- Removed restrictions from funding XCC sub-accounts by [@birchmd].
([#931])

### Changes

- Made some EVM gas costs optimisations by [@mrLSD]. ([#934])
- Refactored the gas charge logic form EVM exit reasons by [@mrLSD].
([#935])
- Updated some dependencies and rust-toolchain by [@mrLSD]. ([#936])
- Removed unused `bytes_to_hex` function by [@dwiekawki]. ([#942])
- Added building of actual version of the `near-sandbox` in the
scheduled CI job by [@aleksuss] ([#950])

### Fixes

- Removed duplicated `test` task in the `README.md` by [@dwiekawki].
([#943])
- Fixed some typos in the `README.md` and `Cargo.toml` by [@DemoYeti].
([#945]) ([#946])
- Fixed exceeded prepaid gas error in the `mirror_erc20_token`
transaction by [@aleksuss] ([#951])
- Modified `hardhat.config.js` to support contract verification by
[@spilin] ([#958])

[#926]: #926
[#930]: #930
[#931]: #931
[#934]: #934
[#935]: #935
[#936]: #936
[#942]: #942
[#943]: #943
[#945]: #945
[#946]: #946
[#950]: #950
[#951]: #951
[#958]: #958

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Michael Birch <michael.birch@aurora.dev>
Co-authored-by: Evgeny Ukhanov <evgeny@aurora.dev>
Co-authored-by: dwiekawki <176287097+dwiekawki@users.noreply.github.com>
Co-authored-by: dwiekawki <dwiekawki@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: DemoYeti <164791169+DemoYeti@users.noreply.github.com>
Co-authored-by: spilin <LyoshaKR@gmail.com>
aleksuss added a commit that referenced this pull request Oct 10, 2024
### Additions

- Added support of CANCUN hardfork by [@mrLSD]. ([#926])
- Added support of EIP-3607 by [@mrLSD]. ([#930])
- Removed restrictions from funding XCC sub-accounts by [@birchmd].
([#931])

### Changes

- Made some EVM gas costs optimisations by [@mrLSD]. ([#934])
- Refactored the gas charge logic form EVM exit reasons by [@mrLSD].
([#935])
- Updated some dependencies and rust-toolchain by [@mrLSD]. ([#936])
- Removed unused `bytes_to_hex` function by [@dwiekawki]. ([#942])
- Added building of actual version of the `near-sandbox` in the
scheduled CI job by [@aleksuss] ([#950])

### Fixes

- Removed duplicated `test` task in the `README.md` by [@dwiekawki].
([#943])
- Fixed some typos in the `README.md` and `Cargo.toml` by [@DemoYeti].
([#945]) ([#946])
- Fixed exceeded prepaid gas error in the `mirror_erc20_token`
transaction by [@aleksuss] ([#951])
- Modified `hardhat.config.js` to support contract verification by
[@spilin] ([#958])

[#926]: #926
[#930]: #930
[#931]: #931
[#934]: #934
[#935]: #935
[#936]: #936
[#942]: #942
[#943]: #943
[#945]: #945
[#946]: #946
[#950]: #950
[#951]: #951
[#958]: #958

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Michael Birch <michael.birch@aurora.dev>
Co-authored-by: Evgeny Ukhanov <evgeny@aurora.dev>
Co-authored-by: dwiekawki <176287097+dwiekawki@users.noreply.github.com>
Co-authored-by: dwiekawki <dwiekawki@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: DemoYeti <164791169+DemoYeti@users.noreply.github.com>
Co-authored-by: spilin <LyoshaKR@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants