On Unix, the only forbidden characters are the NUL byte and
the /. All others are legal, that is, if the code points are
less than 256. However, many vendors have filesystems that
(partially) support Unicode filenames - but you still can't
use NUL and /.
But why use such filenames in the first place?
Abigail