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

[bugfix] - make resolve input type for programmable transaction more defensive to avoid array out of bound panic #10344

Merged
merged 4 commits into from
Apr 5, 2023

Conversation

patrickkuo
Copy link
Contributor

Description

the code could panic when resolving input types for a malformed programmable transaction, add checks to ensure input arg index is within the input size.

@patrickkuo patrickkuo requested a review from tnowacki April 3, 2023 20:13
@vercel
Copy link

vercel bot commented Apr 3, 2023

The latest updates on your projects. Learn more about Vercel for Git ↗︎

4 Ignored Deployments
Name Status Preview Comments Updated (UTC)
explorer ⬜️ Ignored (Inspect) Apr 5, 2023 7:47pm
explorer-storybook ⬜️ Ignored (Inspect) Apr 5, 2023 7:47pm
sui-wallet-kit ⬜️ Ignored (Inspect) Apr 5, 2023 7:47pm
wallet-adapter ⬜️ Ignored (Inspect) Apr 5, 2023 7:47pm

@patrickkuo patrickkuo requested a review from bmwill April 3, 2023 20:13
Comment on lines 1094 to 1098
match arg {
&Argument::Input(i) if (i as usize) < inputs.len() => {
result_types[i as usize] = type_;
}
_ => {}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You could just use the get api here instead which would return a None if its out of bounds. probably saffer to do it that way too in case this code changes in the future

@patrickkuo patrickkuo force-pushed the pat/sui_pt_more_defensive branch 2 times, most recently from ed08dca to 9892968 Compare April 4, 2023 12:12
@patrickkuo patrickkuo force-pushed the pat/sui_pt_more_defensive branch from 9892968 to 71b4145 Compare April 5, 2023 02:25
@patrickkuo patrickkuo enabled auto-merge (squash) April 5, 2023 02:33
@patrickkuo patrickkuo force-pushed the pat/sui_pt_more_defensive branch from 9a99f1c to 069be11 Compare April 5, 2023 19:46
@patrickkuo patrickkuo merged commit de632da into main Apr 5, 2023
@patrickkuo patrickkuo deleted the pat/sui_pt_more_defensive branch April 5, 2023 20:11
wlmyng pushed a commit that referenced this pull request Apr 6, 2023
…defensive to avoid array out of bound panic (#10344)

the code could panic when resolving input types for a malformed
programmable transaction, add checks to ensure input arg index is within
the input size.
wlmyng pushed a commit that referenced this pull request Apr 6, 2023
…defensive to avoid array out of bound panic (#10344)

## Description 

the code could panic when resolving input types for a malformed
programmable transaction, add checks to ensure input arg index is within
the input size.
Jibz-Mysten pushed a commit that referenced this pull request Apr 6, 2023
…defensive to avoid array out of bound panic (#10344)

## Description 

the code could panic when resolving input types for a malformed
programmable transaction, add checks to ensure input arg index is within
the input size.
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.

2 participants