[network] Bridges with long names use hash suffix #4422
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.
This pull request introduces a new strategy for generating bridge names in the Linux backend to ensure uniqueness when interface names are long by truncating long interface names and appending a short hash. This ensures that bridge names are both readable and unique.
create_bridge_with
to use the newgenerate_bridge_name
function, replacing the previous simple truncation method.QCryptographicHash
includes to bothbackend_utils.cpp
andtest_backend_utils.cpp
to support the new hashing logic for bridge name generation.Originally:
eth123456789abc
→br-eth123456789
(truncated to 15 chars)eth123456789xyz
→br-eth123456789
(same name - collision)With the fix:
eth123456789abc
→br-eth12345-8f9
(unique hash suffix)eth123456789xyz
→br-eth12345-a2c
(different hash - no collision)Short names (unchanged, fully readable):
eth0
→br-eth0
wlan0
→br-wlan0
enp0s3
→br-enp0s3
resolves #2158