Home | History | Annotate | Download | only in man3ha
 te
CDDL HEADER START

The contents of this file are subject to the terms of the
Common Development and Distribution License (the "License").
You may not use this file except in compliance with the License.

You can obtain a copy of the license at CDDL.txt
or http://www.opensolaris.org/os/licensing.
See the License for the specific language governing permissions
and limitations under the License.

When distributing Covered Code, include this CDDL HEADER in each
file and include the License file at CDDL.txt.
If applicable, add the following below this CDDL HEADER, with the
fields enclosed by brackets "[]" replaced with your own identifying
information: Portions Copyright [yyyy] [name of copyright owner]

CDDL HEADER END
Copyright 2008 Sun Microsystems, Inc. All
rights reserved. Use is subject to license terms.
scds_get_ext_property 3HA "13 Aug 2008" "Sun Cluster 3.2" "Sun Cluster HA and Data Services"
NAME
scds_get_ext_property - retrieve an extension property
SYNOPSIS

cc [flags.\|.\|.] -I /usr/cluster/include file -L /usr/cluster/lib  -l  dsdev
#include <rgm/libdsdev.h>

scha_err_t  scds_get_ext_property(scds_handle_t handle, const char *property_name,
 scha_prop_type_t  property_type, scha_extprop_value_t **property_value);
DESCRIPTION

The scds_get_ext_property() function retrieves the value of a given extension property.

The name of the property is first looked up in the list of properties specified in the method argument list ( argv[], which was parsed by scds_initialize()). If the property name is not in the method argument list, it is retrieved using the Sun Cluster API. See scha_calls(3HA).

Upon successful completion, the value of the property is placed in the appropriate variable in the union in a scha_extprop_value_t structure and a pointer to this structure is passed back to the caller in property_value.

You are responsible for freeing memory by using scds_free_ext_property().

You can find information about the data types scha_prop_type_t and scha_extprop_value_t in scha_calls(3HA) and in the scha_types.h header file.

DSDL provides convenience functions to retrieve the values of some of the more commonly used resource extension properties. See the scds_property_functions(3HA) man page.

PARAMETERS

The following parameters are supported:

.na handle .ad The handle returned from scds_initialize(3HA)

.na property_name .ad Name of the property being retrieved

.na property_type .ad Property value type. Valid types are defined in scha_calls(3HA) and property_attributes(5).

.na property_value .ad Pointer to a property value

RETURN VALUES

The scds_get_ext_property() function returns the following values:

.na 0 .ad The function succeeded.

.na nonzero .ad The function failed.

ERRORS

.na SCHA_ERR_PROP .ad RTR file does not define the specified property.

.na SCHA_ERR_NOERR .ad The function succeeded.

.na Other values .ad Indicate that the function failed. See scha_calls(3HA) for the meaning of the failure codes.

EXAMPLES

Example 1 Using scds_get_ext_property()

#include <scha_types.h>
#include <libdsdev.h>
#define INT_EXT_PROP "Int_extension_property"
...
int retCode;
scha_extprop_value_t *intExtProp;
int retrievedValue;
...
 retCode = scds_get_ext_property(handle,
 INT_EXT_PROP, SCHA_PTYPE_INT, &intExtProp);
 if (retCode != SCHA_ERR_NOERR) {
 scds_syslog(LOG_ERR,
 "Failed to retrieve the extension property %s: %s.",
 INT_EXT_PROP, scds_error_string(retCode));
 ...
 } else {
 retrievedValue = intExtProp->val.val_int;
 ...
 scds_free_ext_property(intExtProp);
 ...
 }
 ...
FILES

.na /usr/cluster/include/rgm/libdsdev.h .ad Include file

.na /usr/cluster/lib/libdsdev.so .ad Library

ATTRIBUTES

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

ATTRIBUTE TYPEATTRIBUTE VALUE
AvailabilitySUNWscdev
Interface StabilityEvolving
SEE ALSO

scds_free_ext_property(3HA), scds_initialize(3HA), scds_property_functions(3HA), scha_calls(3HA), rt_reg(4), attributes(5), property_attributes(5)

NOTES

Only the values of extension properties that are defined in the RTR file can be retrieved by using this function. See rt_reg(4).