Send Linux-ha-cvs mailing list submissions to
[email protected]
To subscribe or unsubscribe via the World Wide Web, visit
http://lists.community.tummy.com/mailman/listinfo/linux-ha-cvs
or, via email, send a message with subject or body 'help' to
[EMAIL PROTECTED]
You can reach the person managing the list at
[EMAIL PROTECTED]
When replying, please edit your Subject line so it is more specific
than "Re: Contents of Linux-ha-cvs digest..."
Today's Topics:
1. Linux-HA CVS: cim by panjiam from
([email protected])
2. Linux-HA CVS: cim by panjiam from
([email protected])
----------------------------------------------------------------------
Message: 1
Date: Wed, 21 Dec 2005 03:15:45 -0700 (MST)
From: [email protected]
Subject: [Linux-ha-cvs] Linux-HA CVS: cim by panjiam from
To: [EMAIL PROTECTED]
Message-ID: <[EMAIL PROTECTED]>
linux-ha CVS committal
Author : panjiam
Host :
Project : linux-ha
Module : cim
Dir : linux-ha/cim/mof
Modified Files:
LinuxHA.reg
Log Message:
added register information for new added classes
===================================================================
RCS file: /home/cvs/linux-ha/linux-ha/cim/mof/LinuxHA.reg,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -3 -r1.3 -r1.4
--- LinuxHA.reg 31 Oct 2005 10:27:13 -0000 1.3
+++ LinuxHA.reg 21 Dec 2005 10:15:44 -0000 1.4
@@ -1,27 +1,39 @@
# Classname Namespace ProviderName ProviderModule ProviderTypes ...
-# LinuxHA Cluster
-LinuxHA_Cluster root/cimv2 LinuxHA_ClusterProvider cmpiLinuxHA_ClusterProvider
instance
-# LinuxHA Cluster Node
-LinuxHA_ClusterNode root/cimv2 LinuxHA_ClusterNodeProvider
cmpiLinuxHA_ClusterNodeProvider instance
-# Cluster Resource
-LinuxHA_ClusterResource root/cimv2 LinuxHA_ClusterResourceProvider
cmpiLinuxHA_ClusterResourceProvider instance
-# Cluster Resrouce Group
-LinuxHA_ClusterResourceGroup root/cimv2 LinuxHA_ClusterResourceGroupProvider
cmpiLinuxHA_ClusterResourceGroupProvider instance
+# HA Cluster
+HA_Cluster root/cimv2 HA_ClusterProvider HA_ClusterProvider instance
+# HA Cluster Node
+HA_ClusterNode root/cimv2 HA_ClusterNodeProvider HA_ClusterNodeProvider
instance
+#Primitve Resource
+HA_Resource root/cimv2 HA_PrimitiveResourceProvider
HA_PrimitiveResourceProvider instance
+#Resource Group
+HA_ResourceGroup root/cimv2 HA_ResourceGroupProvider HA_ResourceGroupProvider
instance
+# Resource Clone
+HA_ResourceClone root/cimv2 HA_ResourceCloneProvider HA_ResourceCloneProvider
instance
+# Master Slave Clone
+HA_MasterSlaveResource root/cimv2 HA_MasterSlaveResourceProvider
HA_MasterSlaveResourceProvider instance
+# Resource instance
+HA_InstanceAttributes root/cimv2 HA_InstanceAttributesProvider
HA_InstanceAttributesProvider instance
# Software
-LinuxHA_SoftwareIdentity root/cimv2 LinuxHA_SoftwareIdentityProvider
cmpiLinuxHA_SoftwareIdentityProvider instance
-# Resource Instance's Attribute
-LinuxHA_ClusterResourceInstanceAttr root/cimv2
LinuxHA_ClusterResourceInstanceAttrProvider
cmpiLinuxHA_ClusterResourceInstanceAttrProvider instance
+HA_SoftwareIdentity root/cimv2 HA_SoftwareIdentityProvider
HA_SoftwareIdentityProvider instance
+# LocationConstraint
+HA_LocationConstraint root/cimv2 HA_LocationConstraintProvider
HA_LocationConstraintProvider instance
+# ColocationConstraint
+HA_ColocationConstraint root/cimv2 HA_ColocationConstraintProvider
HA_ColocationConstraintProvider instance
+# OrderConstraint
+HA_OrderConstraint root/cimv2 HA_OrderConstraintProvider
HA_OrderConstraintProvider instance
+# Operation
+HA_Operation root/cimv2 HA_OperationProvider HA_OperationProvider instance
# Association, between Cluster and Node
-LinuxHA_ParticipatingNode root/cimv2 LinuxHA_ParticipatingNodeProvider
cmpiLinuxHA_ParticipatingNodeProvider instance association
+HA_ParticipatingNode root/cimv2 HA_ParticipatingNodeProvider
HA_ParticipatingNodeProvider instance association
# Association, between Resource and Hosting Node
-LinuxHA_HostedResource root/cimv2 LinuxHA_HostedResourceProvider
cmpiLinuxHA_HostedResourceProvider instance association
+HA_HostedResource root/cimv2 HA_HostedResourceProvider
HA_HostedResourceProvider instance association
# Association, between Cluster and Software
-LinuxHA_InstalledSoftwareIdentity root/cimv2
LinuxHA_InstalledSoftwareIdentityProvider
cmpiLinuxHA_InstalledSoftwareIdentityProvider instance association
+HA_InstalledSoftwareIdentity root/cimv2 HA_InstalledSoftwareIdentityProvider
HA_InstalledSoftwareIdentityProvider instance association
# Association, between Resource and its instance attribute
-LinuxHA_ClusterResrouceInstance root/cimv2
LinuxHA_ClusterResourceInstanceProvider
cmpiLinuxHA_ClusterResrouceInstanceProvider instance association
-# Association, between Resource Group and its sub resource
-LinuxHA_SubResource root/cimv2 LinuxHA_SubResourceProvider
cmpiLinuxHA_SubResourceProvider instance association
-# Association, between Resource Group and its sub group
-LinuxHA_SubGroup root/cimv2 LinuxHA_SubGroupProvider
cmpiLinuxHA_SubGroupProvider instance association
+HA_ResrouceInstance root/cimv2 HA_ResourceInstanceProvider
HA_ResrouceInstanceProvider instance association
+# Association, between Resource (Group/MasterSlave/Clone) and its sub resource
+HA_SubResource root/cimv2 HA_SubResourceProvider HA_SubResourceProvider
instance association
+# Association, operation and resource
+HA_OperationOnResource root/cimv2 HA_OperationOnProvider
HA_OperationOnProvider instance association
#Indication
-LinuxHA_Indication root/cimv2 LinuxHA_IndicationProvider
cmpiLinuxHA_IndicationProvider indication
+HA_Indication root/cimv2 HA_IndicationProvider HA_IndicationProvider indication
------------------------------
Message: 2
Date: Wed, 21 Dec 2005 03:38:11 -0700 (MST)
From: [email protected]
Subject: [Linux-ha-cvs] Linux-HA CVS: cim by panjiam from
To: [EMAIL PROTECTED]
Message-ID: <[EMAIL PROTECTED]>
linux-ha CVS committal
Author : panjiam
Host :
Project : linux-ha
Module : cim
Dir : linux-ha/cim
Modified Files:
cmpi_utils.h
Log Message:
moved association functions to assoc_utils.h/assoc_utils.c
===================================================================
RCS file: /home/cvs/linux-ha/linux-ha/cim/cmpi_utils.h,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -3 -r1.4 -r1.5
--- cmpi_utils.h 15 Nov 2005 06:41:00 -0000 1.4
+++ cmpi_utils.h 21 Dec 2005 10:38:10 -0000 1.5
@@ -1,50 +1,24 @@
-/*
- * CIM Provider Utils Header File
- *
- * Author: Jia Ming Pan <[EMAIL PROTECTED]>
- * Copyright (c) 2005 International Business Machines
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- *
- */
-
-
#ifndef _CMPI_UTILS_H
#define _CMPI_UTILS_H
-#include <clplumbing/cl_uuid.h>
-
#include <cmpidt.h>
#include <cmpift.h>
#include <cmpimacs.h>
-#define DEBUG_ENTER() cl_log(LOG_INFO, "%s: --- ENTER ---", __FUNCTION__)
-#define DEBUG_LEAVE() cl_log(LOG_INFO, "%s: --- LEAVE ---", __FUNCTION__)
-#define DEBUG_PID() cl_log(LOG_INFO, \
- "%s: my pid is %d", __FUNCTION__, (int)getpid())
+/* for compatibility */
+#ifndef CMPIVersion090
+#define CMPIConst
+#undef CMGetCharPtr
+#define CMGetCharPtr(x) ((char *)(x)->hdl)
-#ifndef ASSERT
-#ifdef HAVE_STRINGIZE
-# define ASSERT(X) {if(!(X)) cmpi_assert(#X, __LINE__, __FILE__);}
-#else
-# define ASSERT(X) {if(!(X)) cmpi_assert("X", __LINE__, __FILE__);}
-#endif
-#endif
+#define CMIndicationMIStubExtensions(x)
+#else /* CMPIVersion090 */
+#define CMPIConst const
+
+#endif /* CMPIVersion090 */
/* return ret if obj is a NULL CMPI Object */
#define RETURN_IFNULL_OBJ(obj, ret, n) do { \
@@ -60,51 +34,131 @@
#define RETURN_NULL_IFNULL_OBJ(obj, n) RETURN_IFNULL_OBJ(obj, NULL, n)
-void cmpi_assert(const char * assertion, int line, const char * file);
-int run_shell_command(const char * cmnd, int * ret,
- char *** std_out, char *** std_err);
-int regex_search(const char * reg, const char * str, char *** match);
-int free_2d_array(char ** array);
-char * uuid_to_str(const cl_uuid_t * uuid);
-
-
-int init_logger(const char * entity);
-
-typedef int (* assoc_pred_func_t)
- (CMPIInstance * first, CMPIInstance * second, CMPIStatus * rc);
-
-int enum_associators(CMPIBroker * broker, char * classname,
- char * first_ref, char * second_ref,
- char * first_class_name, char * second_class_name,
- CMPIContext * ctx, CMPIResult * rslt,
- CMPIObjectPath * cop, const char * assocClass,
- const char * resultClass, const char * role,
- const char * resultRole, assoc_pred_func_t pred,
- int add_inst, CMPIStatus * rc);
-
-int enum_references(CMPIBroker * broker, char * classname,
- char * first_ref, char * second_ref,
- char * first_class_name, char * second_class_name,
- CMPIContext * ctx, CMPIResult * rslt,
- CMPIObjectPath * cop,
- const char * resultClass, const char * role,
- assoc_pred_func_t pred, int add_inst, CMPIStatus * rc);
-
-
-int enum_inst_assoc(CMPIBroker * broker, char * classname,
- char * first_ref, char * second_ref,
- char * first_class_name, char * second_class_name,
- CMPIContext * ctx, CMPIResult * rslt,
- CMPIObjectPath * cop, assoc_pred_func_t pred,
- int add_inst, CMPIStatus * rc);
-
-int get_inst_assoc(CMPIBroker * broker, char * classname,
- char * first_ref, char * second_ref,
- char * first_class_name, char * second_class_name,
- CMPIContext * ctx, CMPIResult * rslt,
- CMPIObjectPath * cop, CMPIStatus * rc);
+#define DeclareInstanceCleanup(pfx) \
+CMPIStatus pfx##Cleanup(CMPIInstanceMI * mi, CMPIContext * ctx)
+#define DeclareInstanceEnumInstanceNames(pfx) \
+CMPIStatus pfx##EnumInstanceNames(CMPIInstanceMI * mi, CMPIContext * ctx, \
+ CMPIResult * rslt, CMPIObjectPath * ref)
+
+#define DeclareInstanceEnumInstances(pfx) \
+CMPIStatus pfx##EnumInstances(CMPIInstanceMI * mi, CMPIContext* ctx, \
+ CMPIResult * rslt, CMPIObjectPath * ref, \
+ char ** properties)
+
+#define DeclareInstanceGetInstance(pfx) \
+CMPIStatus pfx##GetInstance(CMPIInstanceMI * mi, CMPIContext * ctx, \
+ CMPIResult * rslt, CMPIObjectPath * cop, \
+ char ** properties)
+
+#define DeclareInstanceCreateInstance(pfx) \
+CMPIStatus pfx##CreateInstance(CMPIInstanceMI * mi, CMPIContext * ctx, \
+ CMPIResult * rslt, CMPIObjectPath * cop, \
+ CMPIInstance * ci)
+
+#define DeclareInstanceSetInstance(pfx) \
+CMPIStatus pfx##SetInstance(CMPIInstanceMI * mi, CMPIContext * ctx, \
+ CMPIResult * rslt, CMPIObjectPath * cop, \
+ CMPIInstance * ci, char ** properties)
+
+#define DeclareInstanceDeleteInstance(pfx) \
+CMPIStatus pfx##DeleteInstance(CMPIInstanceMI * mi, CMPIContext * ctx, \
+ CMPIResult * rslt, CMPIObjectPath * cop)
+
+#define DeclareInstanceExecQuery(pfx) \
+CMPIStatus pfx##ExecQuery(CMPIInstanceMI * mi, CMPIContext * ctx, \
+ CMPIResult * rslt, CMPIObjectPath * ref, \
+ char * lang, char * query)
+
+#define DeclareInstanceFunctions(pfx) \
+ static DeclareInstanceCleanup(pfx); \
+ static DeclareInstanceEnumInstanceNames(pfx); \
+ static DeclareInstanceEnumInstances(pfx); \
+ static DeclareInstanceGetInstance(pfx); \
+ static DeclareInstanceCreateInstance(pfx); \
+ static DeclareInstanceSetInstance(pfx); \
+ static DeclareInstanceDeleteInstance(pfx); \
+ static DeclareInstanceExecQuery(pfx)
+
+#define DeclareMethodInvokeMethod(pfx) \
+CMPIStatus pfx##InvokeMethod(CMPIMethodMI * mi, CMPIContext * ctx, \
+ CMPIResult * rslt, CMPIObjectPath * ref, \
+ const char * method, CMPIArgs * in, CMPIArgs * out)
+
+#define DeclareMethodCleanup(pfx) \
+CMPIStatus pfx##MethodCleanup(CMPIMethodMI * mi, CMPIContext * ctx)
+
+#define DeclareMethodFunctions(pfx) \
+ static DeclareMethodInvokeMethod(pfx); \
+ static DeclareMethodCleanup(pfx)
+
+#define DeclareAssociationCleanup(pfx) \
+CMPIStatus pfx##AssociationCleanup(CMPIAssociationMI * mi, CMPIContext * ctx)
+
+#define DeclareAssociationAssociators(pfx) \
+CMPIStatus pfx##Associators(CMPIAssociationMI * mi, CMPIContext * ctx, \
+ CMPIResult * rslt, CMPIObjectPath * op, \
+ const char * asscClass, const char * resultClass, \
+ const char * role, const char * resultRole, \
+ char ** properties)
+#define DeclareAssociationAssociatorNames(pfx) \
+CMPIStatus pfx##AssociatorNames(CMPIAssociationMI * mi, CMPIContext * ctx, \
+ CMPIResult * rslt, CMPIObjectPath * op, \
+ const char * asscClass, const char * resultClass, \
+ const char * role, const char * resultRole)
+
+#define DeclareAssociationReferences(pfx) \
+CMPIStatus pfx##References(CMPIAssociationMI * mi, \
+ CMPIContext * ctx, CMPIResult * rslt, \
+ CMPIObjectPath * op, const char * resultClass, \
+ const char * role, char ** properties)
+
+#define DeclareAssociationReferenceNames(pfx) \
+CMPIStatus pfx##ReferenceNames(CMPIAssociationMI * mi, \
+ CMPIContext * ctx, CMPIResult * rslt, CMPIObjectPath * cop, \
+ const char * resultClass, const char * role)
+
+#define DeclareAssociationFunctions(pfx) \
+ static DeclareAssociationCleanup(pfx); \
+ static DeclareAssociationAssociators(pfx); \
+ static DeclareAssociationAssociatorNames(pfx); \
+ static DeclareAssociationReferences(pfx); \
+ static DeclareAssociationReferenceNames(pfx)
+
+
+#define DeclareIndicationCleanup(pfx) \
+CMPIStatus pfx##IndicationCleanup(CMPIIndicationMI * mi, CMPIContext * ctx)
+
+#define DeclareIndicationAuthorizeFilter(pfx) \
+CMPIStatus pfx##AuthorizeFilter(CMPIIndicationMI * mi, CMPIContext * ctx, \
+ CMPIResult * rslt, \
+ CMPISelectExp * filter, const char * type, \
+ CMPIObjectPath * classPath, const char * owner)
+
+#define DeclareIndicationMustPoll(pfx) \
+CMPIStatus pfx##MustPoll(CMPIIndicationMI * mi, \
+ CMPIContext * ctx, CMPIResult * rslt, CMPISelectExp * filter,\
+ const char * indType, CMPIObjectPath * classPath)
+
+#define DeclareIndicationActivateFilter(pfx) \
+CMPIStatus pfx##ActivateFilter(CMPIIndicationMI * mi, \
+ CMPIContext * ctx, CMPIResult * rslt, \
+ CMPISelectExp * filter, const char * type, \
+ CMPIObjectPath * classPath, CMPIBoolean firstActivation)
+
+#define DeclareIndicationDeActivateFilter(pfx) \
+CMPIStatus pfx##DeActivateFilter(CMPIIndicationMI * mi, \
+ CMPIContext * ctx, CMPIResult * rslt, \
+ CMPISelectExp * filter, const char * type, \
+ CMPIObjectPath * classPath, CMPIBoolean lastActivation)
+
+#define DeclareIndicationFunctions(pfx) \
+ static DeclareIndicationCleanup(pfx); \
+ static DeclareIndicationAuthorizeFilter(pfx); \
+ static DeclareIndicationMustPoll(pfx); \
+ static DeclareIndicationActivateFilter(pfx); \
+ static DeclareIndicationDeActivateFilter(pfx)
#define DeclareInstanceMI(pfx, pn, broker) \
static char inst_provider_name [] = "instance"#pn; \
@@ -130,7 +184,7 @@
NULL, \
&instMIFT \
}; \
- Broker = brkr; \
+ broker = brkr; \
return &mi; \
}
@@ -177,7 +231,7 @@
NULL, \
&assocMIFT \
}; \
- Broker = brkr; \
+ broker = brkr; \
return &mi; \
}
@@ -207,4 +261,5 @@
return &mi; \
}
-#endif
+
+#endif /* _CMPI_UTILS_H */
------------------------------
_______________________________________________
Linux-ha-cvs mailing list
[email protected]
http://lists.community.tummy.com/mailman/listinfo/linux-ha-cvs
End of Linux-ha-cvs Digest, Vol 25, Issue 55
********************************************