Open System Services Programmer's Guide

The pathname /G/volname/subvol/fileid of a permanent Guardian disk file is translated
to the filename \NODE.$VOLNAME.SUBVOL.FILEID.
The pathname /G/volname/#num of a temporary Guardian disk file is translated to
\NODE.$VOLNAME.#num.
With relative pathnames, the name component . (dot) is deleted. The pathname ./subvol/fileid
is treated as /G/volname/subvol/fileid.
If a relative pathname contains the name component .. (dot-dot), the preceding name component
is deleted. If the deleted component was the first component of the Guardian filename, normal
root resolution continues at the root of the root fileset. For example, the pathname
/G/vol1/../vol2/subvol/fileid is treated as /G/vol2/subvol/fileid, and
/./vol1/../../dir is treated as /dir.
If the name resulting from the translation is not a valid Guardian filename, the translation operation
terminates with the error ENOENT, except when the creation of such a name is attempted, which
fails with the error EINVAL.
The following examples result in invalid filenames:
/G/data/a/b/c (too many levels)
/G/oss/src:v3.4/logger.c (the colon (:) is an illegal character)
Table 4 (page 55) shows pathnames that can be translated to valid Guardian filenames and the
corresponding Guardian filename.
Table 4 OSS Pathname to Guardian Filename Translation Examples
Guardian FilenameOSS Pathname on Node Named NODE
\NODE.$DATAVOL.SRCl1V34. PROPERTI/G/Data.Volume/src.l1.v3.4.8/properties.c
\NODE.$DATA.MYSUBVOL.FILE/G/data/mysubvol/file
\NODE.$DISK/G/disk
\NODE.$ztnt.#pty7/G/ztnt/#pty7
Only filenames on the local node can appear in the /G directory, so only local names are translated.
OSS files are stored with Guardian filenames in subvolumes whose names begin with ZYQ. The
OSS absolute pathname that corresponds to a Guardian filename has the following form:
/G[/volume[/subvolume[/fileid]]]
The number of components of the translated pathname depends on the number of components in
the filename. The components of a pathname are derived from a filename as follows:
1. The filename is converted to lower case.
2. volume is derived by replacing the dollar sign ($) in the filename with /G/.
3. A period (.) in the filename is replaced with a slash (/) .
Table 5 shows pathnames that can be translated to valid OSS filenames and the corresponding
OSS filename.
Table 5 Guardian Filename to OSS Pathname Translation Examples
OSS PathnameGuardian Filename
/G/vol$VOL
/G/vol$vol
/G/vol/subvol$VOL.SUBVOL
/G/p/#1234$p.#1234
The OSS and Guardian File Systems 55