Go to main content

Oracle Solaris Cluster 4.3 Reference Manual

Exit Print View

Updated: September 2015
 
 

scds_get_ext_property (3HA)

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_tscds_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 Oracle Solaris 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:

handle

The handle returned from scds_initialize(3HA)

property_name

Name of the property being retrieved

property_type

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

property_value

Pointer to a property value

Return Values

The scds_get_ext_property() function returns the following values:

0

The function succeeded.

nonzero

The function failed.

Errors

SCHA_ERR_PROP

RTR file does not define the specified property.

SCHA_ERR_NOERR

The function succeeded.

Other values

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

/usr/cluster/include/rgm/libdsdev.h

Include file

/usr/cluster/lib/libdsdev.so

Library

Attributes

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

ATTRIBUTE TYPE
ATTRIBUTE VALUE
Availability
ha-cluster/developer/api
Interface Stability
Evolving

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).