Skip to content

Feature Request: Support for IDN (Internationalized Domain Names) #851

@xbt573

Description

@xbt573

Currently, rsync tries to use IDN domains (which are domains with non-latin symbols) as-is, leading to errors like this:

spb:~# rsync -nv rsync://федерацияпобеда.рф/files
rsync: getaddrinfo: \#321\#204\#320\#265\#320\#264\#320\#265\#321\#200\#320\#260\#321\#206\#320\#270\#321\#217\#320\#277\#320\#276\#320\#261\#320\#265\#320\#264\#320\#260.\#321\#200\#321\#204 873: Name does not resolve
rsync error: error in socket IO (code 10) at clientserver.c(139) [Receiver=3.4.1]

This can be fixed with converting domain to Punycode using libidn2 (or libidn, i don't know about their differences). This will obviously lead to another project dependency (which can be guarded by configure flag for minimal builds), but this will make using rsync easier for IDN domains.

Current workaround:

spb:~# rsync -nv rsync://$(idn федерацияпобеда.рф)/files
receiving file list ... done
drwxr-xr-x              0 2026/02/07 06:48:04 .
-rw-r--r--    789,645,312 2025/09/12 01:17:28 virtio-win-0.1.285.iso

sent 24 bytes  received 80 bytes  69.33 bytes/sec
total size is 789,645,312  speedup is 7,592,743.38 (DRY RUN)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions