refactor how 'tsh scp' destinations are parsed#24441
Merged
capnspacehook merged 1 commit intomasterfrom Apr 19, 2023
Merged
Conversation
7bd0f25 to
b2daaeb
Compare
russjones
reviewed
Apr 13, 2023
b2daaeb to
f9a5592
Compare
Contributor
Author
|
Friendly ping @lxea @timothyb89 |
r0mant
reviewed
Apr 14, 2023
f9a5592 to
1df5169
Compare
Contributor
Author
|
Friendly ping @r0mant @lxea @timothyb89. I'd like to get this in soon so I start backporting SFTP fixes all at once. |
jentfoo
suggested changes
Apr 19, 2023
Contributor
jentfoo
left a comment
There was a problem hiding this comment.
I believe there are some errors in the parsing here. One advantage regex has is that it gives me control on positions, where looking for specific characters could result in indexes at any point. I believe there needs to be more context testing (ie is : contained within []) for this type of parsing to function correctly.
1df5169 to
cd1e012
Compare
jentfoo
approved these changes
Apr 19, 2023
cd1e012 to
29294af
Compare
r0mant
approved these changes
Apr 19, 2023
A complex regex was previously used to parse 'tsh scp' destinations, which was hard to understand and even harder to maintain for those not intimately familiar with regex, despite it being heavily commented. Instead parse destinations directly and add more test cases and a fuzz test to ensure parsing won't panic and the new parse function doesn't have any regressions.
29294af to
1612af7
Compare
|
@capnspacehook See the table below for backport results.
|
This was referenced Apr 19, 2023
Merged
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
A complex regex was previously used to parse 'tsh scp' destinations, which was hard to understand and even harder to maintain for those not intimately familiar with regex, despite it being heavily commented. Instead parse destinations directly and add more test cases and a fuzz test to ensure parsing won't panic and the new parse function doesn't have any regressions.
Fixes #11021.