archivemgr-1 - API for creation of and interaction with a Solaris Unified Archive
#include <rad/client/1/archivemgr.h>
cc [ flag... ] file... -larchivemgr1_client [ library... ]
interface ArchiveManager
const char * archiveRadLogPath ; (ro)
rc_err_t archivemgr_ArchiveManager_exit(rc_instance_t *inst);
rc_err_t archivemgr_ArchiveManager_createArchive(rc_instance_t *inst,
const char *path,
const char **zones,
int zones_count,
const char **excludeZones,
int excludeZones_count,
const char **excludeDataset,
int excludeDataset_count,
boolean_t *recovery,
boolean_t *skipCheck,
boolean_t *excludeMedia,
boolean_t *rootOnly,
boolean_t *dehydrate,
const char **dehydratedPublishers,
int dehydratedPublishers_count,
archivemgr_ArchiveRADError_t **error);
rc_err_t archivemgr_ArchiveManager_getArchive(rc_instance_t *inst,
const char *path,
const char *key,
const char *cert,
const char *cacert,
rc_instance_t **result,
archivemgr_ArchiveRADError_t **error);
typedef void (*archivemgr_ArchiveManager_ArchiveCreationProgress_cb_f)(rc_instance_t *inst,
archivemgr_ArchiveCreationProgress_t *payload,
struct timespec ts,
void *arg);
rc_err_t archivemgr_ArchiveManager_subscribe_ArchiveCreationProgress(rc_instance_t *inst,
archivemgr_ArchiveManager_ArchiveCreationProgress_cb_f cb,
void *arg);
rc_err_t archivemgr_ArchiveManager_unsubscribe_ArchiveCreationProgress(rc_instance_t *inst,
void **arg);
typedef void (*archivemgr_ArchiveManager_ArchiveCreationStatus_cb_f)(rc_instance_t *inst,
archivemgr_ArchiveCreationStatus_t *payload,
struct timespec ts,
void *arg);
rc_err_t archivemgr_ArchiveManager_subscribe_ArchiveCreationStatus(rc_instance_t *inst,
archivemgr_ArchiveManager_ArchiveCreationStatus_cb_f cb,
void *arg);
rc_err_t archivemgr_ArchiveManager_unsubscribe_ArchiveCreationStatus(rc_instance_t *inst,
void **arg);
interface UnifiedArchive
const char * archiveUUID ; (ro)
archivemgr_ArchiveType_t archiveType ; (ro)
const char * archiveVersion ; (ro)
const char * creationTime ; (ro)
const char ** dehydratedPublishers ; (ro)
archivemgr_ISA_t isa ; (ro)
const char * originTargetInfo ; (ro)
const char * originTargetVerboseInfo ; (ro)
const char * osName ; (ro)
const char * hostOSVersion ; (ro)
const char * hostOSBranch ; (ro)
const char * path ; (ro)
const char * sourceHost ; (ro)
const char ** systems ; (ro)
rc_err_t archivemgr_UnifiedArchive_getArchivedSystems(rc_instance_t *inst,
const char **systems,
int systems_count,
rc_instance_t ***result,
int *result_cnt,
archivemgr_ArchiveRADError_t **error);
rc_err_t archivemgr_UnifiedArchive_createMedia(rc_instance_t *inst,
const char *mediaPath,
const char *zone,
const char *source,
const char *key,
const char *cert,
const char *dataset,
archivemgr_MediaFormat_t *mediaFormat,
archivemgr_ArchiveRADError_t **error);
rc_err_t archivemgr_UnifiedArchive_rehydrateArchive(rc_instance_t *inst,
const char *rehydratePath,
archivemgr_ArchiveRADError_t **error);
typedef void (*archivemgr_UnifiedArchive_MediaCreationProgress_cb_f)(rc_instance_t *inst,
archivemgr_MediaCreationProgress_t *payload,
struct timespec ts,
void *arg);
rc_err_t archivemgr_UnifiedArchive_subscribe_MediaCreationProgress(rc_instance_t *inst,
archivemgr_UnifiedArchive_MediaCreationProgress_cb_f cb,
void *arg);
rc_err_t archivemgr_UnifiedArchive_unsubscribe_MediaCreationProgress(rc_instance_t *inst,
void **arg);
typedef void (*archivemgr_UnifiedArchive_MediaCreationStatus_cb_f)(rc_instance_t *inst,
archivemgr_MediaCreationStatus_t *payload,
struct timespec ts,
void *arg);
rc_err_t archivemgr_UnifiedArchive_subscribe_MediaCreationStatus(rc_instance_t *inst,
archivemgr_UnifiedArchive_MediaCreationStatus_cb_f cb,
void *arg);
rc_err_t archivemgr_UnifiedArchive_unsubscribe_MediaCreationStatus(rc_instance_t *inst,
void **arg);
typedef void (*archivemgr_UnifiedArchive_RehydrateProgress_cb_f)(rc_instance_t *inst,
archivemgr_RehydrateProgress_t *payload,
struct timespec ts,
void *arg);
rc_err_t archivemgr_UnifiedArchive_subscribe_RehydrateProgress(rc_instance_t *inst,
archivemgr_UnifiedArchive_RehydrateProgress_cb_f cb,
void *arg);
rc_err_t archivemgr_UnifiedArchive_unsubscribe_RehydrateProgress(rc_instance_t *inst,
void **arg);
typedef void (*archivemgr_UnifiedArchive_RehydrateStatus_cb_f)(rc_instance_t *inst,
archivemgr_RehydrateStatus_t *payload,
struct timespec ts,
void *arg);
rc_err_t archivemgr_UnifiedArchive_subscribe_RehydrateStatus(rc_instance_t *inst,
archivemgr_UnifiedArchive_RehydrateStatus_cb_f cb,
void *arg);
rc_err_t archivemgr_UnifiedArchive_unsubscribe_RehydrateStatus(rc_instance_t *inst,
void **arg);
interface ArchivedSystem
const char * activeBE ; (ro)
const char * aiMedia ; (ro)
const char * brand ; (ro)
const char ** embeddedZones ; (ro)
const char * name ; (ro)
const char * osBranch ; (ro)
const char * osVersion ; (ro)
boolean_t rootOnly ; (ro)
long long size ; (ro)
const char * systemUUID ; (ro)
const char * originTargetInfo ; (ro)
const char * originTargetVerboseInfo ; (ro)
Enumerated Types
enum ArchiveRADErrType
typedef enum archivemgr_ArchiveRADErrType {
AARADET_ARCHIVE_OPTION_ERR = 0,
AARADET_INVALID_ARG_VALUE = 1,
AARADET_ARCHIVE_ERR = 2,
AARADET_RUNTIME_ERR = 3,
AARADET_LOCKFILE_ERR = 4,
} archivemgr_ArchiveRADErrType_t;
enum ArchiveOpExecStatus
typedef enum archivemgr_ArchiveOpExecStatus {
AAOES_EXEC_SUCCESSFUL = 0,
AAOES_EXEC_FAILED = 1,
AAOES_EXEC_CANCELED = 2,
} archivemgr_ArchiveOpExecStatus_t;
enum ArchiveType
typedef enum archivemgr_ArchiveType {
AAT_RECOVERY = 0,
AAT_CLONE = 1,
} archivemgr_ArchiveType_t;
enum ISA
typedef enum archivemgr_ISA {
AISA_SPARC = 0,
AISA_I386 = 1,
} archivemgr_ISA_t;
enum MediaFormat
typedef enum archivemgr_MediaFormat {
AMF_ISO = 0,
AMF_USB = 1,
} archivemgr_MediaFormat_t;
Structured Types
struct ArchiveRADError
typedef struct archivemgr_ArchiveRADError
archivemgr_ArchiveRADError_t;
struct archivemgr_ArchiveRADError {
archivemgr_ArchiveRADErrType_t aarade_errType;
char *aarade_info;
};
void archivemgr_ArchiveRADError_free(archivemgr_ArchiveRADError_t *in);
struct ArchiveCreationProgress
typedef struct archivemgr_ArchiveCreationProgress
archivemgr_ArchiveCreationProgress_t;
struct archivemgr_ArchiveCreationProgress {
int aacp_percent;
char *aacp_message;
boolean_t aacp_is_error;
};
void archivemgr_ArchiveCreationProgress_free(archivemgr_ArchiveCreationProgress_t *in);
struct MediaCreationProgress
typedef struct archivemgr_MediaCreationProgress
archivemgr_MediaCreationProgress_t;
struct archivemgr_MediaCreationProgress {
int amcp_percent;
char *amcp_message;
};
void archivemgr_MediaCreationProgress_free(archivemgr_MediaCreationProgress_t *in);
struct RehydrateProgress
typedef struct archivemgr_RehydrateProgress
archivemgr_RehydrateProgress_t;
struct archivemgr_RehydrateProgress {
int arp_percent;
char *arp_message;
};
void archivemgr_RehydrateProgress_free(archivemgr_RehydrateProgress_t *in);
struct ArchiveCreationStatus
typedef struct archivemgr_ArchiveCreationStatus
archivemgr_ArchiveCreationStatus_t;
struct archivemgr_ArchiveCreationStatus {
archivemgr_ArchiveOpExecStatus_t aacs_status;
archivemgr_ArchiveRADErrType_t *aacs_errType;
char *aacs_errorMessage;
};
void archivemgr_ArchiveCreationStatus_free(archivemgr_ArchiveCreationStatus_t *in);
struct MediaCreationStatus
typedef struct archivemgr_MediaCreationStatus
archivemgr_MediaCreationStatus_t;
struct archivemgr_MediaCreationStatus {
archivemgr_ArchiveOpExecStatus_t amcs_status;
archivemgr_ArchiveRADErrType_t *amcs_errType;
char *amcs_errorMessage;
};
void archivemgr_MediaCreationStatus_free(archivemgr_MediaCreationStatus_t *in);
struct RehydrateStatus
typedef struct archivemgr_RehydrateStatus
archivemgr_RehydrateStatus_t;
struct archivemgr_RehydrateStatus {
archivemgr_ArchiveOpExecStatus_t ars_status;
archivemgr_ArchiveRADErrType_t *ars_errType;
char *ars_errorMessage;
};
void archivemgr_RehydrateStatus_free(archivemgr_RehydrateStatus_t *in);
ARCHIVEMGR-1(3rad) RAD Module Definitions ARCHIVEMGR-1(3rad)
NAME
archivemgr - API for creation of and interaction with a Solaris Unified
Archive
SYNOPSIS
#include <rad/client/1/archivemgr.h>
cc [ flag... ] file... -larchivemgr1_client [ library... ]
interface ArchiveManager
const char * archiveRadLogPath ; (ro)
rc_err_t archivemgr_ArchiveManager_exit(rc_instance_t *inst);
rc_err_t archivemgr_ArchiveManager_createArchive(rc_instance_t *inst,
const char *path,
const char **zones,
int zones_count,
const char **excludeZones,
int excludeZones_count,
const char **excludeDataset,
int excludeDataset_count,
boolean_t *recovery,
boolean_t *skipCheck,
boolean_t *excludeMedia,
boolean_t *rootOnly,
boolean_t *dehydrate,
const char **dehydratedPublishers,
int dehydratedPublishers_count,
archivemgr_ArchiveRADError_t **error);
rc_err_t archivemgr_ArchiveManager_getArchive(rc_instance_t *inst,
const char *path,
const char *key,
const char *cert,
const char *cacert,
rc_instance_t **result,
archivemgr_ArchiveRADError_t **error);
typedef void (*archivemgr_ArchiveManager_ArchiveCreationProgress_cb_f)(rc_instance_t *inst,
archivemgr_ArchiveCreationProgress_t *payload,
struct timespec ts,
void *arg);
rc_err_t archivemgr_ArchiveManager_subscribe_ArchiveCreationProgress(rc_instance_t *inst,
archivemgr_ArchiveManager_ArchiveCreationProgress_cb_f cb,
void *arg);
rc_err_t archivemgr_ArchiveManager_unsubscribe_ArchiveCreationProgress(rc_instance_t *inst,
void **arg);
typedef void (*archivemgr_ArchiveManager_ArchiveCreationStatus_cb_f)(rc_instance_t *inst,
archivemgr_ArchiveCreationStatus_t *payload,
struct timespec ts,
void *arg);
rc_err_t archivemgr_ArchiveManager_subscribe_ArchiveCreationStatus(rc_instance_t *inst,
archivemgr_ArchiveManager_ArchiveCreationStatus_cb_f cb,
void *arg);
rc_err_t archivemgr_ArchiveManager_unsubscribe_ArchiveCreationStatus(rc_instance_t *inst,
void **arg);
interface UnifiedArchive
const char * archiveUUID ; (ro)
archivemgr_ArchiveType_t archiveType ; (ro)
const char * archiveVersion ; (ro)
const char * creationTime ; (ro)
const char ** dehydratedPublishers ; (ro)
archivemgr_ISA_t isa ; (ro)
const char * originTargetInfo ; (ro)
const char * originTargetVerboseInfo ; (ro)
const char * osName ; (ro)
const char * hostOSVersion ; (ro)
const char * hostOSBranch ; (ro)
const char * path ; (ro)
const char * sourceHost ; (ro)
const char ** systems ; (ro)
rc_err_t archivemgr_UnifiedArchive_getArchivedSystems(rc_instance_t *inst,
const char **systems,
int systems_count,
rc_instance_t ***result,
int *result_cnt,
archivemgr_ArchiveRADError_t **error);
rc_err_t archivemgr_UnifiedArchive_createMedia(rc_instance_t *inst,
const char *mediaPath,
const char *zone,
const char *source,
const char *key,
const char *cert,
const char *dataset,
archivemgr_MediaFormat_t *mediaFormat,
archivemgr_ArchiveRADError_t **error);
rc_err_t archivemgr_UnifiedArchive_rehydrateArchive(rc_instance_t *inst,
const char *rehydratePath,
archivemgr_ArchiveRADError_t **error);
typedef void (*archivemgr_UnifiedArchive_MediaCreationProgress_cb_f)(rc_instance_t *inst,
archivemgr_MediaCreationProgress_t *payload,
struct timespec ts,
void *arg);
rc_err_t archivemgr_UnifiedArchive_subscribe_MediaCreationProgress(rc_instance_t *inst,
archivemgr_UnifiedArchive_MediaCreationProgress_cb_f cb,
void *arg);
rc_err_t archivemgr_UnifiedArchive_unsubscribe_MediaCreationProgress(rc_instance_t *inst,
void **arg);
typedef void (*archivemgr_UnifiedArchive_MediaCreationStatus_cb_f)(rc_instance_t *inst,
archivemgr_MediaCreationStatus_t *payload,
struct timespec ts,
void *arg);
rc_err_t archivemgr_UnifiedArchive_subscribe_MediaCreationStatus(rc_instance_t *inst,
archivemgr_UnifiedArchive_MediaCreationStatus_cb_f cb,
void *arg);
rc_err_t archivemgr_UnifiedArchive_unsubscribe_MediaCreationStatus(rc_instance_t *inst,
void **arg);
typedef void (*archivemgr_UnifiedArchive_RehydrateProgress_cb_f)(rc_instance_t *inst,
archivemgr_RehydrateProgress_t *payload,
struct timespec ts,
void *arg);
rc_err_t archivemgr_UnifiedArchive_subscribe_RehydrateProgress(rc_instance_t *inst,
archivemgr_UnifiedArchive_RehydrateProgress_cb_f cb,
void *arg);
rc_err_t archivemgr_UnifiedArchive_unsubscribe_RehydrateProgress(rc_instance_t *inst,
void **arg);
typedef void (*archivemgr_UnifiedArchive_RehydrateStatus_cb_f)(rc_instance_t *inst,
archivemgr_RehydrateStatus_t *payload,
struct timespec ts,
void *arg);
rc_err_t archivemgr_UnifiedArchive_subscribe_RehydrateStatus(rc_instance_t *inst,
archivemgr_UnifiedArchive_RehydrateStatus_cb_f cb,
void *arg);
rc_err_t archivemgr_UnifiedArchive_unsubscribe_RehydrateStatus(rc_instance_t *inst,
void **arg);
interface ArchivedSystem
const char * activeBE ; (ro)
const char * aiMedia ; (ro)
const char * brand ; (ro)
const char ** embeddedZones ; (ro)
const char * name ; (ro)
const char * osBranch ; (ro)
const char * osVersion ; (ro)
boolean_t rootOnly ; (ro)
long long size ; (ro)
const char * systemUUID ; (ro)
const char * originTargetInfo ; (ro)
const char * originTargetVerboseInfo ; (ro)
Enumerated Types
enum ArchiveRADErrType
typedef enum archivemgr_ArchiveRADErrType {
AARADET_ARCHIVE_OPTION_ERR = 0,
AARADET_INVALID_ARG_VALUE = 1,
AARADET_ARCHIVE_ERR = 2,
AARADET_RUNTIME_ERR = 3,
AARADET_LOCKFILE_ERR = 4,
} archivemgr_ArchiveRADErrType_t;
enum ArchiveOpExecStatus
typedef enum archivemgr_ArchiveOpExecStatus {
AAOES_EXEC_SUCCESSFUL = 0,
AAOES_EXEC_FAILED = 1,
AAOES_EXEC_CANCELED = 2,
} archivemgr_ArchiveOpExecStatus_t;
enum ArchiveType
typedef enum archivemgr_ArchiveType {
AAT_RECOVERY = 0,
AAT_CLONE = 1,
} archivemgr_ArchiveType_t;
enum ISA
typedef enum archivemgr_ISA {
AISA_SPARC = 0,
AISA_I386 = 1,
} archivemgr_ISA_t;
enum MediaFormat
typedef enum archivemgr_MediaFormat {
AMF_ISO = 0,
AMF_USB = 1,
} archivemgr_MediaFormat_t;
Structured Types
struct ArchiveRADError
typedef struct archivemgr_ArchiveRADError
archivemgr_ArchiveRADError_t;
struct archivemgr_ArchiveRADError {
archivemgr_ArchiveRADErrType_t aarade_errType;
char *aarade_info;
};
void archivemgr_ArchiveRADError_free(archivemgr_ArchiveRADError_t *in);
struct ArchiveCreationProgress
typedef struct archivemgr_ArchiveCreationProgress
archivemgr_ArchiveCreationProgress_t;
struct archivemgr_ArchiveCreationProgress {
int aacp_percent;
char *aacp_message;
boolean_t aacp_is_error;
};
void archivemgr_ArchiveCreationProgress_free(archivemgr_ArchiveCreationProgress_t *in);
struct MediaCreationProgress
typedef struct archivemgr_MediaCreationProgress
archivemgr_MediaCreationProgress_t;
struct archivemgr_MediaCreationProgress {
int amcp_percent;
char *amcp_message;
};
void archivemgr_MediaCreationProgress_free(archivemgr_MediaCreationProgress_t *in);
struct RehydrateProgress
typedef struct archivemgr_RehydrateProgress
archivemgr_RehydrateProgress_t;
struct archivemgr_RehydrateProgress {
int arp_percent;
char *arp_message;
};
void archivemgr_RehydrateProgress_free(archivemgr_RehydrateProgress_t *in);
struct ArchiveCreationStatus
typedef struct archivemgr_ArchiveCreationStatus
archivemgr_ArchiveCreationStatus_t;
struct archivemgr_ArchiveCreationStatus {
archivemgr_ArchiveOpExecStatus_t aacs_status;
archivemgr_ArchiveRADErrType_t *aacs_errType;
char *aacs_errorMessage;
};
void archivemgr_ArchiveCreationStatus_free(archivemgr_ArchiveCreationStatus_t *in);
struct MediaCreationStatus
typedef struct archivemgr_MediaCreationStatus
archivemgr_MediaCreationStatus_t;
struct archivemgr_MediaCreationStatus {
archivemgr_ArchiveOpExecStatus_t amcs_status;
archivemgr_ArchiveRADErrType_t *amcs_errType;
char *amcs_errorMessage;
};
void archivemgr_MediaCreationStatus_free(archivemgr_MediaCreationStatus_t *in);
struct RehydrateStatus
typedef struct archivemgr_RehydrateStatus
archivemgr_RehydrateStatus_t;
struct archivemgr_RehydrateStatus {
archivemgr_ArchiveOpExecStatus_t ars_status;
archivemgr_ArchiveRADErrType_t *ars_errType;
char *ars_errorMessage;
};
void archivemgr_RehydrateStatus_free(archivemgr_RehydrateStatus_t *in);
DESCRIPTION
API com.oracle.solaris.rad.archivemgr [1]
This API provides functionality for the creation of and interaction
with a Solaris Unified Archive.
INTERFACES
interface ArchiveManager
The ArchiveManager interface is a RAD singleton, and is the main and
only entry point to this RAD module. It provides the interfaces for
creating a new Unified Archive and fetching an existing Unified
Archive.
ArchiveManager Properties
const char * archiveRadLogPath (read-only) -- The location of the
archive log that is generated by this Archive RAD Module.
rc_err_t archivemgr_ArchiveManager_get_archiveRadLogPath(rc_instance_t *inst,
char **result);
Get property value.
Arguments:
inst -- RAD instance
result -- Property value returned
ArchiveManager Methods
rc_err_t archivemgr_ArchiveManager_exit(rc_instance_t *inst);
Clear all checkpoints, clean up temporary files and exit.
Arguments:
inst -- RAD instance
rc_err_t archivemgr_ArchiveManager_createArchive(rc_instance_t *inst,
const char *path,
const char **zones,
int zones_count,
const char **excludeZones,
int excludeZones_count,
const char **excludeDataset,
int excludeDataset_count,
boolean_t *recovery,
boolean_t *skipCheck,
boolean_t *excludeMedia,
boolean_t *rootOnly,
boolean_t *dehydrate,
const char **dehydratedPublishers,
int dehydratedPublishers_count,
archivemgr_ArchiveRADError_t **error);
Create a new Solaris Unified Archive with the path and options
given. Similar to the "create" subcommand in archiveadm(8).
Note: The createArchive method submits the requested parameters
for the resulting archive, and returns immediately, without
waiting for the actual archive creation to complete. Users
should register for the "ArchiveCreationProgress" and
"ArchiveCreationStatus" events to observe the state of the
archive creation request.
Arguments:
inst -- RAD instance
path -- The location and name of the new Unified Archive. The
path must be an absolute path.
zones (nullable) -- Optional: a list of zonenames to be
archived, implicitly excluding all other systems from being
archived.
zones_count -- Number of items in zones array
excludeZones (nullable) -- Optional: a list of zonenames to be
excluded from the archive, implicitly including all other
systems. 'zones' and 'excludeZones' are mutually exclusive, and
'excludeZones' is not valid when 'recovery' is set to True.
excludeZones_count -- Number of items in excludeZones array
excludeDataset (nullable) -- Optional: a list of dataset names
to be recursively excluded from the archive.
excludeDataset_count -- Number of items in excludeDataset array
recovery (nullable) -- Optional: If specified, create a
"recovery archive", which is suitable for system recovery.
"recovery" by default is False.
skipCheck (nullable) -- Optional: If specified, skip the
capacity check in the staging directory prior to archive stream
creation. "skipCheck" by default is False.
excludeMedia (nullable) -- Optional: If specified, skip the
generation of bootable media for each global zone in the
Unified Archive. "excludeMedia" by default is False.
rootOnly (nullable) -- Optional: If specified, exclude all
non-root pool data. Each non-root pool is excluded recursively
from the resulting archive image. This is useful when a
root-only archive is desired and the list of non-root pools is
not known. "rootOnly" by default is False.
dehydrate (nullable) -- Optional: If specified, dehydrate the
publishers from the archive. If the publishers argument is
specified only dehydrate those publishers listed. Otherwise by
default, all publishers will be dehydrated. This is useful when
trying to create an archive of minimal size.
dehydratedPublishers (nullable) -- Optional: Provides a list of
publishers to be dehydrated. This option may only be used when
the dehydrate option is specified. This is useful when trying
to dehydrate select publishers from an archive.
dehydratedPublishers_count -- Number of items in
dehydratedPublishers array
error
rc_err_t archivemgr_ArchiveManager_getArchive(rc_instance_t *inst,
const char *path,
const char *key,
const char *cert,
const char *cacert,
rc_instance_t **result,
archivemgr_ArchiveRADError_t **error);
Fetch the Unified Archive that matches the path given. Returns
a handle to a UnifiedArchive object for RAD Client programs to
interact with.
Arguments:
inst -- RAD instance
path -- The path to the Unified Archive. The path must be an
absolute path.
key (nullable) -- Optional: SSL key, for use with HTTPS URIs.
cert (nullable) -- Optional: SSL cert, for use with HTTPS URIs.
cacert (nullable) -- Optional: CA cert, for use with HTTPS
URIs.
result -- A UnifiedArchive object representing the Unified
Archive that was just fetched.
error
ArchiveManager Retrieve
rc_err_t archivemgr_ArchiveManager__rad_get_name(adr_name_t **result,
int n,
...);
Obtain RAD name of a ArchiveManager object.
Arguments:
result -- RAD name
n -- Number of key-value pairs provided as variadic arguments
... -- Optional key-value pairs that compose the primary key
rc_err_t archivemgr_ArchiveManager__rad_lookup(rc_conn_t *c,
boolean_t strict,
rc_instance_t **result,
int n,
...);
Lookup a ArchiveManager instance.
Construct a RAD name for the interface based on the provided
key-value pairs and perform a lookup. If successful, instance
reference is returned in the result.
Arguments:
c -- RAD connection handle
strict -- Strict (B_TRUE) or relaxed (B_FALSE) versioning
result -- RAD instance
n -- Number of key-value pairs provided as variadic arguments
... -- Optional key-value pairs that compose the primary key
rc_err_t archivemgr_ArchiveManager__rad_list(rc_conn_t *c,
boolean_t strict,
adr_pattern_scheme_t scheme,
adr_name_t ***result,
int *result_count,
int n,
...);
List RAD names of a available ArchiveManager instances.
Returns an array and array size of matching object names.
Arguments:
c -- RAD connection handle
strict -- Strict (B_TRUE) or relaxed (B_FALSE) versioning
scheme -- Apply glob (NS_GLOB) or regex (NS_REGEX) matching
result -- Array of RAD names
result_count -- Number of names in result array
n -- Number of key-value pairs provided as variadic arguments
... -- Optional key-value pairs that compose the primary key
ArchiveManager Events
ArchiveCreationProgress -- Event that is dispatched during archive
creation, which passes progress messages to client for consumption
by user.
typedef void (*archivemgr_ArchiveManager_ArchiveCreationProgress_cb_f)(rc_instance_t *inst,
archivemgr_ArchiveCreationProgress_t *payload,
struct timespec ts,
void *arg);
Function invoked when event "ArchiveCreationProgress"
occurs.
Arguments:
inst -- RAD instance that generated the event
payload -- Event payload
ts -- Time stamp
arg -- User data: custom parameter to invoke the function
with
rc_err_t archivemgr_ArchiveManager_subscribe_ArchiveCreationProgress(rc_instance_t *inst,
archivemgr_ArchiveManager_ArchiveCreationProgress_cb_f cb,
void *arg);
Subscribe to event "ArchiveCreationProgress".
Arguments:
inst -- RAD instance
cb -- Event callback function
arg -- User data: custom parameter to invoke the function
with
rc_err_t archivemgr_ArchiveManager_unsubscribe_ArchiveCreationProgress(rc_instance_t *inst,
void **arg);
Unsubscribe from event "ArchiveCreationProgress".
Arguments:
inst -- RAD instance
arg -- User data returned
ArchiveCreationStatus -- Event that is dispatched when archive
creation operation completes.
typedef void (*archivemgr_ArchiveManager_ArchiveCreationStatus_cb_f)(rc_instance_t *inst,
archivemgr_ArchiveCreationStatus_t *payload,
struct timespec ts,
void *arg);
Function invoked when event "ArchiveCreationStatus" occurs.
Arguments:
inst -- RAD instance that generated the event
payload -- Event payload
ts -- Time stamp
arg -- User data: custom parameter to invoke the function
with
rc_err_t archivemgr_ArchiveManager_subscribe_ArchiveCreationStatus(rc_instance_t *inst,
archivemgr_ArchiveManager_ArchiveCreationStatus_cb_f cb,
void *arg);
Subscribe to event "ArchiveCreationStatus".
Arguments:
inst -- RAD instance
cb -- Event callback function
arg -- User data: custom parameter to invoke the function
with
rc_err_t archivemgr_ArchiveManager_unsubscribe_ArchiveCreationStatus(rc_instance_t *inst,
void **arg);
Unsubscribe from event "ArchiveCreationStatus".
Arguments:
inst -- RAD instance
arg -- User data returned
interface UnifiedArchive
Interface describing a RAD UnifiedArchive object, which represents a
Solaris Unified Archive. It provides the interfaces for creating
bootable media from a Unified Archive, as well as interfaces for
getting property information from a Unified Archive.
UnifiedArchive Properties
const char * archiveUUID (read-only) -- The 128-bit unique
identifier for this Unified Archive.
rc_err_t archivemgr_UnifiedArchive_get_archiveUUID(rc_instance_t *inst,
char **result);
Get property value.
Arguments:
inst -- RAD instance
result -- Property value returned
archivemgr_ArchiveType_t archiveType (read-only) -- The type of
this Unified Archive, which is a value from the ArchiveType enum.
rc_err_t archivemgr_UnifiedArchive_get_archiveType(rc_instance_t *inst,
archivemgr_ArchiveType_t *result);
Get property value.
Arguments:
inst -- RAD instance
result -- Property value returned
const char * archiveVersion (read-only) -- The version of this
Unified Archive.
rc_err_t archivemgr_UnifiedArchive_get_archiveVersion(rc_instance_t *inst,
char **result);
Get property value.
Arguments:
inst -- RAD instance
result -- Property value returned
const char * creationTime (read-only) -- The creation timestamp
(UTC) of this Unified Archive.
rc_err_t archivemgr_UnifiedArchive_get_creationTime(rc_instance_t *inst,
char **result);
Get property value.
Arguments:
inst -- RAD instance
result -- Property value returned
const char ** dehydratedPublishers (read-only) -- The dehydrated
publishers of an archive.
rc_err_t archivemgr_UnifiedArchive_get_dehydratedPublishers(rc_instance_t *inst,
char ***result,
int *result_cnt);
Get property value.
Arguments:
inst -- RAD instance
result -- Property value returned
result_cnt -- Number of items in result array
archivemgr_ISA_t isa (read-only) -- The architecture type of the
systems that are archived in this Unified Archive. A value from the
ISA enum.
rc_err_t archivemgr_UnifiedArchive_get_isa(rc_instance_t *inst,
archivemgr_ISA_t *result);
Get property value.
Arguments:
inst -- RAD instance
result -- Property value returned
const char * originTargetInfo (read-only)
The XML of the origin system's target discovery output, it is
valid for an ai_manifest(5). It can be used as a starting point
for creating a custom ai_manifest(5) target section.
rc_err_t archivemgr_UnifiedArchive_get_originTargetInfo(rc_instance_t *inst,
char **result);
Get property value.
Arguments:
inst -- RAD instance
result -- Property value returned
const char * originTargetVerboseInfo (read-only)
The XML of the origin system's target discovery verbose output,
which includes additional disk name attributes (such as devid,
devpath, etc.) that may be useful, but will not be valid for an
ai_manifest(5).
rc_err_t archivemgr_UnifiedArchive_get_originTargetVerboseInfo(rc_instance_t *inst,
char **result);
Get property value.
Arguments:
inst -- RAD instance
result -- Property value returned
const char * osName (read-only) -- Provides the Solaris release and
architecture. e.g. 'Oracle Solaris 11.4 X86'.
rc_err_t archivemgr_UnifiedArchive_get_osName(rc_instance_t *inst,
char **result);
Get property value.
Arguments:
inst -- RAD instance
result -- Property value returned
const char * hostOSVersion (read-only) -- The version of Solaris
installed on the host system, e.g. '11.4'.
rc_err_t archivemgr_UnifiedArchive_get_hostOSVersion(rc_instance_t *inst,
char **result);
Get property value.
Arguments:
inst -- RAD instance
result -- Property value returned
const char * hostOSBranch (read-only) -- The os branch of
osnet-incorporation installed on the host system, e.g.
'11.4.0.0.0.100.0'.
rc_err_t archivemgr_UnifiedArchive_get_hostOSBranch(rc_instance_t *inst,
char **result);
Get property value.
Arguments:
inst -- RAD instance
result -- Property value returned
const char * path (read-only) -- Path to this Unified Archive
(URI).
rc_err_t archivemgr_UnifiedArchive_get_path(rc_instance_t *inst,
char **result);
Get property value.
Arguments:
inst -- RAD instance
result -- Property value returned
const char * sourceHost (read-only) -- The host name of the origin
archived system.
rc_err_t archivemgr_UnifiedArchive_get_sourceHost(rc_instance_t *inst,
char **result);
Get property value.
Arguments:
inst -- RAD instance
result -- Property value returned
const char ** systems (read-only) -- The deployable archived
systems contained in this Unified Archive. The output is a list of
strings of system names.
rc_err_t archivemgr_UnifiedArchive_get_systems(rc_instance_t *inst,
char ***result,
int *result_cnt);
Get property value.
Arguments:
inst -- RAD instance
result -- Property value returned
result_cnt -- Number of items in result array
UnifiedArchive Methods
rc_err_t archivemgr_UnifiedArchive_getArchivedSystems(rc_instance_t *inst,
const char **systems,
int systems_count,
rc_instance_t ***result,
int *result_cnt,
archivemgr_ArchiveRADError_t **error);
Get a list of the deployable systems contained in this Unified
Archive.
Arguments:
inst -- RAD instance
systems (nullable) -- Optional: a list of system names to query
from the Unified Archive. If the user does not specify any
systems, all the systems contained in the archive will be
returned.
systems_count -- Number of items in systems array
result -- List of ArchivedSystem objects.
result_cnt -- Number of items in result array
error
rc_err_t archivemgr_UnifiedArchive_createMedia(rc_instance_t *inst,
const char *mediaPath,
const char *zone,
const char *source,
const char *key,
const char *cert,
const char *dataset,
archivemgr_MediaFormat_t *mediaFormat,
archivemgr_ArchiveRADError_t **error);
Create bootable media from a Solaris Unified Archive. Similar
to the "create-media" subcommand in archiveadm(8).
Note: The createMedia method submits the requested parameters
for the resulting media, and returns immediately, without
waiting for the actual media creation to complete. Users should
register for the "MediaCreationProgress" and
"MediaCreationStatus" events to observe the state of the media
creation request.
Arguments:
inst -- RAD instance
mediaPath -- The name of the resulting media image file. The
mediaPath must be an absolute path.
zone (nullable) -- Optional: selects the global zone from which
media is created. If not specified, the host global zone is
used.
source (nullable) -- Optional: provides a source for an AI
image. Valid sources are either a path to a compatible Solaris
Automated Install ISO image file or the URI of a Solaris IPS
repository which contains a compatible
pkg:/install-image/solaris-auto-install package. Compatibility
is based upon the version of Solaris. If source is not
specified, all IPS publishers which are set on the system for
which media is being created will be searched for a compatible
version of the solaris-auto-install package.
key (nullable) -- Optional: SSL key, this argument is used to
pass HTTPS credentials to the source when the source provided
is an HTTPS URI.
cert (nullable) -- Optional: SSL cert, this argument is used to
pass HTTPS credentials to the source when the source provided
is an HTTPS URI.
dataset (nullable) -- Optional: provides a ZFS dataset to be
used as a staging area for media creation. If this is not
passed, a default staging area on rpool is used. The staging
area will be cleaned up and removed at the end of media
creation.
mediaFormat (nullable) -- Optional: a value from the
MediaFormat enum, selects the format of the resulting bootable
media, either ISO or USB image file. If not specified, the USB
format is used. If the resulting media image will be larger
than 4GB, only the USB format is supported.
error
rc_err_t archivemgr_UnifiedArchive_rehydrateArchive(rc_instance_t *inst,
const char *rehydratePath,
archivemgr_ArchiveRADError_t **error);
Create a rehydrated Solaris Unified Archive from a dehydrated
Solaris Unified Archive.
Note: The rehydrateArchive method submits the requested
parameters for the resulting rehydrated archive, and returns
immediately, without waiting for the actual rehydration to
complete. Users should register for the "RehydrateProgress" and
"RehydrateStatus" events to observe the state of the rehydrate
request.
Arguments:
inst -- RAD instance
rehydratePath -- The name of the resulting rehydrated Solaris
Unified Archive. The rehydratePath must be an absolute path.
error
UnifiedArchive Retrieve
rc_err_t archivemgr_UnifiedArchive__rad_get_name(adr_name_t **result,
int n,
...);
Obtain RAD name of a UnifiedArchive object.
Arguments:
result -- RAD name
n -- Number of key-value pairs provided as variadic arguments
... -- Optional key-value pairs that compose the primary key
rc_err_t archivemgr_UnifiedArchive__rad_lookup(rc_conn_t *c,
boolean_t strict,
rc_instance_t **result,
int n,
...);
Lookup a UnifiedArchive instance.
Construct a RAD name for the interface based on the provided
key-value pairs and perform a lookup. If successful, instance
reference is returned in the result.
Arguments:
c -- RAD connection handle
strict -- Strict (B_TRUE) or relaxed (B_FALSE) versioning
result -- RAD instance
n -- Number of key-value pairs provided as variadic arguments
... -- Optional key-value pairs that compose the primary key
rc_err_t archivemgr_UnifiedArchive__rad_list(rc_conn_t *c,
boolean_t strict,
adr_pattern_scheme_t scheme,
adr_name_t ***result,
int *result_count,
int n,
...);
List RAD names of a available UnifiedArchive instances.
Returns an array and array size of matching object names.
Arguments:
c -- RAD connection handle
strict -- Strict (B_TRUE) or relaxed (B_FALSE) versioning
scheme -- Apply glob (NS_GLOB) or regex (NS_REGEX) matching
result -- Array of RAD names
result_count -- Number of names in result array
n -- Number of key-value pairs provided as variadic arguments
... -- Optional key-value pairs that compose the primary key
UnifiedArchive Events
MediaCreationProgress -- Event that is dispatched during archive
media creation, which passes progress messages to client for
consumption by user.
typedef void (*archivemgr_UnifiedArchive_MediaCreationProgress_cb_f)(rc_instance_t *inst,
archivemgr_MediaCreationProgress_t *payload,
struct timespec ts,
void *arg);
Function invoked when event "MediaCreationProgress" occurs.
Arguments:
inst -- RAD instance that generated the event
payload -- Event payload
ts -- Time stamp
arg -- User data: custom parameter to invoke the function
with
rc_err_t archivemgr_UnifiedArchive_subscribe_MediaCreationProgress(rc_instance_t *inst,
archivemgr_UnifiedArchive_MediaCreationProgress_cb_f cb,
void *arg);
Subscribe to event "MediaCreationProgress".
Arguments:
inst -- RAD instance
cb -- Event callback function
arg -- User data: custom parameter to invoke the function
with
rc_err_t archivemgr_UnifiedArchive_unsubscribe_MediaCreationProgress(rc_instance_t *inst,
void **arg);
Unsubscribe from event "MediaCreationProgress".
Arguments:
inst -- RAD instance
arg -- User data returned
MediaCreationStatus -- Event that is dispatched when media creation
operation completes.
typedef void (*archivemgr_UnifiedArchive_MediaCreationStatus_cb_f)(rc_instance_t *inst,
archivemgr_MediaCreationStatus_t *payload,
struct timespec ts,
void *arg);
Function invoked when event "MediaCreationStatus" occurs.
Arguments:
inst -- RAD instance that generated the event
payload -- Event payload
ts -- Time stamp
arg -- User data: custom parameter to invoke the function
with
rc_err_t archivemgr_UnifiedArchive_subscribe_MediaCreationStatus(rc_instance_t *inst,
archivemgr_UnifiedArchive_MediaCreationStatus_cb_f cb,
void *arg);
Subscribe to event "MediaCreationStatus".
Arguments:
inst -- RAD instance
cb -- Event callback function
arg -- User data: custom parameter to invoke the function
with
rc_err_t archivemgr_UnifiedArchive_unsubscribe_MediaCreationStatus(rc_instance_t *inst,
void **arg);
Unsubscribe from event "MediaCreationStatus".
Arguments:
inst -- RAD instance
arg -- User data returned
RehydrateProgress -- Event that is dispatched during archive
rehydrate, which passes progress messages to client for consumption
by user.
typedef void (*archivemgr_UnifiedArchive_RehydrateProgress_cb_f)(rc_instance_t *inst,
archivemgr_RehydrateProgress_t *payload,
struct timespec ts,
void *arg);
Function invoked when event "RehydrateProgress" occurs.
Arguments:
inst -- RAD instance that generated the event
payload -- Event payload
ts -- Time stamp
arg -- User data: custom parameter to invoke the function
with
rc_err_t archivemgr_UnifiedArchive_subscribe_RehydrateProgress(rc_instance_t *inst,
archivemgr_UnifiedArchive_RehydrateProgress_cb_f cb,
void *arg);
Subscribe to event "RehydrateProgress".
Arguments:
inst -- RAD instance
cb -- Event callback function
arg -- User data: custom parameter to invoke the function
with
rc_err_t archivemgr_UnifiedArchive_unsubscribe_RehydrateProgress(rc_instance_t *inst,
void **arg);
Unsubscribe from event "RehydrateProgress".
Arguments:
inst -- RAD instance
arg -- User data returned
RehydrateStatus -- Event that is dispatched when the rehydrate
operation completes.
typedef void (*archivemgr_UnifiedArchive_RehydrateStatus_cb_f)(rc_instance_t *inst,
archivemgr_RehydrateStatus_t *payload,
struct timespec ts,
void *arg);
Function invoked when event "RehydrateStatus" occurs.
Arguments:
inst -- RAD instance that generated the event
payload -- Event payload
ts -- Time stamp
arg -- User data: custom parameter to invoke the function
with
rc_err_t archivemgr_UnifiedArchive_subscribe_RehydrateStatus(rc_instance_t *inst,
archivemgr_UnifiedArchive_RehydrateStatus_cb_f cb,
void *arg);
Subscribe to event "RehydrateStatus".
Arguments:
inst -- RAD instance
cb -- Event callback function
arg -- User data: custom parameter to invoke the function
with
rc_err_t archivemgr_UnifiedArchive_unsubscribe_RehydrateStatus(rc_instance_t *inst,
void **arg);
Unsubscribe from event "RehydrateStatus".
Arguments:
inst -- RAD instance
arg -- User data returned
interface ArchivedSystem
Interface describing a RAD ArchivedSystem object, which represents a
single deployable system contained in the Unified Archive. Information
about the deployable system's properties can be accessed.
ArchivedSystem Properties
const char * activeBE (read-only) -- The name of the active boot
environment on this system.
rc_err_t archivemgr_ArchivedSystem_get_activeBE(rc_instance_t *inst,
char **result);
Get property value.
Arguments:
inst -- RAD instance
result -- Property value returned
const char * aiMedia (read-only) -- The name of the AI media
associated with this archived system.
rc_err_t archivemgr_ArchivedSystem_get_aiMedia(rc_instance_t *inst,
char **result);
Get property value.
Arguments:
inst -- RAD instance
result -- Property value returned
const char * brand (read-only) -- The brand of the zone that is
archived, e.g. solaris-kz.
rc_err_t archivemgr_ArchivedSystem_get_brand(rc_instance_t *inst,
char **result);
Get property value.
Arguments:
inst -- RAD instance
result -- Property value returned
const char ** embeddedZones (read-only, nullable) -- The list of
zones that are embedded in this system. The output is a list of
zones or None if there are no embedded zones.
rc_err_t archivemgr_ArchivedSystem_get_embeddedZones(rc_instance_t *inst,
char ***result,
int *result_cnt);
Get property value.
Arguments:
inst -- RAD instance
result -- Property value returned
result_cnt -- Number of items in result array
const char * name (read-only) -- The name of this system.
rc_err_t archivemgr_ArchivedSystem_get_name(rc_instance_t *inst,
char **result);
Get property value.
Arguments:
inst -- RAD instance
result -- Property value returned
const char * osBranch (read-only) -- The os branch of
osnet-incorporation, e.g. '11.4.0.0.0.55.0'.
rc_err_t archivemgr_ArchivedSystem_get_osBranch(rc_instance_t *inst,
char **result);
Get property value.
Arguments:
inst -- RAD instance
result -- Property value returned
const char * osVersion (read-only) -- The version of Solaris
installed on this system, e.g. '11.4'.
rc_err_t archivemgr_ArchivedSystem_get_osVersion(rc_instance_t *inst,
char **result);
Get property value.
Arguments:
inst -- RAD instance
result -- Property value returned
boolean_t rootOnly (read-only) -- True if this system contains only
root data; Otherwise False.
rc_err_t archivemgr_ArchivedSystem_get_rootOnly(rc_instance_t *inst,
boolean_t *result);
Get property value.
Arguments:
inst -- RAD instance
result -- Property value returned
long long size (read-only) -- The size needed to deploy this
system, byte-count output.
rc_err_t archivemgr_ArchivedSystem_get_size(rc_instance_t *inst,
long long *result);
Get property value.
Arguments:
inst -- RAD instance
result -- Property value returned
const char * systemUUID (read-only) -- The 128-bit unique
identifier for this system.
rc_err_t archivemgr_ArchivedSystem_get_systemUUID(rc_instance_t *inst,
char **result);
Get property value.
Arguments:
inst -- RAD instance
result -- Property value returned
const char * originTargetInfo (read-only)
The XML of the system's target discovery output, it is valid
for an ai_manifest(5). It can be used as a starting point for
creating a custom ai_manifest(5) target section.
rc_err_t archivemgr_ArchivedSystem_get_originTargetInfo(rc_instance_t *inst,
char **result);
Get property value.
Arguments:
inst -- RAD instance
result -- Property value returned
const char * originTargetVerboseInfo (read-only)
The XML of the system's target discovery verbose output, which
may include additional disk name attributes (such as devid,
devpath, etc.) that might be useful, but will not be valid for
an ai_manifest(5).
rc_err_t archivemgr_ArchivedSystem_get_originTargetVerboseInfo(rc_instance_t *inst,
char **result);
Get property value.
Arguments:
inst -- RAD instance
result -- Property value returned
ArchivedSystem Retrieve
rc_err_t archivemgr_ArchivedSystem__rad_get_name(adr_name_t **result,
int n,
...);
Obtain RAD name of a ArchivedSystem object.
Arguments:
result -- RAD name
n -- Number of key-value pairs provided as variadic arguments
... -- Optional key-value pairs that compose the primary key
rc_err_t archivemgr_ArchivedSystem__rad_lookup(rc_conn_t *c,
boolean_t strict,
rc_instance_t **result,
int n,
...);
Lookup a ArchivedSystem instance.
Construct a RAD name for the interface based on the provided
key-value pairs and perform a lookup. If successful, instance
reference is returned in the result.
Arguments:
c -- RAD connection handle
strict -- Strict (B_TRUE) or relaxed (B_FALSE) versioning
result -- RAD instance
n -- Number of key-value pairs provided as variadic arguments
... -- Optional key-value pairs that compose the primary key
rc_err_t archivemgr_ArchivedSystem__rad_list(rc_conn_t *c,
boolean_t strict,
adr_pattern_scheme_t scheme,
adr_name_t ***result,
int *result_count,
int n,
...);
List RAD names of a available ArchivedSystem instances.
Returns an array and array size of matching object names.
Arguments:
c -- RAD connection handle
strict -- Strict (B_TRUE) or relaxed (B_FALSE) versioning
scheme -- Apply glob (NS_GLOB) or regex (NS_REGEX) matching
result -- Array of RAD names
result_count -- Number of names in result array
n -- Number of key-value pairs provided as variadic arguments
... -- Optional key-value pairs that compose the primary key
ENUMERATED TYPES
enum ArchiveRADErrType -- Possible error types returned by the Archive
RAD Module.
typedef enum archivemgr_ArchiveRADErrType {
AARADET_ARCHIVE_OPTION_ERR = 0,
AARADET_INVALID_ARG_VALUE = 1,
AARADET_ARCHIVE_ERR = 2,
AARADET_RUNTIME_ERR = 3,
AARADET_LOCKFILE_ERR = 4,
} archivemgr_ArchiveRADErrType_t;
When the Archive RAD Module encounters an error, it will return a
payload containing both an error type and an error message. This
enum defines the possible error types.
AARADET_ARCHIVE_OPTION_ERR (0) -- This error type will be raised
when a user specified invalid or conflicting options.
AARADET_INVALID_ARG_VALUE (1) -- This error type will be raised
when a method has been called with an invalid argument.
AARADET_ARCHIVE_ERR (2) -- This error type represents a general
exception raised by the archive library.
AARADET_RUNTIME_ERR (3) -- This error type will be raised when an
error is detected that does not fall in any of the other
categories.
AARADET_LOCKFILE_ERR (4) -- This error type will be raised when the
Lockfile is unable to acquire a lock.
enum ArchiveOpExecStatus -- Indicates the execution status of an
archive operation.
typedef enum archivemgr_ArchiveOpExecStatus {
AAOES_EXEC_SUCCESSFUL = 0,
AAOES_EXEC_FAILED = 1,
AAOES_EXEC_CANCELED = 2,
} archivemgr_ArchiveOpExecStatus_t;
AAOES_EXEC_SUCCESSFUL (0) -- The archive operation has executed
successfully.
AAOES_EXEC_FAILED (1) -- The archive operation execution has
failed.
AAOES_EXEC_CANCELED (2) -- The archive operation execution has been
canceled.
enum ArchiveType -- The type of a Unified Archive.
typedef enum archivemgr_ArchiveType {
AAT_RECOVERY = 0,
AAT_CLONE = 1,
} archivemgr_ArchiveType_t;
AAT_RECOVERY (0)
AAT_CLONE (1)
enum ISA -- The architecture type of the systems that are archived in a
Unified Archive.
typedef enum archivemgr_ISA {
AISA_SPARC = 0,
AISA_I386 = 1,
} archivemgr_ISA_t;
AISA_SPARC (0)
AISA_I386 (1)
enum MediaFormat -- The format of a bootable media.
typedef enum archivemgr_MediaFormat {
AMF_ISO = 0,
AMF_USB = 1,
} archivemgr_MediaFormat_t;
AMF_ISO (0)
AMF_USB (1)
STRUCTURED TYPES
struct ArchiveRADError -- Contains information about an error that
occurred in the Archive RAD Module.
typedef struct archivemgr_ArchiveRADError
archivemgr_ArchiveRADError_t;
struct archivemgr_ArchiveRADError {
archivemgr_ArchiveRADErrType_t aarade_errType;
char *aarade_info;
};
void archivemgr_ArchiveRADError_free(archivemgr_ArchiveRADError_t *in);
Fields:
aarade_errType -- The error type is an enum value of
ArchiveRADErrType.
aarade_info -- This field contains the error message, which is a
human readable string detailing the cause of the error.
struct ArchiveCreationProgress -- Event that is dispatched whenever
there is a progress message to be passed to the client during archive
creation.
typedef struct archivemgr_ArchiveCreationProgress
archivemgr_ArchiveCreationProgress_t;
struct archivemgr_ArchiveCreationProgress {
int aacp_percent;
char *aacp_message;
boolean_t aacp_is_error;
};
void archivemgr_ArchiveCreationProgress_free(archivemgr_ArchiveCreationProgress_t *in);
Fields:
aacp_percent -- The percentage integer describing the current
progress status of an archive creation.
aacp_message -- The progress message.
aacp_is_error -- Information if this message should be logged to
stderr.
struct MediaCreationProgress -- Event that is dispatched whenever there
is a progress message to be passed to the client during media creation.
typedef struct archivemgr_MediaCreationProgress
archivemgr_MediaCreationProgress_t;
struct archivemgr_MediaCreationProgress {
int amcp_percent;
char *amcp_message;
};
void archivemgr_MediaCreationProgress_free(archivemgr_MediaCreationProgress_t *in);
Fields:
amcp_percent -- The percentage integer describing the current
progress status of a media creation.
amcp_message -- The progress message.
struct RehydrateProgress -- Event that is dispatched whenever there is
a progress message to be passed to the client during rehydration.
typedef struct archivemgr_RehydrateProgress
archivemgr_RehydrateProgress_t;
struct archivemgr_RehydrateProgress {
int arp_percent;
char *arp_message;
};
void archivemgr_RehydrateProgress_free(archivemgr_RehydrateProgress_t *in);
Fields:
arp_percent -- The percentage integer describing the current
progress status of rehydration.
arp_message -- The progress message.
struct ArchiveCreationStatus -- Event that is dispatched when the long
running archive creation operation completes. Return the status of the
operation.
typedef struct archivemgr_ArchiveCreationStatus
archivemgr_ArchiveCreationStatus_t;
struct archivemgr_ArchiveCreationStatus {
archivemgr_ArchiveOpExecStatus_t aacs_status;
archivemgr_ArchiveRADErrType_t *aacs_errType;
char *aacs_errorMessage;
};
void archivemgr_ArchiveCreationStatus_free(archivemgr_ArchiveCreationStatus_t *in);
Fields:
aacs_status
The archive creation operation status, indicates whether the
operation is "EXEC_SUCCESSFUL", "EXEC_FAILED" or
"EXEC_CANCELED". The status is an enum value of
ArchiveOpExecStatus.
aacs_errType -- This field is used if the status is "EXEC_FAILED".
The error type is an enum value of ArchiveRADErrType.
aacs_errorMessage -- This field is used if the status is
"EXEC_FAILED". This field contains the message that describes the
reason for the failure.
struct MediaCreationStatus -- Event that is dispatched when the long
running media creation operation completes. Return the status of the
operation.
typedef struct archivemgr_MediaCreationStatus
archivemgr_MediaCreationStatus_t;
struct archivemgr_MediaCreationStatus {
archivemgr_ArchiveOpExecStatus_t amcs_status;
archivemgr_ArchiveRADErrType_t *amcs_errType;
char *amcs_errorMessage;
};
void archivemgr_MediaCreationStatus_free(archivemgr_MediaCreationStatus_t *in);
Fields:
amcs_status
The archive media creation operation status, indicates whether
the operation is "EXEC_SUCCESSFUL", "EXEC_FAILED" or
"EXEC_CANCELED". The status is an enum value of
ArchiveOpExecStatus.
amcs_errType -- This field is used if the status is "EXEC_FAILED".
The error type is an enum value of ArchiveRADErrType.
amcs_errorMessage -- This field is used if the status is
"EXEC_FAILED". This field contains the message that describes the
reason for the failure.
struct RehydrateStatus -- Event that is dispatched when the long
running rehydrate operation completes. Return the status of the
operation.
typedef struct archivemgr_RehydrateStatus
archivemgr_RehydrateStatus_t;
struct archivemgr_RehydrateStatus {
archivemgr_ArchiveOpExecStatus_t ars_status;
archivemgr_ArchiveRADErrType_t *ars_errType;
char *ars_errorMessage;
};
void archivemgr_RehydrateStatus_free(archivemgr_RehydrateStatus_t *in);
Fields:
ars_status
The archive rehydrate operation status, indicates whether the
operation is "EXEC_SUCCESSFUL", "EXEC_FAILED" or
"EXEC_CANCELED". The status is an enum value of
ArchiveOpExecStatus.
ars_errType -- This field is used if the status is "EXEC_FAILED".
The error type is an enum value of ArchiveRADErrType.
ars_errorMessage -- This field is used if the status is
"EXEC_FAILED". This field contains the message that describes the
reason for the failure.
VERSION
1.0
ATTRIBUTES
See attributes(7) for descriptions of the following attributes:
+--------------------+---------------------------------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+--------------------+---------------------------------------------+
|Availability | system/management/rad/module/rad-archivemgr |
+--------------------+---------------------------------------------+
|Interface Stability | Private |
+--------------------+---------------------------------------------+
SEE ALSO
rad(8)
NOTES
1. Accessing Python documentation for this module:
$ pydoc rad.bindings.com.oracle.solaris.rad.archivemgr_1
Solaris 11.4 2017-02-01 ARCHIVEMGR-1(3rad)