/* IBM_PROLOG_BEGIN_TAG */ /* This is an automatically generated prolog. */ /* */ /* */ /* */ /* Licensed Materials - Property of IBM */ /* */ /* (C) COPYRIGHT International Business Machines Corp. 1998,2019 */ /* All Rights Reserved */ /* */ /* US Government Users Restricted Rights - Use, duplication or */ /* disclosure restricted by GSA ADP Schedule Contract with IBM Corp. */ /* */ /* IBM_PROLOG_END_TAG */ /*===========================================================================*/ /* */ /* Module Name: ct_mc.h */ /* */ /* Description: */ /* Interface definitions for the RMCAPI. */ /* */ /* This file is formatted to be viewed with tab stops set to 4. */ /*===========================================================================*/ /* @(#)18 1.51 src/rsct/rmc/rmcapi/ct_mc.h, rmcapi, rsct_rady, rady2035a 1/28/16 05:50:35 */ #ifndef _H_CT_MC #define _H_CT_MC #ifdef __cplusplus extern "C" { #endif /* __cplusplus */ #include #include #include /* Cluster common types */ #include /* Cluster common utilities */ #include /* RMC common types */ #include /* RMC command response error codes */ /*--------------------------------------------------------------------------*/ /* Error Codes */ /*--------------------------------------------------------------------------*/ #define MC_ELIB 1 /* Severe library or system error */ #define MC_ESESSREFUSED 2 /* A session could not be established */ #define MC_ESESSINTRPT 3 /* The session has been interrupted */ #define MC_ESESSENDED 4 /* The session has been ended */ #define MC_EINVALIDSESS 5 /* Specified session handle is invalid */ #define MC_ENODSCRP 6 /* Descriptor cannot be allocated */ #define MC_EINVALIDDSCRP 7 /* The specified descriptor is invalid */ #define MC_EINVALIDCMD 8 /* Specified cmd grp handle is invalid */ #define MC_ENOCMDS 9 /* Command group contains no commands */ #define MC_ESENTENDED 10 /* Command group sent; session ended */ #define MC_ESENTINTRPT 11 /* Cmd. group sent; session interrupted */ #define MC_EINVALIDDATA 12 /* Invalid response or notification */ #define MC_ECMDGRPSLIMIT 13 /* Session contains max. command groups */ #define MC_ECMDGRPLIMIT 14 /* Command group contains max. commands */ #define MC_EINVALIDEID 15 /* Specified registration ID is invalid */ #define MC_EINVALIDOPT 16 /* The specified option is invalid */ #define MC_EBUSY 17 /* Function busy */ #define MC_ENOMEM 18 /* Memory allocation error */ #define MC_EAGAIN 19 /* Some system resource not available */ #define MC_EINVALIDCB 20 /* Invalid callback routine specified */ #define MC_EINVALIDRSPPTR 21 /* Invalid response pointer specified */ #define MC_EINVALIDCNTPTR 22 /* Invalid rsp. count pointer specified */ #define MC_EINVALIDRSRCCNT 23 /* Invalid resource handle count */ #define MC_ECMDTOOLARGE 24 /* Command is too large */ #define MC_ELIBNOMEM 25 /* Memory severe allocation error */ #define MC_EORDERGROUP 26 /* Attempted to add to ordered cmd grp */ #define MC_ETARGETMISMATCH 27 /* Command/cmd group target(s) mismatch */ #define MC_EINVALIDDATATYPE 28 /* Invalid attribute data type */ #define MC_EINVALIDVALUEPTR 29 /* Invalid attribute value pointer */ #define MC_EINVALIDSBSLEN 30 /* Invalid structured byte string len. */ #define MC_EINVALIDSDTYPE 31 /* Invalid structured data subtype */ #define MC_EINVALIDCONTACT 32 /* Invalid contact type */ #define MC_ENOTSUPPORTED 33 /* Called function is not supported */ #define MC_EDEADLOCK 34 /* Possible deadlock detected */ #define MC_EINVALIDNAME 35 /* Invalid contact point name (NULL) */ #define MC_EINVALIDSTRING 36 /* Invalid string */ #define MC_ELIBSECURITY 37 /* RMCAPI security service error */ #define MC_ESUBSECURITY 38 /* RMC subsystem security service error */ #define MC_EAUTHENTICATE 39 /* Could not authenticate user */ #define MC_EAUTHORIZATION 40 /* User not authorized to use RMC */ #define MC_EMUTUALAUTHENT 41 /* RMCAPI could not authenticate subsys */ #define MC_EVERSIONMISMATCH 42 /* RMCAPI version mismatch */ /* The following error codes were introduced with version 2 of the RMCAPI */ #define MC_EINVALSCOPE 43 /* Specified session scope not supported */ #define MC_EMULTISCOPE 44 /* Multiple session scopes specified */ #define MC_ENOTPRIVATESCOPE 45 /* Specified session scope not private */ #define MC_EQEVENTACTIVE 46 /* A query event command is active */ #define MC_ENOSUPPORTRTNVER 47 /* No support for routine/RMC version */ #define MC_ENOSUPPORTARGVER 48 /* No support for arguments/RMC version */ #define MC_ECLASSEID 49 /* Registration ID for a class event */ #define MC_ENOIPADDRCONTACT 50 /* Contact must be IP address */ #define MC_ENOIPAUTHENTSUPPORT 51 /* IP authent. not supported by session */ #define MC_ETIMEDOUT 52 /* Start session, or command, timed out */ #define MC_EUNKNOWNINFO 53 /* Unknown type of information requested */ #define MC_EIMPROPERINFO 54 /* Info not appropriate for circumstances */ #define MC_EUNATTAINABLEINFO 55 /* Requested information not attainable */ /*--------------------------------------------------------------------------*/ /* Handles and Identifiers */ /*--------------------------------------------------------------------------*/ typedef void * mc_sess_hndl_t; /* session handle */ typedef void * mc_cmdgrp_hndl_t; /* command group handle */ typedef void * mc_registration_id_t; /* event registration ID */ /*--------------------------------------------------------------------------*/ /* Resource Monitoring and Control (RMC) constants */ /*--------------------------------------------------------------------------*/ /* * MC_CMD_GRPS_LIMIT is the maximum number of command groups allowed in a * session. */ #define MC_CMD_GRPS_LIMIT 65535 /* * MC_CMD_GRP_LIMIT is the maximum number of commands allowed in a command * group. */ #define MC_CMD_GRP_LIMIT 65535 /*--------------------------------------------------------------------------*/ /* Resource Monitoring and Control (RMC) API enumerations. */ /*--------------------------------------------------------------------------*/ /* * Session Status Flags (introduced with version 2 of the RMCAPI) */ typedef enum { MC_SESS_STATUS_NONE = 0x0000, MC_SESS_STATUS_INTRPT = 0x0001, MC_SESS_STATUS_INTRPT_CHANGED_SCOPE = 0x0002 } mc_sess_status_t; /* * Session Information Type (introduced with version 2 of the RMCAPI) * * The second argument to mc_session_info() is of this type; it specifies * what type of information is requested. The data type of the third * argument to mc_session_info() is determined by this value. * * Value of info_type Data type of info_returned * ------------------ -------------------------- * * MC_SESS_INFO_LOCAL_IP_ADDRESS struct in6_addr * * (as defined in netinet/in.h) * * When MC_SESS_INFO_LOCAL_IP_ADDRESS is specified, mc_session_info() * returns the session's local IP address. This operation is only * supported for remote sessions. */ typedef enum { MC_SESS_INFO_LOCAL_IP_ADDRESS } mc_sess_info_t; /* * Start Session options */ typedef enum { MC_SESSION_OPTS_NONE = 0x0000, MC_SESSION_OPTS_LOCAL_SCOPE = 0x0001, /* The following options were introduced with version 2 of the RMCAPI */ MC_SESSION_OPTS_SR_SCOPE = 0x0002, MC_SESSION_OPTS_DM_SCOPE = 0x0004, MC_SESSION_OPTS_PRIVATE = 0x0008, MC_SESSION_OPTS_SR_LOCAL_SCOPE = 0x0010, MC_SESSION_OPTS_DM_LOCAL_SCOPE = 0x0020, MC_SESSION_OPTS_SR_DM_SCOPE = 0x0040, MC_SESSION_OPTS_DM_SR_SCOPE = 0x0080, MC_SESSION_OPTS_SR_DM_LOCAL_SCOPE = 0x0100, MC_SESSION_OPTS_DM_SR_LOCAL_SCOPE = 0x0200, MC_SESSION_OPTS_IP_AUTHENTICATION = 0x0400, MC_SESSION_OPTS_RESET_CMDTIMEOUT = 0x0800 } mc_session_opts_t; /* * Dispatch options */ typedef enum { MC_DISPATCH_OPTS_WAIT, MC_DISPATCH_OPTS_ASSIGN } mc_dispatch_opts_t; /* * Start command group options */ typedef enum { MC_CMD_GRP_OPTS_NONE = 0x0000, MC_CMD_GRP_OPTS_ORDERED = 0x0001, MC_CMD_GRP_OPTS_NO_INTERLEAVE = 0x0002, MC_CMD_GRP_OPTS_STOP_ON_ERROR = 0x0004 } mc_cmd_grp_opts_t; /* * Registration command options (The MC_REG_OPTS_KEEP_REG constant is only * used with the attribute selection form of the command): */ typedef enum { MC_REG_OPTS_NONE = 0x0000, MC_REG_OPTS_NO_REG = 0x0001, MC_REG_OPTS_IMMED_EVAL = 0x0002, MC_REG_OPTS_REARM_EVENT = 0x0004, MC_REG_OPTS_KEEP_REG = 0x0008, MC_REG_OPTS_NO_TOGGLE = 0x0010 } mc_reg_opts_t; /* * Query Definition command options: */ typedef enum { MC_QDEF_OPTS_NONE = 0x0000, MC_QDEF_OPTS_NODSCRP = 0x0001 } mc_qdef_opts_t; /* * Name list usage (introduced with version 3 of the RMCAPI) */ typedef enum { MC_LIST_USAGE_NODES = 0x0000, MC_LIST_USAGE_PEER_DOMAINS = 0x0001 } mc_list_usage_t; /* * Offline command options (introduced with version 2 of the RMCAPI) */ typedef enum { MC_OFFLINE_OPTS_NONE = 0x0000, MC_OFFLINE_OPTS_FAILED = 0x0001 } mc_offline_opts_t; /* * Properties of a resource class are defined by the mc_rsrc_class_props_t * enumeration. */ typedef enum { MC_RSRC_CLASS_HAS_IW_ACCESS = 0x0001, MC_RSRC_CLASS_HAS_RSRC_INSTS = 0x0002, MC_RSRC_CLASS_HAS_CTRL_INTERFACE = 0x0004, MC_RSRC_CLASS_CAN_DEFINE_UNDEFINE = 0x0008, MC_RSRC_CLASS_INVOKE_PHASE0 = 0x0010, MC_RSRC_CLASS_INVOKE_PHASE1 = 0x0020, MC_RSRC_CLASS_PERFMON_SUPPORTED = 0x0040, MC_RSRC_CLASS_HAS_CONSTRAINTS = 0x0080, MC_RSRC_CLASS_RMC_ELECTS_COORD = 0x0100, MC_RSRC_CLASS_SUPPORTS_MOVE = 0x0200, MC_RSRC_CLASS_CAN_BATCH_DEFINE = 0x0400, MC_RSRC_CLASS_CAN_BATCH_UNDEFINE = 0x0800, MC_RSRC_CLASS_CAN_BATCH_SET_ATTR = 0x1000, MC_RSRC_CLASS_MTYPE_SUBDIVIDED = 0x2000, MC_RSRC_CLASS_MTYPE_CENTRALIZED = 0x4000, MC_RSRC_CLASS_MTYPE_GLOBALIZED = 0x8000, MC_RSRC_CLASS_ACT_QUORUM_CHANGE = 0x00010000, MC_RSRC_CLASS_QRY_REQS_MONITORING = 0x00020000 } mc_rsrc_class_props_t; /* * Properties of a persistent attribute are defined by the mc_pattr_props_t * enumeration. */ typedef enum { MC_RSRC_PATTR_READ_ONLY = 0x0001, MC_RSRC_PATTR_REQD_FOR_DEFINE = 0x0002, MC_RSRC_PATTR_INVAL_FOR_DEFINE = 0x0004, MC_RSRC_PATTR_OPTION_FOR_DEFINE = 0x0008, MC_RSRC_PATTR_SELECTABLE = 0x0010, MC_RSRC_PATTR_PUBLIC = 0x0020 } mc_pattr_props_t; /* * Properties of a dynamic attribute are defined by the mc_dattr_props_t * enumeration. */ typedef enum { MC_RSRC_DATTR_PUBLIC = 0x0020, MC_RSRC_DATTR_QRY_REQS_MONITORING = 0x0040 } mc_dattr_props_t; /* * A Structured Data type can be used as the type of a persistent attribute, * action input, action response, error input, and as an argument in a * mc_define_resource, mc_undefine_resource, mc_online, mc_offline or mc_reset * command. The mc_sd_usage_t enumeration is used to specify how structured * data is used. */ typedef enum { MC_SD_USAGE_PATTR_RSRC_CLASS, MC_SD_USAGE_PATTR_RESOURCE, MC_SD_USAGE_DATTR_RSRC_CLASS, MC_SD_USAGE_DATTR_RESOURCE, MC_SD_USAGE_RSRC_ACTION_INPUT, MC_SD_USAGE_RSRC_ACTION_RESPONSE, MC_SD_USAGE_CLASS_ACTION_INPUT, MC_SD_USAGE_CLASS_ACTION_RESPONSE, MC_SD_USAGE_ERROR_INPUT, MC_SD_USAGE_DEFINE_ARG, MC_SD_USAGE_UNDEFINE_ARG, MC_SD_USAGE_ONLINE_ARG, MC_SD_USAGE_OFFLINE_ARG, MC_SD_USAGE_RESET_ARG } mc_sd_usage_t; /* * Valid values may be specified for a persistent attribute, a dynamic * attribute that has a variable type of RMC_STATE, action input, error * input, and for the argument in a mc_define_resource, mc_undefine_resource, * mc_online, mc_offline or mc_reset command. The mc_vv_usage_t enumeration * defines to which of these the valid value applies. */ typedef enum { MC_VV_USAGE_PATTR_RSRC_CLASS, MC_VV_USAGE_PATTR_RESOURCE, MC_VV_USAGE_DATTR_RSRC_CLASS, MC_VV_USAGE_DATTR_RESOURCE, MC_VV_USAGE_RSRC_ACTION_INPUT, MC_VV_USAGE_CLASS_ACTION_INPUT, MC_VV_USAGE_ERROR_INPUT, MC_VV_USAGE_DEFINE_ARG, MC_VV_USAGE_UNDEFINE_ARG, MC_VV_USAGE_ONLINE_ARG, MC_VV_USAGE_OFFLINE_ARG, MC_VV_USAGE_RESET_ARG } mc_vv_usage_t; /* * Instead of statically defined valid values, a resource class may have a * defined action that can be invoked to return a list of valid values for a * persistent attribute, action input, error input or command argument. In * that case, the mc_action_type_t enumeration indicates whether the defined * action is a resource action or class action. */ typedef enum { MC_ACTION_TYPE_RESOURCE, MC_ACTION_TYPE_CLASS } mc_action_type_t; /* * Properties of an action are defined by the mc_action_props_t enumeration. */ typedef enum { MC_RSRC_ACTION_LONG_RUNNING = 0x0001, MC_RSRC_ACTION_PUBLIC = 0x0002 } mc_action_props_t; /* * Properties of an error injection are defined by the mc_error_props_t * enumeration. */ typedef enum { MC_RSRC_ERROR_PUBLIC = 0x0001 } mc_error_props_t; /* * Integrity Check command options: */ typedef enum { MC_CHK_OPTS_NONE = 0x0000, MC_CHK_OPTS_FIX = 0x0001 } mc_integrity_check_opts_t; /* * Check flags are defined by the mc_check_flags_t enumeration. * * MC_CHECK_FIXED indicates that the associated resource error was fixed. */ typedef enum { MC_CHECK_FIXED = 0x0001 } mc_check_flags_t; /* * Event flags are defined by the mc_event_flags_t enumeration. * * This enumeration is defined in ct_rmc.h */ /* * RMC ACL types are defined by the mc_acl_type_t enumeration. */ typedef enum { MC_ACL_TYPE_RESOURCE, /* Resource ACL */ MC_ACL_TYPE_RESOURCE_INITIAL, /* Resource Initial ACL */ MC_ACL_TYPE_RESOURCE_SHARED, /* Resource Shared ACL */ MC_ACL_TYPE_CLASS /* Class ACL */ } mc_acl_type_t; /* * RMC ACL flags are defined by the mc_acl_flags_t enumeration. */ typedef enum { MC_ACL_USE_RESOURCE_SHARED = 0x0001 /* Use Resource Shared ACL */ } mc_acl_flags_t; /*--------------------------------------------------------------------------*/ /* Resource Monitoring and Control (RMC) API responses and notifications. */ /*--------------------------------------------------------------------------*/ /* * A resource attribute is returned in a mc_attribute_t type. This type * includes the attribute (programmatic) name and data type. This type is * also used to provide attributes to the RMCAPI. When provided to the API, * the mc_at_id field is not defined and the mc_at_dtype field must be set * appropriately. */ typedef struct { ct_char_t *mc_at_name; rmc_attribute_id_t mc_at_id; ct_data_type_t mc_at_dtype; ct_value_t mc_at_value; } mc_attribute_t; /* * All responses and event notifications contain error information in a * structure of mc_errnum_t type. * * The first entry in the structure is an error code from the RMC * Subsystem. If the mc_errnum field is zero, there is no error. If there is * an error the mc_error_msg field contains a pointer to a message that is * descriptive of the error. If the mc_arg_count field is non-zero, the * mc_args field is a pointer to an array containing additional error * information; this information is specific to, and documented with, the * error. The mc_arg_count field is the count of array elements. The * mc_ffdc_id field contains a pointer to string that is a failure * identifier. This failure identifier specifies additional error * information that may have been logged by the RMC Subsystem. If this field * contains a NULL pointer then no additional error information has been * logged. If the application is logging errors that it has detected then * this failure identifier should be a part of the error information so * logged. * * Error codes that may be returned in the mc_errnum field are grouped in * ranges of 64K, starting with the lowest valued code in each group. For * example, one group indicates an error in the arguments of a command, * another group indicates resource availability errors, another group * indicates resource class independent errors from a resource class, * etc. Thus, the high-order sixteen bits of the error code identify the * error group or general class of error and the lower sixteen bits indicate * a specific error within the group. The MC_GET_GENERR and MC_GET_SPECERR * macros can be used to obtain these values. */ typedef struct { ct_uint32_t mc_errnum; ct_char_t *mc_ffdc_id; ct_char_t *mc_error_msg; cu_error_arg_t *mc_args; ct_uint32_t mc_arg_count; } mc_errnum_t; #define MC_GET_GENERR(e) ((e >> 16) & 0xffff) #define MC_GET_SPECERR(e) (e & 0xffff) /* * A number of query definition responses include a pointer to a variety * list, specified by a structure of type mc_variety_t. The mc_first_variety * and mc_last_variety fields specify the first and last variety, * respectively, in a range of varieties. The mc_first_variety field is * always less than or equal to the mc_last_variety field. A variety list * consists of an array of elements of type mc_variety_t. */ typedef struct { ct_uint32_t mc_first_variety; ct_uint32_t mc_last_variety; } mc_variety_t; /* * An Event Notification consists of a structure of type mc_event_t or * mc_class_event_t. The type mc_event_t is used if the event is generated * from a resource and the type mc_class_event_t is used if the event is * generated from a resource class. * * The event notification structure is passed to the application as an * argument to the callback the application specified when issuing an event * registration command. * * The mc_error field indicates whether or not the event is an error event. * If an error event, the error codes imply which of the remaining fields in * the structure are defined. If not an error event, all of the remaining * fields are defined. The mc_event_flags field is a bit field; its values * are defined by the mc_event_flags_t enumeration. Note that the * mc_event_flags field is undefined in any error event. The mc_timestamp * field indicates the time the event was generated. The mc_rsrc_hndl field * specifies the resource handle of the resource, or the mc_class_name field * specifies the name of the resource class, whose state change resulted in * the generation of this event. The mc_peer_domain_name field specifies the * name of the peer domain where the class event was generated. The name is * the node name in angle brackets (<>) if the response is from a node not in * a peer domain. The mc_attrs field is a pointer to an array of attributes; * the mc_attr_count field indicates the number of entries in this array. * * The attribute array is considered as a list, wherein there are up to two * sub-lists. The first is a list of attributes found in the event * expression(s). The second is a list of persistent attributes specified as * return attributes in the event registration command. There are no * duplicate attributes among the two sub-lists. If a persistent attribute is * specified both in an event expression and as a return attribute, it is * only placed in the first sub-list. * * The number of attributes in the first sub-list is given by * mc_e_attr_count. The number of attributes in the second sub-list is given * by the expression: * * mc_attr_count - mc_e_attr_count * * This expression is guaranteed to be greater than or equal to zero. * * The MC_RETURN_ATTR_COUNT macro can be used to calculate the number of * return attributes. * * The mc_node_name field specifies the primary node name of the node where * the resource, specified by the mc_rsrc_hndl field, is, or was, in the case * of certain error events, being monitored. */ typedef struct { mc_errnum_t mc_error; mc_event_flags_t mc_event_flags; struct timeval mc_timestamp; ct_resource_handle_t mc_rsrc_hndl; mc_attribute_t *mc_attrs; ct_uint32_t mc_attr_count; ct_uint32_t mc_e_attr_count; ct_char_t *mc_node_name; } mc_event_6_t; typedef struct { mc_errnum_t mc_error; mc_event_flags_t mc_event_flags; struct timeval mc_timestamp; ct_resource_handle_t mc_rsrc_hndl; mc_attribute_t *mc_attrs; ct_uint32_t mc_attr_count; ct_char_t *mc_node_name; } mc_event_2_t; typedef struct { mc_errnum_t mc_error; mc_event_flags_t mc_event_flags; struct timeval mc_timestamp; ct_resource_handle_t mc_rsrc_hndl; mc_attribute_t *mc_attrs; ct_uint32_t mc_attr_count; } mc_event_1_t; typedef struct { mc_errnum_t mc_error; mc_event_flags_t mc_event_flags; struct timeval mc_timestamp; ct_char_t *mc_class_name; ct_char_t *mc_peer_domain_name; mc_attribute_t *mc_attrs; ct_uint32_t mc_attr_count; ct_uint32_t mc_e_attr_count; } mc_class_event_6_t; typedef struct { mc_errnum_t mc_error; mc_event_flags_t mc_event_flags; struct timeval mc_timestamp; ct_char_t *mc_class_name; ct_char_t *mc_peer_domain_name; mc_attribute_t *mc_attrs; ct_uint32_t mc_attr_count; } mc_class_event_3_t; typedef struct { mc_errnum_t mc_error; mc_event_flags_t mc_event_flags; struct timeval mc_timestamp; ct_char_t *mc_class_name; mc_attribute_t *mc_attrs; ct_uint32_t mc_attr_count; } mc_class_event_1_t; #define MC_RETURN_ATTR_COUNT(p) ((p)->mc_attr_count - (p)->mc_e_attr_count) /* * A Registration Response consists of a structure of type mc_reg_rsp_t. * * If the Registration Response indicates no error, the event has been * successfully registered by the Resource Monitoring and Control * Subsystem. The mc_registration_id field contains the event ID, which is * used to unregister the event. Note that a successful registration does not * indicate that events will ever be generated. However, if events are * generated, in a multi-threaded application the event notification callback * can be invoked before the Registration Response is processed by the * application. * * If the response indicates an error, the event has not been registered by * the RMC Subsystem and the mc_registration_id field is undefined. If the * error indicates an error in the arguments supplied with the event * registration command, the error code indicates which argument is in error. * */ typedef struct { mc_errnum_t mc_error; mc_registration_id_t mc_registration_id; } mc_reg_rsp_t; /* * An Unregistration Response consists of a structure of type mc_unreg_rsp_t. * * The mc_error field always indicates no error; the event specified by the * mc_registration_id field has been successfully unregistered. The Resource * Monitoring and Control Subsystem guarantees that this response is passed * to the application only when no event notification callbacks for the * specified event are being executed. Once the response has been passed to * the application the specified event ID is invalid and no more event * notifications are delivered to the application. This permits the * application to release any application resources, associated with the * event, when it receives the response. */ typedef struct { mc_errnum_t mc_error; mc_registration_id_t mc_registration_id; } mc_unreg_rsp_t; /* * A Query Event Response consists of a structure of type mc_query_event_rsp_t. * * If the mc_error field indicates an error, the Resource Monitoring and * Control Subsystem could not complete the command. The error may also * indicate that the command arguments were in error. The error codes imply * which of the remaining fields in the structure are defined. Otherwise, the * event query command has completed for the event indicated by the * mc_registration_id field. The mc_event_count field specifies the number of * events that were generated as a result of this command. If the * mc_event_count field is not zero, then the Resource Monitoring and Control * Subsystem guarantees that this response is passed to the application only * after all event notification callbacks for the events generated by this * command have been executed. * * This response was introduced with version 2 of the RMCAPI. */ typedef struct { mc_errnum_t mc_error; mc_registration_id_t mc_registration_id; ct_uint32_t mc_event_count; } mc_query_event_rsp_t; /* * An Enumerate Response consists of a structure of type mc_enumerate_rsp_t. * * If the mc_error field indicates an error, the Resource Monitoring and * Control Subsystem or a Resource Manager could not provide any or all of * the requested information. The error may also indicate that the command * arguments were in error. The error codes imply which of the remaining * fields in the structure are defined. Otherwise, the mc_class_name field * specifies the name of the resource class whose resources are * contained in this response. the mc_rsrc_handles field specifies a pointer * to a resource handle array, which contains the resource handles of the * selected resources. The mc_rsrc_handle_count field indicates the number * of resource handles in the array. */ typedef struct { mc_errnum_t mc_error; ct_char_t *mc_class_name; ct_resource_handle_t *mc_rsrc_handles; ct_uint32_t mc_rsrc_handle_count; } mc_enumerate_rsp_t; /* * A Query Response consists of a structure of type mc_query_rsp_t or * mc_class_query_rsp_t. The type mc_query_rsp_t is used if the response is * from a resource and the type mc_class_query_rsp_t is used if the response * is from a resource class. * * If the mc_error field indicates an error, the Resource Monitoring and * Control Subsystem or a Resource Manager could not provide any or all of * the requested information. The error may also indicate that the command * arguments were in error. The error codes imply which of the remaining * fields in the structure are defined. Otherwise, the mc_rsrc_hndl field * specifies the resource handle of the resource, or the mc_class_name field * specifies the name of the resource class, whose attributes are contained * in this response. The mc_peer_domain_name field specifies the name of the * peer domain from which the attributes were obtained. The mc_attrs field * is a pointer to an array of the requested attributes; the mc_attr_count * field indicates the number of entries in this array. */ typedef struct { mc_errnum_t mc_error; ct_resource_handle_t mc_rsrc_hndl; mc_attribute_t *mc_attrs; ct_uint32_t mc_attr_count; } mc_query_rsp_t; typedef struct { mc_errnum_t mc_error; ct_char_t *mc_class_name; ct_char_t *mc_peer_domain_name; mc_attribute_t *mc_attrs; ct_uint32_t mc_attr_count; } mc_class_query_rsp_3_t; typedef struct { mc_errnum_t mc_error; ct_char_t *mc_class_name; mc_attribute_t *mc_attrs; ct_uint32_t mc_attr_count; } mc_class_query_rsp_1_t; /* * A Query Definition Resource Class Response consists of a structure of type * mc_qdef_rsrc_class_rsp_t. * * If the mc_error field indicates an error, the Resource Monitoring and * Control Subsystem could not provide any or all of the requested * information. The error may also indicate that the command arguments were * in error. The error codes imply which of the remaining fields in the * structure are defined. Otherwise, mc_properties is a bit field that * specifies the properties of the resource class, as defined by the * mc_rsrc_class_props_t type. The mc_class_name and mc_class_id fields * specify the resource class name and resource class ID, respectively. The * mc_display_name field is a pointer to a string that is suitable to display * as the name of this resource class in a Graphical User Interface. The * mc_description field is a pointer to a string that contains a description * of the resource class; the description may contains multiple lines of * text. The mc_locator field specifies the name of a persistent attribute of * the resource class that implies the location of a resource of this * resource class. The mc_class_pattr_count field specifies the number of * persistent attributes defined for the class itself. The * mc_class_dattr_count field specifies the number of dynamic attributes * defined for the class itself. The mc_pattr_count field specifies the * number of persistent attributes defined for a resource. The mc_dattr_count * field specifies the number of dynamic attributes defined for a * resource. The mc_action_count specifies the number of different actions * that can be invoked against the resources of the class. The * mc_class_action_count specifies the num ber of different actions that can * be invoked against the class itself. The mc_error_count specifies the * number of different errors that can be injected into the resources of the * class. The mc_rsrc_mgrs field is a pointer to an array of mc_rsrc_mgr_t * types. Each element of this array specifies the resource managers that * implement the resource class. The mc_rsrc_mgr_count field indicates the * number of elements in the array. * * Each Resource Manager that supports a resource class is specified in a * mc_rsrc_mgr_t type. * * The resource manager name is specified by the mc_mgr_name field. When a * resource manager is installed on a cluster node its ClassKey number is * made available to the RMC Subsystem. The mc_first_key and mc_last_key * fields specify a range of resource manager ClassKeys that implement this * resource class. Note that there may be multiple entries specifying the * same resource manager in the array specified by mc_rsrc_mgrs; however, * each such entry specifies non-overlap ping ranges of ClassKeys. */ typedef struct { ct_char_t *mc_mgr_name; ct_uint32_t mc_first_key; ct_uint32_t mc_last_key; } mc_rsrc_mgr_t; typedef struct { mc_errnum_t mc_error; mc_rsrc_class_props_t mc_properties; ct_char_t *mc_class_name; rmc_resource_class_id_t mc_class_id; ct_char_t *mc_display_name; ct_char_t *mc_description; ct_char_t *mc_locator; ct_uint32_t mc_class_pattr_count; ct_uint32_t mc_class_dattr_count; ct_uint32_t mc_pattr_count; ct_uint32_t mc_dattr_count; ct_uint32_t mc_action_count; ct_uint32_t mc_class_action_count; ct_uint32_t mc_error_count; mc_rsrc_mgr_t *mc_rsrc_mgrs; ct_uint32_t mc_rsrc_mgr_count; } mc_qdef_rsrc_class_rsp_t; /* * A Query Definition Persistent Attribute Response consists of a structure * of type mc_qdef_pattr_rsp_t. * * If the mc_error field indicates an error, the Resource Monitoring and * Control Subsystem could not provide any or all of the requested * information. The error may also indicate that the command arguments were * in error. The error codes imply which of the remaining fields in the * structure are defined. Otherwise, mc_properties is a bit field that * specifies the properties of the persistent attribute, as defined by the * mc_pattr_props_t type. The mc_program_name field is a pointer to the pro- * grammatic name of the attribute (this name is provided as input to other * RMCAPI functions). The mc_display_name field is a pointer to a string that * is suitable to display as the name of this attribute in a Graphical User * Interface. The mc_group_name field is a pointer to a string that is * suitable to display as the name of the group, to which this attribute * belongs, in a Graphical User Interface. The mc_description field is a * pointer to a string that contains a description of the persistent * attribute; the description may contains multiple lines of text. The * mc_attribute_id field specifies the attribute ID. The mc_group_id field * specifies the group ID. This ID is used to group related attributes of a * resource or the resource class. The mc_variety_list field is a pointer to * an array of mc_variety_t types. Each element of the array is a range of * resource variety numbers. This attribute then applies to any resource of * the class, or the resource class itself if this response is that of a * resource class persis tent attribute, which has one of the indicated * variety numbers. The mc_variety_count field specifies the number of * elements in the array. The mc_data_type field specifies the data type of * the persistent attribute. The mc_default_value field specifies the default * value this attribute assumes when a resource, for which this attribute is * defined, is created. * * N.B. The value of the mc_attribute_id field may be used as an index. The * highest value of a resource or resource class persistent attribute ID is * one less than the value of the mc_pattr_count or mc_class_pattr_count * field of the Query Definition Resource Class Response, respectively. */ typedef struct { mc_errnum_t mc_error; mc_pattr_props_t mc_properties; ct_char_t *mc_program_name; ct_char_t *mc_display_name; ct_char_t *mc_group_name; ct_char_t *mc_description; rmc_attribute_id_t mc_attribute_id; ct_uint32_t mc_group_id; ct_data_type_t mc_data_type; mc_variety_t *mc_variety_list; ct_uint32_t mc_variety_count; ct_value_t mc_default_value; } mc_qdef_pattr_rsp_t; /* * A Query Definition Dynamic Attribute Response consists of a structure of * type mc_qdef_dattr_rsp_t. * * If the mc_error field indicates an error, the Resource Monitoring and * Control Subsystem could not provide any or all of the requested * information. The error may also indicate that the command arguments were * in error. The error codes imply which of the remaining fields in the * structure are defined. Otherwise, mc_properties is a bit field that * specifies the properties of the dynamic attribute, as defined by the * mc_dattr_props_t type. The mc_program_name field is a pointer to the * programmatic name of the attribute (this name is provided as input to * other RMCAPI functions). The mc_display_name field is a pointer to a * string that is suitable to display as the name of this attribute in a * Graphical User Interface. The mc_group_name field is a pointer to a string * that is suitable to display as the name of the group, to which this * attribute belongs, in a Graphical User Interface. The mc_description * field is a pointer to a string that contains a description of the dynamic * attribute; the description may contains multiple lines of text. The * mc_attribute_id field specifies the attribute ID. The mc_group_id field * specifies the group ID. This ID is used to group related attributes of a * resource or the resource class. The mc_data_type field specifies the data * type of the dynamic attribute. The mc_variable_type field specifies the * variable type of the dynamic attribute (a dynamic attribute is also known * as variable), i.e. is it a Counter, Quantity, State, or Quantum. The * mc_variety_list field is a pointer to an array of mc_variety_t types. Each * element of the array is a range of resource variety numbers. This * attribute then applies to any resource of the class, or the resource class * itself if this response is that of a resource class dynamic attribute, * which has one of the indicated variety numbers. The mc_variety_count field * specifies the number of elements in the array. The mc_init_value field * specifies the initial value this variable assumes the first time it is * monitored. Thus, at the first observation of this variable, the initial * value can be referenced as the previous value in an expression. The * mc_min_value and mc_max_value fields specify a dynamic range for the * variable, i.e. what are the lowest and highest values of the variable that * should be displayed in a GUI. This dynamic range is only defined if the * attribute type is an arithmetic type. If the mc_expression field is a * non-NULL pointer, it points to a string that is an example expression for * this variable. If the mc_expression_description field is a non-NULL * pointer, it points to a string that is a description of the event * generated by the example expression. If the mc_rearm_expression field is a * non-NULL pointer, it points to a string that is an example re-arm * expression for this variable. If the mc_rearm_description field is a * non-NULL pointer, it points to a string that is a description of the * example re-arm expression. If the mc_PTX_name field is a non-NULL pointer, * it points to a string that is the PTX path name for this variable. * * N.B. The value of the mc_attribute_id field may be used as an index. The * highest value of a resource or resource class dynamic attribute ID is one * less than the value of the mc_dattr_count or mc_class_dattr_count field of * the Query Definition Resource Class Response, respectively. */ typedef struct { mc_errnum_t mc_error; mc_dattr_props_t mc_properties; ct_char_t *mc_program_name; ct_char_t *mc_display_name; ct_char_t *mc_group_name; ct_char_t *mc_description; rmc_attribute_id_t mc_attribute_id; ct_uint32_t mc_group_id; ct_data_type_t mc_data_type; rmc_variable_type_t mc_variable_type; mc_variety_t *mc_variety_list; ct_uint32_t mc_variety_count; ct_value_t mc_init_value; ct_value_t mc_min_value; ct_value_t mc_max_value; ct_char_t *mc_expression; ct_char_t *mc_expression_description; ct_char_t *mc_rearm_expression; ct_char_t *mc_rearm_description; ct_char_t *mc_PTX_name; ct_uint32_t mc_reporting_interval; } mc_qdef_dattr_rsp_6_t; typedef struct { mc_errnum_t mc_error; mc_dattr_props_t mc_properties; ct_char_t *mc_program_name; ct_char_t *mc_display_name; ct_char_t *mc_group_name; ct_char_t *mc_description; rmc_attribute_id_t mc_attribute_id; ct_uint32_t mc_group_id; ct_data_type_t mc_data_type; rmc_variable_type_t mc_variable_type; mc_variety_t *mc_variety_list; ct_uint32_t mc_variety_count; ct_value_t mc_init_value; ct_value_t mc_min_value; ct_value_t mc_max_value; ct_char_t *mc_expression; ct_char_t *mc_expression_description; ct_char_t *mc_rearm_expression; ct_char_t *mc_rearm_description; ct_char_t *mc_PTX_name; } mc_qdef_dattr_rsp_1_t; /* * A Query Definition Structured Byte String Response consists of a structure * of type mc_qdef_sbs_rsp_t. * * If the mc_error field indicates an error, the Resource Monitoring and * Control Subsystem could not provide any or all of the requested * information. The error may also indicate that the command arguments were * in error. The error codes imply which of the remaining fields in the * structure are defined. Otherwise, the mc_sbs_fields field is a pointer to * an array of elements of type mc_sbs_field_t; the mc_field_count field * specifies the number of entries in the array. The mc_attribute_id field is * the id of the attribute for which this SBS definition is being returned. * * Individual Structured Byte String fields are described by the * mc_sbs_field_t type. * * The mc_field_name field is a pointer to the programmatic name of the SBS * field (this name is provided as input to other RMCAPI functions). The * mc_display_name field is a pointer to a string that is suitable to display * as the name of this field in a Graphical User Interface. The * mc_description field is a pointer to a string that contains a description * of the SBS field; the description may contains multiple lines of text. The * mc_field_data_type field specifies the data type of the SBS field. The * mc_min_value and mc_max_value fields specify a dynamic range for the SBS * field, i.e. what are the lowest and highest values of the field that * should be displayed in a GUI. This dynamic range is only defined if the * field type is an arithmetic type. The mc_SBS_serial_number field specifies * the serial number of this SBS field. */ typedef struct { ct_char_t *mc_field_name; ct_char_t *mc_display_name; ct_char_t *mc_description; ct_sbs_field_data_type_t mc_field_data_type; ct_value_t mc_min_value; ct_value_t mc_max_value; ct_int8_t mc_SBS_serial_number; } mc_sbs_field_t; typedef struct { mc_errnum_t mc_error; mc_sbs_field_t *mc_sbs_fields; ct_uint32_t mc_field_count; rmc_attribute_id_t mc_attribute_id; } mc_qdef_sbs_rsp_t; /* * A Query Definition Structured Data Response consists of a structure of * type mc_qdef_sd_rsp_t. * * If the mc_error field indicates an error, the Resource Monitoring and * Control Subsystem could not provide any or all of the requested * information. The error may also indicate that the command arguments were * in error. The error codes imply which of the remaining fields in the * structure are defined. Otherwise, the mc_sd_elements field is a pointer * to an array of elements of type mc_sd_element_t; the mc_element_count * field specifies the number of entries in the array. The mc_usage field * indicates if the mc_id field is the ID of an attribute or action for which * this SD definition is being returned. If the ID is that of an attribute, * then the mc_program_name field is a pointer to the programmatic name of * the attribute and the mc_usage field indicates if the returned SD * definition is that of a resource class persistent or dynamic attribute or * resource persistent or dynamic attribute. If the ID is that of an action, * then the mc_program_name field is a pointer to the programmatic name of * the action and the mc_usage field indicates if the returned SD definition * is that of an action input or response for a resource or class action. If * this SD definition is that of a command argument, the mc_id and * mc_program_name fields are undefined. * * Individual Structured Data elements are described by the mc_sd_element_t * type. * * The mc_element_name field is a pointer to the programmatic name of the SD * element (this name is provided as input to other RMCAPI functions). The * mc_display_name field is a pointer to a string that is suitable to display * as the name of this element in a Graphical User Interface. The * mc_description field is a pointer to a string that contains a description * of the SD element; the description may contains multiple lines of * text. The mc_element_data_type field specifies the data type of the SD * element. The mc_element_index field specifies the index of this SD * element, i.e. the number that can be used as an index into the array * specified by the elements field of a ct_structured_data_t type. */ typedef struct { ct_char_t *mc_element_name; ct_char_t *mc_display_name; ct_char_t *mc_description; ct_data_type_t mc_element_data_type; ct_uint32_t mc_element_index; } mc_sd_element_t; typedef struct { mc_errnum_t mc_error; mc_sd_element_t *mc_sd_elements; ct_uint32_t mc_element_count; ct_uint32_t mc_id; ct_char_t *mc_program_name; mc_sd_usage_t mc_usage; } mc_qdef_sd_rsp_t; /* * A Query Definition Valid Values Response consists of a structure of * type mc_qdef_valid_vals_rsp_t. * * If the mc_error field indicates an error, the Resource Monitoring and * Control Subsystem could not provide any or all of the requested * information. The error may also indicate that the command arguments were * in error. The error codes imply which of the remaining fields in the * structure are defined. Otherwise, if the mc_count field is not zero, the * mc_valid_values field is a pointer to an array of elements of type * mc_valid_value_t; the mc_count field specifies the number of entries in * the array. Each entry in this array specifies a valid value or range of * valid values for the attribute, input or argument. If the mc_count field * is zero, then the name of an action that can be invoked to obtain valid * values is specified by the mc_action_name field; the mc_action_type field * indicates whether this is a resource action or class action. * * The mc_usage field indicates if the mc_id field is the id of a persistent * attribute, dynamic attribute, action or error for which these valid values * are being returned, or for which the named action can be used to obtain * valid values. If the id is that of a persistent attribute then the * mc_usage field indicates if the valid values are that of a resource class * persistent attribute or resource persistent attribute. If the id is that * of a dynamic attribute then the mc_usage field indicates if the valid * values are that of a resource class dynamic attribute or resource dynamic * attribute. If the id is that of an action then the mc_usage field indicates * if the valid values are that of an action input for a resource or class * action. If the valid values are that of a command argument the mc_id * field is undefined. If the returned valid values are those of an * attribute, the mc_data_type field specifies the data type of the attribute * and, except as noted below, the valid values. If the returned valid values * are those of an action or error input or a command argument, the * mc_data_type field is set to CT_SD_PTR. * * If the mc_data_type field specifies an arithmetic type and the * mc_low_value field is less than the mc_high_value field, a range of valid * values is specified; otherwise, the mc_low_value field is equal to the * mc_high_value field, specifying a single valid value. If the mc_data_type * field specifies a non-arithmetic type, but not CT_SD_PTR or * CT_SD_PTR_ARRAY, the mc_low_value field specifies the valid value and the * mc_high_value field is undefined. If the mc_data_type field is not * CT_SD_PTR or CT_SD_PTR_ARRAY, then the mc_sd_element_index and * mc_sd_element_data_type fields are undefined. * * If the mc_data_type field is CT_SD_PTR, then each returned * mc_valid_value_t specifies a valid value, or range of valid values, for a * single structured data element. The mc_sd_element_index field specifies * the index of the SD element and the mc_sd_element_data_type field * specifies the data type of the element. If the mc_sd_element_data_type * field specifies an arithmetic type and the mc_low_value field is less than * the mc_high_value field, a range of valid values is specified; otherwise, * the mc_low_value field is equal to the mc_high_value field, specifying a * single valid value. If the mc_sd_element_data_type field specifies a * non-arithmetic type, the mc_low_value field specifies the valid value and * the mc_high_value field is undefined. The mc_sd_element_data_type field is * never set to CT_SD_PTR or CT_SD_PTR_ARRAY. * * If the mc_data_type field is CT_SD_PTR_ARRAY, then the valid values * returned apply to all ele ments with the identical index value in each SD * of the array. * * Note that when valid values are for an SD or SD array, each element of the * SD may have varying numbers of valid values returned, including no * returned valid values. * * If any non-SD type is an array type then the valid value or valid value * range applies to each element of the array. * * In all cases the mc_label field, if non-NULL, specifies a pointer to a * string containing a short description of the valid value or range. */ typedef struct { ct_value_t mc_low_value; ct_value_t mc_high_value; ct_char_t *mc_label; ct_uint32_t mc_sd_element_index; ct_data_type_t mc_sd_element_data_type; } mc_valid_value_t; typedef struct { mc_errnum_t mc_error; mc_valid_value_t *mc_valid_values; ct_uint32_t mc_count; ct_uint32_t mc_id; mc_vv_usage_t mc_usage; ct_data_type_t mc_data_type; ct_char_t *mc_action_name; mc_action_type_t mc_action_type; } mc_qdef_valid_vals_rsp_t; /* * A Query Definition Resource Actions Response consists of a structure of * type mc_qdef_actions_rsp_t. * * If the mc_error field indicates an error, the Resource Monitoring and * Control Subsystem could not provide any or all of the requested * information. The error may also indicate that the command arguments were * in error. The error codes imply which of the remaining fields in the * structure are defined. Otherwise, the mc_actions field is a pointer to an * array of elements of type mc_action_t; the mc_action_count field specifies * the number of entries in the array. The mc_class_id field is the id of the * resource class for which these actions are being returned. * * Individual actions are described by the mc_action_t type. * * The mc_properties field is a bit field that specifies the properties of * the action, as defined by the mc_action_props_t type. The mc_action_name * field is a pointer to the programmatic name of the action (this name is * provided as input to other RMCAPI functions). The mc_display_name field is * a pointer to a string that is suitable to display as the name of this * action in a Graphical User Interface. The mc_description field is a * pointer to a string that contains a description of the action; the * description may contains multiple lines of text. The mc_confirm_prompt * field, if not NULL, is a pointer to a string that is used by a GUI to * prompt the user for confirmation to perform the action. The mc_action_id * field specifies the action ID. The mc_variety_list field is a pointer to * an array of mc_variety_t types. Each element of the array is a range of * resource variety numbers. This action then applies to any resource of the * class, or the resource class itself if this response is that of a resource * class action, which has one of the indicated variety numbers. The * mc_variety_count field specifies the number of elements in the array. The * mc_timeout field specifies the approximate amount of time, in seconds, * that the action should take to complete. This value is only defined if the * MC_RSRC_ACTION_LONG_RUNNING property is set. The mc_permissions field * specifies the permissions required to execute this action. * * N.B. The value of the mc_action_id field may be used as an index. The * highest value of a resource action or class action ID is one less than the * value of the mc_action_count or mc_class_action_count field of the Query * Definition Resource Class Response, respectively. */ typedef struct { mc_action_props_t mc_properties; ct_char_t *mc_action_name; ct_char_t *mc_display_name; ct_char_t *mc_description; ct_char_t *mc_confirm_prompt; rmc_action_id_t mc_action_id; mc_variety_t *mc_variety_list; ct_uint32_t mc_variety_count; ct_uint32_t mc_timeout; ct_uint32_t mc_permissions; } mc_action_t; typedef struct { mc_errnum_t mc_error; mc_action_t *mc_actions; ct_uint32_t mc_action_count; rmc_resource_class_id_t mc_class_id; } mc_qdef_actions_rsp_t; /* * A Query Definition Resource Error Injection Response consists of a * structure of type mc_qdef_err_inject_rsp_t. * * If the mc_error field indicates an error, the Resource Monitoring and * Control Subsystem could not provide any or all of the requested * information. The error may also indicate that the command arguments were * in error. The error codes imply which of the remaining fields in the * structure are defined. Otherwise, the mc_error_injection field is a * pointer to an array of elements of type mc_error_injection_t; the * mc_error_injection_count field specifies the number of entries in the * array. The mc_class_id field is the id of the resource class for which * these error injections are being returned. * * Individual errors are described by the mc_error_injection_t type. * * The mc_properties field is a bit field that specifies the properties of * the error, as defined by the mc_error_props_t type. The mc_error_name * field is a pointer to the programmatic name of the error (this name is * provided as input to other RMCAPI functions). The mc_display_name field is * a pointer to a string that is suitable to display as the name of this * error in a Graphical User Interface. The mc_description field is a pointer * to a string that contains a description of the error; the description may * contains multiple lines of text. The mc_error_id field specifies the error * ID. The mc_variety_list field is a pointer to an array of mc_variety_t * types. Each element of the array is a range of resource variety * numbers. This error then applies to any resource of the class which has * one of the indicated variety numbers. The mc_variety_count field specifies * the number of elements in the array. The mc_permissions field specifies * the permissions required to inject this error. * * N.B. The value of the mc_error_id field may be used as an index. The * highest value of an error injection ID is one less than the value of the * mc_error_count field of the Query Definition Resource Class Response. * */ typedef struct { mc_error_props_t mc_properties; ct_char_t *mc_error_name; ct_char_t *mc_display_name; ct_char_t *mc_description; rmc_error_id_t mc_error_id; mc_variety_t *mc_variety_list; ct_uint32_t mc_variety_count; ct_uint32_t mc_permissions; } mc_error_injection_t; typedef struct { mc_errnum_t mc_error; mc_error_injection_t *mc_error_injection; ct_uint32_t mc_error_injection_count; rmc_resource_class_id_t mc_class_id; } mc_qdef_err_inject_rsp_t; /* * A Query Definition Resource Dependencies Response consists of a structure * of type mc_qdef_rsrc_deps_rsp_t. * * If the mc_error field indicates an error, the Resource Monitoring and * Control Subsystem could not provide any or all of the requested * information. The error may also indicate that the command arguments * were in error. The error codes imply which of the remaining fields in * the structure are defined. Otherwise, the mc_class_ids field is a * pointer to an array of elements of type uint16_t; the mc_id_count * field specifies the number of entries in the array. Each ID in this * array represent a resource class upon which the resource class, * specified by the mc_class_id field, depends. */ typedef struct { mc_errnum_t mc_error; rmc_resource_class_id_t *mc_class_ids; ct_uint32_t mc_id_count; rmc_resource_class_id_t mc_class_id; } mc_qdef_rsrc_deps_rsp_t; /* * The Resource Handle Response consists of a structure of type * mc_rsrc_hndl_rsp_t. * * The Resource Handle Response is the response to a number of different * commands, where the only information needed in response is a resource * handle. If the mc_error field indicates no error, then the command was * successful and the resource handle specifies the resource which was the * target of the command. If there is an error, the error codes indicate * whether the resource handle contained in mc_rsrc_hndl is invalid or the * command could not be completed for the resource specified by the resource * handle. The error may also indicate that the command arguments were in * error. */ typedef struct { mc_errnum_t mc_error; ct_resource_handle_t mc_rsrc_hndl; } mc_rsrc_hndl_rsp_t; /* * The Class Name Response consists of a structure of type mc_class_name_rsp_t. * * The Class Name Response is the response to a number of different commands, * where the only information needed in the response is a class name. If the * mc_error field indicates no error, then the command was successful and the * class name specifies the resource class which was the target of the * command. If there is an error, the error codes indicate whether the class * name specified by mc_class_name is invalid or the command could not be * completed for the resource class specified by the class name. The error * may also indicate that the command arguments were in error. */ typedef struct { mc_errnum_t mc_error; ct_char_t *mc_class_name; } mc_class_name_rsp_t; /* * The Define Resource Response consists of a structure of type * mc_define_rsrc_rsp_t. * * If the mc_error field indicates an error, the Resource Monitoring and * Control Subsystem or a Resource Manager could not complete the command. * The error may also indicate that the command arguments were in error. The * error codes imply which of the remaining fields in the structure are * defined. Otherwise, the mc_class_name field specifies the name of the * resource class in which a new resource instance is defined. The * mc_rsrc_hndl field specifies the resource handle of the new resource * instance. */ typedef struct { mc_errnum_t mc_error; ct_char_t *mc_class_name; ct_resource_handle_t mc_rsrc_hndl; } mc_define_rsrc_rsp_t; /* * The Undefine Resource Response consists of a structure of type * mc_undefine_rsrc_rsp_t. * * If the mc_error field indicates an error, the Resource Monitoring and * Control Subsystem or a Resource Manager could not complete the command. * The error may also indicate that the command arguments were in error. The * error codes imply which of the remaining fields in the structure are * undefined. Otherwise, the mc_class_name field specifies the name of the * resource class from which the resource instance is deleted. The * mc_rsrc_hndl field specifies the resource handle of the deleted resource * instance. */ typedef struct { mc_errnum_t mc_error; ct_char_t *mc_class_name; ct_resource_handle_t mc_rsrc_hndl; } mc_undefine_rsrc_rsp_t; /* * An Integrity Check Response consists of a structure of type * mc_integrity_chk_rsp_t. * * The mc_class_name field specifies the name of the resource class * which was requested to perform integrity checks. If the mc_error field * indicates no error, then all integrity checks were performed * successfully. Otherwise, one response is returned for each integrity check * that was not performed successfully; the mc_error field indicates the * nature of the problem. The mc_check_severity field indicates the severity * of the problem and a flag in the mc_check_flags field indicates whether or * not the problem was fixed. */ typedef struct { mc_errnum_t mc_error; ct_char_t *mc_class_name; mc_check_flags_t mc_check_flags; rmc_severity_t mc_check_severity; } mc_integrity_chk_rsp_t; /* * A Set Attribute Response consists of a structure of type mc_set_rsp_t or * mc_class_set_rsp_t. The type mc_set_rsp_t is used if the response is from * a resource and the type mc_class_set_rsp_t is used if the response is from * a resource class. * * If the mc_error field indicates no error, the mc_rsrc_hndl field specifies * the resource handle of the resource, or the mc_class_name field specifies * the name of the resource class, which was the target of the set resource * attribute command. The mc_peer_domain_name field specifies the name of * the peer domain where the attributes were set. If an error is indicated * the mc_rsrc_hndl field contains the resource handle specified on the * command or the mc_class_name field is a pointer to the name of the * resource class specified on the command. Furthermore, if the * mc_attr_count field is non-zero, the mc_error_attrs field contains a * pointer to an array of attributes that could not be set, where each array * element is of mc_error_attr_t type. The mc_attr_count field indicates the * number of array elements. * * In the mc_error_attr_t type, the mc_error field indicates the reason the * attribute could not be set and the mc_at_name field indicates the name of * the attribute that could not be set. */ typedef struct { mc_errnum_t mc_error; ct_char_t *mc_at_name; } mc_error_attr_t; typedef struct { mc_errnum_t mc_error; ct_resource_handle_t mc_rsrc_hndl; mc_error_attr_t *mc_error_attrs; ct_uint32_t mc_attr_count; } mc_set_rsp_t; typedef struct { mc_errnum_t mc_error; ct_char_t *mc_class_name; ct_char_t *mc_peer_domain_name; mc_error_attr_t *mc_error_attrs; ct_uint32_t mc_attr_count; } mc_class_set_rsp_3_t; typedef struct { mc_errnum_t mc_error; ct_char_t *mc_class_name; mc_error_attr_t *mc_error_attrs; ct_uint32_t mc_attr_count; } mc_class_set_rsp_1_t; /* * An Invoke Action Response consists of a structure of type mc_action_rsp_t * or mc_class_action_rsp_t. The type mc_action_rsp_t is used if the * response is from a resource and the type mc_class_action_rsp_t is used if * the response is from a resource class. * * The mc_rsrc_hndl field specifies the resource handle of the resource, or * the mc_class_name field specifies the name of the resource class, which * was the target of the invoke action command. The mc_node_name field * specifies the primary node name of the node where the class action was * invoked. The mc_peer_domain_name field specifies the name of the peer * domain where the class action was invoked. The mc_error field indicates * whether or not there was an error in processing the action. If the * mc_count field is non-zero, then the mc_data field is a pointer to an * array of pointers to Structured Data resulting from the action; mc_count * indicates the number of pointers in the array. If the mc_count field is * zero then the mc_data field is undefined. Each SD in the response has an * identical format, as defined for the action resulting in the * response. More than one response may be generated from invoking an action, * each containing one or more SDs. */ typedef struct { mc_errnum_t mc_error; ct_resource_handle_t mc_rsrc_hndl; ct_structured_data_t **mc_data; ct_uint32_t mc_count; } mc_action_rsp_t; typedef struct { mc_errnum_t mc_error; ct_char_t *mc_class_name; ct_structured_data_t **mc_data; ct_uint32_t mc_count; ct_char_t *mc_node_name; ct_char_t *mc_peer_domain_name; } mc_class_action_rsp_3_t; typedef struct { mc_errnum_t mc_error; ct_char_t *mc_class_name; ct_structured_data_t **mc_data; ct_uint32_t mc_count; ct_char_t *mc_node_name; } mc_class_action_rsp_2_t; typedef struct { mc_errnum_t mc_error; ct_char_t *mc_class_name; ct_structured_data_t **mc_data; ct_uint32_t mc_count; } mc_class_action_rsp_1_t; /* * An Enumerate Constraints Response consists of a structure of type * mc_constraint_rsp_t. * * If the mc_error field indicates no error, the mc_rsrc_hndl field specifies * the resource handle of the resource whose constraints are being * returned. The mc_constraint field points to an array of pointers to * constraints; the mc_constraint_count field indicates the number of * pointers in the array. If the count is zero there are no constraints and * the mc_constraint field is undefined. If an error is indicated the * mc_rsrc_hndl field contains the resource handle specified on the command. */ typedef struct { mc_errnum_t mc_error; ct_resource_handle_t mc_rsrc_hndl; rmc_constraint_t **mc_constraints; ct_uint32_t mc_constraint_count; } mc_constraint_rsp_t; /* * A Get Control Log Response consists of a structure of type * mc_control_log_rsp_t. * * If the mc_error field indicates no error, the mc_rsrc_hndl field specifies * the resource handle of the resource whose control log is being * returned. The mc_entry_count field indicates the number of entries in the * control log and the mc_log field is a pointer to an array of control log * entries, as specified below. If there are no entries currently in the * control log the mc_entry_count field is 0 and the mc_log field is * undefined. If an error is indicated the mc_rsrc_hndl field contains the * resource handle specified on the command. * * In the mc_control_log_entry_t type, the mc_log_error field specifies error * information for this log entry, if any. The mc_log_entry_type field * indicates the type of control log entry. The mc_timestamp field indicates * the time the log entry was made. */ typedef struct { mc_errnum_t mc_log_error; rmc_log_entry_type_t mc_log_entry_type; time_t mc_log_timestamp; } mc_control_log_entry_t; typedef struct { mc_errnum_t mc_error; ct_resource_handle_t mc_rsrc_hndl; mc_control_log_entry_t *mc_log; ct_uint32_t mc_entry_count; } mc_control_log_rsp_t; /* * The format of a RMC/CtSec ACL is defined by mc_acl_t. * * The mc_type field indicates the type of the ACL: Resource ACL, Resource * Initial ACL, Resource Shared ACL, or Class ACL. * * The mc_flags field may be used by a Resource ACL or Resource Initial ACL * to direct the use of the Resource Shared ACL. If the flag is set * directing the use of the Resource Shared ACL, the mc_value and mc_length * fields are not interpreted. * * If the mc_flags field does not direct the use of the Resource Shared ACL, * the mc_value field points to the beginning of the memory location holding * the CtSec ACL, and the mc_length field indicates the size of the CtSec * ACL. Note that a CtSec ACL can be empty, indicating no access to the * resource or class. An empty CtSec ACL is represented in the mc_acl_t type * with NULL and 0 values for the mc_value and mc_length fields, * respectively. */ typedef struct { mc_acl_type_t mc_type; mc_acl_flags_t mc_flags; void *mc_value; ct_uint32_t mc_length; } mc_acl_t; /* * A Get Resource-Specific ACL Response consists of a structure of type * mc_get_acl_rsp_t. */ typedef struct { mc_errnum_t mc_error; ct_resource_handle_t mc_rsrc_hndl; mc_acl_t mc_acl; } mc_get_acl_rsp_t; /* * A Get Class-Wide ACL Response consists of a structure of type * mc_class_get_acl_rsp_t. */ typedef struct { mc_errnum_t mc_error; ct_char_t *mc_class_name; ct_char_t *mc_node_name; ct_char_t *mc_peer_domain_name; mc_acl_t mc_acl; } mc_class_get_acl_rsp_t; /* * A Set Class-Wide ACL Response consists of a structure of type * mc_class_set_acl_rsp_t. */ typedef struct { mc_errnum_t mc_error; ct_char_t *mc_class_name; ct_char_t *mc_node_name; ct_char_t *mc_peer_domain_name; } mc_class_set_acl_rsp_t; /*--------------------------------------------------------------------------*/ /* Resource Monitoring and Control (RMC) API callback function prototypes. */ /*--------------------------------------------------------------------------*/ typedef void (mc_complete_cb_t)( /* Command Group Complete Callback */ mc_sess_hndl_t, /* session handle */ ct_int32_t, /* error value */ void * /* callback argument */ ); typedef void (mc_event_cb_6_t)( /* Event Notification Callback */ mc_sess_hndl_t, /* session handle */ mc_event_6_t *, /* event notification data */ void * /* callback argument */ ); typedef void (mc_event_cb_2_t)( /* Event Notification Callback */ mc_sess_hndl_t, /* session handle */ mc_event_2_t *, /* event notification data */ void * /* callback argument */ ); typedef void (mc_event_cb_1_t)( /* Event Notification Callback */ mc_sess_hndl_t, /* session handle */ mc_event_1_t *, /* event notification data */ void * /* callback argument */ ); typedef void (mc_class_event_cb_6_t)( /* Class Event Notification Callback */ mc_sess_hndl_t, /* session handle */ mc_class_event_6_t *, /* class event notification data */ void * /* callback argument */ ); typedef void (mc_class_event_cb_3_t)( /* Class Event Notification Callback */ mc_sess_hndl_t, /* session handle */ mc_class_event_3_t *, /* class event notification data */ void * /* callback argument */ ); typedef void (mc_class_event_cb_1_t)( /* Class Event Notification Callback */ mc_sess_hndl_t, /* session handle */ mc_class_event_1_t *, /* class event notification data */ void * /* callback argument */ ); typedef void (mc_reg_cb_t)( /* Registration Response Callback */ mc_sess_hndl_t, /* session handle */ mc_reg_rsp_t *, /* registration response data */ void * /* callback argument */ ); typedef void (mc_unreg_cb_t)( /* Unregistration Response Callback */ mc_sess_hndl_t, /* session handle */ mc_unreg_rsp_t *, /* unregistration response data */ void * /* callback argument */ ); typedef void (mc_query_event_cb_t)( /* Query Event Response Callback */ mc_sess_hndl_t, /* session handle */ mc_query_event_rsp_t *, /* query event response data */ void * /* callback argument */ ); typedef void (mc_enumerate_cb_t)( /* Enumerate Resources Callback */ mc_sess_hndl_t, /* session handle */ mc_enumerate_rsp_t *, /* enumerate resources response data */ void * /* callback argument */ ); typedef void (mc_query_cb_t)( /* Query Resource Callback */ mc_sess_hndl_t, /* session handle */ mc_query_rsp_t *, /* query resource response data */ void * /* callback argument */ ); typedef void (mc_class_query_cb_3_t)( /* Query Class Resource Callback */ mc_sess_hndl_t, /* session handle */ mc_class_query_rsp_3_t *, /* query class response data */ void * /* callback argument */ ); typedef void (mc_class_query_cb_1_t)( /* Query Class Resource Callback */ mc_sess_hndl_t, /* session handle */ mc_class_query_rsp_1_t *, /* query class response data */ void * /* callback argument */ ); typedef void (mc_qdef_rsrc_class_cb_t)( /* Query Resource Class Definitions C.B. */ mc_sess_hndl_t, /* session handle */ mc_qdef_rsrc_class_rsp_t *, /* query resource class definitions data */ void * /* callback argument */ ); typedef void (mc_qdef_pattr_cb_t)( /* Query Persistent Attribute Defns. C.B. */ mc_sess_hndl_t, /* session handle */ mc_qdef_pattr_rsp_t *, /* query persistent attribute defns. data */ void * /* callback argument */ ); typedef void (mc_qdef_dattr_cb_6_t)( /* Query Dynamic Attribute Definitions C.B. */ mc_sess_hndl_t, /* session handle */ mc_qdef_dattr_rsp_6_t *, /* query dynamic attribute defns. data */ void * /* callback argument */ ); typedef void (mc_qdef_dattr_cb_1_t)( /* Query Dynamic Attribute Definitions C.B. */ mc_sess_hndl_t, /* session handle */ mc_qdef_dattr_rsp_1_t *, /* query dynamic attribute defns. data */ void * /* callback argument */ ); typedef void (mc_qdef_sbs_cb_t)( /* Query Structured Byte String Defns. C.B. */ mc_sess_hndl_t, /* session handle */ mc_qdef_sbs_rsp_t *, /* query structured byte string defns. data */ void * /* callback argument */ ); typedef void (mc_qdef_sd_cb_t)( /* Query Structured Data Callback */ mc_sess_hndl_t, /* session handle */ mc_qdef_sd_rsp_t *, /* query structured data response data */ void * /* callback argument */ ); typedef void (mc_qdef_valid_vals_cb_t)( /* Query Valid Value Definitions Callback */ mc_sess_hndl_t, /* session handle */ mc_qdef_valid_vals_rsp_t *, /* query valid value definitions data */ void * /* callback argument */ ); typedef void (mc_qdef_actions_cb_t)( /* Query Action Definitions Callback */ mc_sess_hndl_t, /* session handle */ mc_qdef_actions_rsp_t *, /* query action definitions data */ void * /* callback argument */ ); typedef void (mc_qdef_err_inject_cb_t)( /* Query Error Injection Definitions C.B. */ mc_sess_hndl_t, /* session handle */ mc_qdef_err_inject_rsp_t *, /* query error injections definitions data */ void * /* callback argument */ ); typedef void (mc_qdef_rsrc_deps_cb_t)( /* Query Resource Dependency Defns. C.B. */ mc_sess_hndl_t, /* session handle */ mc_qdef_rsrc_deps_rsp_t *, /* query resource dependency defns. data */ void * /* callback argument */ ); typedef void (mc_val_rsrc_hndl_cb_t)( /* Validate Resource Handles Callback */ mc_sess_hndl_t, /* session handle */ mc_rsrc_hndl_rsp_t *, /* resource handle response data */ void * /* callback argument */ ); typedef void (mc_def_rsrc_cb_t)( /* Define a Resource Callback */ mc_sess_hndl_t, /* session handle */ mc_define_rsrc_rsp_t *, /* define resource response data */ void * /* callback argument */ ); typedef void (mc_undef_rsrc_cb_t)( /* Undefine a Resource Callback */ mc_sess_hndl_t, /* session handle */ mc_undefine_rsrc_rsp_t *, /* undefine resource response data */ void * /* callback argument */ ); typedef void (mc_refresh_cfg_cb_t)( /* Refresh Resource Configuration Callback */ mc_sess_hndl_t, /* session handle */ mc_class_name_rsp_t *, /* class name response data */ void * /* callback argument */ ); typedef void (mc_integrity_chk_cb_t)( /* Do Integrity Check Callback */ mc_sess_hndl_t, /* session handle */ mc_integrity_chk_rsp_t *, /* do integrity check response data */ void * /* callback argument */ ); typedef void (mc_set_cb_t)( /* Set Resource Attributes Callback */ mc_sess_hndl_t, /* session handle */ mc_set_rsp_t *, /* set resource attributes response data */ void * /* callback argument */ ); typedef void (mc_class_set_cb_3_t)( /* Set Class Attributes Callback */ mc_sess_hndl_t, /* session handle */ mc_class_set_rsp_3_t *, /* set class attributes response data */ void * /* callback argument */ ); typedef void (mc_class_set_cb_1_t)( /* Set Class Attributes Callback */ mc_sess_hndl_t, /* session handle */ mc_class_set_rsp_1_t *, /* set class attributes response data */ void * /* callback argument */ ); typedef void (mc_action_cb_t)( /* Invoke Action Callback */ mc_sess_hndl_t, /* session handle */ mc_action_rsp_t *, /* invoke action response data */ void * /* callback argument */ ); typedef void (mc_class_action_cb_3_t)( /* Invoke Class Action Callback */ mc_sess_hndl_t, /* session handle */ mc_class_action_rsp_3_t *, /* invoke class action response data */ void * /* callback argument */ ); typedef void (mc_class_action_cb_2_t)( /* Invoke Class Action Callback */ mc_sess_hndl_t, /* session handle */ mc_class_action_rsp_2_t *, /* invoke class action response data */ void * /* callback argument */ ); typedef void (mc_class_action_cb_1_t)( /* Invoke Class Action Callback */ mc_sess_hndl_t, /* session handle */ mc_class_action_rsp_1_t *, /* invoke class action response data */ void * /* callback argument */ ); typedef void (mc_enum_constraints_cb_t)( /* Enumerate Constraints Callback */ mc_sess_hndl_t, /* session handle */ mc_constraint_rsp_t *, /* enumerate constraints response */ void * /* callback argument */ ); typedef void (mc_define_constraint_cb_t)( /* Define Constraint Callback */ mc_sess_hndl_t, /* session handle */ mc_rsrc_hndl_rsp_t *, /* resource handle response data */ void * /* callback argument */ ); typedef void (mc_undefine_constraint_cb_t)( /* Undefine Constraint Callback */ mc_sess_hndl_t, /* session handle */ mc_rsrc_hndl_rsp_t *, /* resource handle response data */ void * /* callback argument */ ); typedef void (mc_online_cb_t)( /* Bring a Resource On-line Callback */ mc_sess_hndl_t, /* session handle */ mc_rsrc_hndl_rsp_t *, /* resource handle response data */ void * /* callback argument */ ); typedef void (mc_offline_cb_t)( /* Take a Resource Off-line Callback */ mc_sess_hndl_t, /* session handle */ mc_rsrc_hndl_rsp_t *, /* resource handle response data */ void * /* callback argument */ ); typedef void (mc_reset_cb_t)( /* Force a Resource Off-line Callback */ mc_sess_hndl_t, /* session handle */ mc_rsrc_hndl_rsp_t *, /* resource handle response data */ void * /* callback argument */ ); typedef void (mc_advisory_cb_t)( /* Constraint Advisory Callback */ mc_sess_hndl_t, /* session handle */ mc_rsrc_hndl_rsp_t *, /* resource handle response data */ void * /* callback argument */ ); typedef void (mc_get_control_log_cb_t)( /* Get Control Log Callback */ mc_sess_hndl_t, /* session handle */ mc_control_log_rsp_t *, /* get control log response data */ void * /* callback argument */ ); typedef void (mc_inject_error_cb_t)( /* Inject an Error into a Resource C.B. */ mc_sess_hndl_t, /* session handle */ mc_rsrc_hndl_rsp_t *, /* resource handle response data */ void * /* callback argument */ ); typedef void (mc_get_acl_cb_t)( /* Get Resource-Specific ACL Callback */ mc_sess_hndl_t, /* session handle */ mc_get_acl_rsp_t *, /* get resource ACL response data */ void * /* callback argument */ ); typedef void (mc_class_get_acl_cb_t)( /* Get Class-Wide ACL Callback */ mc_sess_hndl_t, /* session handle */ mc_class_get_acl_rsp_t *, /* get class ACL response data */ void * /* callback argument */ ); typedef void (mc_set_acl_cb_t)( /* Set Resource-Specific ACL Callback */ mc_sess_hndl_t, /* session handle */ mc_rsrc_hndl_rsp_t *, /* set resource ACL response data */ void * /* callback argument */ ); typedef void (mc_class_set_acl_cb_t)( /* Set Class-Wide ACL Callback */ mc_sess_hndl_t, /* session handle */ mc_class_set_acl_rsp_t *, /* set class ACL response data */ void * /* callback argument */ ); /*--------------------------------------------------------------------------*/ /* Resource Monitoring and Control (RMC) - */ /* Function Prototypes for Session Interfaces */ /*--------------------------------------------------------------------------*/ extern ct_int32_t mc_start_session_6( /* Start a RMC session */ ct_contact_t *contact_array, /* input: contact array */ ct_uint32_t number_of_contacts, /* input: number of contacts */ mc_session_opts_t options, /* input: session options */ mc_sess_hndl_t *session_hndl /* output: session handle */ ); /* return: 0 or error number */ extern ct_int32_t mc_start_session_5( /* Start a RMC session */ ct_contact_t *contact_array, /* input: contact array */ ct_uint32_t number_of_contacts, /* input: number of contacts */ mc_session_opts_t options, /* input: session options */ mc_sess_hndl_t *session_hndl /* output: session handle */ ); /* return: 0 or error number */ extern ct_int32_t mc_start_session_4( /* Start a RMC session */ ct_contact_t *contact_array, /* input: contact array */ ct_uint32_t number_of_contacts, /* input: number of contacts */ mc_session_opts_t options, /* input: session options */ mc_sess_hndl_t *session_hndl /* output: session handle */ ); /* return: 0 or error number */ extern ct_int32_t mc_start_session_3( /* Start a RMC session */ ct_contact_t *contact_array, /* input: contact array */ ct_uint32_t number_of_contacts, /* input: number of contacts */ mc_session_opts_t options, /* input: session options */ mc_sess_hndl_t *session_hndl /* output: session handle */ ); /* return: 0 or error number */ extern ct_int32_t mc_start_session_2( /* Start a RMC session */ ct_contact_t *contact_array, /* input: contact array */ ct_uint32_t number_of_contacts, /* input: number of contacts */ mc_session_opts_t options, /* input: session options */ mc_sess_hndl_t *session_hndl /* output: session handle */ ); /* return: 0 or error number */ extern ct_int32_t mc_start_session_1( /* Start a RMC session */ ct_contact_t *contact_array, /* input: contact array */ ct_uint32_t number_of_contacts, /* input: number of contacts */ mc_session_opts_t options, /* input: session options */ mc_sess_hndl_t *session_hndl /* output: session handle */ ); /* return: 0 or error number */ extern ct_int32_t mc_timed_start_session_6( /* Start a RMC session, with timeouts */ ct_contact_t *contact_array, /* input: contact array */ ct_uint32_t num_contacts, /* input: number of contacts */ mc_session_opts_t options, /* input: session options */ ct_uint32_t start_timeout, /* input: start timeout in seconds */ ct_uint32_t cmd_timeout, /* input: command timeout in seconds */ mc_sess_hndl_t *session_hndl /* output: session handle */ ); /* return: 0 or error number */ extern ct_int32_t mc_timed_start_session_5( /* Start a RMC session, with timeouts */ ct_contact_t *contact_array, /* input: contact array */ ct_uint32_t num_contacts, /* input: number of contacts */ mc_session_opts_t options, /* input: session options */ ct_uint32_t start_timeout, /* input: start timeout in seconds */ ct_uint32_t cmd_timeout, /* input: command timeout in seconds */ mc_sess_hndl_t *session_hndl /* output: session handle */ ); /* return: 0 or error number */ extern ct_int32_t mc_timed_start_session_4( /* Start a RMC session, with timeouts */ ct_contact_t *contact_array, /* input: contact array */ ct_uint32_t num_contacts, /* input: number of contacts */ mc_session_opts_t options, /* input: session options */ ct_uint32_t start_timeout, /* input: start timeout in seconds */ ct_uint32_t cmd_timeout, /* input: command timeout in seconds */ mc_sess_hndl_t *session_hndl /* output: session handle */ ); /* return: 0 or error number */ extern ct_int32_t mc_timed_start_session_3( /* Start a RMC session, with timeouts */ ct_contact_t *contact_array, /* input: contact array */ ct_uint32_t num_contacts, /* input: number of contacts */ mc_session_opts_t options, /* input: session options */ ct_uint32_t start_timeout, /* input: start timeout in seconds */ ct_uint32_t cmd_timeout, /* input: command timeout in seconds */ mc_sess_hndl_t *session_hndl /* output: session handle */ ); /* return: 0 or error number */ extern ct_int32_t mc_timed_start_session_2( /* Start a RMC session, with timeouts */ ct_contact_t *contact_array, /* input: contact array */ ct_uint32_t num_contacts, /* input: number of contacts */ mc_session_opts_t options, /* input: session options */ ct_uint32_t start_timeout, /* input: start timeout in seconds */ ct_uint32_t cmd_timeout, /* input: command timeout in seconds */ mc_sess_hndl_t *session_hndl /* output: session handle */ ); /* return: 0 or error number */ extern ct_int32_t mc_end_session_1( /* End a RMC session */ mc_sess_hndl_t session_hndl /* input: session handle */ ); /* return: 0 or error number */ extern ct_int32_t mc_session_status_2( mc_sess_hndl_t session_hndl, /* input: session handle */ mc_sess_status_t *session_status /* output: session status */ ); /* return: 0 or error number */ extern ct_int32_t mc_session_info_2( mc_sess_hndl_t session_hndl, /* input: session handle */ mc_sess_info_t info_type, /* input: type of information */ void *info_return /* output: returned information */ /* actual data type depends */ /* on information requested */ /* (see mc_sess_info_t) */ ); /* return: 0 or error number */ extern ct_int32_t mc_get_descriptor_1( /* Get RMC session file descriptor */ mc_sess_hndl_t session_hndl, /* input: session handle */ int *descriptor /* output: session file descriptor */ ); /* return: 0 or error number */ extern ct_int32_t mc_free_descriptor_1( /* Free RMC session file descriptor */ mc_sess_hndl_t session_hndl, /* input: session handle */ int descriptor /* input: session file descriptor */ ); /* return: 0 or error number */ /*--------------------------------------------------------------------------*/ /* Resource Monitoring and Control (RMC) - */ /* Function Prototypes for Command Management Interfaces */ /*--------------------------------------------------------------------------*/ extern ct_int32_t mc_dispatch_1( /* Dispatch thread */ mc_sess_hndl_t session_hndl, /* input: session handle */ mc_dispatch_opts_t options /* input: dispatch options */ ); /* return: 0 or error number */ extern ct_int32_t mc_start_cmd_grp_1( /* Start command group */ mc_sess_hndl_t session_hndl, /* input: session handle */ mc_cmd_grp_opts_t options, /* input: command group options */ mc_cmdgrp_hndl_t *cmdgrp_hndl /* output: command group handle */ ); /* return: 0 or error number */ extern ct_int32_t mc_cancel_cmd_grp_1( /* Cancel command group */ mc_cmdgrp_hndl_t cmdgrp_hndl /* input: command group handle */ ); /* return: 0 or error number */ extern ct_int32_t mc_send_cmd_grp_1( /* Send command group */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_complete_cb_t *complete_cb, /* input: complete callback */ void *cb_arg /* input: client callback argument */ ); /* return: 0 or error number */ extern ct_int32_t mc_send_cmd_grp_wait_1( /* Send command group and wait */ mc_cmdgrp_hndl_t cmdgrp_hndl /* input: command group handle */ ); /* return: 0 or error number */ extern ct_int32_t mc_free_response_1( /* Free response */ void *rsp_ptr /* input: response to free */ ); /* return: 0 or error number */ /*--------------------------------------------------------------------------*/ /* Resource Monitoring and Control (RMC) - */ /* Function Prototypes for Monitoring Command Interfaces */ /*--------------------------------------------------------------------------*/ extern ct_int32_t /* Register Event ... */ mc_reg_event_select_bp_6( /* using Attribute Selection */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_reg_rsp_t **response, /* output: response */ mc_reg_opts_t options, /* input: registration options */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t *select_attrs, /* input: select string */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count, /* input: count of attrs to return */ ct_char_t *expr, /* input: registration expression */ ct_char_t *raexpr, /* input: registration rearm expr. */ mc_event_cb_6_t *event_cb, /* input: event notification c.b. */ void *event_cb_arg /* input: callback argument */ ); /* return: 0 or error number */ extern ct_int32_t /* Register Event ... */ mc_reg_event_select_ap_6( /* using Attribute Selection */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_reg_rsp_t **response, /* output: response */ mc_reg_opts_t options, /* input: registration options */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t *select_attrs, /* input: select string */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count, /* input: count of attrs to return */ ct_char_t *expr, /* input: registration expression */ ct_char_t *raexpr, /* input: registration rearm expr. */ mc_event_cb_6_t *event_cb, /* input: event notification c.b. */ void *event_cb_arg /* input: callback argument */ ); /* return: 0 or error number */ extern ct_int32_t /* Register Event ... */ mc_reg_event_select_bc_6( /* using Attribute Selection */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_reg_cb_t *reg_cb, /* input: registration response cb */ void *reg_cb_arg, /* input: callback argument */ mc_reg_opts_t options, /* input: registration options */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t *select_attrs, /* input: select string */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count, /* input: count of attrs to return */ ct_char_t *expr, /* input: registration expression */ ct_char_t *raexpr, /* input: registration rearm expr. */ mc_event_cb_6_t *event_cb, /* input: event notification c.b. */ void *event_cb_arg /* input: callback argument */ ); /* return: 0 or error number */ extern ct_int32_t /* Register Event ... */ mc_reg_event_select_ac_6( /* using Attribute Selection */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_reg_cb_t *reg_cb, /* input: registration response cb */ void *reg_cb_arg, /* input: callback argument */ mc_reg_opts_t options, /* input: registration options */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t *select_attrs, /* input: select string */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count, /* input: count of attrs to return */ ct_char_t *expr, /* input: registration expression */ ct_char_t *raexpr, /* input: registration rearm expr. */ mc_event_cb_6_t *event_cb, /* input: event notification c.b. */ void *event_cb_arg /* input: callback argument */ ); /* return: 0 or error number */ extern ct_int32_t /* Register Event ... */ mc_reg_event_handle_bp_6( /* using Resource Handle */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_reg_rsp_t **response, /* output: response */ mc_reg_opts_t options, /* input: registration options */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count, /* input: count of attrs to return */ ct_char_t *expr, /* input: registration expression */ ct_char_t *raexpr, /* input: registration rearm expr. */ mc_event_cb_6_t *event_cb, /* input: event notification c.b. */ void *event_cb_arg /* input: callback argument */ ); /* return: 0 or error number */ extern ct_int32_t /* Register Event ... */ mc_reg_event_handle_ap_6( /* using Resource Handle */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_reg_rsp_t **response, /* output: response */ mc_reg_opts_t options, /* input: registration options */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count, /* input: count of attrs to return */ ct_char_t *expr, /* input: registration expression */ ct_char_t *raexpr, /* input: registration rearm expr. */ mc_event_cb_6_t *event_cb, /* input: event notification c.b. */ void *event_cb_arg /* input: callback argument */ ); /* return: 0 or error number */ extern ct_int32_t /* Register Event ... */ mc_reg_event_handle_bc_6( /* using Resource Handle */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_reg_cb_t *reg_cb, /* input: registration response cb */ void *reg_cb_arg, /* input: callback argument */ mc_reg_opts_t options, /* input: registration options */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count, /* input: count of attrs to return */ ct_char_t *expr, /* input: registration expression */ ct_char_t *raexpr, /* input: registration rearm expr. */ mc_event_cb_6_t *event_cb, /* input: event notification c.b. */ void *event_cb_arg /* input: callback argument */ ); /* return: 0 or error number */ extern ct_int32_t /* Register Event ... */ mc_reg_event_handle_ac_6( /* using Resource Handle */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_reg_cb_t *reg_cb, /* input: registration response cb */ void *reg_cb_arg, /* input: callback argument */ mc_reg_opts_t options, /* input: registration options */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count, /* input: count of attrs to return */ ct_char_t *expr, /* input: registration expression */ ct_char_t *raexpr, /* input: registration rearm expr. */ mc_event_cb_6_t *event_cb, /* input: event notification c.b. */ void *event_cb_arg /* input: callback argument */ ); /* return: 0 or error number */ extern ct_int32_t /* Register Event ... */ mc_reg_event_select_bp_2( /* using Attribute Selection */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_reg_rsp_t **response, /* output: response */ mc_reg_opts_t options, /* input: registration options */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t *select_attrs, /* input: select string */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count, /* input: count of attrs to return */ ct_char_t *expr, /* input: registration expression */ ct_char_t *raexpr, /* input: registration rearm expr. */ mc_event_cb_2_t *event_cb, /* input: event notification c.b. */ void *event_cb_arg /* input: callback argument */ ); /* return: 0 or error number */ extern ct_int32_t /* Register Event ... */ mc_reg_event_select_ap_2( /* using Attribute Selection */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_reg_rsp_t **response, /* output: response */ mc_reg_opts_t options, /* input: registration options */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t *select_attrs, /* input: select string */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count, /* input: count of attrs to return */ ct_char_t *expr, /* input: registration expression */ ct_char_t *raexpr, /* input: registration rearm expr. */ mc_event_cb_2_t *event_cb, /* input: event notification c.b. */ void *event_cb_arg /* input: callback argument */ ); /* return: 0 or error number */ extern ct_int32_t /* Register Event ... */ mc_reg_event_select_bc_2( /* using Attribute Selection */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_reg_cb_t *reg_cb, /* input: registration response cb */ void *reg_cb_arg, /* input: callback argument */ mc_reg_opts_t options, /* input: registration options */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t *select_attrs, /* input: select string */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count, /* input: count of attrs to return */ ct_char_t *expr, /* input: registration expression */ ct_char_t *raexpr, /* input: registration rearm expr. */ mc_event_cb_2_t *event_cb, /* input: event notification c.b. */ void *event_cb_arg /* input: callback argument */ ); /* return: 0 or error number */ extern ct_int32_t /* Register Event ... */ mc_reg_event_select_ac_2( /* using Attribute Selection */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_reg_cb_t *reg_cb, /* input: registration response cb */ void *reg_cb_arg, /* input: callback argument */ mc_reg_opts_t options, /* input: registration options */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t *select_attrs, /* input: select string */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count, /* input: count of attrs to return */ ct_char_t *expr, /* input: registration expression */ ct_char_t *raexpr, /* input: registration rearm expr. */ mc_event_cb_2_t *event_cb, /* input: event notification c.b. */ void *event_cb_arg /* input: callback argument */ ); /* return: 0 or error number */ extern ct_int32_t /* Register Event ... */ mc_reg_event_handle_bp_2( /* using Resource Handle */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_reg_rsp_t **response, /* output: response */ mc_reg_opts_t options, /* input: registration options */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count, /* input: count of attrs to return */ ct_char_t *expr, /* input: registration expression */ ct_char_t *raexpr, /* input: registration rearm expr. */ mc_event_cb_2_t *event_cb, /* input: event notification c.b. */ void *event_cb_arg /* input: callback argument */ ); /* return: 0 or error number */ extern ct_int32_t /* Register Event ... */ mc_reg_event_handle_ap_2( /* using Resource Handle */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_reg_rsp_t **response, /* output: response */ mc_reg_opts_t options, /* input: registration options */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count, /* input: count of attrs to return */ ct_char_t *expr, /* input: registration expression */ ct_char_t *raexpr, /* input: registration rearm expr. */ mc_event_cb_2_t *event_cb, /* input: event notification c.b. */ void *event_cb_arg /* input: callback argument */ ); /* return: 0 or error number */ extern ct_int32_t /* Register Event ... */ mc_reg_event_handle_bc_2( /* using Resource Handle */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_reg_cb_t *reg_cb, /* input: registration response cb */ void *reg_cb_arg, /* input: callback argument */ mc_reg_opts_t options, /* input: registration options */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count, /* input: count of attrs to return */ ct_char_t *expr, /* input: registration expression */ ct_char_t *raexpr, /* input: registration rearm expr. */ mc_event_cb_2_t *event_cb, /* input: event notification c.b. */ void *event_cb_arg /* input: callback argument */ ); /* return: 0 or error number */ extern ct_int32_t /* Register Event ... */ mc_reg_event_handle_ac_2( /* using Resource Handle */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_reg_cb_t *reg_cb, /* input: registration response cb */ void *reg_cb_arg, /* input: callback argument */ mc_reg_opts_t options, /* input: registration options */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count, /* input: count of attrs to return */ ct_char_t *expr, /* input: registration expression */ ct_char_t *raexpr, /* input: registration rearm expr. */ mc_event_cb_2_t *event_cb, /* input: event notification c.b. */ void *event_cb_arg /* input: callback argument */ ); /* return: 0 or error number */ extern ct_int32_t /* Register Event ... */ mc_reg_event_select_bp_1( /* using Attribute Selection */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_reg_rsp_t **response, /* output: response */ mc_reg_opts_t options, /* input: registration options */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t *select_attrs, /* input: select string */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count, /* input: count of attrs to return */ ct_char_t *expr, /* input: registration expression */ ct_char_t *raexpr, /* input: registration rearm expr. */ mc_event_cb_1_t *event_cb, /* input: event notification c.b. */ void *event_cb_arg /* input: callback argument */ ); /* return: 0 or error number */ extern ct_int32_t /* Register Event ... */ mc_reg_event_select_ap_1( /* using Attribute Selection */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_reg_rsp_t **response, /* output: response */ mc_reg_opts_t options, /* input: registration options */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t *select_attrs, /* input: select string */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count, /* input: count of attrs to return */ ct_char_t *expr, /* input: registration expression */ ct_char_t *raexpr, /* input: registration rearm expr. */ mc_event_cb_1_t *event_cb, /* input: event notification c.b. */ void *event_cb_arg /* input: callback argument */ ); /* return: 0 or error number */ extern ct_int32_t /* Register Event ... */ mc_reg_event_select_bc_1( /* using Attribute Selection */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_reg_cb_t *reg_cb, /* input: registration response cb */ void *reg_cb_arg, /* input: callback argument */ mc_reg_opts_t options, /* input: registration options */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t *select_attrs, /* input: select string */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count, /* input: count of attrs to return */ ct_char_t *expr, /* input: registration expression */ ct_char_t *raexpr, /* input: registration rearm expr. */ mc_event_cb_1_t *event_cb, /* input: event notification c.b. */ void *event_cb_arg /* input: callback argument */ ); /* return: 0 or error number */ extern ct_int32_t /* Register Event ... */ mc_reg_event_select_ac_1( /* using Attribute Selection */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_reg_cb_t *reg_cb, /* input: registration response cb */ void *reg_cb_arg, /* input: callback argument */ mc_reg_opts_t options, /* input: registration options */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t *select_attrs, /* input: select string */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count, /* input: count of attrs to return */ ct_char_t *expr, /* input: registration expression */ ct_char_t *raexpr, /* input: registration rearm expr. */ mc_event_cb_1_t *event_cb, /* input: event notification c.b. */ void *event_cb_arg /* input: callback argument */ ); /* return: 0 or error number */ extern ct_int32_t /* Register Event ... */ mc_reg_event_handle_bp_1( /* using Resource Handle */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_reg_rsp_t **response, /* output: response */ mc_reg_opts_t options, /* input: registration options */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count, /* input: count of attrs to return */ ct_char_t *expr, /* input: registration expression */ ct_char_t *raexpr, /* input: registration rearm expr. */ mc_event_cb_1_t *event_cb, /* input: event notification c.b. */ void *event_cb_arg /* input: callback argument */ ); /* return: 0 or error number */ extern ct_int32_t /* Register Event ... */ mc_reg_event_handle_ap_1( /* using Resource Handle */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_reg_rsp_t **response, /* output: response */ mc_reg_opts_t options, /* input: registration options */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count, /* input: count of attrs to return */ ct_char_t *expr, /* input: registration expression */ ct_char_t *raexpr, /* input: registration rearm expr. */ mc_event_cb_1_t *event_cb, /* input: event notification c.b. */ void *event_cb_arg /* input: callback argument */ ); /* return: 0 or error number */ extern ct_int32_t /* Register Event ... */ mc_reg_event_handle_bc_1( /* using Resource Handle */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_reg_cb_t *reg_cb, /* input: registration response cb */ void *reg_cb_arg, /* input: callback argument */ mc_reg_opts_t options, /* input: registration options */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count, /* input: count of attrs to return */ ct_char_t *expr, /* input: registration expression */ ct_char_t *raexpr, /* input: registration rearm expr. */ mc_event_cb_1_t *event_cb, /* input: event notification c.b. */ void *event_cb_arg /* input: callback argument */ ); /* return: 0 or error number */ extern ct_int32_t /* Register Event ... */ mc_reg_event_handle_ac_1( /* using Resource Handle */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_reg_cb_t *reg_cb, /* input: registration response cb */ void *reg_cb_arg, /* input: callback argument */ mc_reg_opts_t options, /* input: registration options */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count, /* input: count of attrs to return */ ct_char_t *expr, /* input: registration expression */ ct_char_t *raexpr, /* input: registration rearm expr. */ mc_event_cb_1_t *event_cb, /* input: event notification c.b. */ void *event_cb_arg /* input: callback argument */ ); /* return: 0 or error number */ extern ct_int32_t mc_reg_class_event_bp_6( /* Register Class Event */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_reg_rsp_t **response, /* output: response */ mc_reg_opts_t options, /* input: registration options */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t **pd_names, /* input: peer domain names */ ct_uint32_t name_count, /* input: count of domain names */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count, /* input: count of attrs to return */ ct_char_t *expr, /* input: registration expression */ ct_char_t *raexpr, /* input: registration rearm expr. */ mc_class_event_cb_6_t *event_cb, /* input: event notification c.b. */ void *event_cb_arg /* input: callback argument */ ); /* return: 0 or error number */ extern ct_int32_t mc_reg_class_event_ap_6( /* Register Class Event */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_reg_rsp_t **response, /* output: response */ mc_reg_opts_t options, /* input: registration options */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t **pd_names, /* input: peer domain names */ ct_uint32_t name_count, /* input: count of domain names */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count, /* input: count of attrs to return */ ct_char_t *expr, /* input: registration expression */ ct_char_t *raexpr, /* input: registration rearm expr. */ mc_class_event_cb_6_t *event_cb, /* input: event notification c.b. */ void *event_cb_arg /* input: callback argument */ ); /* return: 0 or error number */ extern ct_int32_t mc_reg_class_event_bc_6( /* Register Class Event */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_reg_cb_t *reg_cb, /* input: registration response cb */ void *reg_cb_arg, /* input: callback argument */ mc_reg_opts_t options, /* input: registration options */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t **pd_names, /* input: peer domain names */ ct_uint32_t name_count, /* input: count of domain names */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count, /* input: count of attrs to return */ ct_char_t *expr, /* input: registration expression */ ct_char_t *raexpr, /* input: registration rearm expr. */ mc_class_event_cb_6_t *event_cb, /* input: event notification c.b. */ void *event_cb_arg /* input: callback argument */ ); /* return: 0 or error number */ extern ct_int32_t mc_reg_class_event_ac_6( /* Register Class Event */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_reg_cb_t *reg_cb, /* input: registration response cb */ void *reg_cb_arg, /* input: callback argument */ mc_reg_opts_t options, /* input: registration options */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t **pd_names, /* input: peer domain names */ ct_uint32_t name_count, /* input: count of domain names */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count, /* input: count of attrs to return */ ct_char_t *expr, /* input: registration expression */ ct_char_t *raexpr, /* input: registration rearm expr. */ mc_class_event_cb_6_t *event_cb, /* input: event notification c.b. */ void *event_cb_arg /* input: callback argument */ ); /* return: 0 or error number */ extern ct_int32_t mc_reg_class_event_bp_3( /* Register Class Event */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_reg_rsp_t **response, /* output: response */ mc_reg_opts_t options, /* input: registration options */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t **pd_names, /* input: peer domain names */ ct_uint32_t name_count, /* input: count of domain names */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count, /* input: count of attrs to return */ ct_char_t *expr, /* input: registration expression */ ct_char_t *raexpr, /* input: registration rearm expr. */ mc_class_event_cb_3_t *event_cb, /* input: event notification c.b. */ void *event_cb_arg /* input: callback argument */ ); /* return: 0 or error number */ extern ct_int32_t mc_reg_class_event_ap_3( /* Register Class Event */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_reg_rsp_t **response, /* output: response */ mc_reg_opts_t options, /* input: registration options */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t **pd_names, /* input: peer domain names */ ct_uint32_t name_count, /* input: count of domain names */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count, /* input: count of attrs to return */ ct_char_t *expr, /* input: registration expression */ ct_char_t *raexpr, /* input: registration rearm expr. */ mc_class_event_cb_3_t *event_cb, /* input: event notification c.b. */ void *event_cb_arg /* input: callback argument */ ); /* return: 0 or error number */ extern ct_int32_t mc_reg_class_event_bc_3( /* Register Class Event */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_reg_cb_t *reg_cb, /* input: registration response cb */ void *reg_cb_arg, /* input: callback argument */ mc_reg_opts_t options, /* input: registration options */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t **pd_names, /* input: peer domain names */ ct_uint32_t name_count, /* input: count of domain names */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count, /* input: count of attrs to return */ ct_char_t *expr, /* input: registration expression */ ct_char_t *raexpr, /* input: registration rearm expr. */ mc_class_event_cb_3_t *event_cb, /* input: event notification c.b. */ void *event_cb_arg /* input: callback argument */ ); /* return: 0 or error number */ extern ct_int32_t mc_reg_class_event_ac_3( /* Register Class Event */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_reg_cb_t *reg_cb, /* input: registration response cb */ void *reg_cb_arg, /* input: callback argument */ mc_reg_opts_t options, /* input: registration options */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t **pd_names, /* input: peer domain names */ ct_uint32_t name_count, /* input: count of domain names */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count, /* input: count of attrs to return */ ct_char_t *expr, /* input: registration expression */ ct_char_t *raexpr, /* input: registration rearm expr. */ mc_class_event_cb_3_t *event_cb, /* input: event notification c.b. */ void *event_cb_arg /* input: callback argument */ ); /* return: 0 or error number */ extern ct_int32_t mc_reg_class_event_bp_1( /* Register Class Event */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_reg_rsp_t **response, /* output: response */ mc_reg_opts_t options, /* input: registration options */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count, /* input: count of attrs to return */ ct_char_t *expr, /* input: registration expression */ ct_char_t *raexpr, /* input: registration rearm expr. */ mc_class_event_cb_1_t *event_cb, /* input: event notification c.b. */ void *event_cb_arg /* input: callback argument */ ); /* return: 0 or error number */ extern ct_int32_t mc_reg_class_event_ap_1( /* Register Class Event */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_reg_rsp_t **response, /* output: response */ mc_reg_opts_t options, /* input: registration options */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count, /* input: count of attrs to return */ ct_char_t *expr, /* input: registration expression */ ct_char_t *raexpr, /* input: registration rearm expr. */ mc_class_event_cb_1_t *event_cb, /* input: event notification c.b. */ void *event_cb_arg /* input: callback argument */ ); /* return: 0 or error number */ extern ct_int32_t mc_reg_class_event_bc_1( /* Register Class Event */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_reg_cb_t *reg_cb, /* input: registration response cb */ void *reg_cb_arg, /* input: callback argument */ mc_reg_opts_t options, /* input: registration options */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count, /* input: count of attrs to return */ ct_char_t *expr, /* input: registration expression */ ct_char_t *raexpr, /* input: registration rearm expr. */ mc_class_event_cb_1_t *event_cb, /* input: event notification c.b. */ void *event_cb_arg /* input: callback argument */ ); /* return: 0 or error number */ extern ct_int32_t mc_reg_class_event_ac_1( /* Register Class Event */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_reg_cb_t *reg_cb, /* input: registration response cb */ void *reg_cb_arg, /* input: callback argument */ mc_reg_opts_t options, /* input: registration options */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count, /* input: count of attrs to return */ ct_char_t *expr, /* input: registration expression */ ct_char_t *raexpr, /* input: registration rearm expr. */ mc_class_event_cb_1_t *event_cb, /* input: event notification c.b. */ void *event_cb_arg /* input: callback argument */ ); /* return: 0 or error number */ extern ct_int32_t mc_unreg_event_bp_1( /* Unregister Event */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_unreg_rsp_t **response, /* output: response */ mc_registration_id_t reg_id /* input: registration identifier */ ); /* return: 0 or error number */ extern ct_int32_t mc_unreg_event_ap_1( /* Unregister Event */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_unreg_rsp_t **response, /* output: response */ mc_registration_id_t reg_id /* input: registration identifier */ ); /* return: 0 or error number */ extern ct_int32_t mc_unreg_event_bc_1( /* Unregister Event */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_unreg_cb_t *unreg_cb, /* input: unregistration callback */ void *unreg_cb_arg, /* input: callback argument */ mc_registration_id_t reg_id /* input: registration identifier */ ); /* return: 0 or error number */ extern ct_int32_t mc_unreg_event_ac_1( /* Unregister Event */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_unreg_cb_t *unreg_cb, /* input: unregistration callback */ void *unreg_cb_arg, /* input: callback argument */ mc_registration_id_t reg_id /* input: registration identifier */ ); /* return: 0 or error number */ extern ct_int32_t mc_query_event_bp_2( /* Query Current Event State */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_query_event_rsp_t **response, /* output: response */ mc_registration_id_t reg_id /* input: registration identifier */ ); /* return: 0 or error number */ extern ct_int32_t mc_query_event_ap_2( /* Query Current Event State */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_query_event_rsp_t **response, /* output: response */ mc_registration_id_t reg_id /* input: registration identifier */ ); /* return: 0 or error number */ extern ct_int32_t mc_query_event_bc_2( /* Query Current Event State */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_query_event_cb_t *qevent_cb, /* input: query event callback */ void *qevent_cb_arg, /* input: callback argument */ mc_registration_id_t reg_id /* input: registration identifier */ ); /* return: 0 or error number */ extern ct_int32_t mc_query_event_ac_2( /* Query Current Event State */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_query_event_cb_t *qevent_cb, /* input: query event callback */ void *qevent_cb_arg, /* input: callback argument */ mc_registration_id_t reg_id /* input: registration identifier */ ); /* return: 0 or error number */ /*--------------------------------------------------------------------------*/ /* Resource Monitoring and Control (RMC) - */ /* Function Prototypes for Configuration Command Interfaces */ /*--------------------------------------------------------------------------*/ extern ct_int32_t /* Enumerate Resources ... */ mc_enumerate_resources_bp_1( /* using Attribute Selection */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_enumerate_rsp_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t *select_attrs /* input: select string */ ); extern ct_int32_t /* Enumerate Resources ... */ mc_enumerate_resources_ap_1( /* using Attribute Selection */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_enumerate_rsp_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t *select_attrs /* input: select string */ ); extern ct_int32_t /* Enumerate Resources ... */ mc_enumerate_resources_bc_1( /* using Attribute Selection */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_enumerate_cb_t *enumerate_cb, /* input: enumerate response cb */ void *enumerate_cb_arg, /* input: callback argument */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t *select_attrs /* input: select string */ ); extern ct_int32_t /* Enumerate Resources ... */ mc_enumerate_resources_ac_1( /* using Attribute Selection */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_enumerate_cb_t *enumerate_cb, /* input: enumerate response cb */ void *enumerate_cb_arg, /* input: callback argument */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t *select_attrs /* input: select string */ ); extern ct_int32_t /* Enumerate Permitted Resources */ mc_enumerate_permitted_rsrcs_bp_4( /* ... using Attribute Selection */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_enumerate_rsp_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t *select_attrs, /* input: select string */ ct_uint32_t perms /* input: required permissions */ ); extern ct_int32_t /* Enumerate Permitted Resources */ mc_enumerate_permitted_rsrcs_ap_4( /* ... using Attribute Selection */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_enumerate_rsp_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t *select_attrs, /* input: select string */ ct_uint32_t perms /* input: required permissions */ ); extern ct_int32_t /* Enumerate Permitted Resources */ mc_enumerate_permitted_rsrcs_bc_4( /* ... using Attribute Selection */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_enumerate_cb_t *enumerate_cb, /* input: enumerate response cb */ void *enumerate_cb_arg, /* input: callback argument */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t *select_attrs, /* input: select string */ ct_uint32_t perms /* input: required permissions */ ); extern ct_int32_t /* Enumerate Permitted Resources */ mc_enumerate_permitted_rsrcs_ac_4( /* ... using Attribute Selection */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_enumerate_cb_t *enumerate_cb, /* input: enumerate response cb */ void *enumerate_cb_arg, /* input: callback argument */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t *select_attrs, /* input: select string */ ct_uint32_t perms /* input: required permissions */ ); extern ct_int32_t /* Query Resource Persistent Attrs. */ mc_query_p_select_bp_1( /* ... using Attribute Selection */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_query_rsp_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t *select_attrs, /* input: select string */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count /* input: count of attrs to return */ ); /* return: 0 or error number */ extern ct_int32_t /* Query Resource Persistent Attrs. */ mc_query_p_select_ap_1( /* ... using Attribute Selection */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_query_rsp_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t *select_attrs, /* input: select string */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count /* input: count of attrs to return */ ); /* return: 0 or error number */ extern ct_int32_t /* Query Resource Persistent Attrs. */ mc_query_p_select_bc_1( /* ... using Attribute Selection */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_query_cb_t *query_cb, /* input: query response callback */ void *query_cb_arg, /* input: callback argument */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t *select_attrs, /* input: select string */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count /* input: count of attrs to return */ ); /* return: 0 or error number */ extern ct_int32_t /* Query Resource Persistent Attrs. */ mc_query_p_select_ac_1( /* ... using Attribute Selection */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_query_cb_t *query_cb, /* input: query response callback */ void *query_cb_arg, /* input: callback argument */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t *select_attrs, /* input: select string */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count /* input: count of attrs to return */ ); /* return: 0 or error number */ extern ct_int32_t /* Query Resource Dynamic Attrs. */ mc_query_d_select_bp_1( /* ... using Attribute Selection */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_query_rsp_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t *select_attrs, /* input: select string */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count /* input: count of attrs to return */ ); /* return: 0 or error number */ extern ct_int32_t /* Query Resource Dynamic Attrs. */ mc_query_d_select_ap_1( /* ... using Attribute Selection */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_query_rsp_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t *select_attrs, /* input: select string */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count /* input: count of attrs to return */ ); /* return: 0 or error number */ extern ct_int32_t /* Query Resource Dynamic Attrs. */ mc_query_d_select_bc_1( /* ... using Attribute Selection */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_query_cb_t *query_cb, /* input: query response callback */ void *query_cb_arg, /* input: callback argument */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t *select_attrs, /* input: select string */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count /* input: count of attrs to return */ ); /* return: 0 or error number */ extern ct_int32_t /* Query Resource Dynamic Attrs. */ mc_query_d_select_ac_1( /* ... using Attribute Selection */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_query_cb_t *query_cb, /* input: query response callback */ void *query_cb_arg, /* input: callback argument */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t *select_attrs, /* input: select string */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count /* input: count of attrs to return */ ); /* return: 0 or error number */ extern ct_int32_t /* Query Resource Persistent Attrs. */ mc_query_p_handle_bp_1( /* ... using Resource Handle */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_query_rsp_t **response, /* output: response */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count /* input: count of attrs to return */ ); /* return: 0 or error number */ extern ct_int32_t /* Query Resource Persistent Attrs. */ mc_query_p_handle_ap_1( /* ... using Resource Handle */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_query_rsp_t **response, /* output: response */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count /* input: count of attrs to return */ ); /* return: 0 or error number */ extern ct_int32_t /* Query Resource Persistent Attrs. */ mc_query_p_handle_bc_1( /* ... using Resource Handle */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_query_cb_t *query_cb, /* input: query response callback */ void *query_cb_arg, /* input: callback argument */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count /* input: count of attrs to return */ ); /* return: 0 or error number */ extern ct_int32_t /* Query Resource Persistent Attrs. */ mc_query_p_handle_ac_1( /* ... using Resource Handle */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_query_cb_t *query_cb, /* input: query response callback */ void *query_cb_arg, /* input: callback argument */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count /* input: count of attrs to return */ ); /* return: 0 or error number */ extern ct_int32_t /* Query Resource Dynamic Attrs. */ mc_query_d_handle_bp_1( /* ... using Resource Handle */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_query_rsp_t **response, /* output: response */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count /* input: count of attrs to return */ ); /* return: 0 or error number */ extern ct_int32_t /* Query Resource Dynamic Attrs. */ mc_query_d_handle_ap_1( /* ... using Resource Handle */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_query_rsp_t **response, /* output: response */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count /* input: count of attrs to return */ ); /* return: 0 or error number */ extern ct_int32_t /* Query Resource Dynamic Attrs. */ mc_query_d_handle_bc_1( /* ... using Resource Handle */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_query_cb_t *query_cb, /* input: query response callback */ void *query_cb_arg, /* input: callback argument */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count /* input: count of attrs to return */ ); /* return: 0 or error number */ extern ct_int32_t /* Query Resource Dynamic Attrs. */ mc_query_d_handle_ac_1( /* ... using Resource Handle */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_query_cb_t *query_cb, /* input: query response callback */ void *query_cb_arg, /* input: callback argument */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count /* input: count of attrs to return */ ); /* return: 0 or error number */ extern ct_int32_t /* Query Resource Class */ mc_class_query_p_bp_3( /* ... Persistent Attributes */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_class_query_rsp_3_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t **pd_names, /* input: peer domain names */ ct_uint32_t name_count, /* input: count of domain names */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count /* input: count of attrs to return */ ); /* return: 0 or error number */ extern ct_int32_t /* Query Resource Class */ mc_class_query_p_ap_3( /* ... Persistent Attributes */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_class_query_rsp_3_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t **pd_names, /* input: peer domain names */ ct_uint32_t name_count, /* input: count of domain names */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count /* input: count of attrs to return */ ); /* return: 0 or error number */ extern ct_int32_t /* Query Resource Class */ mc_class_query_p_bc_3( /* ... Persistent Attributes */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_class_query_cb_3_t *query_cb, /* input: query response callback */ void *query_cb_arg, /* input: callback argument */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t **pd_names, /* input: peer domain names */ ct_uint32_t name_count, /* input: count of domain names */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count /* input: count of attrs to return */ ); /* return: 0 or error number */ extern ct_int32_t /* Query Resource Class */ mc_class_query_p_ac_3( /* ... Persistent Attributes */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_class_query_cb_3_t *query_cb, /* input: query response callback */ void *query_cb_arg, /* input: callback argument */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t **pd_names, /* input: peer domain names */ ct_uint32_t name_count, /* input: count of domain names */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count /* input: count of attrs to return */ ); /* return: 0 or error number */ extern ct_int32_t /* Query Resource Class */ mc_class_query_p_bp_1( /* ... Persistent Attributes */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_class_query_rsp_1_t **response, /* output: response */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count /* input: count of attrs to return */ ); /* return: 0 or error number */ extern ct_int32_t /* Query Resource Class */ mc_class_query_p_ap_1( /* ... Persistent Attributes */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_class_query_rsp_1_t **response, /* output: response */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count /* input: count of attrs to return */ ); /* return: 0 or error number */ extern ct_int32_t /* Query Resource Class */ mc_class_query_p_bc_1( /* ... Persistent Attributes */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_class_query_cb_1_t *query_cb, /* input: query response callback */ void *query_cb_arg, /* input: callback argument */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count /* input: count of attrs to return */ ); /* return: 0 or error number */ extern ct_int32_t /* Query Resource Class */ mc_class_query_p_ac_1( /* ... Persistent Attributes */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_class_query_cb_1_t *query_cb, /* input: query response callback */ void *query_cb_arg, /* input: callback argument */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count /* input: count of attrs to return */ ); /* return: 0 or error number */ extern ct_int32_t /* Query Resource Class */ mc_class_query_d_bp_3( /* ... Dynamic Attributes */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_class_query_rsp_3_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t **pd_names, /* input: peer domain names */ ct_uint32_t name_count, /* input: count of domain names */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count /* input: count of attrs to return */ ); /* return: 0 or error number */ extern ct_int32_t /* Query Resource Class */ mc_class_query_d_ap_3( /* ... Dynamic Attributes */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_class_query_rsp_3_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t **pd_names, /* input: peer domain names */ ct_uint32_t name_count, /* input: count of domain names */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count /* input: count of attrs to return */ ); /* return: 0 or error number */ extern ct_int32_t /* Query Resource Class */ mc_class_query_d_bc_3( /* ... Dynamic Attributes */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_class_query_cb_3_t *query_cb, /* input: query response callback */ void *query_cb_arg, /* input: callback argument */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t **pd_names, /* input: peer domain names */ ct_uint32_t name_count, /* input: count of domain names */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count /* input: count of attrs to return */ ); /* return: 0 or error number */ extern ct_int32_t /* Query Resource Class */ mc_class_query_d_ac_3( /* ... Dynamic Attributes */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_class_query_cb_3_t *query_cb, /* input: query response callback */ void *query_cb_arg, /* input: callback argument */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t **pd_names, /* input: peer domain names */ ct_uint32_t name_count, /* input: count of domain names */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count /* input: count of attrs to return */ ); /* return: 0 or error number */ extern ct_int32_t /* Query Resource Class */ mc_class_query_d_bp_1( /* ... Dynamic Attributes */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_class_query_rsp_1_t **response, /* output: response */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count /* input: count of attrs to return */ ); /* return: 0 or error number */ extern ct_int32_t /* Query Resource Class */ mc_class_query_d_ap_1( /* ... Dynamic Attributes */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_class_query_rsp_1_t **response, /* output: response */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count /* input: count of attrs to return */ ); /* return: 0 or error number */ extern ct_int32_t /* Query Resource Class */ mc_class_query_d_bc_1( /* ... Dynamic Attributes */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_class_query_cb_1_t *query_cb, /* input: query response callback */ void *query_cb_arg, /* input: callback argument */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count /* input: count of attrs to return */ ); /* return: 0 or error number */ extern ct_int32_t /* Query Resource Class */ mc_class_query_d_ac_1( /* ... Dynamic Attributes */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_class_query_cb_1_t *query_cb, /* input: query response callback */ void *query_cb_arg, /* input: callback argument */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t **return_attrs, /* input: attributes to return */ ct_uint32_t attr_count /* input: count of attrs to return */ ); /* return: 0 or error number */ extern ct_int32_t mc_qdef_resource_class_bp_1( /* Query Resource Class Defn. */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_qdef_rsrc_class_rsp_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ mc_qdef_opts_t options, /* input: query defn. options */ ct_char_t *rsrc_class_name /* input: resource class name */ ); /* return: 0 or error number */ extern ct_int32_t mc_qdef_resource_class_ap_1( /* Query Resource Class Defn. */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_qdef_rsrc_class_rsp_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ mc_qdef_opts_t options, /* input: query defn. options */ ct_char_t *rsrc_class_name /* input: resource class name */ ); /* return: 0 or error number */ extern ct_int32_t mc_qdef_resource_class_bc_1( /* Query Resource Class Defn. */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_qdef_rsrc_class_cb_t *qdef_cb, /* input: query defn callback */ void *qdef_cb_arg, /* input: callback argument */ mc_qdef_opts_t options, /* input: query defn. options */ ct_char_t *rsrc_class_name /* input: resource class name */ ); /* return: 0 or error number */ extern ct_int32_t mc_qdef_resource_class_ac_1( /* Query Resource Class Defn. */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_qdef_rsrc_class_cb_t *qdef_cb, /* input: query defn callback */ void *qdef_cb_arg, /* input: callback argument */ mc_qdef_opts_t options, /* input: query defn. options */ ct_char_t *rsrc_class_name /* input: resource class name */ ); /* return: 0 or error number */ extern ct_int32_t mc_qdef_p_attribute_bp_1( /* Query Persistent Attr. Defn. */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_qdef_pattr_rsp_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ mc_qdef_opts_t options, /* input: query defn. options */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_uint32_t qry_class_attrs, /* input: query class attrs. */ ct_char_t **attr_names, /* input: attribute names */ ct_uint32_t attr_count /* input: attribute count */ ); /* return: 0 or error number */ extern ct_int32_t mc_qdef_p_attribute_ap_1( /* Query Persistent Attr. Defn. */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_qdef_pattr_rsp_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ mc_qdef_opts_t options, /* input: query defn. options */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_uint32_t qry_class_attrs, /* input: query class attrs. */ ct_char_t **attr_names, /* input: attribute names */ ct_uint32_t attr_count /* input: attribute count */ ); /* return: 0 or error number */ extern ct_int32_t mc_qdef_p_attribute_bc_1( /* Query Persistent Attr. Defn. */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_qdef_pattr_cb_t *qdef_cb, /* input: query defn callback */ void *qdef_cb_arg, /* input: callback argument */ mc_qdef_opts_t options, /* input: query defn. options */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_uint32_t qry_class_attrs, /* input: query class attrs. */ ct_char_t **attr_names, /* input: attribute names */ ct_uint32_t attr_count /* input: attribute count */ ); /* return: 0 or error number */ extern ct_int32_t mc_qdef_p_attribute_ac_1( /* Query Persistent Attr. Defn. */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_qdef_pattr_cb_t *qdef_cb, /* input: query defn callback */ void *qdef_cb_arg, /* input: callback argument */ mc_qdef_opts_t options, /* input: query defn. options */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_uint32_t qry_class_attrs, /* input: query class attrs. */ ct_char_t **attr_names, /* input: attribute names */ ct_uint32_t attr_count /* input: attribute count */ ); /* return: 0 or error number */ extern ct_int32_t mc_qdef_d_attribute_bp_6( /* Query Dynamic Attr. Defn. */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_qdef_dattr_rsp_6_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ mc_qdef_opts_t options, /* input: query defn. options */ ct_char_t *class_name, /* input: resource class name */ ct_uint32_t qy_class_attrs, /* input: query class attrs. */ ct_char_t **attr_names, /* input: attribute names */ ct_uint32_t attr_count /* input: attribute count */ ); /* return: 0 or error number */ extern ct_int32_t mc_qdef_d_attribute_ap_6( /* Query Dynamic Attr. Defn. */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_qdef_dattr_rsp_6_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ mc_qdef_opts_t options, /* input: query defn. options */ ct_char_t *class_name, /* input: resource class name */ ct_uint32_t qy_class_attrs, /* input: query class attrs. */ ct_char_t **attr_names, /* input: attribute names */ ct_uint32_t attr_count /* input: attribute count */ ); /* return: 0 or error number */ extern ct_int32_t mc_qdef_d_attribute_bc_6( /* Query Dynamic Attr. Defn. */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_qdef_dattr_cb_6_t *qdef_cb, /* input: query defn callback */ void *qdef_cb_arg, /* input: callback argument */ mc_qdef_opts_t options, /* input: query defn. options */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_uint32_t qry_class_attrs, /* input: query class attrs. */ ct_char_t **attr_names, /* input: attribute names */ ct_uint32_t attr_count /* input: attribute count */ ); /* return: 0 or error number */ extern ct_int32_t mc_qdef_d_attribute_ac_6( /* Query Dynamic Attr. Defn. */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_qdef_dattr_cb_6_t *qdef_cb, /* input: query defn callback */ void *qdef_cb_arg, /* input: callback argument */ mc_qdef_opts_t options, /* input: query defn. options */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_uint32_t qry_class_attrs, /* input: query class attrs. */ ct_char_t **attr_names, /* input: attribute names */ ct_uint32_t attr_count /* input: attribute count */ ); /* return: 0 or error number */ extern ct_int32_t mc_qdef_d_attribute_bp_1( /* Query Dynamic Attr. Defn. */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_qdef_dattr_rsp_1_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ mc_qdef_opts_t options, /* input: query defn. options */ ct_char_t *class_name, /* input: resource class name */ ct_uint32_t qy_class_attrs, /* input: query class attrs. */ ct_char_t **attr_names, /* input: attribute names */ ct_uint32_t attr_count /* input: attribute count */ ); /* return: 0 or error number */ extern ct_int32_t mc_qdef_d_attribute_ap_1( /* Query Dynamic Attr. Defn. */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_qdef_dattr_rsp_1_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ mc_qdef_opts_t options, /* input: query defn. options */ ct_char_t *class_name, /* input: resource class name */ ct_uint32_t qy_class_attrs, /* input: query class attrs. */ ct_char_t **attr_names, /* input: attribute names */ ct_uint32_t attr_count /* input: attribute count */ ); /* return: 0 or error number */ extern ct_int32_t mc_qdef_d_attribute_bc_1( /* Query Dynamic Attr. Defn. */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_qdef_dattr_cb_1_t *qdef_cb, /* input: query defn callback */ void *qdef_cb_arg, /* input: callback argument */ mc_qdef_opts_t options, /* input: query defn. options */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_uint32_t qry_class_attrs, /* input: query class attrs. */ ct_char_t **attr_names, /* input: attribute names */ ct_uint32_t attr_count /* input: attribute count */ ); /* return: 0 or error number */ extern ct_int32_t mc_qdef_d_attribute_ac_1( /* Query Dynamic Attr. Defn. */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_qdef_dattr_cb_1_t *qdef_cb, /* input: query defn callback */ void *qdef_cb_arg, /* input: callback argument */ mc_qdef_opts_t options, /* input: query defn. options */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_uint32_t qry_class_attrs, /* input: query class attrs. */ ct_char_t **attr_names, /* input: attribute names */ ct_uint32_t attr_count /* input: attribute count */ ); /* return: 0 or error number */ extern ct_int32_t mc_qdef_sbs_bp_1( /* Query SBS Definition */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_qdef_sbs_rsp_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ mc_qdef_opts_t options, /* input: query defn. options */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_uint32_t qry_class_SBS, /* input: query class SBS */ ct_char_t **attr_names, /* input: attribute names */ ct_uint32_t attr_count /* input: attribute count */ ); /* return: 0 or error number */ extern ct_int32_t mc_qdef_sbs_ap_1( /* Query SBS Definition */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_qdef_sbs_rsp_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ mc_qdef_opts_t options, /* input: query defn. options */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_uint32_t qry_class_SBS, /* input: query class SBS */ ct_char_t **attr_names, /* input: attribute names */ ct_uint32_t attr_count /* input: attribute count */ ); /* return: 0 or error number */ extern ct_int32_t mc_qdef_sbs_bc_1( /* Query SBS Definition */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_qdef_sbs_cb_t *qdef_cb, /* input: query defn callback */ void *qdef_cb_arg, /* input: callback argument */ mc_qdef_opts_t options, /* input: query defn. options */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_uint32_t qry_class_SBS, /* input: query class SBS */ ct_char_t **attr_names, /* input: attribute names */ ct_uint32_t attr_count /* input: attribute count */ ); /* return: 0 or error number */ extern ct_int32_t mc_qdef_sbs_ac_1( /* Query SBS Definition */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_qdef_sbs_cb_t *qdef_cb, /* input: query defn callback */ void *qdef_cb_arg, /* input: callback argument */ mc_qdef_opts_t options, /* input: query defn. options */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_uint32_t qry_class_SBS, /* input: query class SBS */ ct_char_t **attr_names, /* input: attribute names */ ct_uint32_t attr_count /* input: attribute count */ ); /* return: 0 or error number */ extern ct_int32_t mc_qdef_sd_bp_1( /* Query Structured Data Defn. */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_qdef_sd_rsp_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ mc_qdef_opts_t options, /* input: query defn. options */ ct_char_t *rsrc_class_name, /* input: resource class name */ mc_sd_usage_t sd_use, /* input: structured data use */ ct_char_t **names, /* input: attr./action names */ ct_uint32_t count /* input: attr./action count */ ); extern ct_int32_t mc_qdef_sd_ap_1( /* Query Structured Data Defn. */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_qdef_sd_rsp_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ mc_qdef_opts_t options, /* input: query defn. options */ ct_char_t *rsrc_class_name, /* input: resource class name */ mc_sd_usage_t sd_use, /* input: structured data use */ ct_char_t **names, /* input: attr./action names */ ct_uint32_t count /* input: attr./action count */ ); extern ct_int32_t mc_qdef_sd_bc_1( /* Query Structured Data Defn. */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_qdef_sd_cb_t *qdef_cb, /* input: query defn callback */ void *qdef_cb_arg, /* input: callback argument */ mc_qdef_opts_t options, /* input: query defn. options */ ct_char_t *rsrc_class_name, /* input: resource class name */ mc_sd_usage_t sd_use, /* input: structured data use */ ct_char_t **names, /* input: attr./action names */ ct_uint32_t count /* input: attr./action count */ ); extern ct_int32_t mc_qdef_sd_ac_1( /* Query Structured Data Defn. */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_qdef_sd_cb_t *qdef_cb, /* input: query defn callback */ void *qdef_cb_arg, /* input: callback argument */ mc_qdef_opts_t options, /* input: query defn. options */ ct_char_t *rsrc_class_name, /* input: resource class name */ mc_sd_usage_t sd_use, /* input: structured data use */ ct_char_t **names, /* input: attr./action names */ ct_uint32_t count /* input: attr./action count */ ); extern ct_int32_t mc_qdef_valid_values_bp_1( /* Query Valid Values Definition*/ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_qdef_valid_vals_rsp_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ mc_qdef_opts_t options, /* input: query defn. options */ ct_char_t *rsrc_class_name, /* input: resource class name */ mc_vv_usage_t vv_use, /* input: valid values usage */ ct_char_t **names, /* input: attribute, action, */ /* or error names */ ct_uint32_t count /* input: count of names */ ); /* return: 0 or error number */ extern ct_int32_t mc_qdef_valid_values_ap_1( /* Query Valid Values Definition*/ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_qdef_valid_vals_rsp_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ mc_qdef_opts_t options, /* input: query defn. options */ ct_char_t *rsrc_class_name, /* input: resource class name */ mc_vv_usage_t vv_use, /* input: valid values usage */ ct_char_t **names, /* input: attribute, action, */ /* or error names */ ct_uint32_t count /* input: count of names */ ); /* return: 0 or error number */ extern ct_int32_t mc_qdef_valid_values_bc_1( /* Query Valid Values Definition*/ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_qdef_valid_vals_cb_t *qdef_cb, /* input: query defn callback */ void *qdef_cb_arg, /* input: callback argument */ mc_qdef_opts_t options, /* input: query defn. options */ ct_char_t *rsrc_class_name, /* input: resource class name */ mc_vv_usage_t vv_use, /* input: valid values usage */ ct_char_t **names, /* input: attribute, action, */ /* or error names */ ct_uint32_t count /* input: count of names */ ); /* return: 0 or error number */ extern ct_int32_t mc_qdef_valid_values_ac_1( /* Query Valid Values Definition*/ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_qdef_valid_vals_cb_t *qdef_cb, /* input: query defn callback */ void *qdef_cb_arg, /* input: callback argument */ mc_qdef_opts_t options, /* input: query defn. options */ ct_char_t *rsrc_class_name, /* input: resource class name */ mc_vv_usage_t vv_use, /* input: valid values usage */ ct_char_t **names, /* input: attribute, action, */ /* or error names */ ct_uint32_t count /* input: count of names */ ); /* return: 0 or error number */ extern ct_int32_t mc_qdef_actions_bp_1( /* Query Action Definition */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_qdef_actions_rsp_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ mc_qdef_opts_t options, /* input: query defn. options */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_uint32_t qry_class_actns, /* input: query class actions */ ct_char_t **names, /* input: action names */ ct_uint32_t count /* input: count of names */ ); /* return: 0 or error number */ extern ct_int32_t mc_qdef_actions_ap_1( /* Query Action Definition */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_qdef_actions_rsp_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ mc_qdef_opts_t options, /* input: query defn. options */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_uint32_t qry_class_actns, /* input: query class actions */ ct_char_t **names, /* input: action names */ ct_uint32_t count /* input: count of names */ ); /* return: 0 or error number */ extern ct_int32_t mc_qdef_actions_bc_1( /* Query Action Definition */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_qdef_actions_cb_t *qdef_cb, /* input: query defn callback */ void *qdef_cb_arg, /* input: callback argument */ mc_qdef_opts_t options, /* input: query defn. options */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_uint32_t qry_class_actns, /* input: query class actions */ ct_char_t **names, /* input: action names */ ct_uint32_t count /* input: count of names */ ); /* return: 0 or error number */ extern ct_int32_t mc_qdef_actions_ac_1( /* Query Action Definition */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_qdef_actions_cb_t *qdef_cb, /* input: query defn callback */ void *qdef_cb_arg, /* input: callback argument */ mc_qdef_opts_t options, /* input: query defn. options */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_uint32_t qry_class_actns, /* input: query class actions */ ct_char_t **names, /* input: action names */ ct_uint32_t count /* input: count of names */ ); /* return: 0 or error number */ extern ct_int32_t mc_qdef_err_inject_bp_1( /* Query Error Injection Defn. */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_qdef_err_inject_rsp_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ mc_qdef_opts_t options, /* input: query defn. options */ ct_char_t *rsrc_class_name /* input: resource class name */ ); /* return: 0 or error number */ extern ct_int32_t mc_qdef_err_inject_ap_1( /* Query Error Injection Defn. */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_qdef_err_inject_rsp_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ mc_qdef_opts_t options, /* input: query defn. options */ ct_char_t *rsrc_class_name /* input: resource class name */ ); /* return: 0 or error number */ extern ct_int32_t mc_qdef_err_inject_bc_1( /* Query Error Injection Defn. */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_qdef_err_inject_cb_t *qdef_cb, /* input: query defn callback */ void *qdef_cb_arg, /* input: callback argument */ mc_qdef_opts_t options, /* input: query defn. options */ ct_char_t *rsrc_class_name /* input: resource class name */ ); /* return: 0 or error number */ extern ct_int32_t mc_qdef_err_inject_ac_1( /* Query Error Injection Defn. */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_qdef_err_inject_cb_t *qdef_cb, /* input: query defn callback */ void *qdef_cb_arg, /* input: callback argument */ mc_qdef_opts_t options, /* input: query defn. options */ ct_char_t *rsrc_class_name /* input: resource class name */ ); /* return: 0 or error number */ extern ct_int32_t mc_qdef_dependencies_bp_1( /* Query Dependency Definition */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_qdef_rsrc_deps_rsp_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ ct_char_t *rsrc_class_name /* input: resource class name */ ); /* return: 0 or error number */ extern ct_int32_t mc_qdef_dependencies_ap_1( /* Query Dependency Definition */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_qdef_rsrc_deps_rsp_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ ct_char_t *rsrc_class_name /* input: resource class name */ ); /* return: 0 or error number */ extern ct_int32_t mc_qdef_dependencies_bc_1( /* Query Dependency Definition */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_qdef_rsrc_deps_cb_t *qdef_cb, /* input: query defn callback */ void *qdef_cb_arg, /* input: callback argument */ ct_char_t *rsrc_class_name /* input: resource class name */ ); /* return: 0 or error number */ extern ct_int32_t mc_qdef_dependencies_ac_1( /* Query Dependency Definition */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_qdef_rsrc_deps_cb_t *qdef_cb, /* input: query defn callback */ void *qdef_cb_arg, /* input: callback argument */ ct_char_t *rsrc_class_name /* input: resource class name */ ); /* return: 0 or error number */ extern ct_int32_t mc_validate_rsrc_hndl_bp_1( /* Validate Resource Handles */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_rsrc_hndl_rsp_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ ct_resource_handle_t *rsrc_hndl, /* input: resource handle array */ ct_uint32_t rsrc_hndl_cnt /* input: resource handle count */ ); /* return: 0 or error number */ extern ct_int32_t mc_validate_rsrc_hndl_ap_1( /* Validate Resource Handles */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_rsrc_hndl_rsp_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ ct_resource_handle_t *rsrc_hndl, /* input: resource handle array */ ct_uint32_t rsrc_hndl_cnt /* input: resource handle count */ ); /* return: 0 or error number */ extern ct_int32_t mc_validate_rsrc_hndl_bc_1( /* Validate Resource Handles */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_val_rsrc_hndl_cb_t *val_rsrc_hndl_cb, /* response callback */ void *val_rsrc_hndl_cb_arg, /* callback argument */ ct_resource_handle_t *rsrc_hndl, /* input: resource handle array */ ct_uint32_t rsrc_hndl_cnt /* input: resource handle count */ ); /* return: 0 or error number */ extern ct_int32_t mc_validate_rsrc_hndl_ac_1( /* Validate Resource Handles */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_val_rsrc_hndl_cb_t *val_rsrc_hndl_cb, /* response callback */ void *val_rsrc_hndl_cb_arg, /* callback argument */ ct_resource_handle_t *rsrc_hndl, /* input: resource handle array */ ct_uint32_t rsrc_hndl_cnt /* input: resource handle count */ ); /* return: 0 or error number */ extern ct_int32_t mc_define_resource_bp_1( /* Define a Resource */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_define_rsrc_rsp_t **response, /* output: response */ ct_char_t *rsrc_class_name, /* input: resource class name */ mc_attribute_t *attrs, /* input: resource attributes */ ct_uint32_t attr_count, /* input: count of attributes */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_define_resource_ap_1( /* Define a Resource */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_define_rsrc_rsp_t **response, /* output: response */ ct_char_t *rsrc_class_name, /* input: resource class name */ mc_attribute_t *attrs, /* input: resource attributes */ ct_uint32_t attr_count, /* input: count of attributes */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_define_resource_bc_1( /* Define a Resource */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_def_rsrc_cb_t *def_rsrc_cb, /* input: response callback */ void *def_rsrc_cb_arg, /* input: callback argument */ ct_char_t *rsrc_class_name, /* input: resource class name */ mc_attribute_t *attrs, /* input: resource attributes */ ct_uint32_t attr_count, /* input: count of attributes */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_define_resource_ac_1( /* Define a Resource */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_def_rsrc_cb_t *def_rsrc_cb, /* input: response callback */ void *def_rsrc_cb_arg, /* input: callback argument */ ct_char_t *rsrc_class_name, /* input: resource class name */ mc_attribute_t *attrs, /* input: resource attributes */ ct_uint32_t attr_count, /* input: count of attributes */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_undefine_resource_bp_1( /* Undefine a Resource */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_undefine_rsrc_rsp_t **response, /* output: response */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_undefine_resource_ap_1( /* Undefine a Resource */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_undefine_rsrc_rsp_t **response, /* output: response */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_undefine_resource_bc_1( /* Undefine a Resource */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_undef_rsrc_cb_t *undef_rsrc_cb, /* input: response callback */ void *undef_rsrc_cb_arg, ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_undefine_resource_ac_1( /* Undefine a Resource */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_undef_rsrc_cb_t *undef_rsrc_cb, /* input: response callback */ void *undef_rsrc_cb_arg, ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_refresh_config_bp_1( /* Refresh Resource Configuration*/ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_class_name_rsp_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ ct_char_t *rsrc_class_name /* input: resource class name */ ); /* return: 0 or error number */ extern ct_int32_t mc_refresh_config_ap_1( /* Refresh Resource Configuration*/ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_class_name_rsp_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ ct_char_t *rsrc_class_name /* input: resource class name */ ); /* return: 0 or error number */ extern ct_int32_t mc_refresh_config_bc_1( /* Refresh Resource Configuration*/ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_refresh_cfg_cb_t *refresh_cfg_cb, /* input: response callback */ void *refresh_cfg_cb_arg, ct_char_t *rsrc_class_name /* input: resource class name */ ); /* return: 0 or error number */ extern ct_int32_t mc_refresh_config_ac_1( /* Refresh Resource Configuration*/ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_refresh_cfg_cb_t *refresh_cfg_cb, /* input: response callback */ void *refresh_cfg_cb_arg, ct_char_t *rsrc_class_name /* input: resource class name */ ); /* return: 0 or error number */ extern ct_int32_t mc_do_integrity_check_bp_1( /* Do Integrity Check */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_integrity_chk_rsp_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ mc_integrity_check_opts_t options, /* input: options */ rmc_integrity_check_type_t check_type, /* input: integrity check type */ ct_char_t *class_name /* input: resource class name */ ); /* return: 0 or error number */ extern ct_int32_t mc_do_integrity_check_ap_1( /* Do Integrity Check */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_integrity_chk_rsp_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ mc_integrity_check_opts_t options, /* input: options */ rmc_integrity_check_type_t check_type, /* input: integrity check type */ ct_char_t *class_name /* input: resource class name */ ); /* return: 0 or error number */ extern ct_int32_t mc_do_integrity_check_bc_1( /* Do Integrity Check */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_integrity_chk_cb_t *integrity_chk_cb, void *integrity_chk_cb_arg, mc_integrity_check_opts_t options, /* input: options */ rmc_integrity_check_type_t check_type, /* input: integrity check type */ ct_char_t *class_name /* input: resource class name */ ); /* return: 0 or error number */ extern ct_int32_t mc_do_integrity_check_ac_1( /* Do Integrity Check */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_integrity_chk_cb_t *integrity_chk_cb, void *integrity_chk_cb_arg, mc_integrity_check_opts_t options, /* input: options */ rmc_integrity_check_type_t check_type, /* input: integrity check type */ ct_char_t *class_name /* input: resource class name */ ); /* return: 0 or error number */ extern ct_int32_t /* Set Resource Attributes ... */ mc_set_select_bp_1( /* using Attribute Selection */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_set_rsp_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t *select_attrs, /* input: select string */ mc_attribute_t *attrs, /* input: resource attributes */ ct_uint32_t attr_count /* input: count of attributes */ ); /* return: 0 or error number */ extern ct_int32_t /* Set Resource Attributes ... */ mc_set_select_ap_1( /* using Attribute Selection */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_set_rsp_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t *select_attrs, /* input: select string */ mc_attribute_t *attrs, /* input: resource attributes */ ct_uint32_t attr_count /* input: count of attributes */ ); /* return: 0 or error number */ extern ct_int32_t /* Set Resource Attributes ... */ mc_set_select_bc_1( /* using Attribute Selection */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_set_cb_t *set_cb, /* input: response callback */ void *set_cb_arg, /* input: callback argument */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t *select_attrs, /* input: select string */ mc_attribute_t *attrs, /* input: resource attributes */ ct_uint32_t attr_count /* input: count of attributes */ ); /* return: 0 or error number */ extern ct_int32_t /* Set Resource Attributes ... */ mc_set_select_ac_1( /* using Attribute Selection */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_set_cb_t *set_cb, /* input: response callback */ void *set_cb_arg, /* input: callback argument */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t *select_attrs, /* input: select string */ mc_attribute_t *attrs, /* input: resource attributes */ ct_uint32_t attr_count /* input: count of attributes */ ); /* return: 0 or error number */ extern ct_int32_t /* Set Resource Attributes ... */ mc_set_handle_bp_1( /* using Resource Handle */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_set_rsp_t **response, /* output: response */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ mc_attribute_t *attrs, /* input: resource attributes */ ct_uint32_t attr_count /* input: count of attributes */ ); /* return: 0 or error number */ extern ct_int32_t /* Set Resource Attributes ... */ mc_set_handle_ap_1( /* using Resource Handle */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_set_rsp_t **response, /* output: response */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ mc_attribute_t *attrs, /* input: resource attributes */ ct_uint32_t attr_count /* input: count of attributes */ ); /* return: 0 or error number */ extern ct_int32_t /* Set Resource Attributes ... */ mc_set_handle_bc_1( /* using Resource Handle */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_set_cb_t *set_cb, /* input: response callback */ void *set_cb_arg, /* input: callback argument */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ mc_attribute_t *attrs, /* input: resource attributes */ ct_uint32_t attr_count /* input: count of attributes */ ); /* return: 0 or error number */ extern ct_int32_t /* Set Resource Attributes ... */ mc_set_handle_ac_1( /* using Resource Handle */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_set_cb_t *set_cb, /* input: response callback */ void *set_cb_arg, /* input: callback argument */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ mc_attribute_t *attrs, /* input: resource attributes */ ct_uint32_t attr_count /* input: count of attributes */ ); /* return: 0 or error number */ extern ct_int32_t mc_class_set_bp_3( /* Set Resource Class Attributes */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_class_set_rsp_3_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t **pd_names, /* input: peer domain names */ ct_uint32_t name_count, /* input: count of domain names */ mc_attribute_t *attrs, /* input: resource attributes */ ct_uint32_t attr_count /* input: count of attributes */ ); /* return: 0 or error number */ extern ct_int32_t mc_class_set_ap_3( /* Set Resource Class Attributes */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_class_set_rsp_3_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t **pd_names, /* input: peer domain names */ ct_uint32_t name_count, /* input: count of domain names */ mc_attribute_t *attrs, /* input: resource attributes */ ct_uint32_t attr_count /* input: count of attributes */ ); /* return: 0 or error number */ extern ct_int32_t mc_class_set_bc_3( /* Set Resource Class Attributes */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_class_set_cb_3_t *set_cb, /* input: response callback */ void *set_cb_arg, /* input: callback argument */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t **pd_names, /* input: peer domain names */ ct_uint32_t name_count, /* input: count of domain names */ mc_attribute_t *attrs, /* input: resource attributes */ ct_uint32_t attr_count /* input: count of attributes */ ); /* return: 0 or error number */ extern ct_int32_t mc_class_set_ac_3( /* Set Resource Class Attributes */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_class_set_cb_3_t *set_cb, /* input: response callback */ void *set_cb_arg, /* input: callback argument */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t **pd_names, /* input: peer domain names */ ct_uint32_t name_count, /* input: count of domain names */ mc_attribute_t *attrs, /* input: resource attributes */ ct_uint32_t attr_count /* input: count of attributes */ ); /* return: 0 or error number */ extern ct_int32_t mc_class_set_bp_1( /* Set Resource Class Attributes */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_class_set_rsp_1_t **response, /* output: response */ ct_char_t *rsrc_class_name, /* input: resource class name */ mc_attribute_t *attrs, /* input: resource attributes */ ct_uint32_t attr_count /* input: count of attributes */ ); /* return: 0 or error number */ extern ct_int32_t mc_class_set_ap_1( /* Set Resource Class Attributes */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_class_set_rsp_1_t **response, /* output: response */ ct_char_t *rsrc_class_name, /* input: resource class name */ mc_attribute_t *attrs, /* input: resource attributes */ ct_uint32_t attr_count /* input: count of attributes */ ); /* return: 0 or error number */ extern ct_int32_t mc_class_set_bc_1( /* Set Resource Class Attributes */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_class_set_cb_1_t *set_cb, /* input: response callback */ void *set_cb_arg, /* input: callback argument */ ct_char_t *rsrc_class_name, /* input: resource class name */ mc_attribute_t *attrs, /* input: resource attributes */ ct_uint32_t attr_count /* input: count of attributes */ ); /* return: 0 or error number */ extern ct_int32_t mc_class_set_ac_1( /* Set Resource Class Attributes */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_class_set_cb_1_t *set_cb, /* input: response callback */ void *set_cb_arg, /* input: callback argument */ ct_char_t *rsrc_class_name, /* input: resource class name */ mc_attribute_t *attrs, /* input: resource attributes */ ct_uint32_t attr_count /* input: count of attributes */ ); /* return: 0 or error number */ extern ct_int32_t mc_invoke_action_bp_1( /* Invoke Action */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_action_rsp_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_char_t *action_name, /* input: action name */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_invoke_action_ap_1( /* Invoke Action */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_action_rsp_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_char_t *action_name, /* input: action name */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_invoke_action_bc_1( /* Invoke Action */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_action_cb_t *action_cb, /* input: response callback */ void *action_cb_arg, /* input: callback argument */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_char_t *action_name, /* input: action name */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_invoke_action_ac_1( /* Invoke Action */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_action_cb_t *action_cb, /* input: response callback */ void *action_cb_arg, /* input: callback argument */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_char_t *action_name, /* input: action name */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_invoke_class_action_bp_3( /* Invoke Action on a Class */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_class_action_rsp_3_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ ct_char_t *class_name, /* input: resource class name */ ct_char_t *action_name, /* input: action name */ ct_char_t **names, /* input: node or domain names */ ct_uint32_t name_count, /* input: node or domain count */ mc_list_usage_t list_usage, /* input: name list usage */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_invoke_class_action_ap_3( /* Invoke Action on a Class */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_class_action_rsp_3_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ ct_char_t *class_name, /* input: resource class name */ ct_char_t *action_name, /* input: action name */ ct_char_t **names, /* input: node or domain names */ ct_uint32_t name_count, /* input: node or domain count */ mc_list_usage_t list_usage, /* input: name list usage */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_invoke_class_action_bc_3( /* Invoke Action on a Class */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_class_action_cb_3_t *action_cb, /* input: response callback */ void *action_cb_arg, /* input: callback argument */ ct_char_t *class_name, /* input: resource class name */ ct_char_t *action_name, /* input: action name */ ct_char_t **names, /* input: node or domain names */ ct_uint32_t name_count, /* input: node or domain count */ mc_list_usage_t list_usage, /* input: name list usage */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_invoke_class_action_ac_3( /* Invoke Action on a Class */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_class_action_cb_3_t *action_cb, /* input: response callback */ void *action_cb_arg, /* input: callback argument */ ct_char_t *class_name, /* input: resource class name */ ct_char_t *action_name, /* input: action name */ ct_char_t **names, /* input: node or domain names */ ct_uint32_t name_count, /* input: node or domain count */ mc_list_usage_t list_usage, /* input: name list usage */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_invoke_class_action_bp_2( /* Invoke Action on a Class */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_class_action_rsp_2_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ ct_char_t *class_name, /* input: resource class name */ ct_char_t *action_name, /* input: action name */ ct_char_t **node_names, /* input: node names */ ct_uint32_t name_count, /* input: node name count */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_invoke_class_action_ap_2( /* Invoke Action on a Class */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_class_action_rsp_2_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ ct_char_t *class_name, /* input: resource class name */ ct_char_t *action_name, /* input: action name */ ct_char_t **node_names, /* input: node names */ ct_uint32_t name_count, /* input: node name count */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_invoke_class_action_bc_2( /* Invoke Action on a Class */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_class_action_cb_2_t *action_cb, /* input: response callback */ void *action_cb_arg, /* input: callback argument */ ct_char_t *class_name, /* input: resource class name */ ct_char_t *action_name, /* input: action name */ ct_char_t **node_names, /* input: node names */ ct_uint32_t name_count, /* input: node name count */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_invoke_class_action_ac_2( /* Invoke Action on a Class */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_class_action_cb_2_t *action_cb, /* input: response callback */ void *action_cb_arg, /* input: callback argument */ ct_char_t *class_name, /* input: resource class name */ ct_char_t *action_name, /* input: action name */ ct_char_t **node_names, /* input: node names */ ct_uint32_t name_count, /* input: node name count */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_invoke_class_action_bp_1( /* Invoke Action on a Class */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_class_action_rsp_1_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ ct_char_t *class_name, /* input: resource class name */ ct_char_t *action_name, /* input: action name */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_invoke_class_action_ap_1( /* Invoke Action on a Class */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_class_action_rsp_1_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ ct_char_t *class_name, /* input: resource class name */ ct_char_t *action_name, /* input: action name */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_invoke_class_action_bc_1( /* Invoke Action on a Class */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_class_action_cb_1_t *action_cb, /* input: response callback */ void *action_cb_arg, /* input: callback argument */ ct_char_t *class_name, /* input: resource class name */ ct_char_t *action_name, /* input: action name */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_invoke_class_action_ac_1( /* Invoke Action on a Class */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_class_action_cb_1_t *action_cb, /* input: response callback */ void *action_cb_arg, /* input: callback argument */ ct_char_t *class_name, /* input: resource class name */ ct_char_t *action_name, /* input: action name */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_enum_constraints_bp_1( /* Enumerate Constraints */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_constraint_rsp_t **response, /* output: response */ ct_resource_handle_t rsrc_hndl /* input: resource handle */ ); /* return: 0 or error number */ extern ct_int32_t mc_enum_constraints_ap_1( /* Enumerate Constraints */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_constraint_rsp_t **response, /* output: response */ ct_resource_handle_t rsrc_hndl /* input: resource handle */ ); /* return: 0 or error number */ extern ct_int32_t mc_enum_constraints_bc_1( /* Enumerate Constraints */ mc_sess_hndl_t sess_hndl, mc_enum_constraints_cb_t *enum_constraints_cb, void *enum_constraints_cb_arg, ct_resource_handle_t rsrc_hndl ); /* return: 0 or error number */ extern ct_int32_t mc_enum_constraints_ac_1( /* Enumerate Constraints */ mc_cmdgrp_hndl_t cmdgrp_hndl, mc_enum_constraints_cb_t *enum_constraints_cb, void *enum_constraints_cb_arg, ct_resource_handle_t rsrc_hndl ); /* return: 0 or error number */ extern ct_int32_t mc_define_constraint_bp_1( /* Define Constraint */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_rsrc_hndl_rsp_t **response, /* output: response */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ rmc_constraint_t *constraint /* input: constraint */ ); /* return: 0 or error number */ extern ct_int32_t mc_define_constraint_ap_1( /* Define Constraint */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_rsrc_hndl_rsp_t **response, /* output: response */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ rmc_constraint_t *constraint /* input: constraint */ ); /* return: 0 or error number */ extern ct_int32_t mc_define_constraint_bc_1( /* Define Constraint */ mc_sess_hndl_t sess_hndl, mc_define_constraint_cb_t *constraint_cb, void *constraint_cb_arg, ct_resource_handle_t rsrc_hndl, rmc_constraint_t *constraint ); /* return: 0 or error number */ extern ct_int32_t mc_define_constraint_ac_1( /* Define Constraint */ mc_cmdgrp_hndl_t cmdgrp_hndl, mc_define_constraint_cb_t *constraint_cb, void *constraint_cb_arg, ct_resource_handle_t rsrc_hndl, rmc_constraint_t *constraint ); /* return: 0 or error number */ extern ct_int32_t mc_undefine_constraint_bp_1( /* Undefine Constraint */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_rsrc_hndl_rsp_t **response, /* output: response */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_int32_t constraint_id /* input: constraint ID */ ); /* return: 0 or error number */ extern ct_int32_t mc_undefine_constraint_ap_1( /* Undefine Constraint */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_rsrc_hndl_rsp_t **response, /* output: response */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_int32_t constraint_id /* input: constraint ID */ ); /* return: 0 or error number */ extern ct_int32_t mc_undefine_constraint_bc_1( /* Undefine Constraint */ mc_sess_hndl_t sess_hndl, mc_undefine_constraint_cb_t *constraint_cb, void *constraint_cb_arg, ct_resource_handle_t rsrc_hndl, ct_int32_t constraint_id ); /* return: 0 or error number */ extern ct_int32_t mc_undefine_constraint_ac_1( /* Undefine Constraint */ mc_cmdgrp_hndl_t cmdgrp_hndl, mc_undefine_constraint_cb_t *constraint_cb, void *constraint_cb_arg, ct_resource_handle_t rsrc_hndl, ct_int32_t constraint_id ); /* return: 0 or error number */ /*--------------------------------------------------------------------------*/ /* Resource Monitoring and Control (RMC) - */ /* Function Prototypes for Control Command Interfaces */ /*--------------------------------------------------------------------------*/ extern ct_int32_t mc_online_bp_2( /* Bring a Resource On-line */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_rsrc_hndl_rsp_t **response, /* output: response */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_char_t **node_names, /* input: node names */ ct_uint32_t name_count, /* input: node name count */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_online_ap_2( /* Bring a Resource On-line */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_rsrc_hndl_rsp_t **response, /* output: response */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_char_t **node_names, /* input: node names */ ct_uint32_t name_count, /* input: node name count */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_online_bc_2( /* Bring a Resource On-line */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_online_cb_t *online_cb, /* input: response callback */ void *online_cb_arg, /* input: callback argument */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_char_t **node_names, /* input: node names */ ct_uint32_t name_count, /* input: node name count */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_online_ac_2( /* Bring a Resource On-line */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_online_cb_t *online_cb, /* input: response callback */ void *online_cb_arg, /* input: callback argument */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_char_t **node_names, /* input: node names */ ct_uint32_t name_count, /* input: node name count */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_online_bp_1( /* Bring a Resource On-line */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_rsrc_hndl_rsp_t **response, /* output: response */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_uint32_t node_number, /* input: node number */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_online_ap_1( /* Bring a Resource On-line */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_rsrc_hndl_rsp_t **response, /* output: response */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_uint32_t node_number, /* input: node number */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_online_bc_1( /* Bring a Resource On-line */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_online_cb_t *online_cb, /* input: response callback */ void *online_cb_arg, /* input: callback argument */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_uint32_t node_number, /* input: node number */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_online_ac_1( /* Bring a Resource On-line */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_online_cb_t *online_cb, /* input: response callback */ void *online_cb_arg, /* input: callback argument */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_uint32_t node_number, /* input: node number */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_offline_bp_2( /* Take a Resource Off-line */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_rsrc_hndl_rsp_t **response, /* output: response */ mc_offline_opts_t options, /* input: options */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_offline_ap_2( /* Take a Resource Off-line */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_rsrc_hndl_rsp_t **response, /* output: response */ mc_offline_opts_t options, /* input: options */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_offline_bc_2( /* Take a Resource Off-line */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_offline_cb_t *offline_cb, /* input: response callback */ void *offline_cb_arg, /* input: callback argument */ mc_offline_opts_t options, /* input: options */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_offline_ac_2( /* Take a Resource Off-line */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_offline_cb_t *offline_cb, /* input: response callback */ void *offline_cb_arg, /* input: callback argument */ mc_offline_opts_t options, /* input: options */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_offline_bp_1( /* Take a Resource Off-line */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_rsrc_hndl_rsp_t **response, /* output: response */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_offline_ap_1( /* Take a Resource Off-line */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_rsrc_hndl_rsp_t **response, /* output: response */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_offline_bc_1( /* Take a Resource Off-line */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_offline_cb_t *offline_cb, /* input: response callback */ void *offline_cb_arg, /* input: callback argument */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_offline_ac_1( /* Take a Resource Off-line */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_offline_cb_t *offline_cb, /* input: response callback */ void *offline_cb_arg, /* input: callback argument */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_reset_bp_2( /* Force a Resource Off-line */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_rsrc_hndl_rsp_t **response, /* output: response */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_reset_ap_2( /* Force a Resource Off-line */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_rsrc_hndl_rsp_t **response, /* output: response */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_reset_bc_2( /* Force a Resource Off-line */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_reset_cb_t *reset_cb, /* input: response callback */ void *reset_cb_arg, /* input: callback argument */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_reset_ac_2( /* Force a Resource Off-line */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_reset_cb_t *reset_cb, /* input: response callback */ void *reset_cb_arg, /* input: callback argument */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_reset_bp_1( /* Force a Resource Off-line */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_rsrc_hndl_rsp_t **response, /* output: response */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_reset_ap_1( /* Force a Resource Off-line */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_rsrc_hndl_rsp_t **response, /* output: response */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_reset_bc_1( /* Force a Resource Off-line */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_reset_cb_t *reset_cb, /* input: response callback */ void *reset_cb_arg, /* input: callback argument */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_reset_ac_1( /* Force a Resource Off-line */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_reset_cb_t *reset_cb, /* input: response callback */ void *reset_cb_arg, /* input: callback argument */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_constraint_advisory_bp_1( /* Constraint Advisory */ mc_sess_hndl_t sess_hndl, /* i: session handle */ mc_rsrc_hndl_rsp_t **response, /* o: response */ ct_resource_handle_t rsrc_hndl, /* i: resource handle */ rmc_constraint_alternate_resource_t *constraints, /* i: constraints */ ct_uint32_t count /* i: # constraints */ ); /* return: 0 or error number */ extern ct_int32_t mc_constraint_advisory_ap_1( /* Constraint Advisory */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* i: cmdgrp. handle */ mc_rsrc_hndl_rsp_t **response, /* o: response */ ct_resource_handle_t rsrc_hndl, /* i: resource handle */ rmc_constraint_alternate_resource_t *constraints, /* i: constraints */ ct_uint32_t count /* i: # constraints */ ); /* return: 0 or error number */ extern ct_int32_t mc_constraint_advisory_bc_1( /* Constraint Advisory */ mc_sess_hndl_t sess_hndl, /* i: session handle */ mc_advisory_cb_t *advisory_cb, /* i: rsp. callback */ void *advisory_cb_arg, ct_resource_handle_t rsrc_hndl, /* i: resource handle */ rmc_constraint_alternate_resource_t *constraints, /* i: constraints */ ct_uint32_t count /* i: # constraints */ ); /* return: 0 or error number */ extern ct_int32_t mc_constraint_advisory_ac_1( /* Constraint Advisory */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* i: cmdgrp. handle */ mc_advisory_cb_t *advisory_cb, /* i: rsp. callback */ void *advisory_cb_arg, ct_resource_handle_t rsrc_hndl, /* i: resource handle */ rmc_constraint_alternate_resource_t *constraints, /* i: constraints */ ct_uint32_t count /* i: # constraints */ ); /* return: 0 or error number */ extern ct_int32_t mc_get_control_log_bp_1( /* Get Control Log */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_control_log_rsp_t **response, /* output: response */ ct_resource_handle_t rsrc_hndl /* input: resource handle */ ); /* return: 0 or error number */ extern ct_int32_t mc_get_control_log_ap_1( /* Get Control Log */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_control_log_rsp_t **response, /* output: response */ ct_resource_handle_t rsrc_hndl /* input: resource handle */ ); /* return: 0 or error number */ extern ct_int32_t mc_get_control_log_bc_1( /* Get Control Log */ mc_sess_hndl_t sess_hndl, mc_get_control_log_cb_t *get_control_log_cb, void *get_control_log_cb_arg, ct_resource_handle_t rsrc_hndl ); /* return: 0 or error number */ extern ct_int32_t mc_get_control_log_ac_1( /* Get Control Log */ mc_cmdgrp_hndl_t cmdgrp_hndl, mc_get_control_log_cb_t *get_control_log_cb, void *get_control_log_cb_arg, ct_resource_handle_t rsrc_hndl ); /* return: 0 or error number */ /*--------------------------------------------------------------------------*/ /* Resource Monitoring and Control (RMC) - */ /* Function Prototypes for Error Injection Command Interfaces */ /*--------------------------------------------------------------------------*/ extern ct_int32_t mc_inject_error_bp_1( /* Inject an Error into a Resource */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_rsrc_hndl_rsp_t **response, /* output: response */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_char_t *error_name, /* input: error name */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_inject_error_ap_1( /* Inject an Error into a Resource */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_rsrc_hndl_rsp_t **response, /* output: response */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_char_t *error_name, /* input: error name */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_inject_error_bc_1( /* Inject an Error into a Resource */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_inject_error_cb_t *inject_error_cb, void *inject_error_cb_arg, ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_char_t *error_name, /* input: error name */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ extern ct_int32_t mc_inject_error_ac_1( /* Inject an Error into a Resource */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_inject_error_cb_t *inject_error_cb, void *inject_error_cb_arg, ct_resource_handle_t rsrc_hndl, /* input: resource handle */ ct_char_t *error_name, /* input: error name */ ct_structured_data_t *data /* input: data */ ); /* return: 0 or error number */ /*--------------------------------------------------------------------------*/ /* Resource Monitoring and Control (RMC) - */ /* Function Prototypes for Access Control List Interfaces */ /*--------------------------------------------------------------------------*/ extern ct_int32_t /* Get Resource-Specific ACL ... */ mc_get_acl_select_bp_4( /* using Attribute Selection */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_get_acl_rsp_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t *select_attrs /* input: select string */ ); /* return: 0 or error number */ extern ct_int32_t /* Get Resource-Specific ACL ... */ mc_get_acl_select_ap_4( /* using Attribute Selection */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_get_acl_rsp_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t *select_attrs /* input: select string */ ); /* return: 0 or error number */ extern ct_int32_t /* Get Resource-Specific ACL ... */ mc_get_acl_select_bc_4( /* using Attribute Selection */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_get_acl_cb_t *get_acl_cb, /* input: response callback */ void *cb_arg, /* input: callback argument */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t *select_attrs /* input: select string */ ); /* return: 0 or error number */ extern ct_int32_t /* Get Resource-Specific ACL ... */ mc_get_acl_select_ac_4( /* using Attribute Selection */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_get_acl_cb_t *get_acl_cb, /* input: response callback */ void *cb_arg, /* input: callback argument */ ct_char_t *rsrc_class_name, /* input: resource class name */ ct_char_t *select_attrs /* input: select string */ ); /* return: 0 or error number */ extern ct_int32_t /* Get Resource-Specific ACL ... */ mc_get_acl_handle_bp_4( /* using Resource Handle */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_get_acl_rsp_t **response, /* output: response */ ct_resource_handle_t rsrc_hndl /* input: resource handle */ ); /* return: 0 or error number */ extern ct_int32_t /* Get Resource-Specific ACL ... */ mc_get_acl_handle_ap_4( /* using Resource Handle */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_get_acl_rsp_t **response, /* output: response */ ct_resource_handle_t rsrc_hndl /* input: resource handle */ ); /* return: 0 or error number */ extern ct_int32_t /* Get Resource-Specific ACL ... */ mc_get_acl_handle_bc_4( /* using Resource Handle */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_get_acl_cb_t *get_acl_cb, /* input: response callback */ void *cb_arg, /* input: callback argument */ ct_resource_handle_t rsrc_hndl /* input: resource handle */ ); /* return: 0 or error number */ extern ct_int32_t /* Get Resource-Specific ACL ... */ mc_get_acl_handle_ac_4( /* using Resource Handle */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_get_acl_cb_t *get_acl_cb, /* input: response callback */ void *cb_arg, /* input: callback argument */ ct_resource_handle_t rsrc_hndl /* input: resource handle */ ); /* return: 0 or error number */ extern ct_int32_t mc_class_get_acl_bp_4( /* Get Class-Wide ACL */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_class_get_acl_rsp_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ ct_char_t *class_name, /* input: resource class name */ ct_char_t **names, /* input: node or domain names */ ct_uint32_t name_count, /* input: node or domain count */ mc_list_usage_t list_usage, /* input: name list usage */ mc_acl_type_t acl_type /* input: type of ACL */ ); /* return: 0 or error number */ extern ct_int32_t mc_class_get_acl_ap_4( /* Get Class-Wide ACL */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_class_get_acl_rsp_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ ct_char_t *class_name, /* input: resource class name */ ct_char_t **names, /* input: node or domain names */ ct_uint32_t name_count, /* input: node or domain count */ mc_list_usage_t list_usage, /* input: name list usage */ mc_acl_type_t acl_type /* input: type of ACL */ ); /* return: 0 or error number */ extern ct_int32_t mc_class_get_acl_bc_4( /* Get Class-Wide ACL */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_class_get_acl_cb_t *get_acl_cb, /* input: response callback */ void *cb_arg, /* input: callback argument */ ct_char_t *class_name, /* input: resource class name */ ct_char_t **names, /* input: node or domain names */ ct_uint32_t name_count, /* input: node or domain count */ mc_list_usage_t list_usage, /* input: name list usage */ mc_acl_type_t acl_type /* input: type of ACL */ ); /* return: 0 or error number */ extern ct_int32_t mc_class_get_acl_ac_4( /* Get Class-Wide ACL */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_class_get_acl_cb_t *get_acl_cb, /* input: response callback */ void *cb_arg, /* input: callback argument */ ct_char_t *class_name, /* input: resource class name */ ct_char_t **names, /* input: node or domain names */ ct_uint32_t name_count, /* input: node or domain count */ mc_list_usage_t list_usage, /* input: name list usage */ mc_acl_type_t acl_type /* input: type of ACL */ ); /* return: 0 or error number */ extern ct_int32_t /* Set Resource-Specific ACL ... */ mc_set_acl_select_bp_4( /* using Attribute Selection */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_rsrc_hndl_rsp_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ ct_char_t *class_name, /* input: resource class name */ ct_char_t *select_attrs, /* input: select string */ mc_acl_t mc_acl /* input: resource ACL */ ); /* return: 0 or error number */ extern ct_int32_t /* Set Resource-Specific ACL ... */ mc_set_acl_select_ap_4( /* using Attribute Selection */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_rsrc_hndl_rsp_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ ct_char_t *class_name, /* input: resource class name */ ct_char_t *select_attrs, /* input: select string */ mc_acl_t mc_acl /* input: resource ACL */ ); /* return: 0 or error number */ extern ct_int32_t /* Set Resource-Specific ACL ... */ mc_set_acl_select_bc_4( /* using Attribute Selection */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_set_acl_cb_t *set_acl_cb, /* input: response callback */ void *cb_arg, /* input: callback argument */ ct_char_t *class_name, /* input: resource class name */ ct_char_t *select_attrs, /* input: select string */ mc_acl_t mc_acl /* input: resource ACL */ ); /* return: 0 or error number */ extern ct_int32_t /* Set Resource-Specific ACL ... */ mc_set_acl_select_ac_4( /* using Attribute Selection */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_set_acl_cb_t *set_acl_cb, /* input: response callback */ void *cb_arg, /* input: callback argument */ ct_char_t *class_name, /* input: resource class name */ ct_char_t *select_attrs, /* input: select string */ mc_acl_t mc_acl /* input: resource ACL */ ); /* return: 0 or error number */ extern ct_int32_t /* Set Resource-Specific ACL ... */ mc_set_acl_handle_bp_4( /* using Resource Handle */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_rsrc_hndl_rsp_t **response, /* output: response */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ mc_acl_t mc_acl /* input: resource ACL */ ); /* return: 0 or error number */ extern ct_int32_t /* Set Resource-Specific ACL ... */ mc_set_acl_handle_ap_4( /* using Resource Handle */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_rsrc_hndl_rsp_t **response, /* output: response */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ mc_acl_t mc_acl /* input: resource ACL */ ); /* return: 0 or error number */ extern ct_int32_t /* Set Resource-Specific ACL ... */ mc_set_acl_handle_bc_4( /* using Resource Handle */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_set_acl_cb_t *set_acl_cb, /* input: response callback */ void *cb_arg, /* input: callback argument */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ mc_acl_t mc_acl /* input: resource ACL */ ); /* return: 0 or error number */ extern ct_int32_t /* Set Resource-Specific ACL ... */ mc_set_acl_handle_ac_4( /* using Resource Handle */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_set_acl_cb_t *set_acl_cb, /* input: response callback */ void *cb_arg, /* input: callback argument */ ct_resource_handle_t rsrc_hndl, /* input: resource handle */ mc_acl_t mc_acl /* input: resource ACL */ ); /* return: 0 or error number */ extern ct_int32_t mc_class_set_acl_bp_4( /* Set Class-Wide ACL */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_class_set_acl_rsp_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ ct_char_t *class_name, /* input: resource class name */ ct_char_t **names, /* input: node or domain names */ ct_uint32_t name_count, /* input: node or domain count */ mc_list_usage_t list_usage, /* input: name list usage */ mc_acl_t mc_acl /* input: class ACL */ ); /* return: 0 or error number */ extern ct_int32_t mc_class_set_acl_ap_4( /* Set Class-Wide ACL */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_class_set_acl_rsp_t **rsp_array, /* output: array of responses */ ct_uint32_t *array_cnt, /* output: count of responses */ ct_char_t *class_name, /* input: resource class name */ ct_char_t **names, /* input: node or domain names */ ct_uint32_t name_count, /* input: node or domain count */ mc_list_usage_t list_usage, /* input: name list usage */ mc_acl_t mc_acl /* input: class ACL */ ); /* return: 0 or error number */ extern ct_int32_t mc_class_set_acl_bc_4( /* Set Class-Wide ACL */ mc_sess_hndl_t sess_hndl, /* input: session handle */ mc_class_set_acl_cb_t *set_acl_cb, /* input: response callback */ void *cb_arg, /* input: callback argument */ ct_char_t *class_name, /* input: resource class name */ ct_char_t **names, /* input: node or domain names */ ct_uint32_t name_count, /* input: node or domain count */ mc_list_usage_t list_usage, /* input: name list usage */ mc_acl_t mc_acl /* input: class ACL */ ); /* return: 0 or error number */ extern ct_int32_t mc_class_set_acl_ac_4( /* Set Class-Wide ACL */ mc_cmdgrp_hndl_t cmdgrp_hndl, /* input: command group handle */ mc_class_set_acl_cb_t *set_acl_cb, /* input: response callback */ void *cb_arg, /* input: callback argument */ ct_char_t *class_name, /* input: resource class name */ ct_char_t **names, /* input: node or domain names */ ct_uint32_t name_count, /* input: node or domain count */ mc_list_usage_t list_usage, /* input: name list usage */ mc_acl_t mc_acl /* input: class ACL */ ); /* return: 0 or error number */ #ifdef __cplusplus } // end extern "C" #endif /* __cplusplus */ #endif /* _H_CT_MC */ /* * If this header file is included multiple times, data type definitions and * function prototypes are only executed once, thanks to the _H_CT_MC macro. * However, if this header file is included multiple times, the * ct_mc_version.h header file must be included multiple times; this allows * the client to change the MC_VERSION desired. Therefore, it is very * important that the include of ct_mc_version.h by this header file occur * outside of the area protected from multiple execution by the _H_CT_MC * macro. */ #include /* RMCAPI versioning macros */