I2PSnark arbitrarily changes filenames, even though all the characters used are valid UTF-8 characters.
Here is an example of a directory name (the language doesn't matter here) and the corresponding torrent file created using the popular third-party program “mktorrent” (the quotation marks are used here only to indicate where the names begin and end):
"Dieser Verzeichnisname einhält ein Fragezeichen?"
"Dieser Verzeichnisname einhält ein Fragezeichen?.torrent"
I2PSnark automatically recognizes the created torrent file without any issues. However, when it comes to the directory name, the question mark is replaced with an underscore – without prompting. The result at the file system level now looks like this:
"Dieser Verzeichnisname einhält ein Fragezeichen?"
"Dieser Verzeichnisname einhält ein Fragezeichen?.torrent"
"Dieser Verzeichnisname einhält ein Fragezeichen_"
This torrent is now broken. This is because the directory with an underscore used by I2PSnark contains no data, so it is attempting to download it from the tracker.
This behavior is inconsistent in itself. The torrent file is accepted, but its contents are not.
The correct approach would be to fully inform users of the restrictions associated with this software and reject the torrent accordingly. However, this is not being done, which is why it is a self-inflicted bug.
Version: i2psnark-standalone-2.9.0
Bug: I2PSnark changes filenames – DONE
Bug: I2PSnark changes filenames – DONE
Last edited by lgillis on 20 Sep 2026 09:08, edited 1 time in total.
Anarchie ist der „Zustand der Sklaven ohne Herren“. (Platon, Aristoteles)
Re: Bug: I2PSnark changes filenames
thanks for the report, I'll take a look
Re: Bug: I2PSnark changes filenames
Hopefully fixed in a9ded0827d967afbf3117f58a3766b6445aefbad to be 2.12.0-8
Re: Bug: I2PSnark changes filenames
Your solution is a software switch as a compromise (if a torrent exists, use it as is else filter it as before for windows file systems). Once it’s released, we consumers will certainly take a sympathetic look at it.
Anarchie ist der „Zustand der Sklaven ohne Herren“. (Platon, Aristoteles)
Re: Bug: I2PSnark changes filenames
Here I have something to play for you, an I2PSnark-Killer-Torrent-File:
Causes a “java.lang.IndexOutOfBoundsException”, at least with versions 2.12 and 2.13. Open the torrent file in I2PSnark as usual and then try to view the files. To check the torrent in advance, use the torrent-file-editor or similar tools.
(And no, I cannot see any change in the behavior described above.)
Greetings and a great weekend!
(And no, I cannot see any change in the behavior described above.)
Greetings and a great weekend!
Anarchie ist der „Zustand der Sklaven ohne Herren“. (Platon, Aristoteles)
Re: Bug: I2PSnark changes filenames – DONE
The problem described above was fixed in version 2.13.0. However, the following procedure should be followed.
If the torrent file is added via I2PSnark, any special (ms windows) characters in the torrent file's name are converted to underscores.
If the data is already located in a subdirectory and the torrent file is to be added via I2PSnark, the subdirectory will be ignored even though it was entered in the “Data Directory” column. Instead, an empty directory with underscores is created in the default data directory, as usual.
Finally, a note about your baby-blue tracker. The tracker will automatically reject torrent files with various punctuation marks in the filename. But it won't do this until after you've entered all the data into its forms — as a punishment, I suppose.
- First, place the finished data in the I2PSnark directory.
- Then place the corresponding torrent file in the I2PSnark directory.
If the torrent file is added via I2PSnark, any special (ms windows) characters in the torrent file's name are converted to underscores.
If the data is already located in a subdirectory and the torrent file is to be added via I2PSnark, the subdirectory will be ignored even though it was entered in the “Data Directory” column. Instead, an empty directory with underscores is created in the default data directory, as usual.
Finally, a note about your baby-blue tracker. The tracker will automatically reject torrent files with various punctuation marks in the filename. But it won't do this until after you've entered all the data into its forms — as a punishment, I suppose.
Anarchie ist der „Zustand der Sklaven ohne Herren“. (Platon, Aristoteles)