sam_restore_file - Creates an offline Sun QFS file.
cc [ flag ... ] file ... -L/opt/SUNWsamfs/lib -lsam [library ... ]
int sam_restore_file(const char *path, struct sam_stat *buf,
sam_restore_file() creates an offline file in a Sun QFS or
SAM-QFS file system. sam_restore_file() creates an offline
file using information supplied by the user and obtained
from a source such as the archiver.log file. The file must
Note that the program calling this function is responsible
for creating all directories in the path before calling the
path is the pathname to the file to be created. It may be
an absolute or relative pathname but must be no longer than
PATH_MAX (see the /usr/include/limits.h file).
buf is a sam_stat(3) structure (see sam_stat(3)).
bufsize is the size of the sam_stat(3) structure (see
The following members in the sam_stat(3) structure must
exist. All other fields are ignored.
ulong_t st_mode /* File mode (see mknod(2)) */
ulong_t st_uid /* User ID of the file's owner */
ulong_t st_gid /* Group ID of the file's owner */
u_longlong_t st_size /* File size in bytes */
ulong_t st_atime /* Time of last access */
ulong_t st_ctime /* Time of last file status change */
ulong_t st_mtime /* Time of last data modification */
The following members in the sam_copy_s structure must exist
for all copies, if any. All other fields are ignored.
char media; /* Two character media type. */
u_longlong_t position; /* Position of the file on the media. */
uint_t offset; /* Loc of copy in archive file in 512 bytes */
time_t creation_time; /* Time the archive copy was created */
char vsn; /* Volume serial name of the media */
position The position of the file recorded on the media.
offset The location of this copy in the archive file in
This is the time that the archive was made. If
creation_time is zero, it will be set to the value
vsn The volume serial name of the cartridge where the
media The two character media type. See mcf(4). For
example, the media type for DLT tape is lt.
Upon succesful creation of a file a value of 0 is returned.
Otherwise, a negative value is returned and errno is set to
indicate the error. The possible return values are:
-1 user is not root
-2 invalid media type
-3 invalid VSN
-5 file does not exist
-6 restore failed for some other reason