Content-type: text/html Man page of scf_property_create

scf_property_create

Section: Service Configuration Facility Library Functions (3SCF)
Updated: 24 Aug 2005
Index Return to Main Contents
 

NAME

scf_property_create, scf_property_handle, scf_property_destroy, scf_property_get_name, scf_property_type, scf_property_is_type, scf_property_get_value, scf_pg_get_property - create and manipulate property handles in the Service Configuration Facility  

SYNOPSIS

cc [ flag... ] file... -lscf [ library... ] 
#include <libscf.h>

scf_property_t *scf_property_create(scf_handle_t *handle);

scf_handle_t *scf_property_handle(scf_property_t *prop);

void scf_property_destroy(scf_property_t *prop);

ssize_t scf_property_get_name(const scf_property_t *prop, char *buf, size_t size);

int scf_property_type(const scf_property_t *prop, scf_type_t *type);

int scf_property_is_type(const scf_property_t *prop, scf_type_t type);

int scf_property_get_value(const scf_property_t *prop, scf_value_t *value);

int scf_pg_get_property(const scf_property_t *pg, const char *name, scf_property_t *prop);  

DESCRIPTION

Properties are named sets of values of one type. They are grouped into property groups (see scf_pg_create(3SCF)) that are updated atomically using transactions (see scf_transaction_create(3SCF)).

An scf_property_t is an opaque handle that can be set to a single property at any given time. When set, it inherits the point-in-time from the source scf_propertygroup_t and does not change until reset.

The scf_property_create() function allocates and initializes a new scf_property_t bound to handle. The scf_property_destroy() function destroys and frees prop.

The scf_property_handle() function returns the handle to which prop is bound.

The scf_property_type() function retrieves the type of the property to which prop is set.

The scf_property_is_type() function determines if the property is compatible with type. See scf_value_is_type(3SCF).

The scf_property_get_value() function retrieves the single value that the property to which prop is set contains. If the property has more than one value, the value argument is set to one of the values. To retrieve all values associated with a property, see scf_iter_property_values(3SCF).

The scf_pg_get_property() function sets prop to the property specified by name in the property group specified by pg.  

RETURN VALUES

Upon successful completion, scf_property_create() returns a new scf_property_t. Otherwise, it returns NULL.

Upon successful completion, scf_property_get_name() function returns the length of the string written, not including the terminating null byte. Otherwise, it returns -1.

Upon successful completion, scf_pg_get_property(), scf_property_type(), scf_property_is_type(), and scf_pg_get_value() functions return 0. Otherwise, they return -1.  

ERRORS

The scf_property_create() function will fail if:

SCF_ERROR_INVALID_ARGUMENT

The value of the handle argument is NULL.

SCF_ERROR_NO_MEMORY

There is not enough memory to allocate an scf_property_t.

SCF_ERROR_NO_RESOURCES

The server does not have adequate resources for a new property handle.

The scf_property_handle() function will fail if:

SCF_ERROR_HANDLE_DESTROYED

The handle associated with prop has been destroyed.

The scf_property_get_name(), scf_property_type(), scf_property_is_type(), and scf_property_get_value() functions will fail if:

SCF_ERROR_DELETED

The property's parent property group or an ancestor has been deleted.

SCF_ERROR_NOT_BOUND

The handle was never bound or has been unbound.

SCF_ERROR_NOT_SET

The property is not set.

SCF_ERROR_CONNECTION_BROKEN

The connection to the repository was lost.

The scf_property_is_type() function will fail if:

SCF_ERROR_INVALID_ARGUMENT

The type argument is not a valid type.

SCF_ERROR_TYPE_MISMATCH

The prop argument is not of a type compatible with type.

The scf_pg_get_property() function will fail if:

SCF_ERROR_NOT_SET

The property group specified by pg is not set.

SCF_ERROR_NOT_FOUND

The property specified by name was not found.

SCF_ERROR_INVALID_ARGUMENT

The value of the name argument is not a valid property name.

SCF_ERROR_HANDLE_MISMATCH

The property group and property are not derived from the same handle.

SCF_ERROR_CONNECTION_BROKEN

The connection to the repository was lost.

SCF_ERROR_NOT_BOUND

The handle was never bound or has been unbound.

SCF_ERROR_DELETED

The property group or an ancestor has been deleted.

The scf_property_get_value() function will fail if:

SCF_ERROR_CONSTRAINT_VIOLATED

The property has more than one value associated with it. The value argument will be set to one of the values.

SCF_ERROR_NOT_FOUND

The property has no values associated with it. The value argument will be reset.

SCF_ERROR_HANDLE_MISMATCH

The property and value are derived from different handles.

The scf_error(3SCF) function can be used to retrieve the error value.  

ATTRIBUTES

See attributes(5) for descriptions of the following attributes:

ATTRIBUTE TYPEATTRIBUTE VALUE
Interface StabilityEvolving
MT-LevelSafe

 

SEE ALSO

libscf(3LIB), scf_error(3SCF), scf_handle_decode_fmri(3SCF), scf_iter_property_values(3SCF), scf_pg_create(3SCF), scf_property_to_fmri(3SCF), scf_transaction_create(3SCF), scf_value_is_type(3SCF), attributes(5)


 

Index

NAME
SYNOPSIS
DESCRIPTION
RETURN VALUES
ERRORS
ATTRIBUTES
SEE ALSO

This document was created by man2html, using the manual pages.
Time: 02:39:17 GMT, October 02, 2010