[pbs-devel] [POC proxmox proxmox-backup 0/4] use custom DNS resolver for
Christian Ebner
c.ebner at proxmox.com
Sat Sep 28 11:42:52 CEST 2024
As discussed in issue #4788 [0], statically linking of the
`proxmox-backup-client` still suffers from possible incompatible
dependencies on the NSS module libraries, further described in
[1].
This proof of concept drafts a possible workaround by relying on
`hickory-dns` [2], using the hickory-resolver for name resolution
instead of the default `getaddrinfo` based `GaiResolver` used by
the hyper http client, as suggested by Thomas.
These patches still need some polishing, but allow already to compile
a static binary without the glibc issues as descibied in the issue,
therefore sending them for possible more widespread testing.
Initial testing on ArchLinux with glic 2.40+r16+gaa533d58ff-2,
previously leading to floating point exceptions, now allows to backup
without issues using the patched client.
A major downside is the required dependencies for hickory-dns`, as with
the feature `system-config` enabled (used to read nameservers from
`/etc/resolv.conf`), also the windows dependencies on `ipconfig` and
it's subdependencies are required.
[0] https://bugzilla.proxmox.com/show_bug.cgi?id=4788
[1] https://sourceware.org/glibc/wiki/FAQ#Even_statically_linked_programs_need_some_shared_libraries_which_is_not_acceptable_for_me.__What_can_I_do.3F
[2] https://github.com/hickory-dns/hickory-dns
proxmox:
Christian Ebner (1):
http: client: make https connector generic over resolver
proxmox-http/Cargo.toml | 1 +
proxmox-http/debian/control | 8 +++++---
proxmox-http/src/client/connector.rs | 17 ++++++++++++-----
proxmox-http/src/client/simple.rs | 3 ++-
4 files changed, 20 insertions(+), 9 deletions(-)
proxmox-backup:
Christian Ebner (3):
Makefile: target for statically linked client binary
Makefile: switch path based on build mode by using COMPILEDIR
client: http: Use custom resolver for statically linked binary
Cargo.toml | 6 +++
Makefile | 9 ++++
pbs-client/Cargo.toml | 1 +
pbs-client/src/http_client.rs | 81 +++++++++++++++++++++++++++++++++--
4 files changed, 93 insertions(+), 4 deletions(-)
--
2.39.5
More information about the pbs-devel
mailing list