Developer Resources


PDF Documents
Caution: This version of this document is no longer maintained. For the latest documentation, see http://www.qnx.com/developers/docs.


Universal Disk Format and ISO-9960 filesystem support


driver ... udf udf_options ... &

Runs on:



Where driver is one of the devb-* drivers, and udf_options is one or more of the following, separated by commas:

Control the case used to display ISO-9660 filenames (to a readdir() request; all pathname matching is always performed case-insensitively on such names):
  • asis — don't convert the filename in any way; if the CD was mastered with strict ISO-9660 compliance, the name will be in uppercase, but more lenient utilities could produce mixed-case filenames.
  • lower — convert to lowercase (the default).
  • upper — convert to uppercase.

RRIP and Joliet store case-preserving names and ignore this option.

The File Set number to mount; the default is 0.
Set both the list of disk formats to support, as well as the order in which they should be probed (for media with multiple formats, such as UDF-Bridge/DVD-Video or ISO/Joliet). Separate the formats with colons (:) You can use this option to:
  • set a specific order in which to probe (e.g. format=joliet:rrip:udf)
  • remove a format (e.g. format=-rrip)
  • add a format, making it the first preference (e.g. format=+udf)

The valid formats are:

  • udf — OSTA/UDF, all v1.x and 2.x variants as supported.
  • rrip — Rock Ridge extensions to ISO-9660; adds permissions and long names.
  • joliet — Joliet extensions to ISO-9660; adds Unicode long names.
  • iso9660e — the 1999 version of the ISO-9660 spec; adds mixed-case filenames.
  • iso9660 — the base 1988 version of the ISO-9660 spec.
  • audio — create a dummy mountpoint for an audio-only/CDDA disk.

The first matching, valid format in order from the specified list is mounted.

Note: Since the audio format matches any disk with audio tracks, you should usually make it the last in the list. In addition, since many formats are extensions to a base ISO-9660 format, which is also present on the media, you should specify iso9660 itself after those formats.

The default is format=udf:rrip:joliet:iso9660e:iso9660:audio. For backward compatibility, set the format to format=udf to disable the CD/ISO formats.

The group ID to use for files with no specified group. The default is 0.
Specify what to do with “hidden” files. The hidden_mode can be one of:
  • ignore — ignore the hidden files; they don't appear in the filesystem.
  • show — (the default) show hidden files in the filesystem as normal files.
  • dot — show hidden files in the filesystem with a dot (.) prefixed to their names.
The name of the filesystem metadata directory. The first character can be + or -, and this controls whether empty entries (metadata descriptors not given a value) are shown in the directory or not, respectively. For example, if a CD doesn't have a abstract or bibliography, those pseudo-files can be hidden, or left with a empty string in them.

The default is -.info..

The permissions to use for ISO9660 files, directories, or both. The argument to this option consists of the permissions for files, followed by a colon (:), and then the permissions for directories. Either set of permissions is optional.

You can specify the permissions either as a simple numeric value, or in chmod-style format. For example, to make files executable, specify perms=+x, which is the equivalent to the exe option to fs-cd.so. Like the uid and gid options, this option is used only when the filesystem itself doesn't have explicit permissions (udf and rrip do; all others don't).

The default is a=r:a=rx.

The user ID to use for files with no specified owner. The default is 0 (root).
Set the number of raw VCD 2352-byte deblocking buffers (default 0):
  • When enabled, this option supports the transparent reading of Mode2 Form2 VCD files. For such files, a 44-byte RIFF header is constructed and prepended to the file data, and then data from the files' raw 2352-byte sectors are supplied.
  • When disabled, such files are unreadable to POSIX read() and fail with EINVAL.

You can use the chattr command to identify Mode2 Form2 files.

How much of the UDF tag content (tag version, tag location, header checksum, and/or data CRC) to verify; one of the following:
  • none
  • tag — all except the data CRC
  • all
  • ?tag
  • ?all (the default)

Some UDF authoring utilities write incorrect tags, so it might be necessary to relax the verification if problems are observed. If you specify an option with a leading question mark (?), fs-udf.so consults an internal blacklist of known bad utilities and automatically skips all checks in the list; otherwise it operates at the level given after the question mark.

The Primary Volume number to mount; the default is 0.

In addition, you can specify any of the filesystem options described for io-blk.so.


The fs-udf.so shared object provides support for UDF (OSTA-UDF/ECMA-167) and ISO-9660 (base 1998 spec, 1999 spec, Joliet extensions, Rock Ridge extensions) filesystems. It's automatically loaded by the devb-* drivers when mounting a UDF filesystem.

Note: This filesystem uses UTF-8 encoding for presentation of its filenames; attempts to specify a filename not using UTF-8 encoding will fail (with an error of EILSEQ).

See also:

chattr, devb-*, fs-cd.so, fs-dos.so, fs-ext2.so, fs-mac.so, fs-nt.so, fs-qnx4.so, fs-qnx6.so, io-blk.so, mount, umount

Filesystems chapter of System Architecture

in the Working With Filesystems chapter, Filesystems and block I/O (devb-*) drivers in the Fine-Tuning Your System chapter, and Filesystem limits in the Understanding System Limits chapter of the QNX Neutrino User's Guide

QNX Neutrino User's Guide: