File with umlauts (ÄÖÜ) in its name uploads without an error, but downloading it fails with "file not found"

In the channel file browser of the TeamSpeak 6 client, uploading a file whose name contains umlauts completes without any message, and the file is listed under the correct name. Downloading that file again fails with “file not found”. Files with plain ASCII names download fine.

Environment

  • TS6 client: 6.0.0-beta4.1, Windows 11 (26H1)
  • TS6 server: 6.0.0-beta13.1, Windows 11 (26H1), a new virtual server set up from scratch
  • The same happens against a native Linux install of the server: 6.0.0-beta13.1
  • If you try this with the Docker image: its default POSIX locale makes the server refuse non-ASCII file names (error 2054 or 2052), so for my tests there it runs with LANG=C.UTF-8.

Steps to reproduce

  1. Set up a new TS6 server, connect with the client and become server admin (privilege key).
  2. Open a channel’s file browser and upload a file named Test-ÄÖÜ.txt. Result: no error, the file is listed as Test-ÄÖÜ.txt.
  3. Download that file from the same file browser into an empty folder. Result: “file not found”. Expected: the file downloads.

Why I think it is the client

  • On the Linux server the file name is stored as plain UTF-8 (c3 84 c3 9c c3 96 for ÄÜÖ), exactly as listed.
  • The server does find the file when another client asks for it by that exact name. ftinitdownload with the name as ftgetfilelist returns it works over ServerQuery, and with a small third-party client implementation speaking the client protocol (checked on a Linux server started with a UTF-8 locale). Only the official client reports “file not found”. So I suspect it sends the name in a different form (encoding or Unicode normalization) when it requests the download than the form it uses for upload and listing. I could not capture its request to confirm this.
  • The 6.0.0-beta3.2 hotfix notes mention “Fix UTF-8 encoded string handling in filepaths for cache/settings creation and file-transfer operations” ([HOTFIX] TeamSpeak 6.0.0-beta3.2 - Foundation I Hotfix 2). This may be a remaining case of that: the failure could be in how the client handles the name locally, not only in what it sends to the server.
  • TeamSpeak closed Can't upload files · Issue #69 · teamspeak/teamspeak6-server · GitHub with “the only thing left is a known client issue with accented chars”. This looks like that issue. I did not find a forum thread or ticket for it, so here are reproduction steps in case they help.

Thanks for the report, I’ll forward it to the team to check.