| Skip Navigation Links | |
| Exit Print View | |
|
Sun QFS and Sun Storage Archive Manager 5.3 Reference Manual Sun QFS and Sun Storage Archive Manager 5.3 Information Library |
1. User Commands (Man Pages Section 1)
2. Maintenance Commands (Man Pages Section 1M)
3. Library Functions (Man Pages Section 3)
4. Library Functions (Man Pages Section 3X)
5. File Formats (Man Pages Section 4)
NAME
sam_restore_copy - Creates an archive copy for a Sun QFS or
SAM-QFS file
SYNOPSIS
cc [ flag ... ] file ... -L/opt/SUNWsamfs/lib
-lsam [ library ... ]
#include "/opt/SUNWsamfs/include/stat.h"
int sam_restore_copy(const char *path, int copy, struct
sam_stat *buf, size_t bufsize, struct sam_section *vbuf,
size_t vbufsize);
DESCRIPTION
The sam_restore_copy() library routine creates an archive
copy for an existing Sun QFS or SAM-QFS file. The file must
already exist and the archive copy must not exist. The
sam_restore_copy() library routine creates an archive copy
using information supplied by the user and obtained from a
source such as the archiver.log. This library routine
accepts the following arguments:
path The path name to the file where the archive copy
is being created. It may be an absolute or
relative path name, but it must be no longer than
PATH_MAX (see the /usr/include/limits.h file).
copy The copy number (0, 1, 2, or 3) of the archive
copy that is being created.
buf A sam_stat structure. See sam_stat(3).
bufsize The size of the sam_stat structure. See
sam_stat(3).
vbuf A sam_section structure for the array of VSNs if
the archive copy overflowed volumes, that is,
n_vsns > 1. If n_vsns = 1, vbuf should be set to
NULL. See sam_stat(3).
vbufsize The size of the sam_section structure. If n_vsns
= 1, vbufsize should be set to 0. See
sam_stat(3).
The following members in the sam_stat 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 the copy. All other fields are ignored.
u_longlong_t position; /* Position of the file on the media. */
time_t creation_time; /* Time the archive copy was created */
uint_t offset; /* Location of the copy in the archive file */
short n_vsns; /* Number of volumes used by the archive */
char media[4]; /* Two character media type. */
char vsn[32]; /* Volume serial name of the media volume */
The preceding fields have the following meaning:
position The position of the file recorded on the media.
creation_time
This is the time that the archive was made. If
creation_time is zero, it is set to the value of
time().
offset The location of the copy in the archive file in
units of 512 bytes.
n_vsns The number of volumes that this copy spans.
vsn The volume serial name of the cartridge where the
file resides.
media The two-character media type. For example, the
media type for DLT tape is lt. See mcf(4).
RETURN VALUES
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 copy number
-3 invalid VSN
-4 file does not exist
-5 file open failed
-6 uid and gid do not match those for the existing file
-7 invalid VSN for this copy
-8 multiple copies but vbufsize incorrect
-9 media type invalid
-10 copy restore failed for some other reason
FILES
/etc/opt/SUNWsamfs/mcf
The configuration file for Sun QFS or
SAM-QFS file systems.
SEE ALSO
sam_restore_file(3), sam_stat(3).
mcf(4).