osaf/libs/agents/saf/imma/imma_oi_api.c | 39 +++++++- osaf/libs/agents/saf/imma/imma_om_api.c | 113 +++++++++++++++++++++- osaf/libs/saf/include/saImmOi_A_2_11.h | 2 + osaf/libs/saf/include/saImmOi_A_2_14.h | 122 +++++++++++++++++++++++ osaf/libs/saf/include/saImmOm_A_2_13.h | 2 + osaf/libs/saf/include/saImmOm_A_2_14.h | 166 ++++++++++++++++++++++++++++++++ 6 files changed, 441 insertions(+), 3 deletions(-)
This patch only contains the new interface (new include files) and stubbed implementations for that new interface, in imma_m_api.c and and imma_oi_api.c. Implementation of the new interface will be provided in a separate patch for this same ticket. The interface patch should compile , but needs the patch for #625 (osaf: Support constant strings in SAF APIs) to be applied first. diff --git a/osaf/libs/agents/saf/imma/imma_oi_api.c b/osaf/libs/agents/saf/imma/imma_oi_api.c --- a/osaf/libs/agents/saf/imma/imma_oi_api.c +++ b/osaf/libs/agents/saf/imma/imma_oi_api.c @@ -68,6 +68,13 @@ static int imma_oi_resurrect(IMMA_CB *cb Notes : ******************************************************************************/ + +SaAisErrorT saImmOiInitialize_o2(SaImmOiHandleT *immOiHandle, + const SaImmOiCallbacksT_o2 *immOiCallbacks, SaVersionT *inout_version) +{ + return SA_AIS_ERR_NOT_SUPPORTED; +} + SaAisErrorT saImmOiInitialize_2(SaImmOiHandleT *immOiHandle, const SaImmOiCallbacksT_2 *immOiCallbacks, SaVersionT *inout_version) { @@ -1888,6 +1895,12 @@ SaAisErrorT saImmOiClassImplementerRelea Return Values : Refer to SAI-AIS specification for various return values. ******************************************************************************/ + +SaAisErrorT saImmOiObjectImplementerSet_o2(SaImmOiHandleT immOiHandle, SaConstStringT objectName, SaImmScopeT scope) +{ + return SA_AIS_ERR_NOT_SUPPORTED; +} + SaAisErrorT saImmOiObjectImplementerSet(SaImmOiHandleT immOiHandle, const SaNameT *objectName, SaImmScopeT scope) { SaAisErrorT rc = SA_AIS_OK; @@ -2077,6 +2090,12 @@ SaAisErrorT saImmOiObjectImplementerSet( Return Values : Refer to SAI-AIS specification for various return values. ******************************************************************************/ + +SaAisErrorT saImmOiObjectImplementerRelease_o2(SaImmOiHandleT immOiHandle, SaConstStringT objectName, SaImmScopeT scope) +{ + return SA_AIS_ERR_NOT_SUPPORTED; +} + SaAisErrorT saImmOiObjectImplementerRelease(SaImmOiHandleT immOiHandle, const SaNameT *objectName, SaImmScopeT scope) { SaAisErrorT rc = SA_AIS_OK; @@ -2247,6 +2266,12 @@ SaAisErrorT saImmOiObjectImplementerRele return rc; } +SaAisErrorT saImmOiRtObjectUpdate_o2(SaImmOiHandleT immOiHandle, + SaConstStringT objectName, const SaImmAttrModificationT_2 **attrMods) +{ + return SA_AIS_ERR_NOT_SUPPORTED; +} + SaAisErrorT saImmOiRtObjectUpdate_2(SaImmOiHandleT immOiHandle, const SaNameT *objectName, const SaImmAttrModificationT_2 **attrMods) { @@ -2552,7 +2577,14 @@ SaAisErrorT saImmOiRtObjectUpdate_2(SaIm return rc; } -extern SaAisErrorT saImmOiRtObjectCreate_2(SaImmOiHandleT immOiHandle, +SaAisErrorT saImmOiRtObjectCreate_o2(SaImmOiHandleT immOiHandle, + const SaImmClassNameT className, + SaConstStringT objectName, const SaImmAttrValuesT_2 **attrValues) +{ + return SA_AIS_ERR_NOT_SUPPORTED; +} + +SaAisErrorT saImmOiRtObjectCreate_2(SaImmOiHandleT immOiHandle, const SaImmClassNameT className, const SaNameT *parentName, const SaImmAttrValuesT_2 **attrValues) { @@ -2844,6 +2876,11 @@ extern SaAisErrorT saImmOiRtObjectCreate return rc; } +SaAisErrorT saImmOiRtObjectDelete_o2(SaImmOiHandleT immOiHandle, SaConstStringT objectName) +{ + return SA_AIS_ERR_NOT_SUPPORTED; +} + SaAisErrorT saImmOiRtObjectDelete(SaImmOiHandleT immOiHandle, const SaNameT *objectName) { SaAisErrorT rc = SA_AIS_OK; diff --git a/osaf/libs/agents/saf/imma/imma_om_api.c b/osaf/libs/agents/saf/imma/imma_om_api.c --- a/osaf/libs/agents/saf/imma/imma_om_api.c +++ b/osaf/libs/agents/saf/imma/imma_om_api.c @@ -1531,6 +1531,13 @@ SaAisErrorT saImmOmCcbInitialize(SaImmAd Return Values : Refer to SAI-AIS specification for various return values. ******************************************************************************/ +SaAisErrorT saImmOmCcbObjectCreate_o2(SaImmCcbHandleT ccbHandle, + const SaImmClassNameT className, + const SaConstStringT objectName, const SaImmAttrValuesT_2 **attrValues) +{ + return SA_AIS_ERR_NOT_SUPPORTED; +} + SaAisErrorT saImmOmCcbObjectCreate_2(SaImmCcbHandleT ccbHandle, const SaImmClassNameT className, const SaNameT *parentName, const SaImmAttrValuesT_2 **attrValues) @@ -2054,6 +2061,12 @@ SaAisErrorT saImmOmCcbObjectCreate_2(SaI Return Values : Refer to SAI-AIS specification for various return values. ******************************************************************************/ +SaAisErrorT saImmOmCcbObjectModify_o2(SaImmCcbHandleT ccbHandle, + SaConstStringT objectName, const SaImmAttrModificationT_2 **attrMods) +{ + return SA_AIS_ERR_NOT_SUPPORTED; +} + SaAisErrorT saImmOmCcbObjectModify_2(SaImmCcbHandleT ccbHandle, const SaNameT *objectName, const SaImmAttrModificationT_2 **attrMods) { @@ -2510,6 +2523,11 @@ SaAisErrorT saImmOmCcbObjectModify_2(SaI Return Values : Refer to SAI-AIS specification for various return values. ******************************************************************************/ +SaAisErrorT saImmOmCcbObjectDelete_o2(SaImmCcbHandleT ccbHandle, SaConstStringT objectName) +{ + return SA_AIS_ERR_NOT_SUPPORTED; +} + SaAisErrorT saImmOmCcbObjectDelete(SaImmCcbHandleT ccbHandle, const SaNameT *objectName) { SaAisErrorT rc = SA_AIS_OK; @@ -3259,7 +3277,7 @@ SaAisErrorT saImmOmCcbApply(SaImmCcbHand } /**************************************************************************** - Name : saImmOmAdminOperationInvoke_2/_o2 + Name : saImmOmAdminOperationInvoke_2/_o2/_o214 Description : Invoke an Administrative Operation on an object in the IMM. This a blocking syncronous call. @@ -3315,6 +3333,18 @@ SaAisErrorT saImmOmAdminOperationInvoke_ operationId, params, operationReturnValue, timeout, returnParams, true); } +SaAisErrorT saImmOmAdminOperationInvoke_o214(SaImmAdminOwnerHandleT ownerHandle, + SaConstStringT objectName, + SaImmContinuationIdT continuationId, + SaImmAdminOperationIdT operationId, + const SaImmAdminOperationParamsT_2 **params, + SaAisErrorT *operationReturnValue, + SaTimeT timeout, + SaImmAdminOperationParamsT_2 ***returnParams) +{ + return SA_AIS_ERR_NOT_SUPPORTED; +} + static SaAisErrorT admin_op_invoke_common( SaImmAdminOwnerHandleT ownerHandle, const SaNameT *objectName, @@ -3787,7 +3817,7 @@ static int push_async_adm_op_continuatio } /**************************************************************************** - Name : saImmOmAdminOperationInvokeAsync/_2 + Name : saImmOmAdminOperationInvokeAsync/_2/_o2 Description : Invoke an Administrative Operation on an object in the IMM. This an asynchronous non-blocking call. @@ -3804,6 +3834,16 @@ static int push_async_adm_op_continuatio Notes : ******************************************************************************/ +SaAisErrorT saImmOmAdminOperationInvokeAsync_o2(SaImmAdminOwnerHandleT ownerHandle, + SaInvocationT userInvocation, + SaConstStringT objectName, + SaImmContinuationIdT continuationId, + SaImmAdminOperationIdT operationId, + const SaImmAdminOperationParamsT_2 **params) +{ + return SA_AIS_ERR_NOT_SUPPORTED; +} + SaAisErrorT saImmOmAdminOperationInvokeAsync_2(SaImmAdminOwnerHandleT ownerHandle, SaInvocationT userInvocation, const SaNameT *objectName, @@ -4133,6 +4173,17 @@ SaAisErrorT saImmOmAdminOperationContinu return SA_AIS_ERR_NOT_SUPPORTED; } +SaAisErrorT saImmOmAdminOperationContinue_o214(SaImmAdminOwnerHandleT ownerHandle, + SaConstStringT objectName, + SaImmContinuationIdT continuationId, + SaAisErrorT *operationReturnValue, + SaImmAdminOperationParamsT_2 ***returnParams) +{ + TRACE_2("saImmOmAdminOperationContinue_o214 not implemented use " + "saImmOmAdminOperationContinueAsync instead"); + return SA_AIS_ERR_NOT_SUPPORTED; +} + SaAisErrorT saImmOmAdminOperationContinueAsync(SaImmAdminOwnerHandleT ownerHandle, SaInvocationT invocation, @@ -4142,6 +4193,14 @@ SaAisErrorT saImmOmAdminOperationContinu return SA_AIS_ERR_NOT_SUPPORTED; } +SaAisErrorT saImmOmAdminOperationContinueAsync_o2(SaImmAdminOwnerHandleT ownerHandle, + SaInvocationT invocation, + SaConstStringT objectName, SaImmContinuationIdT continuationId) +{ + TRACE_2("saImmOmAdminOperationContinueAsync_o2 not yet implemented"); + return SA_AIS_ERR_NOT_SUPPORTED; +} + SaAisErrorT saImmOmAdminOperationContinuationClear(SaImmAdminOwnerHandleT ownerHandle, const SaNameT *objectName, SaImmContinuationIdT continuationId) { @@ -4149,6 +4208,13 @@ SaAisErrorT saImmOmAdminOperationContinu return SA_AIS_ERR_NOT_SUPPORTED; } +SaAisErrorT saImmOmAdminOperationContinuationClear_o2(SaImmAdminOwnerHandleT ownerHandle, + SaConstStringT objectName, SaImmContinuationIdT continuationId) +{ + TRACE_2("saImmOmAdminOperationContinuationClear not yet implemented"); + return SA_AIS_ERR_NOT_SUPPORTED; +} + SaAisErrorT saImmOmClassCreate_2(SaImmHandleT immHandle, const SaImmClassNameT className, @@ -5225,6 +5291,13 @@ SaAisErrorT saImmOmAccessorFinalize(SaIm return rc; } +SaAisErrorT saImmOmAccessorGet_o2(SaImmAccessorHandleT accessorHandle, + SaConstStringT objectName, + const SaImmAttrNameT *attributeNames, SaImmAttrValuesT_2 ***attributes) +{ + return SA_AIS_ERR_NOT_SUPPORTED; +} + SaAisErrorT saImmOmAccessorGet_2(SaImmAccessorHandleT accessorHandle, const SaNameT *objectName, const SaImmAttrNameT *attributeNames, SaImmAttrValuesT_2 ***attributes) @@ -6016,6 +6089,19 @@ SaAisErrorT immsv_finalize_sync(SaImmHan return rc; } + + +SaAisErrorT saImmOmSearchInitialize_o2(SaImmHandleT immHandle, + SaConstStringT rootName, + SaImmScopeT scope, + SaImmSearchOptionsT searchOptions, + const SaImmSearchParametersT_2 *searchParam, + const SaImmAttrNameT *attributeNames, SaImmSearchHandleT *searchHandle) +{ + TRACE_2("saImmOmSearchInitialize_o2 not yet implemented"); + return SA_AIS_ERR_NOT_SUPPORTED; +} + SaAisErrorT saImmOmSearchInitialize_2(SaImmHandleT immHandle, const SaNameT *rootName, SaImmScopeT scope, @@ -6419,6 +6505,11 @@ lock_fail: return rc; } +SaAisErrorT saImmOmSearchNext_o2(SaImmSearchHandleT searchHandle, SaStringT *objectName, SaImmAttrValuesT_2 ***attributes) +{ + return SA_AIS_ERR_NOT_SUPPORTED; +} + SaAisErrorT saImmOmSearchNext_2(SaImmSearchHandleT searchHandle, SaNameT *objectName, SaImmAttrValuesT_2 ***attributes) { SaAisErrorT error = SA_AIS_OK; @@ -6911,6 +7002,12 @@ SaAisErrorT saImmOmSearchFinalize(SaImmS return error; } +SaAisErrorT saImmOmAdminOwnerSet_o2(SaImmAdminOwnerHandleT adminOwnerHandle, + const SaConstStringT *objectNames, SaImmScopeT scope) +{ + return SA_AIS_ERR_NOT_SUPPORTED; +} + SaAisErrorT saImmOmAdminOwnerSet(SaImmAdminOwnerHandleT adminOwnerHandle, const SaNameT **objectNames, SaImmScopeT scope) { @@ -7120,6 +7217,13 @@ SaAisErrorT saImmOmAdminOwnerSet(SaImmAd return rc; } +SaAisErrorT saImmOmAdminOwnerRelease_o2(SaImmAdminOwnerHandleT adminOwnerHandle, + const SaConstStringT *objectNames, SaImmScopeT scope) +{ + return SA_AIS_ERR_NOT_SUPPORTED; +} + + SaAisErrorT saImmOmAdminOwnerRelease(SaImmAdminOwnerHandleT adminOwnerHandle, const SaNameT **objectNames, SaImmScopeT scope) { @@ -7323,6 +7427,11 @@ SaAisErrorT saImmOmAdminOwnerRelease(SaI return rc; } +SaAisErrorT saImmOmAdminOwnerClear_o2(SaImmHandleT immHandle, const SaConstStringT *objectNames, SaImmScopeT scope) +{ + return SA_AIS_ERR_NOT_SUPPORTED; +} + SaAisErrorT saImmOmAdminOwnerClear(SaImmHandleT immHandle, const SaNameT **objectNames, SaImmScopeT scope) { SaAisErrorT rc = SA_AIS_OK; diff --git a/osaf/libs/saf/include/saImmOi_A_2_11.h b/osaf/libs/saf/include/saImmOi_A_2_11.h --- a/osaf/libs/saf/include/saImmOi_A_2_11.h +++ b/osaf/libs/saf/include/saImmOi_A_2_11.h @@ -68,4 +68,6 @@ extern "C" { } #endif +#include <saImmOi_A_2_14.h> + #endif /* _SA_IMM_OI_A_2_11_H */ diff --git a/osaf/libs/saf/include/saImmOi_A_2_14.h b/osaf/libs/saf/include/saImmOi_A_2_14.h new file mode 100644 --- /dev/null +++ b/osaf/libs/saf/include/saImmOi_A_2_14.h @@ -0,0 +1,122 @@ +/* -*- OpenSAF -*- + * + * (C) Copyright 2014 The OpenSAF Foundation + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. This file and program are licensed + * under the GNU Lesser General Public License Version 2.1, February 1999. + * The complete license can be accessed from the following location: + * http://opensource.org/licenses/lgpl-license.php + * See the Copying file included with the OpenSAF distribution for full + * licensing terms. + * + * Author(s): Ericsson AB + */ + +/* + * DESCRIPTION: + * This file provides the suggested additions to the C language binding for + * the Service Availability(TM) Forum Information Model Management Service (IMM). + * It contains only the prototypes and type definitions that are part of this + * proposed addition. + * These additions are currently NON STANDARD. But the intention is to get these + * additions approved formally by SAF in the future. + * + * For detailed explanation of the new API, see osaf/services/saf/immsv/README. + */ + + +#ifndef _SA_IMM_OI_A_2_14_H +#define _SA_IMM_OI_A_2_14_H + +#ifdef __cplusplus +extern "C" { +#endif + + /* From 5.5.4 */ + typedef SaAisErrorT + (*SaImmOiRtAttrUpdateCallbackT_o2) (SaImmOiHandleT immOiHandle, + SaConstStringT objectName, const SaImmAttrNameT *attributeNames); + /* From 5.6.1 */ + typedef SaAisErrorT + (*SaImmOiCcbObjectCreateCallbackT_o2) (SaImmOiHandleT immOiHandle, + SaImmOiCcbIdT ccbId, + const SaImmClassNameT className, + const SaNameT *parentName, const SaImmAttrValuesT_2 **attr); + + /* From 5.6.2 */ + typedef SaAisErrorT + (*SaImmOiCcbObjectDeleteCallbackT_o2) (SaImmOiHandleT immOiHandle, + SaImmOiCcbIdT ccbId, const SaNameT *objectName); + /* From 5.6.3 */ + typedef SaAisErrorT + (*SaImmOiCcbObjectModifyCallbackT_o2) (SaImmOiHandleT immOiHandle, + SaImmOiCcbIdT ccbId, + const SaNameT *objectName, const SaImmAttrModificationT_2 **attrMods); + + /* From 5.7.1 */ + typedef void + (*SaImmOiAdminOperationCallbackT_o2) (SaImmOiHandleT immOiHandle, + SaInvocationT invocation, + const SaNameT *objectName, + SaImmAdminOperationIdT operationId, + const SaImmAdminOperationParamsT_2 **params); + + /* SaImmOiCallbacksT_2 */ + typedef struct { + SaImmOiAdminOperationCallbackT_o2 saImmOiAdminOperationCallback; + SaImmOiCcbAbortCallbackT saImmOiCcbAbortCallback; + SaImmOiCcbApplyCallbackT saImmOiCcbApplyCallback; + SaImmOiCcbCompletedCallbackT saImmOiCcbCompletedCallback; + SaImmOiCcbObjectCreateCallbackT_o2 saImmOiCcbObjectCreateCallback; + SaImmOiCcbObjectDeleteCallbackT_o2 saImmOiCcbObjectDeleteCallback; + SaImmOiCcbObjectModifyCallbackT_o2 saImmOiCcbObjectModifyCallback; + SaImmOiRtAttrUpdateCallbackT_o2 saImmOiRtAttrUpdateCallback; + } SaImmOiCallbacksT_o2; + + + /* 5.3.1 saImmOiInitialize() */ + extern SaAisErrorT + saImmOiInitialize_o2(SaImmOiHandleT *immOiHandle, + const SaImmOiCallbacksT_o2 *immOiCallbacks, SaVersionT *version); + + + extern SaAisErrorT + saImmOiObjectImplementerSet_o2(SaImmOiHandleT immOiHandle, SaConstStringT objectName, SaImmScopeT scope); + + /* 5.4.6 saImmOiObjectImplementerRelease() */ + + extern SaAisErrorT + saImmOiObjectImplementerRelease_o2(SaImmOiHandleT immOiHandle, SaConstStringT objectName, SaImmScopeT scope); + + + /* + * + * Runtime Object Management Routines + * + */ + + /* 5.5.1 saImmOiRtObjectCreate() */ + + extern SaAisErrorT + saImmOiRtObjectCreate_o2(SaImmOiHandleT immOiHandle, + const SaImmClassNameT className, + SaConstStringT objectName, const SaImmAttrValuesT_2 **attrValues); + + /* 5.5.2 saImmOiRtObjectDelete() */ + + extern SaAisErrorT + saImmOiRtObjectDelete_o2(SaImmOiHandleT immOiHandle, SaConstStringT objectName); + + /* 5.5.3 saImmOiRtObjectUpdate() */ + + extern SaAisErrorT + saImmOiRtObjectUpdate_o2(SaImmOiHandleT immOiHandle, + SaConstStringT objectName, const SaImmAttrModificationT_2 **attrMods); + +#ifdef __cplusplus +} +#endif + +#endif /* _SA_IMM_OI_A_2_14_H */ diff --git a/osaf/libs/saf/include/saImmOm_A_2_13.h b/osaf/libs/saf/include/saImmOm_A_2_13.h --- a/osaf/libs/saf/include/saImmOm_A_2_13.h +++ b/osaf/libs/saf/include/saImmOm_A_2_13.h @@ -71,4 +71,6 @@ extern "C" { } #endif +#include <saImmOm_A_2_14.h> + #endif /* _SA_IMM_OM_A_2_13_H */ diff --git a/osaf/libs/saf/include/saImmOm_A_2_14.h b/osaf/libs/saf/include/saImmOm_A_2_14.h new file mode 100644 --- /dev/null +++ b/osaf/libs/saf/include/saImmOm_A_2_14.h @@ -0,0 +1,166 @@ +/* -*- OpenSAF -*- + * + * (C) Copyright 2014 The OpenSAF Foundation + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. This file and program are licensed + * under the GNU Lesser General Public License Version 2.1, February 1999. + * The complete license can be accessed from the following location: + * http://opensource.org/licenses/lgpl-license.php + * See the Copying file included with the OpenSAF distribution for full + * licensing terms. + * + * Author(s): Ericsson AB + */ + +/* + * DESCRIPTION: + * This file provides the suggested additions to the C language binding for + * the Service Availability(TM) Forum Information Model Management Service (IMM). + * It contains only the prototypes and type definitions that are part of this + * proposed addition. + * These additions are currently NON STANDARD. But the intention is to get these + * additions approved formally by SAF in the future. + * + * For detailed explanation of the new API, see osaf/services/saf/immsv/README. + */ + + +#ifndef _SA_IMM_OM_A_2_14_H +#define _SA_IMM_OM_A_2_14_H + +#ifdef __cplusplus +extern "C" { +#endif + + /* 4.5.1 saImmOmSearchInitialize() */ + extern SaAisErrorT + saImmOmSearchInitialize_o2(SaImmHandleT immHandle, + SaConstStringT rootName, + SaImmScopeT scope, + SaImmSearchOptionsT searchOptions, + const SaImmSearchParametersT_2 *searchParam, + const SaImmAttrNameT *attributeNames, SaImmSearchHandleT *searchHandle); + + /* 4.5.2 saImmOmSearchNext() */ + extern SaAisErrorT + saImmOmSearchNext_o2(SaImmSearchHandleT searchHandle, SaStringT *objectName, SaImmAttrValuesT_2 ***attributes); + + /* 4.6.2 saImmOmAccessorGet() */ + extern SaAisErrorT + saImmOmAccessorGet_o2(SaImmAccessorHandleT accessorHandle, + SaConstStringT objectName, + const SaImmAttrNameT *attributeNames, SaImmAttrValuesT_2 ***attributes); + + + + /* 4.7.2 saImmOmAdminOwnerSet() */ + + extern SaAisErrorT + saImmOmAdminOwnerSet_o2(SaImmAdminOwnerHandleT ownerHandle, const SaConstStringT *objectNames, SaImmScopeT scope); + + /* 4.7.3 saImmOmAdminOwnerRelease() */ + + extern SaAisErrorT + saImmOmAdminOwnerRelease_o2(SaImmAdminOwnerHandleT ownerHandle, const SaConstStringT *objectNames, SaImmScopeT scope); + + /* 4.7.5 saImmOmAdminOwnerClear() */ + + extern SaAisErrorT + saImmOmAdminOwnerClear_o2(SaImmHandleT immHandle, const SaConstStringT *objectNames, SaImmScopeT scope); + + + + /* 4.8.2 saImmOmCcbObjectCreate() */ + extern SaAisErrorT + saImmOmCcbObjectCreate_o2(SaImmCcbHandleT ccbHandle, + const SaImmClassNameT className, + SaConstStringT objectName, const SaImmAttrValuesT_2 **attrValues); + + /* 4.8.3 saImmOmCcbObjectDelete() */ + + extern SaAisErrorT + saImmOmCcbObjectDelete_o2(SaImmCcbHandleT ccbHandle, SaConstStringT objectName); + + /* 4.8.4 saImmOmCcbObjectModify() */ + extern SaAisErrorT + saImmOmCcbObjectModify_o2(SaImmCcbHandleT ccbHandle, + SaConstStringT objectName, const SaImmAttrModificationT_2 **attrMods); + + + /* 4.9.1 saImmOmAdminOperationInvoke(), + saImmOmAdminOperationInvokeAsync() + See http://devel.opensaf.org/ticket/1764 */ + extern SaAisErrorT + saImmOmAdminOperationInvoke_o214( + SaImmAdminOwnerHandleT ownerHandle, + SaConstStringT objectName, + SaImmContinuationIdT continuationId, + SaImmAdminOperationIdT operationId, + const SaImmAdminOperationParamsT_2 **params, + SaAisErrorT *operationReturnValue, + SaTimeT timeout, + SaImmAdminOperationParamsT_2 ***returnParams); + + extern SaAisErrorT + saImmOmAdminOperationInvokeAsync_o2(SaImmAdminOwnerHandleT ownerHandle, + SaInvocationT invocation, + SaConstStringT objectName, + SaImmContinuationIdT continuationId, + SaImmAdminOperationIdT operationId, + const SaImmAdminOperationParamsT_2 **params); + + /* 4.9.3 saImmOmAdminOperationContinue(), + saImmOmAdminOperationContinueAsync() */ + + /* This is not implemented in OpenSAF, but define the API anyway for completenes. + See http://devel.opensaf.org/ticket/1764 */ + + extern SaAisErrorT + saImmOmAdminOperationContinue_o214( + SaImmAdminOwnerHandleT ownerHandle, + SaConstStringT objectName, + SaImmContinuationIdT continuationId, + SaAisErrorT *operationReturnValue, + SaImmAdminOperationParamsT_2 ***returnParams); + + extern SaAisErrorT + saImmOmAdminOperationContinueAsync_o2(SaImmAdminOwnerHandleT ownerHandle, + SaInvocationT invocation, + SaConstStringT objectName, SaImmContinuationIdT continuationId); + + /* 4.9.4 saImmOmAdminOperationContinueClear() */ + + extern SaAisErrorT + saImmOmAdminOperationContinuationClear_o2(SaImmAdminOwnerHandleT ownerHandle, + SaConstStringT objectName, SaImmContinuationIdT continuationId); + + + /* 4.2.5 SaImmAttrFlagsT */ + /* +#define SA_IMM_ATTR_MULTI_VALUE 0x00000001 +#define SA_IMM_ATTR_RDN 0x00000002 +#define SA_IMM_ATTR_CONFIG 0x00000100 +#define SA_IMM_ATTR_WRITABLE 0x00000200 +#define SA_IMM_ATTR_INITIALIZED 0x00000400 +#define SA_IMM_ATTR_RUNTIME 0x00010000 +#define SA_IMM_ATTR_PERSISTENT 0x00020000 +#define SA_IMM_ATTR_CACHED 0x00040000 +#define SA_IMM_ATTR_NO_DUPLICATES 0x0000000001000000 / * See: http://devel.opensaf.org/ticket/1545 + Supported in OpenSaf 4.3 * / +#define SA_IMM_ATTR_NOTIFY 0x0000000002000000 / * See: http://devel.opensaf.org/ticket/2883 + Supported in OpenSaf 4.3 * / +#define SA_IMM_ATTR_NO_DANGLING 0x0000000004000000 / * See: https://sourceforge.net/p/opensaf/tickets/49/ + Supported in OpenSaf 4.4 * / + */ + +#define SA_IMM_ATTR_DN 0x0000000008000000 /* See: https://sourceforge.net/p/opensaf/tickets/643 + Supported in OpenSaf 4.5 */ + + +#ifdef __cplusplus +} +#endif + +#endif /* _SA_IMM_OM_A_2_14_H */ ------------------------------------------------------------------------------ Learn Graph Databases - Download FREE O'Reilly Book "Graph Databases" is the definitive new guide to graph databases and their applications. Written by three acclaimed leaders in the field, this first edition is now available. Download your free book today! http://p.sf.net/sfu/13534_NeoTech _______________________________________________ Opensaf-devel mailing list Opensaf-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/opensaf-devel