Skip Navigation Links
Exit Print View
| Oracle Solaris Cluster Reference Manual Oracle Solaris Cluster 4.1

Search Scope:

- This Document
- Entire Library

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

Copyright © 2000, 2012, Oracle and/or its affiliates. All rights reserved. Legal Notices |