Rather than create the FIFO with incorrect permissions at first, then restore with chmod(2), just clear the umask when -m is specified, and pass the parsed mode to mkfifo(2).
547 B
547 B