sam_restore_file - Creates an offline StorageTek QFS file.
cc [
flag
… ]
file
… -L∕opt∕SUNWsamfs∕lib -lsam [
library … ]
#include "∕opt∕SUNWsamfs∕include∕stat.h"
int sam_restore_file(const char *
path ,
struct sam_stat *
buf ,
size_t
bufsize );
sam_restore_file()
creates an offline file in a StorageTek QFS or Oracle HSM 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 not exist.
Note that the program calling this function is responsible for creating all directories in the path before calling the function.
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
(3x) structure (see sam_stat
(3x)).
bufsize
is the size of the sam_stat
(3x) structure (see sam_stat
(3x)).
The following members in the sam_stat
(3x)
structure must exist. All other fields are ignored.
Name | Type | Description |
---|---|---|
st_mode | ulong_t | File mode (see mknod (2)) |
st_uid | ulong_t | User ID of the file's owner |
st_gid | ulong_t | Group ID of the file's owner |
st_size | u_longlong_t | File size in bytes |
st_atime | ulong_t | Time of last access |
st_ctime | ulong_t | Time of last file status change |
st_mtime | ulong_t | 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.
Name | Type | Description |
---|---|---|
media[4]; | char | Two character media type. |
position; | u_longlong_t | Position of the file on the media. |
offset; | uint_t | Loc of copy in archive file in 512 bytes |
creation_time; | time_t | Time the archive copy was created |
vsn[32]; | char | 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 512 bytes.
creation_time
This is the time that the archive was made. If
creation_time
is zero, it will be
set to the value of time()
.
vsn
The volume serial name of the cartridge where the file resides.
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:
dl
dt-1∕dt
dd
p
user is not root
∕p
∕dd
dt-2∕dt
dd
p
invalid media type
∕p
∕dd
dt-3∕dt
dd
p
invalid VSN
∕p
∕dd
dt-5∕dt
dd
p
file does not exist
∕p
∕dd
dt-6∕dt
dd
p
restore failed for some other reason
∕p
∕dd
∕dl
∕etc∕opt∕SUNWsamfs∕mcf
The configuration file for StorageTek QFS or Oracle HSM file systems.