Audit use of unsafe in uri/authority.rs#414
Merged
seanmonstar merged 5 commits intohyperium:masterfrom May 14, 2020
Merged
Conversation
Extract the common code from three ways of creating an Authority into a private create_authority() function.
The comments describe the preconditions and postconditions that together ensure that the one use of 'unsafe' in uri/authority.rs is sound.
hawkw
reviewed
Apr 15, 2020
This was referenced Apr 25, 2020
seanmonstar
approved these changes
May 14, 2020
Merged
BenxiangGe
pushed a commit
to BenxiangGe/http
that referenced
this pull request
Jul 26, 2021
* Add unit test for rejecting invalid UTF-8 * Add Authority::from_static() test * Refactor uri::Authority Extract the common code from three ways of creating an Authority into a private create_authority() function. * Add comments to explain the safety of Authority The comments describe the preconditions and postconditions that together ensure that the one use of 'unsafe' in uri/authority.rs is sound. * Fix typo
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.
Refactor the common code from three ways of creating an Authority into a private create_authority() function, which removes some code duplication (including duplicated uses of "unsafe"). Add comments describing the implicit preconditions and postconditions in create_authority() and the functions it calls which then make explicit the sound use of "unsafe" (as described in the "Safety" comment in create_authority().
This is part of #412.