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.
See Issue: llvm/llvm-project#59007. Although this issue has been fixed in LLVM, the fix will not probably propagate to older versions of Ubuntu and GCC-13.1.
Starting with GLIBC version 2.34, the
dn_expand
function, previously found inlibresolv.so
, was moved tolibc.so
. This function is used internally by thegetaddrinfo()
system call.In our setup, we are using an Ubuntu 18 Docker image on a newer Ubuntu host. However, due to compatibility issues between newer libasan.so in GCC 13.1 and the older Ubuntu image, the linker does not link with
libresolv.so
. This results in crashes ingetaddrinfo()
.This problem does not occur on Ubuntu 22 and newer because GLIBC versions 2.34 and above include
dn_expand
inlibc.so
, eliminating the dependency onlibresolv.so
.We can bypass this problem by linking with "resolv" manually until we bump our base Linux image to Ubuntu 22.
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.