net: Add the check that socket domain is equal to bound address type, when do bind. #9295
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.
Summary
When bind the sockaddr, Check conn->domain and addr->sa_family. If they aren't equal, return an error early.
which can avoid the problem of stack buffer overflow.
Impact
Avoid an exception caused by using the bad address on binding.
Testing
When the socket of type AF_INET4, if the sockaddr of type AF_INET6 are used, the bind interface returns an error and does not cause any other exception.