You can subscribe to this list here.
2005 |
Jan
|
Feb
(1) |
Mar
(45) |
Apr
(150) |
May
(145) |
Jun
(150) |
Jul
(79) |
Aug
(313) |
Sep
(160) |
Oct
(309) |
Nov
(115) |
Dec
(60) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2006 |
Jan
(160) |
Feb
(144) |
Mar
(127) |
Apr
(48) |
May
(102) |
Jun
(54) |
Jul
(245) |
Aug
(94) |
Sep
(152) |
Oct
(162) |
Nov
(166) |
Dec
(740) |
2007 |
Jan
(752) |
Feb
(437) |
Mar
(328) |
Apr
(373) |
May
(569) |
Jun
(399) |
Jul
(369) |
Aug
(627) |
Sep
(100) |
Oct
(306) |
Nov
(166) |
Dec
(282) |
2008 |
Jan
(68) |
Feb
(145) |
Mar
(180) |
Apr
(160) |
May
(277) |
Jun
(229) |
Jul
(1188) |
Aug
(51) |
Sep
(97) |
Oct
(99) |
Nov
(95) |
Dec
(170) |
2009 |
Jan
(39) |
Feb
(73) |
Mar
(120) |
Apr
(121) |
May
(104) |
Jun
(262) |
Jul
(57) |
Aug
(171) |
Sep
(131) |
Oct
(88) |
Nov
(64) |
Dec
(83) |
2010 |
Jan
(55) |
Feb
(67) |
Mar
(124) |
Apr
(64) |
May
(130) |
Jun
(75) |
Jul
(164) |
Aug
(64) |
Sep
(44) |
Oct
(17) |
Nov
(43) |
Dec
(31) |
2011 |
Jan
(21) |
Feb
(10) |
Mar
(43) |
Apr
(46) |
May
(52) |
Jun
(71) |
Jul
(7) |
Aug
(16) |
Sep
(51) |
Oct
(14) |
Nov
(33) |
Dec
(15) |
2012 |
Jan
(12) |
Feb
(61) |
Mar
(129) |
Apr
(76) |
May
(70) |
Jun
(52) |
Jul
(29) |
Aug
(41) |
Sep
(32) |
Oct
(23) |
Nov
(38) |
Dec
(26) |
2013 |
Jan
(35) |
Feb
(37) |
Mar
(51) |
Apr
(15) |
May
(52) |
Jun
(15) |
Jul
(23) |
Aug
(21) |
Sep
(46) |
Oct
(69) |
Nov
(57) |
Dec
(26) |
2014 |
Jan
(5) |
Feb
(13) |
Mar
(17) |
Apr
(1) |
May
(5) |
Jun
|
Jul
(2) |
Aug
(2) |
Sep
(1) |
Oct
(16) |
Nov
(8) |
Dec
(4) |
2015 |
Jan
|
Feb
|
Mar
|
Apr
(1) |
May
(1) |
Jun
(4) |
Jul
|
Aug
(2) |
Sep
|
Oct
|
Nov
|
Dec
|
2016 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
|
Dec
|
From: Dave B. <bla...@us...> - 2012-11-15 14:56:41
|
Update of /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/logging In directory vz-cvs-3.sog:/tmp/cvs-serv28591/src/org/sblim/cimclient/internal/logging Modified Files: LogAndTraceBroker.java Log Message: 3576396 Improve logging of config file name Index: LogAndTraceBroker.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/logging/LogAndTraceBroker.java,v retrieving revision 1.26 retrieving revision 1.27 diff -u -d -r1.26 -r1.27 --- LogAndTraceBroker.java 6 Sep 2012 14:46:48 -0000 1.26 +++ LogAndTraceBroker.java 15 Nov 2012 14:56:39 -0000 1.27 @@ -29,6 +29,7 @@ * 3484014 2012-02-03 blaschke-oss Add LogAndTraceBroker.isLoggable for message/trace * 3489638 2012-02-28 blaschke-oss PERF: Bottleneck in LogAndTraceBroker.java - getCaller() * 3554738 2012-08-16 blaschke-oss dump CIM xml by LogAndTraceBroker.trace() + * 3576396 2012-10-11 blaschke-oss Improve logging of config file name */ package org.sblim.cimclient.internal.logging; @@ -348,7 +349,7 @@ pListener.log(MessageLoader.getLevel(Messages.CONFIGURATION_URL), Messages.CONFIGURATION_URL, MessageLoader .getLocalizedMessage(Messages.CONFIGURATION_URL), - new Object[] { WBEMConfiguration.getActiveConfigURL() }); + new Object[] { WBEMConfiguration.getActiveConfigFullURL() }); if (!WBEMConfiguration.isConfigurationLoadSuccessful()) { pListener.log(MessageLoader.getLevel(Messages.CONFIGURATION_LOAD_FAILED), Messages.CONFIGURATION_LOAD_FAILED, MessageLoader |
From: Dave B. <bla...@us...> - 2012-11-15 14:46:08
|
Update of /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/util In directory vz-cvs-3.sog:/tmp/cvs-serv26355/src/org/sblim/cimclient/internal/util Modified Files: WBEMConfiguration.java Util.java WBEMConfigurationDefaults.java Log Message: 3572993 parseDouble("2.2250738585072012e-308") DoS vulnerability Index: WBEMConfigurationDefaults.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/util/WBEMConfigurationDefaults.java,v retrieving revision 1.31 retrieving revision 1.32 diff -u -d -r1.31 -r1.32 --- WBEMConfigurationDefaults.java 10 Sep 2012 10:18:43 -0000 1.31 +++ WBEMConfigurationDefaults.java 15 Nov 2012 14:46:05 -0000 1.32 @@ -36,6 +36,7 @@ * 3492224 2012-02-23 blaschke-oss Need two different timeouts for Socket connections * 3521157 2012-05-10 blaschke-oss JSR48 1.0.0: PROP_ENABLE_*_LOGGING is Level, not 0/1 * 3536399 2012-08-25 hellerda Add client/listener peer authentication properties + * 3572993 2012-10-01 blaschke-oss parseDouble("2.2250738585072012e-308") DoS vulnerability */ package org.sblim.cimclient.internal.util; @@ -291,4 +292,9 @@ */ public static final String SSL_LISTENER_PEER_VERIFICATION = "ignore"; + /** + * VERIFY_JAVA_LANG_DOUBLE_STRINGS + */ + public static final String VERIFY_JAVA_LANG_DOUBLE_STRINGS = "true"; + } Index: Util.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/util/Util.java,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- Util.java 5 Mar 2009 16:59:21 -0000 1.4 +++ Util.java 15 Nov 2012 14:46:05 -0000 1.5 @@ -1,5 +1,5 @@ /** - * (C) Copyright IBM Corp. 2006, 2009 + * (C) Copyright IBM Corp. 2006, 2012 * * THIS FILE IS PROVIDED UNDER THE TERMS OF THE ECLIPSE PUBLIC LICENSE * ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THIS FILE @@ -15,10 +15,13 @@ * 1565892 2006-10-18 ebak Make SBLIM client JSR48 compliant * 2003590 2008-06-30 blaschke-oss Change licensing from CPL to EPL * 2524131 2009-01-21 raman_arora Upgrade client to JDK 1.5 (Phase 1) + * 3572993 2012-10-01 blaschke-oss parseDouble("2.2250738585072012e-308") DoS vulnerability */ package org.sblim.cimclient.internal.util; +import java.math.BigDecimal; + /** * Class Util is responsible for storing commonly used static methods. */ @@ -42,4 +45,33 @@ return dstBuf.toString(); } + /* + * Sun bug 4421494 identifies a range of <code>java.lang.Double</code> + * values that will hang the JVM due to an error in + * <code>FloatingDecimal.doubleValue()</code> that results in an infinite + * loop. The range is defined as (<code>lowBadDouble</code>, + * <code>hiBadDouble</code>). + */ + private static final BigDecimal lowBadDouble = new BigDecimal( + "2.225073858507201136057409796709131975934E-308"); + + private static final BigDecimal hiBadDouble = new BigDecimal( + "2.225073858507201259573821257020768020078E-308"); + + /** + * isBadDoubleString checks if passed string could hang JVM. + * + * @param s + * A string to be converted to a Double. + * @return <code>true</code> if double is in range of bad values, + * <code>false</code> otherwise. + */ + public static boolean isBadDoubleString(String s) { + BigDecimal val = new BigDecimal(s); + BigDecimal min = val.min(lowBadDouble); + BigDecimal max = val.max(hiBadDouble); + + // Do not use string if min < value < max + return (min.compareTo(val) < 0 && max.compareTo(val) > 0); + } } Index: WBEMConfiguration.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/util/WBEMConfiguration.java,v retrieving revision 1.44 retrieving revision 1.45 diff -u -d -r1.44 -r1.45 --- WBEMConfiguration.java 10 Sep 2012 10:18:43 -0000 1.44 +++ WBEMConfiguration.java 15 Nov 2012 14:46:04 -0000 1.45 @@ -42,6 +42,7 @@ * 3521157 2012-05-10 blaschke-oss JSR48 1.0.0: PROP_ENABLE_*_LOGGING is Level, not 0/1 * 3524050 2012-06-06 blaschke-oss Improve WWW-Authenticate in HTTPClient.java * 3536399 2012-08-25 hellerda Add client/listener peer authentication properties + * 3572993 2012-10-01 blaschke-oss parseDouble("2.2250738585072012e-308") DoS vulnerability */ package org.sblim.cimclient.internal.util; @@ -1003,4 +1004,18 @@ getProperty(WBEMConfigurationProperties.LISTENER_ADD_SENDER_IP_ADDRESS, WBEMConfigurationDefaults.LISTENER_ADD_SENDER_IP_ADDRESS)).booleanValue(); } + + /** + * Returns whether the client will attempt to verify strings passed into the + * <code>java.lang.Double</code> constructor or its <code>parseDouble</code> + * method won't hang the JVM in an infinite loop. + * + * @return <code>true</code> if the client will attempt to verify strings + * passed to <code>Double</code>, <code>false</code> otherwise + */ + public boolean verifyJavaLangDoubleStrings() { + return Boolean.valueOf( + getProperty(WBEMConfigurationProperties.VERIFY_JAVA_LANG_DOUBLE_STRINGS, + WBEMConfigurationDefaults.VERIFY_JAVA_LANG_DOUBLE_STRINGS)).booleanValue(); + } } |
From: Dave B. <bla...@us...> - 2012-11-15 14:46:07
|
Update of /cvsroot/sblim/jsr48-client In directory vz-cvs-3.sog:/tmp/cvs-serv26355 Modified Files: sblim-cim-client2.properties NEWS Log Message: 3572993 parseDouble("2.2250738585072012e-308") DoS vulnerability Index: NEWS =================================================================== RCS file: /cvsroot/sblim/jsr48-client/NEWS,v retrieving revision 1.324 retrieving revision 1.325 diff -u -d -r1.324 -r1.325 --- NEWS 1 Oct 2012 22:30:38 -0000 1.324 +++ NEWS 15 Nov 2012 14:46:05 -0000 1.325 @@ -1,5 +1,6 @@ Changes in HEAD ================ +3572993 parseDouble("2.2250738585072012e-308") DoS vulnerability 3567433 Add links to top of detailed release history HTML Version 2.2.0 Index: sblim-cim-client2.properties =================================================================== RCS file: /cvsroot/sblim/jsr48-client/sblim-cim-client2.properties,v retrieving revision 1.30 retrieving revision 1.31 diff -u -d -r1.30 -r1.31 --- sblim-cim-client2.properties 10 Sep 2012 10:18:44 -0000 1.30 +++ sblim-cim-client2.properties 15 Nov 2012 14:46:05 -0000 1.31 @@ -729,4 +729,18 @@ # Recognition: On next creation of a WBEMListener # Default: false # -#sblim.wbem.listenerAddSenderIPAddress=false \ No newline at end of file +#sblim.wbem.listenerAddSenderIPAddress=false + +# If set to true, numeric string values passed to the java.lang.Double +# constructor or its parseDouble method will be checked to make sure they +# are not in the range that hangs Java 6- (see Sun bug 4421494). If +# set to false, the string values will not be checked. +# +# Note: This property should only be set to true if running on Java 5 or +# Java 6 prior to update 24. +# +# Type: Boolean +# Recognition: Startup +# Default: true +# +#sblim.wbem.verifyJavaLangDoubleStrings=true \ No newline at end of file |
From: Michael Chase-S. <mc...@us...> - 2012-11-14 22:09:36
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "SFCB - Small Footprint CIM Broker". The branch, master has been updated via 250d47a8848a294fb4aefb37ca78475140ee83ce (commit) from 137305ecde8eac6451aef02196d8d2522a3fdac9 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 250d47a8848a294fb4aefb37ca78475140ee83ce Author: Michael Chase-Salerno <br...@li...> Date: Wed Nov 14 17:08:33 2012 -0500 3381209 Memory leak inside getClass() used by invokeMethod() ----------------------------------------------------------------------- Summary of changes: diff --git a/NEWS b/NEWS index 9649e77..5355a09 100644 --- a/NEWS +++ b/NEWS @@ -124,6 +124,7 @@ Bugs fixed: - 3580137 Classname needed in *ActivateFilter - 3585274 Local connect kills tracing - 3528056 sfcbd --version doesn't always work +- 3381209 Memory leak inside getClass() used by invokeMethod() Changes in 1.3.15 ================= diff --git a/cimcClientSfcbLocal.c b/cimcClientSfcbLocal.c index 02bc804..77e1045 100644 --- a/cimcClientSfcbLocal.c +++ b/cimcClientSfcbLocal.c @@ -1648,6 +1648,9 @@ getClass(Client * mb, _SFCB_TRACE(1, ("--- Getting Provider context")); irc = getProviderContext(&binCtx); + CMRelease(ns); + CMRelease(cn); + _SFCB_TRACE(1, ("--- Provider context gotten")); if (irc == MSG_X_PROVIDER) { resp = invokeProvider(&binCtx); hooks/post-receive -- SFCB - Small Footprint CIM Broker |
From: Michael Chase-S. <mc...@us...> - 2012-11-14 22:04:31
|
Update of /cvsroot/sblim/sfcb In directory vz-cvs-3.sog:/tmp/cvs-serv30673 Modified Files: ChangeLog NEWS cimcClientSfcbLocal.c Log Message: 3381209 Memory leak inside getClass() used by invokeMethod() Index: NEWS =================================================================== RCS file: /cvsroot/sblim/sfcb/NEWS,v retrieving revision 1.723 retrieving revision 1.724 diff -u -d -r1.723 -r1.724 --- NEWS 9 Nov 2012 22:22:41 -0000 1.723 +++ NEWS 14 Nov 2012 22:04:28 -0000 1.724 @@ -24,6 +24,7 @@ - 3580137 Classname needed in *ActivateFilter - 3585274 Local connect kills tracing - 3528056 sfcbd --version doesn't always work +- 3381209 Memory leak inside getClass() used by invokeMethod() Changes in 1.3.15 ================= Index: cimcClientSfcbLocal.c =================================================================== RCS file: /cvsroot/sblim/sfcb/cimcClientSfcbLocal.c,v retrieving revision 1.49 retrieving revision 1.50 diff -u -d -r1.49 -r1.50 --- cimcClientSfcbLocal.c 6 Oct 2012 01:19:15 -0000 1.49 +++ cimcClientSfcbLocal.c 14 Nov 2012 22:04:28 -0000 1.50 @@ -1618,6 +1618,9 @@ _SFCB_TRACE(1, ("--- Getting Provider context")); irc = getProviderContext(&binCtx, (OperationHdr *) &oHdr); + CMRelease(ns); + CMRelease(cn); + _SFCB_TRACE(1, ("--- Provider context gotten")); if (irc == MSG_X_PROVIDER) { resp = invokeProvider(&binCtx); Index: ChangeLog =================================================================== RCS file: /cvsroot/sblim/sfcb/ChangeLog,v retrieving revision 1.808 retrieving revision 1.809 diff -u -d -r1.808 -r1.809 --- ChangeLog 9 Nov 2012 22:22:41 -0000 1.808 +++ ChangeLog 14 Nov 2012 22:04:28 -0000 1.809 @@ -1,3 +1,9 @@ +2012-11-14 Michael Chase-Salerno <br...@li...> + + * cimcClientSfcbLocal.c: + [ 3381209 ] Memory leak inside getClass() used by invokeMethod() + (Patch contributed by sanbid) + 2012-11-09 Michael Chase-Salerno <br...@li...> * sfcBroker.c: |
From: Michael Chase-S. <mc...@us...> - 2012-11-13 23:52:59
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "SFCB - Small Footprint CIM Broker". The branch, master has been updated via 137305ecde8eac6451aef02196d8d2522a3fdac9 (commit) from 85cc29e4acd0867f9fcfcf7d200b5250763d661c (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 137305ecde8eac6451aef02196d8d2522a3fdac9 Author: Michael Chase-Salerno <br...@li...> Date: Tue Nov 13 18:52:00 2012 -0500 3585929 Additional ClassProviderSf prep work ABT needs -t on sfcbrepos ----------------------------------------------------------------------- Summary of changes: diff --git a/test/ABT/ABTScript b/test/ABT/ABTScript index e70cdca..21e7a80 100755 --- a/test/ABT/ABTScript +++ b/test/ABT/ABTScript @@ -214,7 +214,7 @@ BUILD_SFCB() FIND_DELTA "disk" $out echo "$out bytes $delta" >> $BASE_DIR/$REPORT_SUMMARY echo "disk:$out" >> $FPCUR - sfcbrepos -fi # Ensure we have a clean repo + sfcbrepos -fit # Ensure we have a clean repo SFCB_START SFCB_TESTS DUALOUT "SECOND TEST RUN:" hooks/post-receive -- SFCB - Small Footprint CIM Broker |
From: Dave H. <hel...@us...> - 2012-11-13 20:08:25
|
Update of /cvsroot/sblim/cmpi-fsvol In directory vz-cvs-3.sog:/tmp/cvs-serv9351 Modified Files: ChangeLog NEWS OSBase_CommonFsvol.c Log Message: Fixed 3574777: Mounted file systems show as disabled Index: NEWS =================================================================== RCS file: /cvsroot/sblim/cmpi-fsvol/NEWS,v retrieving revision 1.17 retrieving revision 1.18 diff -u -d -r1.17 -r1.18 --- NEWS 27 Jun 2011 03:26:14 -0000 1.17 +++ NEWS 13 Nov 2012 20:08:23 -0000 1.18 @@ -2,6 +2,7 @@ ================ Bugs: +- 3574777 Mounted file systems show as disabled Features: - 3325700 support ext4 file systems Index: OSBase_CommonFsvol.c =================================================================== RCS file: /cvsroot/sblim/cmpi-fsvol/OSBase_CommonFsvol.c,v retrieving revision 1.10 retrieving revision 1.11 diff -u -d -r1.10 -r1.11 --- OSBase_CommonFsvol.c 2 Jun 2009 19:42:24 -0000 1.10 +++ OSBase_CommonFsvol.c 13 Nov 2012 20:08:23 -0000 1.11 @@ -1,7 +1,7 @@ /* * OSBase_CommonFsvol.c * - * (C) Copyright IBM Corp. 2002, 2009 + * (C) Copyright IBM Corp. 2002, 2012 * * THIS FILE IS PROVIDED UNDER THE TERMS OF THE ECLIPSE PUBLIC LICENSE * ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THIS FILE @@ -12,6 +12,8 @@ * * Author: Heidi Neumann <hei...@de...> * Contributors: Marcin Gozdalik <go...@go...> + * Henning Sackewitz (shenningz) + * Dave Heller <hel...@us...> * * Description: * This shared library provides resource access functionality for the class @@ -21,6 +23,7 @@ /* ---------------------------------------------------------------------------*/ +#include <errno.h> #include <stdlib.h> #include <stdio.h> #include <string.h> @@ -175,7 +178,7 @@ FILE * mtab = NULL ; char * buf = NULL ; - _OSBASE_TRACE(4,("--- _cpy_fs_data() called")); + _OSBASE_TRACE(3,("--- _cpy_fs_data() called")); mer = calloc (1,sizeof (struct mntent)); @@ -214,7 +217,7 @@ mer->mnt_opts = calloc (1, strlen(me->mnt_opts)+1 ); strcpy( mer->mnt_opts, me->mnt_opts); - _OSBASE_TRACE(4,("--- _cpy_fs_data() exited")); + _OSBASE_TRACE(3,("--- _cpy_fs_data() exited")); return mer; } @@ -240,9 +243,8 @@ free(sptr); } - /* ---------------------------------------------------------------------------*/ -// get mount status of a certain file system +// get mount status of a certain file system (from mount command) /* ---------------------------------------------------------------------------*/ /* @@ -250,13 +252,13 @@ * 1 ... mounted */ -unsigned char fs_mount_status( char * fsname ) { +unsigned char fs_mount_status_internal( char * fsname ) { char * cmd = NULL; char ** hdout = NULL; unsigned char vrc = 0; int rc = 0; - _OSBASE_TRACE(4,("--- fs_mount_status() called")); + _OSBASE_TRACE(3,("--- fs_mount_status_internal() called for %s",fsname)); cmd = calloc (1, (14+strlen(fsname))); strcpy( cmd, "mount | grep "); @@ -271,7 +273,65 @@ if(cmd) free(cmd); freeresultbuf(hdout); - _OSBASE_TRACE(4,("--- fs_mount_status() exited : %s %i",fsname,vrc)); + _OSBASE_TRACE(3,("--- fs_mount_status_internal() exited : %s %i",fsname,vrc)); + return vrc; +} + +/* ---------------------------------------------------------------------------*/ +// get mount status of a certain file system +/* ---------------------------------------------------------------------------*/ + +/* + * 0 ... not mounted + * 1 ... mounted + */ + +unsigned char fs_mount_status( char * fsname ) { + unsigned char vrc = 0; + const char * uuid = "UUID="; + const char * label = "LABEL="; + char * str = NULL; + char pathname_uuid[255] = "/dev/disk/by-uuid/"; + char pathname_label[255] = "/dev/disk/by-label/"; + char * findname = NULL; + char * realname = NULL; + + _OSBASE_TRACE(3,("--- fs_mount_status() called for %s",fsname)); + + if (!(vrc = fs_mount_status_internal(fsname))) { + /* in fstab, some distros use UUIDs, LABELs or device links that don't show + * up in mount */ + if ((str = strstr(fsname, uuid)) != NULL) { + str = str + strlen(uuid); + strcat(pathname_uuid, str); + findname = pathname_uuid; + _OSBASE_TRACE(4,("--- fs_mount_status() %s is %s",fsname,pathname_uuid)); + } + else if ((str = strstr(fsname, label)) != NULL) { + str = str + strlen(label); + strcat(pathname_label, str); + findname = pathname_label; + _OSBASE_TRACE(4,("--- fs_mount_status() %s is %s",fsname,pathname_label)); + } + else { // fsname is some other symlink or device name + findname = fsname; + } + if (!(vrc = fs_mount_status_internal(findname))) { + realname = realpath(findname, NULL); // uses malloc + if (realname != NULL) { + _OSBASE_TRACE(4,("--- fs_mount_status() %s is really %s",findname, + realname)); + vrc = fs_mount_status_internal(realname); + free(realname); + } + else { + _OSBASE_TRACE(1,("--- fs_mount_status() cannot find %s (%s)",findname, + strerror(errno))); + // TODO: should return some error here instead of reporting not mounted + } + } + } + _OSBASE_TRACE(3,("--- fs_mount_status() exited : %s %i",fsname,vrc)); return vrc; } @@ -286,7 +346,7 @@ unsigned char vrc = 0; int rc = 0; - _OSBASE_TRACE(4,("--- fs_default_mount_status() called")); + _OSBASE_TRACE(3,("--- fs_default_mount_status() called for %s",fsname)); cmd = calloc (1, (23+strlen(fsname))); strcpy( cmd, "cat /etc/fstab | grep "); @@ -302,7 +362,7 @@ if(cmd) free(cmd); freeresultbuf(hdout); - _OSBASE_TRACE(4,("--- fs_default_mount_status() exited : %s %i",fsname,vrc)); + _OSBASE_TRACE(3,("--- fs_default_mount_status() exited : %s %i",fsname,vrc)); return vrc; } Index: ChangeLog =================================================================== RCS file: /cvsroot/sblim/cmpi-fsvol/ChangeLog,v retrieving revision 1.15 retrieving revision 1.16 diff -u -d -r1.15 -r1.16 --- ChangeLog 18 May 2011 02:40:43 -0000 1.15 +++ ChangeLog 13 Nov 2012 20:08:23 -0000 1.16 @@ -1,3 +1,10 @@ +2012-11-13 Dave Heller <hel...@us...> + + * NEWS, OSBase_CommonFsvol.c: + + Fixed 3574777: Mounted file systems show as disabled + (contribution by Henning Sackewitz :) ... thx + 2011-05-17 Tyrel Datwyler <ty...@us...> * NEWS, OSBase_BlockStorageStatisticalData.c: |
From: Chris B. <buc...@us...> - 2012-11-10 02:33:31
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "SFCB - Small Footprint CIM Broker". The branch, master has been updated via 85cc29e4acd0867f9fcfcf7d200b5250763d661c (commit) via 7a09967e31d7174132bf0a92efa30ffaad284ff9 (commit) via e37f8befede96ee0406118c54618e0e305e68cf3 (commit) via c6375b0dbb621cd498d5e0347132a408655d9551 (commit) via d40f7054f9c58494b6cebd3e8daec6458ac5595c (commit) via 22b8e5977799e468d84675000d6b52fc28a2d923 (commit) via 8a77d5197af6f787777e3485ed4b463e954b9210 (commit) via 72c55bc24f036df66c688273f60b7869fb309d96 (commit) via 4c4fa60331e93b70967593f79765ef7c755b313a (commit) via afd6f61cbdaf956eab0f9dc5b4129e4c79ac4ad0 (commit) via 23cd9bb5e7c2b72e0c8d521c77843dbfe6ff8adf (commit) via 469505696c8ea0df587bfd0b2db69ce438c11e6b (commit) via 8984deffc7604ef01907b80284a51b505b86656e (commit) via 589b741afcde4c3648a832d49abdf882aa76b893 (commit) via 89505a1013a929dc06b2d966a10a5d7760f838ad (commit) from 9e16baf8d3f45c1c5e6954682a330096008f982b (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 85cc29e4acd0867f9fcfcf7d200b5250763d661c Merge: 7a09967 9e16baf Author: buccella <buc...@li...> Date: Fri Nov 9 21:32:02 2012 -0500 Merge branch 'master' of ssh://sblim.git.sourceforge.net/gitroot/sblim/sfcb commit 7a09967e31d7174132bf0a92efa30ffaad284ff9 Author: buccella <buc...@li...> Date: Fri Nov 9 21:30:27 2012 -0500 3585929 Additional ClassProviderSf prep work commit e37f8befede96ee0406118c54618e0e305e68cf3 Author: buccella <buc...@li...> Date: Fri Nov 9 21:24:18 2012 -0500 added check to skip non-reduced classSchemas commit c6375b0dbb621cd498d5e0347132a408655d9551 Author: buccella <buc...@li...> Date: Fri Nov 9 21:23:52 2012 -0500 added ClassProviderSf check to add -t if necessary commit d40f7054f9c58494b6cebd3e8daec6458ac5595c Merge: caa3f72 22b8e59 Author: buccella <buc...@li...> Date: Fri Nov 2 18:01:56 2012 -0400 merge conflit commit 22b8e5977799e468d84675000d6b52fc28a2d923 Author: buccella <buc...@li...> Date: Thu Sep 20 17:57:28 2012 -0400 code cleanup from fixing mem leaks commit 8a77d5197af6f787777e3485ed4b463e954b9210 Author: buccella <buc...@li...> Date: Wed Sep 19 19:16:58 2012 -0400 fixed memory leak in getClass() commit 72c55bc24f036df66c688273f60b7869fb309d96 Author: buccella <buc...@li...> Date: Thu Sep 13 09:38:59 2012 -0400 fixed leak in repCandidate commit 4c4fa60331e93b70967593f79765ef7c755b313a Author: buccella <buc...@li...> Date: Wed Sep 12 14:24:54 2012 -0400 commented out cleanup (matching CPGZ); fixed meth param leak commit afd6f61cbdaf956eab0f9dc5b4129e4c79ac4ad0 Author: buccella <buc...@li...> Date: Tue Sep 11 17:35:05 2012 -0400 fixed mem leak in repCandidate commit 23cd9bb5e7c2b72e0c8d521c77843dbfe6ff8adf Author: buccella <buc...@li...> Date: Fri Sep 7 18:39:42 2012 -0400 working on memory leaks for classProviderSf commit 469505696c8ea0df587bfd0b2db69ce438c11e6b Author: buccella <buc...@li...> Date: Fri Aug 31 15:39:04 2012 -0400 fixing some memory leaks commit 8984deffc7604ef01907b80284a51b505b86656e Author: buccella <buc...@li...> Date: Thu Aug 30 14:30:34 2012 -0400 change default class provider to classProviderSf - functional commit 589b741afcde4c3648a832d49abdf882aa76b893 Author: buccella <buc...@li...> Date: Tue Aug 28 16:36:57 2012 -0400 change default class provider to classProviderSf commit 89505a1013a929dc06b2d966a10a5d7760f838ad Author: buccella <buc...@li...> Date: Tue Aug 28 16:32:41 2012 -0400 [ 3562530 ] TestMiscProvider poorly tests CMGetPropertyAt ----------------------------------------------------------------------- Summary of changes: diff --git a/NEWS b/NEWS index 2be16c1..9649e77 100644 --- a/NEWS +++ b/NEWS @@ -23,6 +23,8 @@ Bugs fixed: - 3567083 configure should fail if sfcUtil.so not found - 3573507 CreateInstance for IndicationFilter doesn't accept DMTF:CQL - 3579637 SFCB should check ftok return code +- 3562530 TestMiscProvider poorly tests CMGetPropertyAt +- 3585929 Additional ClassProviderSf prep work Changes in 1.4.2 ================ diff --git a/classProviderSf.c b/classProviderSf.c index 47f8710..ab88210 100644 --- a/classProviderSf.c +++ b/classProviderSf.c @@ -28,8 +28,8 @@ static int argc = 0; static char **argv = NULL; -static int cSize = 8; // can't be 0! -static int rSize = 8; // can't be 0! +static int cSize = 10; // can't be 0! +static int rSize = 10; // can't be 0! typedef enum readCtl { stdRead, tempRead, cached } ReadCtl; @@ -232,6 +232,37 @@ releaseClass(CMPIConstClass * cls, char *from, int id) CMRelease(cls); } +// static void +// clearCCache(ClassRegister * cr) +// { +// ClassBase *cb = (ClassBase *) (cr + 1); +// ClassRecord *crec; + +// while (cb->cachedCCount > 0) { +// crec = cb->lastCCached; +// DEQ_FROM_LIST(crec, cb->firstCCached, cb->lastCCached, nextCCached, +// prevCCached); +// CMRelease(crec->cachedCCls); +// crec->cachedCCls = NULL; +// cb->cachedCCount--; +// } +// } +// static void +// clearRCache(ClassRegister * cr) +// { +// ClassBase *cb = (ClassBase *) (cr + 1); +// ClassRecord *crec; + +// while (cb->cachedRCount > 0) { +// crec = cb->lastRCached; +// DEQ_FROM_LIST(crec, cb->firstRCached, cb->lastRCached, nextRCached, +// prevRCached); +// CMRelease(crec->cachedRCls); +// crec->cachedRCls = NULL; +// cb->cachedRCount--; +// } +// } + static void pruneCCache(ClassRegister * cr) { @@ -242,6 +273,8 @@ pruneCCache(ClassRegister * cr) crec = cb->lastCCached; DEQ_FROM_LIST(crec, cb->firstCCached, cb->lastCCached, nextCCached, prevCCached); + // char* claz = CMGetCharPtr(crec->cachedCCls->ft->getClassName(crec->cachedCCls, NULL)); + // fprintf(stderr, "--- pruning Ccache: %s\n", claz); CMRelease(crec->cachedCCls); crec->cachedCCls = NULL; cb->cachedCCount--; @@ -258,6 +291,11 @@ pruneRCache(ClassRegister * cr) crec = cb->lastRCached; DEQ_FROM_LIST(crec, cb->firstRCached, cb->lastRCached, nextRCached, prevRCached); + // char* claz = CMGetCharPtr(crec->cachedRCls->ft->getClassName(crec->cachedRCls, NULL)); + // fprintf(stderr, "--- pruning Rcache: %s\n", claz); + // if (strcasecmp("CIM_LogicalElement", claz)) { + // fprintf(stderr, " qual count=%d\n", Clcrec->cachedRCls + // } CMRelease(crec->cachedRCls); crec->cachedRCls = NULL; cb->cachedRCount--; @@ -363,15 +401,17 @@ newClassRegister(char *fname) } if (first) { - int v = -1; + int v = -1; + int r = -1; first = 0; - if (ClVerifyObjImplLevel(cr->vr)) - continue; + if (ClVerifyObjImplLevel(cr->vr) && (r = cr->vr->options == ClTypeClassReducedRep)) + continue; + if (cr->vr) v = cr->vr->objImplLevel; mlogf(M_ERROR, M_SHOW, - "--- %s contains unsupported object implementation format (%d) - directory skipped\n", - fin, v); + "--- %s contains unsupported object implementation format (level %d%s) - directory skipped\n", + fin, v, (r) ? ", reduced" : ", not reduced" ); return NULL; } @@ -537,13 +577,17 @@ putClass(ClassRegister * cr, const char *cn, ClassRecord * crec) return cb->ht->ft->put(cb->ht, cn, crec); } +/* + cl - class we're copying into + cc - class we're copying from (parent) + */ static int cpyClass(ClClass * cl, CMPIConstClass * cc, unsigned char originId) { ClClass *ccl = (ClClass *) cc->hdl; CMPIData d; - // CMPIParameter p; - // CMPIType t; + CMPIParameter p; + CMPIType t; char *name; char *refName = NULL; int i, @@ -551,22 +595,24 @@ cpyClass(ClClass * cl, CMPIConstClass * cc, unsigned char originId) iq, mq, propId; - // int parmId, methId, mp, ip; + int parmId, methId, mp, ip; unsigned long quals; ClProperty *prop; - // ClMethod *meth; - // ClParameter *parm; + ClMethod *meth, *pmeth; + ClParameter *parm, *pparm; + /* copy class qualifiers */ cl->quals |= ccl->quals; for (i = 0, m = ClClassGetQualifierCount(ccl); i < m; i++) { ClClassGetQualifierAt(ccl, i, &d, &name); ClClassAddQualifierSpecial(&cl->hdr, &cl->qualifiers, name, d, &ccl->hdr); - if (!(d.type & CMPI_ARRAY)) + if (!(d.type & CMPI_ARRAY)) { sfcb_native_release_CMPIValue(d.type, &d.value); - // free(name); + } } + /* copy properties */ for (i = 0, m = ClClassGetPropertyCount(ccl); i < m; i++) { char *pname; ClClassGetPropertyAt(ccl, i, &d, &pname, &quals, &refName); @@ -575,10 +621,12 @@ cpyClass(ClClass * cl, CMPIConstClass * cc, unsigned char originId) prop = ((ClProperty *) ClObjectGetClSection(&cl->hdr, &cl->properties)) + propId - 1; - if (refName) { - // CJB free(refName); - } + /* copy prop qualifiers, such as "key" */ + prop->quals |= quals; + + + /* copy property qualifiers */ for (iq = 0, mq = ClClassGetPropQualifierCount(ccl, i); iq < mq; iq++) { char *qname; ClClassGetPropQualifierAt(ccl, i, iq, &d, &qname); @@ -586,34 +634,62 @@ cpyClass(ClClass * cl, CMPIConstClass * cc, unsigned char originId) &ccl->hdr); if (!(d.type & CMPI_ARRAY)) sfcb_native_release_CMPIValue(d.type, &d.value); - // CJB free(qname); } - // CJB free(pname); } - /* - * CJB for (i=0,m=ClClassGetMethodCount(ccl); i<m; i++) { - * ClClassGetMethodAt(ccl,i,&t,&name,&quals); - * methId=ClClassAddMethod(cl, name, t); - * meth=((ClMethod*)ClObjectGetClSection(&cl->hdr,&cl->methods))+methId-1; - * - * // CJB // for (iq=0,mq=ClClassGetMethQualifierCount(ccl,methId-1); - * iq<mq; iq++) { // ClClassGetMethQualifierAt(ccl, meth, iq, &d, - * &name); // ClClassAddMethodQualifier(&cl->hdr, meth, name, d); // } - * - * - * for (ip=0,mp=ClClassGetMethParameterCount(ccl,methId-1); ip<mp; ip++) - * { ClClassGetMethParameterAt(ccl, meth, ip, &p, &name); - * parmId=ClClassAddMethParameter(&cl->hdr, meth, name, p); - * parm=((ClParameter*)ClObjectGetClSection(&cl->hdr,&meth->parameters))+parmId-1; - * - * for (iq=0,mq=ClClassGetMethParamQualifierCount(ccl,parm); iq<mq; - * iq++) { ClClassGetMethParamQualifierAt(ccl, parm, iq, &d, &name); - * ClClassAddMethParamQualifier(&cl->hdr, parm, name, d); } } } - */ - return 0; + // const char* ccl_name = ClObjectGetClString(&ccl->hdr, &ccl->name); + + /* copy methods */ + for (i=0,m=ClClassGetMethodCount(ccl); i<m; i++) { + // fprintf(stderr, " cpyClass %s: %d methods\n", ccl_name, ClClassGetMethodCount(ccl)); + ClClassGetMethodAt(ccl,i,&t,&name,&quals); + // fprintf(stderr, " meth %s, ", name); + methId=ClClassAddMethod(cl, name, t); + + meth=((ClMethod*)ClObjectGetClSection(&cl->hdr,&cl->methods))+methId-1; + pmeth=((ClMethod*)ClObjectGetClSection(&ccl->hdr,&ccl->methods))+i; + + mq = ClClassGetMethQualifierCount(ccl,i); + // fprintf(stderr, "qual count = %d\n", mq); + for (iq=0; iq<mq; iq++) { + ClClassGetMethQualifierAt(ccl, pmeth, iq, &d, &name); + // fprintf(stderr, " adding meth qual %s\n", name); + ClClassAddMethodQualifier(&cl->hdr, meth, name, d); + } + + mp=ClClassGetMethParameterCount(ccl,i); + // fprintf(stderr, " meth param count (of parent) = %d\n", mp); + for (ip=0; ip<mp; ip++) { + ClClassGetMethParameterAt(ccl, pmeth, ip, &p, &name); + // fprintf(stderr, "cpyClass: param %s:\n", name); + CMPIParameter cp; + cp.type = p.type; + cp.arraySize = p.arraySize; + cp.refName = p.refName; + + // fprintf(stderr, " meth param: %s\n", name); + parmId=ClClassAddMethParameter(&cl->hdr, meth, name, cp); + + parm = ((ClParameter*)ClObjectGetClSection(&cl->hdr,&meth->parameters))+parmId-1; + pparm = ((ClParameter*)ClObjectGetClSection(&ccl->hdr,&pmeth->parameters))+ip; + mq=ClClassGetMethParamQualifierCount(ccl,parm); + // fprintf(stderr, " meth param qual count = %d\n", mq); + for (iq=0; iq<mq; iq++) { + ClClassGetMethParamQualifierAt(ccl, pparm, iq, &d, &name); + ClClassAddMethParamQualifier(&cl->hdr, parm, name, d); + } + } + } + + // cl->hdr.flags &= ~HDR_Rebuild; /* force it - CJB */ + return 0; } +/* + p is parent class + cl is new class (empty) + cc is the class + */ static CMPIStatus mergeParents(ClassRegister * cr, ClClass * cl, char *p, CMPIConstClass * cc, ReadCtl * rctl) @@ -640,6 +716,7 @@ mergeParents(ClassRegister * cr, ClClass * cl, char *p, st = mergeParents(cr, cl, np, pcc, rctl); if (ctl != cached) CMRelease(pcc); + } return st; } @@ -651,8 +728,9 @@ getResolvedClass(ClassRegister * cr, const char *clsName, _SFCB_ENTER(TRACE_PROVIDERS, "getResolvedClass"); _SFCB_TRACE(1, ("--- classname %s cReg %p", clsName, cr)); CMPIConstClass *cc = NULL, - *cls; + *cls = NULL; ReadCtl ctl = *rctl; + ReadCtl cls_ctl; /* the ctl for cls from getClass */ ClassBase *cb = (ClassBase *) cr->hdl; if (crec == NULL) { @@ -663,9 +741,11 @@ getResolvedClass(ClassRegister * cr, const char *clsName, if (crec->cachedRCls == NULL) { cls = getClass(cr, clsName, &ctl); + cls_ctl = ctl; ClClass *ccl = (ClClass *) cls->hdl; - if (ccl->hdr.type == HDR_Class) + if (ccl->hdr.type == HDR_Class) { return cls; + } char *pn = (char *) cls->ft->getCharSuperClassName(cls); if (pn == NULL) { @@ -678,20 +758,33 @@ getResolvedClass(ClassRegister * cr, const char *clsName, cc->ft = CMPIConstClassFT; cc->hdl = mc; // printf("#-# merging %s %s\n",clsName,pn); + _SFCB_TRACE(1, ("#-# merging %s %s\n",clsName,pn)); + + char orig_abst = mc->quals & ClClass_Q_Abstract; + mergeParents(cr, mc, pn, cls, rctl); - if (*rctl == tempRead) + /* We want all our parents' qualifiers except for Abstract. + Overwrite using original Abstract bit */ + mc->quals &= orig_abst; + + if (*rctl == tempRead) { + if (cls && (cls_ctl != cached)) + CMRelease(cls); _SFCB_RETURN(cc); + } crec->cachedRCls = cc; cb->cachedRCount++; - if (cb->cachedRCount >= cSize) - pruneRCache(cr); /* should this be checking rSize? */ + if (cb->cachedRCount >= rSize) { + pruneRCache(cr); + } ENQ_TOP_LIST(crec, cb->firstRCached, cb->lastRCached, nextRCached, prevRCached); } else { // printf("-#- class %s in resolved cache // %p\n",clsName,crec->cachedRCls); + _SFCB_TRACE(1, ("-#- class %s in resolved cache %p\n",clsName,crec->cachedRCls)); if (crec != cb->firstRCached) { DEQ_FROM_LIST(crec, cb->firstRCached, cb->lastRCached, nextRCached, prevRCached); @@ -704,7 +797,7 @@ getResolvedClass(ClassRegister * cr, const char *clsName, } static CMPIConstClass * -getClass(ClassRegister * cr, const char *clsName, enum readCtl *ctl) +getClass(ClassRegister * cr, const char *clsName, ReadCtl *ctl) { ClassRecord *crec; int r; @@ -720,6 +813,7 @@ getClass(ClassRegister * cr, const char *clsName, enum readCtl *ctl) _SFCB_RETURN(NULL); } + /* class is not cached */ if (crec->cachedCCls == NULL) { r = gzseek(cr->f, crec->position, SEEK_SET); buf = (char *) malloc(crec->length); @@ -730,22 +824,29 @@ getClass(ClassRegister * cr, const char *clsName, enum readCtl *ctl) cc->ft = CMPIConstClassFT; cc->ft->relocate(cc); - if (*ctl == tempRead) + // char* claz = CMGetCharPtr(cc->ft->getClassName(cc, NULL)); + + if (*ctl == tempRead) { _SFCB_RETURN(cc); - // printf("-#- class %s Added %p\n",clsName,cc); + } + // printf("-#- class %s Added %p",clsName,cc); + // CMPIArray* ar = cc->ft->getKeyList(cc); + // printf("; key list size=%d\n", (int)ar->ft->getSize(ar, NULL)); crec->cachedCCls = cc; cb->cachedCCount++; if (cb->cachedCCount >= cSize) pruneCCache(cr); + // fprintf(stderr, "ENQing %p\n", crec); ENQ_TOP_LIST(crec, cb->firstCCached, cb->lastCCached, nextCCached, prevCCached); *ctl = cached; } else { - // printf("-#- class %s in cache %p\n",clsName,crec->cachedCCls); + // printf("-#- class %s in cache %p\n",clsName,crec->cachedCCls); if (crec != cb->firstCCached) { DEQ_FROM_LIST(crec, cb->firstCCached, cb->lastCCached, nextCCached, prevCCached); + // fprintf(stderr, "ENQing %p\n", crec); ENQ_TOP_LIST(crec, cb->firstCCached, cb->lastCCached, nextCCached, prevCCached); } @@ -825,7 +926,7 @@ initialize(CMPIClassMI * mi, CMPIContext *ctx) } else { } - // CJB if (nsHt==NULL) nsHt=buildClassRegisters(); + // if (nsHt==NULL) nsHt=buildClassRegisters(); why is this here? CJB CMReturn(CMPI_RC_OK); } @@ -838,49 +939,59 @@ initialize(CMPIClassMI * mi, CMPIContext *ctx) static CMPIStatus ClassProviderCleanup(CMPIClassMI * mi, const CMPIContext *ctx) { - HashTableIterator *hit, - *hitHt, - *hitIt; - char *key; - ClassRegister *cReg; - ClassRecord *crec; - UtilList *ul; - - for (hit = nsHt->ft->getFirst(nsHt, (void **) &key, (void **) &cReg); - key && hit && cReg; - hit = - nsHt->ft->getNext(nsHt, hit, (void **) &key, (void **) &cReg)) { - gzclose(cReg->f); - free(cReg->vr); - free(cReg->fn); - ClassBase *cb = (ClassBase *) (cReg + 1); - for (hitIt = - cb->it->ft->getFirst(cb->it, (void **) &key, (void **) &ul); - key && hitIt && ul; - hitIt = - cb->it->ft->getNext(cb->it, hitIt, (void **) &key, - (void **) &ul)) { - if (ul) - CMRelease(ul); - } - CMRelease(cb->it); - - for (hitHt = - cb->ht->ft->getFirst(cb->ht, (void **) &key, (void **) &crec); - key && hitHt && crec; - hitHt = - cb->ht->ft->getNext(cb->ht, hitHt, (void **) &key, - (void **) &crec)) { - free(key); - if (crec->parent) - free(crec->parent); - free(crec); - } - CMRelease(cb->ht); - free(cReg); - } - CMRelease(nsHt); + // int rc = 0; + // CMPIObjectPath* ref = CMNewObjectPath(_broker, "root/interop", "cim_managedelement", NULL); + // ClassRegister* cReg = getNsReg(ref, &rc); + // clearCCache(cReg); + // clearRCache(cReg); + + // HashTableIterator *hit, + // *hitHt, + // *hitIt; + // char *key; + // ClassRegister *cReg; + // ClassRecord *crec; + // UtilList *ul; + // fprintf(stderr, "1nsHT has %d/%d\n", nsHt->ft->size(nsHt), nsHt->ft->buckets(nsHt)); + + // for (hit = nsHt->ft->getFirst(nsHt, (void **) &key, (void **) &cReg); + // key && hit && cReg; + // hit = + // nsHt->ft->getNext(nsHt, hit, (void **) &key, (void **) &cReg)) { + // gzclose(cReg->f); + // free(cReg->vr); + // free(cReg->fn); + + // ClassBase *cb = (ClassBase *) (cReg + 1); + // for (hitIt = + // cb->it->ft->getFirst(cb->it, (void **) &key, (void **) &ul); + // key && hitIt && ul; + // hitIt = + // cb->it->ft->getNext(cb->it, hitIt, (void **) &key, + // (void **) &ul)) + // { + // if (ul) + // CMRelease(ul); + // } + // CMRelease(cb->it); + + // for (hitHt = + // cb->ht->ft->getFirst(cb->ht, (void **) &key, (void **) &crec); + // key && hitHt && crec; + // hitHt = + // cb->ht->ft->getNext(cb->ht, hitHt, (void **) &key, + // (void **) &crec)) { + // free(key); + // if (crec->parent) + // free(crec->parent); + // free(crec); + // } + // CMRelease(cb->ht); + // free(cReg); + // } + // fprintf(stderr, "nsHT has %d/%d\n", nsHt->ft->size(nsHt), nsHt->ft->buckets(nsHt)); + // CMRelease(nsHt); CMReturn(CMPI_RC_OK); } @@ -1000,8 +1111,9 @@ loopOnChildren(ClassRegister * cReg, char *cn, const CMPIResult *rslt) ctl = tempRead; CMPIConstClass *cl = getResolvedClass(cReg, child, NULL, &ctl); CMReturnInstance(rslt, (CMPIInstance *) cl); - if (ctl != cached) + if (ctl != cached) { CMRelease(cl); + } loopOnChildren(cReg, child, rslt); } } @@ -1053,8 +1165,9 @@ ClassProviderEnumClasses(CMPIClassMI * mi, rctl = tempRead; CMPIConstClass *rcls = getResolvedClass(cReg, cn, crec, &rctl); CMReturnInstance(rslt, (CMPIInstance *) rcls); - if (rctl != cached) + if (rctl != cached) { CMRelease(rcls); + } } } } @@ -1065,18 +1178,25 @@ ClassProviderEnumClasses(CMPIClassMI * mi, if (cls == NULL) { st.rc = CMPI_RC_ERR_INVALID_CLASS; } else if ((flgs & CMPI_FLAG_DeepInheritance) == 0) { + if (rctl != cached) + CMRelease(cls); UtilList *ul = getChildren(cReg, cn); char *child; - if (ul) + if (ul) { for (child = (char *) ul->ft->getFirst(ul); child; child = (char *) ul->ft->getNext(ul)) { rctl = tempRead; cls = getResolvedClass(cReg, child, NULL, &rctl); CMReturnInstance(rslt, (CMPIInstance *) cls); - if (rctl != cached) + if (rctl != cached) { CMRelease(cls); + } } + } } else if (cn && (flgs & CMPI_FLAG_DeepInheritance)) { + if (rctl != cached) { + CMRelease(cls); + } loopOnChildren(cReg, cn, rslt); } } @@ -1129,6 +1249,7 @@ ClassProviderGetClass(CMPIClassMI * mi, st.rc = CMPI_RC_ERR_NOT_FOUND; } + cReg->ft->wUnLock(cReg); _SFCB_RETURN(st); @@ -1178,27 +1299,48 @@ extern CMPIBoolean isAbstract(CMPIConstClass * cc); static int repCandidate(ClassRegister * cReg, char *cn) { - ReadCtl ctl = stdRead; - CMPIConstClass *cl = getClass(cReg, cn, &ctl); - if (isAbstract(cl)) - return 0; - ProviderInfo *info; - _SFCB_ENTER(TRACE_PROVIDERS, "repCandidate"); if (strcasecmp(cn, "cim_indicationfilter") == 0 || - strcasecmp(cn, "cim_indicationsubscription") == 0) + strcasecmp(cn, "cim_indicationsubscription") == 0) { + _SFCB_RETURN(0); + } + + ReadCtl ctl = tempRead; + CMPIConstClass *cl = getClass(cReg, cn, &ctl); + if (isAbstract(cl)) { + if (ctl != cached) + CMRelease(cl); _SFCB_RETURN(0); + } + ProviderInfo *info; + int cn_duped = 0; while (cn != NULL) { info = pReg->ft->getProvider(pReg, cn, INSTANCE_PROVIDER); - if (info) + if (info) { + if (ctl != cached) + CMRelease(cl); _SFCB_RETURN(0); - cn = (char *) cl->ft->getCharSuperClassName(cl); + } + + if (cn_duped) /* don't free the passed-in cn */ + free(cn); + cn = (char*) cl->ft->getCharSuperClassName(cl); if (cn == NULL) break; + else { + cn = strdup(cn); + cn_duped = 1; + } + + if (ctl != cached) + CMRelease(cl); + ctl = tempRead; cl = getClass(cReg, cn, &ctl); } + if (ctl != cached) + CMRelease(cl); _SFCB_RETURN(1); } diff --git a/default.reg.in b/default.reg.in index 7d8d9d3..2d7e27e 100644 --- a/default.reg.in +++ b/default.reg.in @@ -1,10 +1,10 @@ [$ClassProvider$] provider: ClassProvider - location: sfcClassProviderGz + location: sfcClassProviderSf type: class method unload: never namespace: * - parameters: cacheLimit=10 +# parameters: cacheLimit=10 # [$DefaultProvider$] provider: InternalProvider diff --git a/objectImpl.c b/objectImpl.c index 0bf198e..315d4a5 100644 --- a/ |
From: Michael Chase-S. <mc...@us...> - 2012-11-09 22:51:02
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "SFCB - Small Footprint CIM Broker". The branch, master has been updated via 9e16baf8d3f45c1c5e6954682a330096008f982b (commit) from f2cc3fe15fe22d01e088daf136c596a4ac0470ce (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 9e16baf8d3f45c1c5e6954682a330096008f982b Author: Michael Chase-Salerno <br...@li...> Date: Fri Nov 9 17:50:04 2012 -0500 - 3528056 sfcbd --version doesn't always work ----------------------------------------------------------------------- Summary of changes: diff --git a/NEWS b/NEWS index 196e9df..2be16c1 100644 --- a/NEWS +++ b/NEWS @@ -121,6 +121,7 @@ Bugs fixed: - 3582062 Various additional error checking - 3580137 Classname needed in *ActivateFilter - 3585274 Local connect kills tracing +- 3528056 sfcbd --version doesn't always work Changes in 1.3.15 ================= diff --git a/sfcBroker.c b/sfcBroker.c index 6ad35ab..73c4847 100644 --- a/sfcBroker.c +++ b/sfcBroker.c @@ -612,14 +612,9 @@ main(int argc, char *argv[]) long dSockets, pSockets; char *pauseStr; + int daemonize=0; sfcbUseSyslog=1; - /* SF 3462309 - If there is an instance running already, return */ - int pid_found = 0; - if ((pid_found = sfcb_is_running()) != 0) { - mlogf(M_ERROR, M_SHOW, " --- A previous instance of sfcbd [%d] is running. Exiting.\n", pid_found); - exit(1); - } name = strrchr(argv[0], '/'); if (name != NULL) @@ -663,8 +658,7 @@ main(int argc, char *argv[]) break; case 'd': - daemon(0, 0); - currentProc = sfcBrokerPid = getpid(); /* req. on some systems */ + daemonize=1; break; case 'h': @@ -727,6 +721,18 @@ main(int argc, char *argv[]) usage(1); } + /* SF 3462309 - If there is an instance running already, return */ + int pid_found = 0; + if ((pid_found = sfcb_is_running()) != 0) { + mlogf(M_ERROR, M_SHOW, " --- A previous instance of sfcbd [%d] is running. Exiting.\n", pid_found); + exit(1); + } + + if (daemonize){ + daemon(0, 0); + currentProc=sfcBrokerPid=getpid(); /* req. on some systems */ + } + startLogging(syslogLevel,1); mlogf(M_INFO, M_SHOW, "--- %s V" sfcHttpDaemonVersion " started - %d\n", hooks/post-receive -- SFCB - Small Footprint CIM Broker |
From: Michael Chase-S. <mc...@us...> - 2012-11-09 22:22:43
|
Update of /cvsroot/sblim/sfcb In directory vz-cvs-3.sog:/tmp/cvs-serv11509 Modified Files: ChangeLog NEWS sfcBroker.c Log Message: - 3528056 sfcbd --version doesn't always work Index: NEWS =================================================================== RCS file: /cvsroot/sblim/sfcb/NEWS,v retrieving revision 1.722 retrieving revision 1.723 diff -u -d -r1.722 -r1.723 --- NEWS 8 Nov 2012 00:32:12 -0000 1.722 +++ NEWS 9 Nov 2012 22:22:41 -0000 1.723 @@ -23,6 +23,7 @@ - 3582062 Various additional error checking - 3580137 Classname needed in *ActivateFilter - 3585274 Local connect kills tracing +- 3528056 sfcbd --version doesn't always work Changes in 1.3.15 ================= Index: sfcBroker.c =================================================================== RCS file: /cvsroot/sblim/sfcb/sfcBroker.c,v retrieving revision 1.65 retrieving revision 1.66 diff -u -d -r1.65 -r1.66 --- sfcBroker.c 13 Sep 2012 20:32:53 -0000 1.65 +++ sfcBroker.c 9 Nov 2012 22:22:41 -0000 1.66 @@ -576,14 +576,9 @@ int syslogLevel=LOG_ERR; long dSockets,sSockets,pSockets; char *pauseStr; + int daemonize=0; sfcbUseSyslog=1; - /* SF 3462309 - If there is an instance running already, return */ - int pid_found = 0; - if ((pid_found = sfcb_is_running()) != 0) { - mlogf(M_ERROR, M_SHOW, " --- A previous instance of sfcbd [%d] is running. Exiting.\n", pid_found); - exit(1); - } name = strrchr(argv[0], '/'); if (name != NULL) ++name; @@ -627,8 +622,7 @@ break; case 'd': - daemon(0, 0); - currentProc=sfcBrokerPid=getpid(); /* req. on some systems */ + daemonize=1; break; case 'h': @@ -688,6 +682,18 @@ usage(1); } + /* SF 3462309 - If there is an instance running already, return */ + int pid_found = 0; + if ((pid_found = sfcb_is_running()) != 0) { + mlogf(M_ERROR, M_SHOW, " --- A previous instance of sfcbd [%d] is running. Exiting.\n", pid_found); + exit(1); + } + + if (daemonize){ + daemon(0, 0); + currentProc=sfcBrokerPid=getpid(); /* req. on some systems */ + } + startLogging(syslogLevel,1); mlogf(M_INFO,M_SHOW,"--- %s V" sfcHttpDaemonVersion " started - %d\n", name, currentProc); Index: ChangeLog =================================================================== RCS file: /cvsroot/sblim/sfcb/ChangeLog,v retrieving revision 1.807 retrieving revision 1.808 diff -u -d -r1.807 -r1.808 --- ChangeLog 8 Nov 2012 00:32:12 -0000 1.807 +++ ChangeLog 9 Nov 2012 22:22:41 -0000 1.808 @@ -1,3 +1,8 @@ +2012-11-09 Michael Chase-Salerno <br...@li...> + + * sfcBroker.c: + [ 3528056 ] sfcbd --version doesn't always work + 2012-11-07 Michael Chase-Salerno <br...@li...> * trace.c: |
From: Michael Chase-S. <mc...@us...> - 2012-11-08 01:15:27
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "SFCB - Small Footprint CIM Broker". The branch, master has been updated via f2cc3fe15fe22d01e088daf136c596a4ac0470ce (commit) from caa3f72ffff85d7dc5e265c70c81f3840ac8fe5a (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit f2cc3fe15fe22d01e088daf136c596a4ac0470ce Author: Michael Chase-Salerno <br...@li...> Date: Wed Nov 7 20:14:05 2012 -0500 - 3585274 Local connect kills tracing ----------------------------------------------------------------------- Summary of changes: diff --git a/NEWS b/NEWS index 11e3545..196e9df 100644 --- a/NEWS +++ b/NEWS @@ -120,6 +120,7 @@ Bugs fixed: - 3574936 --disable-debug still allocates trace variables - 3582062 Various additional error checking - 3580137 Classname needed in *ActivateFilter +- 3585274 Local connect kills tracing Changes in 1.3.15 ================= diff --git a/trace.c b/trace.c index 145679b..6a0cea7 100644 --- a/trace.c +++ b/trace.c @@ -130,7 +130,7 @@ _sfcb_trace_init() FILE *ferr = NULL; int tryid = 0xDEB001; - while ((shmid = shmget(tryid, sizeof(unsigned long), (IPC_CREAT | 0660))) < 0 && (errno == EEXIST)) tryid++; + while ((shmid = shmget(tryid, sizeof(unsigned long), (IPC_EXCL | IPC_CREAT | 0660))) < 0 && (errno == EEXIST)) tryid++; mlogf(M_INFO,M_SHOW,"--- Shared memory ID for tracing: %x\n", tryid); if (shmid < 0) { mlogf(M_ERROR,M_SHOW, "shmget(%x) failed in %s at line %d.\n", tryid, __FILE__, __LINE__ ); hooks/post-receive -- SFCB - Small Footprint CIM Broker |
From: Michael Chase-S. <mc...@us...> - 2012-11-08 00:32:16
|
Update of /cvsroot/sblim/sfcb In directory vz-cvs-3.sog:/tmp/cvs-serv7169 Modified Files: ChangeLog NEWS trace.c Log Message: 3585274 Local connect kills tracing Index: trace.c =================================================================== RCS file: /cvsroot/sblim/sfcb/trace.c,v retrieving revision 1.18 retrieving revision 1.19 diff -u -d -r1.18 -r1.19 --- trace.c 11 Apr 2012 22:55:17 -0000 1.18 +++ trace.c 8 Nov 2012 00:32:12 -0000 1.19 @@ -121,7 +121,7 @@ FILE *ferr = NULL; int tryid = 0xDEB001; - while ((shmid = shmget(tryid, sizeof(unsigned long), (IPC_CREAT | 0660))) < 0 && (errno == EEXIST)) tryid++; + while ((shmid = shmget(tryid, sizeof(unsigned long), (IPC_EXCL | IPC_CREAT | 0660))) < 0 && (errno == EEXIST)) tryid++; mlogf(M_INFO,M_SHOW,"--- Shared memory ID for tracing: %x\n", tryid); if (shmid < 0) { mlogf(M_ERROR,M_SHOW, "shmget(%x) failed in %s at line %d.\n", tryid, __FILE__, __LINE__ ); Index: ChangeLog =================================================================== RCS file: /cvsroot/sblim/sfcb/ChangeLog,v retrieving revision 1.806 retrieving revision 1.807 diff -u -d -r1.806 -r1.807 --- ChangeLog 1 Nov 2012 16:32:51 -0000 1.806 +++ ChangeLog 8 Nov 2012 00:32:12 -0000 1.807 @@ -1,3 +1,8 @@ +2012-11-07 Michael Chase-Salerno <br...@li...> + + * trace.c: + [ 3585274 ] Local connect kills tracing + 2012-11-01 Michael Chase-Salerno <br...@li...> * providerDrv.c, cmpiTestIndicationProvider.c: Index: NEWS =================================================================== RCS file: /cvsroot/sblim/sfcb/NEWS,v retrieving revision 1.721 retrieving revision 1.722 diff -u -d -r1.721 -r1.722 --- NEWS 1 Nov 2012 16:32:51 -0000 1.721 +++ NEWS 8 Nov 2012 00:32:12 -0000 1.722 @@ -22,6 +22,7 @@ - 3579637 SFCB should check ftok return code - 3582062 Various additional error checking - 3580137 Classname needed in *ActivateFilter +- 3585274 Local connect kills tracing Changes in 1.3.15 ================= |
From: Dave B. <bla...@us...> - 2012-11-05 23:04:20
|
Update of /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/http In directory vz-cvs-3.sog:/tmp/cvs-serv9454/src/org/sblim/cimclient/internal/http Modified Files: Tag: Experimental HttpMethod.java HttpClient.java Log Message: 3557283 Print full response when get EOF from CIMOM Index: HttpMethod.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/http/HttpMethod.java,v retrieving revision 1.3.2.4 retrieving revision 1.3.2.5 diff -u -d -r1.3.2.4 -r1.3.2.5 --- HttpMethod.java 10 Apr 2009 16:01:10 -0000 1.3.2.4 +++ HttpMethod.java 5 Nov 2012 23:04:18 -0000 1.3.2.5 @@ -1,5 +1,5 @@ /** - * (C) Copyright IBM Corp. 2005, 2009 + * (C) Copyright IBM Corp. 2005, 2012 * * THIS FILE IS PROVIDED UNDER THE TERMS OF THE ECLIPSE PUBLIC LICENSE * ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THIS FILE @@ -22,12 +22,16 @@ * 2204488 2008-10-28 raman_arora Fix code to remove compiler warnings * 2524131 2009-01-21 raman_arora Upgrade client to JDK 1.5 (Phase 1) * 2750520 2009-04-10 blaschke-oss Code cleanup from empty statement et al + * 3557283 2012-11-05 blaschke-oss Print full response when get EOF from CIMOM */ package org.sblim.cimclient.internal.http; import java.io.IOException; import java.io.InputStream; +import java.util.logging.Level; + +import org.sblim.cimclient.internal.logging.LogAndTraceBroker; /** * Class HttpMethod provides a method to read a line from a given input stream @@ -75,7 +79,14 @@ buffer = tmp; } } - if (flag) throw new IOException("Unexpected EOF"); + if (flag) { + LogAndTraceBroker + .getBroker() + .trace( + Level.WARNING, + "Unexpected EOF trying to read line from input stream - CIMOM closed its end of socket, check it for connection issues"); + throw new IOException("Unexpected EOF"); + } for (; used > 0 && buffer[used - 1] <= ' '; used--) { // back up over blanks and non-printables at end of line Index: HttpClient.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/http/HttpClient.java,v retrieving revision 1.12.2.31 retrieving revision 1.12.2.32 diff -u -d -r1.12.2.31 -r1.12.2.32 --- HttpClient.java 6 Jun 2012 14:43:13 -0000 1.12.2.31 +++ HttpClient.java 5 Nov 2012 23:04:18 -0000 1.12.2.32 @@ -65,6 +65,7 @@ * 3504304 2012-03-14 blaschke-oss Rename socket timeout variables * 3523918 2012-05-06 blaschke-oss "java.io.IOException: Unexpected EOF" returned as HTTP 401 * 3524050 2012-06-06 blaschke-oss Improve WWW-Authenticate in HTTPClient.java + * 3557283 2012-11-05 blaschke-oss Print full response when get EOF from CIMOM */ package org.sblim.cimclient.internal.http; @@ -361,6 +362,8 @@ private URI iUrl; + private long iPreviousResponseTime = -1; + /** * Ctor. * @@ -533,6 +536,7 @@ LogAndTraceBroker logger = LogAndTraceBroker.getBroker(); logger.entry(); try { + long ResponseTime = -1; Exception delayedException = null; if (this.iReset && this.iResponse == null) { boolean authFailed = false; @@ -541,6 +545,8 @@ do { logger.trace(Level.FINER, "Attempting http request (retry counters:" + IoRetry + "/" + AuthentificationRetry + ")"); + long RequestTime = System.currentTimeMillis(); + ResponseTime = -1; resetSocket(); this.iReset = false; try { @@ -666,6 +672,7 @@ this.iResponse = new HttpClientMethod(this.iIStream); logger.trace(Level.FINER, "HTTP Response= " + this.iResponse); + ResponseTime = System.currentTimeMillis(); this.iResponseHeaders = new HttpHeader(this.iIStream); this.iKeepAlive = false; @@ -725,6 +732,7 @@ if (this.iServerOutput != null) this.iServerOutput = null; + this.iPreviousResponseTime = ResponseTime; return HttpURLConnection.HTTP_OK; case HttpURLConnection.HTTP_UNAUTHORIZED: @@ -788,6 +796,7 @@ int status = this.iResponse.getStatus(); if (!this.iKeepAlive) closeConnection(); else this.iServerInput.close(); + this.iPreviousResponseTime = ResponseTime; return status; } } catch (SocketTimeoutException e) { @@ -795,7 +804,20 @@ } catch (IOException e) { logger.message(Messages.HTTP_CONNECTION_FAILED, new Object[] { this.iUrl, e.getMessage() }); - logger.trace(Level.FINER, "Http connection failed", e); + StringBuilder msg = new StringBuilder("Http connection failed "); + if (ResponseTime != -1) { + msg.append("after"); + msg.append(ResponseTime - RequestTime); + msg.append(" milliseconds"); + } else { + msg.append("before response received"); + } + if (this.iPreviousResponseTime != -1) { + msg.append(", "); + msg.append(System.currentTimeMillis() - this.iPreviousResponseTime); + msg.append(" milliseconds after previous response on same socket"); + } + logger.trace(Level.WARNING, msg.toString(), e); delayedException = e; if (this.iSocket != null && !this.iSocket.isClosed()) { try { @@ -816,6 +838,7 @@ if (this.iResponse != null) { logger.trace(Level.FINER, "http response code=" + this.iResponse.getStatus()); + if (ResponseTime != -1) this.iPreviousResponseTime = ResponseTime; return this.iResponse.getStatus(); } throw (IOException) (delayedException != null ? delayedException : new Exception( @@ -1055,6 +1078,7 @@ throw new IOException("Socket factory did not create socket"); } + this.iPreviousResponseTime = -1; this.iSocket.setTcpNoDelay(true); this.iSocket.setKeepAlive(true); this.iSocket.setSoTimeout(httpTimeout); |
From: Tyrel D. <ty...@us...> - 2012-11-02 22:29:24
|
Update of /cvsroot/sblim/cmpi-base In directory vz-cvs-3.sog:/tmp/cvs-serv24207 Modified Files: NEWS OSBase_UnixProcess.c Log Message: Fixed 3582069: Linux_UnixProcess command injection vulnerability Index: NEWS =================================================================== RCS file: /cvsroot/sblim/cmpi-base/NEWS,v retrieving revision 1.45 retrieving revision 1.46 diff -u -d -r1.45 -r1.46 --- NEWS 8 Feb 2012 00:35:16 -0000 1.45 +++ NEWS 2 Nov 2012 22:29:22 -0000 1.46 @@ -1,5 +1,6 @@ Bugs Fixed: - 3424288 Underlinked libcmpiOSBase_ProcessorProvider.so +- 3582069 Linux_UnixProcess command injection vulnerability Changes in Version 1.6.2 ======================== Index: OSBase_UnixProcess.c =================================================================== RCS file: /cvsroot/sblim/cmpi-base/OSBase_UnixProcess.c,v retrieving revision 1.14 retrieving revision 1.15 diff -u -d -r1.14 -r1.15 --- OSBase_UnixProcess.c 25 Jul 2009 00:37:30 -0000 1.14 +++ OSBase_UnixProcess.c 2 Nov 2012 22:29:22 -0000 1.15 @@ -86,21 +86,28 @@ char * cmd = NULL; char * str = NULL; char * ptr = NULL; - DIR * dpid = NULL; + char buf[256]; + int len = 0; int i = 0; int rc = 0; _OSBASE_TRACE(3,("--- get_process_data() called")); - cmd = (char*)malloc((strlen(pid)+100)); - sprintf(cmd, "ps -p %s --no-headers -eo pid,ppid,tty,pri,nice,uid,gid,pmem,pcpu,cputime,session,state,args",pid); - rc = runcommand( cmd , NULL, &hdout, NULL ); + sscanf(pid, "%[0-9] %n", buf, &len); + if (len != strlen(pid)) { + _OSBASE_TRACE(3,("--- get_process_data() failed : PID %s not valid", pid)); + return -1; + } + + cmd = (char*)malloc(len + 100); + sprintf(cmd, "ps -p %s --no-headers -o pid,ppid,tty,pri,nice,uid,gid,pmem,pcpu,cputime,session,state,args",buf); + rc = runcommand( cmd , NULL, &hdout, NULL ); if (rc == 0) { while( hdout[i] ) { if((ptr=strchr(hdout[i], '\n'))) { *ptr = '\0'; } str = hdout[i]; while( *str == ' ' ) { str = str+1; } - if( strncmp( str,pid,strlen(pid)) == 0 ) { + if( strncmp( str,buf,len) == 0 ) { rc = _process_data( hdout[i], sptr ); break; } @@ -108,7 +115,6 @@ } free ( cmd ); freeresultbuf( hdout ); - closedir(dpid); } else { _OSBASE_TRACE(3,("--- get_process_data() failed : PID %s not valid",pid)); |
From: Michael Chase-S. <mc...@us...> - 2012-11-01 21:38:30
|
Update of /cvsroot/sblim/sfcb In directory vz-cvs-3.sog:/tmp/cvs-serv5902 Modified Files: providerDrv.c Log Message: [ 3580137 ] Classname needed in *ActivateFilter Mistakenly changed a V1 interface Index: providerDrv.c =================================================================== RCS file: /cvsroot/sblim/sfcb/providerDrv.c,v retrieving revision 1.121 retrieving revision 1.122 diff -u -d -r1.121 -r1.122 --- providerDrv.c 1 Nov 2012 16:32:51 -0000 1.121 +++ providerDrv.c 1 Nov 2012 21:38:23 -0000 1.122 @@ -2369,7 +2369,7 @@ authorizeFilterPreV1 fptr = (authorizeFilterPreV1)info->indicationMI->ft->authorizeFilter; rci = fptr(info->indicationMI, ctx, result, - (CMPISelectExp*)se, cns, path, + (CMPISelectExp*)se, type, path, PROVCHARS(req->principal.data)); } else { rci = info->indicationMI->ft->authorizeFilter(info->indicationMI, ctx, |
From: Michael Chase-S. <mc...@us...> - 2012-11-01 21:30:10
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "SFCB - Small Footprint CIM Broker". The branch, master has been updated via caa3f72ffff85d7dc5e265c70c81f3840ac8fe5a (commit) from 2440f3bb0a6faa9772d596c34d36328abad662fe (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit caa3f72ffff85d7dc5e265c70c81f3840ac8fe5a Author: Michael Chase-Salerno <br...@li...> Date: Thu Nov 1 17:29:34 2012 -0400 [ 3580137 ] Classname needed in *ActivateFilter ----------------------------------------------------------------------- Summary of changes: diff --git a/NEWS b/NEWS index 5630194..11e3545 100644 --- a/NEWS +++ b/NEWS @@ -119,6 +119,7 @@ Bugs fixed: - 3574169 revert interop2 stageschema - 3574936 --disable-debug still allocates trace variables - 3582062 Various additional error checking +- 3580137 Classname needed in *ActivateFilter Changes in 1.3.15 ================= diff --git a/providerDrv.c b/providerDrv.c index 03a10cd..d078fa8 100644 --- a/providerDrv.c +++ b/providerDrv.c @@ -2681,6 +2681,9 @@ activateFilter(BinRequestHdr * hdr, ProviderInfo * info, int requestor) *prev = NULL; CMPIObjectPath *path = relocateSerializedObjectPath(req->objectPath.data); + // Get the string of the classname + CMPIString *cn = path->ft->getClassName(path,NULL); + const char *cns = cn->ft->getCharPtr(cn,NULL); CMPIContext *ctx = native_new_CMPIContext(MEM_TRACKED, info); CMPIResult *result = native_new_CMPIResult(0, 1, NULL); CMPIFlags flgs = 0; @@ -2750,7 +2753,7 @@ activateFilter(BinRequestHdr * hdr, ProviderInfo * info, int requestor) } else { rci = info->indicationMI->ft->authorizeFilter(info->indicationMI, ctx, (CMPISelectExp *) se, - type, path, + cns, path, PROVCHARS(req->principal. data)); } @@ -2767,7 +2770,7 @@ activateFilter(BinRequestHdr * hdr, ProviderInfo * info, int requestor) (CMPISelectExp *) se, type, path); } else { rci = info->indicationMI->ft->mustPoll(info->indicationMI, ctx, - (CMPISelectExp *) se, type, + (CMPISelectExp *) se, cns, path); } TIMING_STOP(hdr, info) @@ -2783,7 +2786,7 @@ activateFilter(BinRequestHdr * hdr, ProviderInfo * info, int requestor) } else { rci = info->indicationMI->ft->activateFilter(info->indicationMI, ctx, (CMPISelectExp *) se, - type, path, 1); + cns, path, 1); } TIMING_STOP(hdr, info) _SFCB_TRACE(1, ("--- Back from provider rc: %d", rci.rc)); @@ -2819,6 +2822,9 @@ deactivateFilter(BinRequestHdr * hdr, ProviderInfo * info, int requestor) NativeSelectExp *se = NULL, *prev = NULL; CMPIObjectPath *path = relocateSerializedObjectPath(req->objectPath.data); + // Get the string of the classname + CMPIString *cn = path->ft->getClassName(path,NULL); + const char *cns = cn->ft->getCharPtr(cn,NULL); CMPIContext *ctx = native_new_CMPIContext(MEM_TRACKED, info); CMPIResult *result = native_new_CMPIResult(0, 1, NULL); CMPIFlags flgs = 0; @@ -2867,7 +2873,7 @@ deactivateFilter(BinRequestHdr * hdr, ProviderInfo * info, int requestor) info->indicationMI->ft->deActivateFilter(info->indicationMI, ctx, (CMPISelectExp *) se, - "", path, 1); + cns, path, 1); } TIMING_STOP(hdr, info) if (rci.rc == CMPI_RC_OK) { diff --git a/test/TestProviders/cmpiTestIndicationProvider.c b/test/TestProviders/cmpiTestIndicationProvider.c index 629ba7f..348aef8 100644 --- a/test/TestProviders/cmpiTestIndicationProvider.c +++ b/test/TestProviders/cmpiTestIndicationProvider.c @@ -139,17 +139,21 @@ indProvIndicationCleanup(CMPIIndicationMI * cThis, const CMPIContext *ctx, CMPIStatus indProvAuthorizeFilter (CMPIIndicationMI * cThis, const CMPIContext *ctx, - const CMPISelectExp *filter, const char *indType, + const CMPISelectExp *filter, const char *clsName, const CMPIObjectPath * classPath, const char *owner) { + char* op = CMGetCharPtr(CMObjectPathToString(classPath, NULL)); + fprintf (stderr, "+++ indProvAuthorizeFilter for %s %s\n", op, clsName); CMReturn(CMPI_RC_OK); } CMPIStatus indProvMustPoll (CMPIIndicationMI * cThis, const CMPIContext *ctx, - const CMPISelectExp *filter, const char *indType, + const CMPISelectExp *filter, const char *clsName, const CMPIObjectPath * classPath) { + char* op = CMGetCharPtr(CMObjectPathToString(classPath, NULL)); + fprintf (stderr, "+++ indProvMustPoll for %s %s\n", op, clsName); CMReturn(CMPI_RC_OK); } @@ -159,7 +163,7 @@ CMPIStatus indProvActivateFilter const CMPIObjectPath * classPath, CMPIBoolean firstActivation) { char* op = CMGetCharPtr(CMObjectPathToString(classPath, NULL)); - fprintf (stderr, "+++ indProvActivateFilter() for %s\n", op); + fprintf (stderr, "+++ indProvActivateFilter() for %s %s\n", op, clsName); if (strcmp(op, "root/interop:Test_Indication") == 0) activated = 1; @@ -176,7 +180,7 @@ CMPIStatus indProvDeActivateFilter fprintf(stderr, "+++ indProvDeActivateFilter\n"); char* op = CMGetCharPtr(CMObjectPathToString(classPath, NULL)); - fprintf (stderr, "+++ indProvDeActivateFilter for %s\n", op); + fprintf (stderr, "+++ indProvDeActivateFilter for %s %s\n", op, clsName); if (strcmp(op, "root/interop:Test_Indication") == 0) activated = 0; hooks/post-receive -- SFCB - Small Footprint CIM Broker |
From: Michael Chase-S. <mc...@us...> - 2012-11-01 16:32:55
|
Update of /cvsroot/sblim/sfcb/test/TestProviders In directory vz-cvs-3.sog:/tmp/cvs-serv3615/test/TestProviders Modified Files: cmpiTestIndicationProvider.c Log Message: [ 3580137 ] Classname needed in *ActivateFilter Index: cmpiTestIndicationProvider.c =================================================================== RCS file: /cvsroot/sblim/sfcb/test/TestProviders/cmpiTestIndicationProvider.c,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- cmpiTestIndicationProvider.c 20 Jun 2012 18:47:18 -0000 1.4 +++ cmpiTestIndicationProvider.c 1 Nov 2012 16:32:52 -0000 1.5 @@ -150,19 +150,22 @@ CMPIStatus indProvAuthorizeFilter (CMPIIndicationMI * cThis, const CMPIContext * ctx, - const CMPISelectExp * filter, const char *indType, + const CMPISelectExp * filter, const char *clsName, const CMPIObjectPath * classPath, const char *owner) { - + char* op = CMGetCharPtr(CMObjectPathToString(classPath, NULL)); + fprintf (stderr, "+++ indProvAuthorizeFilter for %s %s\n", op, clsName); CMReturn (CMPI_RC_OK); } CMPIStatus indProvMustPoll (CMPIIndicationMI * cThis, const CMPIContext * ctx, - const CMPISelectExp * filter, const char *indType, + const CMPISelectExp * filter, const char *clsName, const CMPIObjectPath * classPath) { + char* op = CMGetCharPtr(CMObjectPathToString(classPath, NULL)); + fprintf (stderr, "+++ indProvMustPoll for %s %s\n", op, clsName); CMReturn (CMPI_RC_OK); } @@ -172,7 +175,7 @@ const CMPIObjectPath * classPath, CMPIBoolean firstActivation) { char* op = CMGetCharPtr(CMObjectPathToString(classPath, NULL)); - fprintf (stderr, "+++ indProvActivateFilter() for %s\n", op); + fprintf (stderr, "+++ indProvActivateFilter() for %s %s\n", op, clsName); if (strcmp(op, "root/interop:Test_Indication") == 0) activated = 1; @@ -188,7 +191,7 @@ const CMPIObjectPath * classPath, CMPIBoolean lastActivation) { char* op = CMGetCharPtr(CMObjectPathToString(classPath, NULL)); - fprintf (stderr, "+++ indProvDeActivateFilter for %s\n", op); + fprintf (stderr, "+++ indProvDeActivateFilter for %s %s\n", op, clsName); if (strcmp(op, "root/interop:Test_Indication") == 0) activated = 0; |
From: Michael Chase-S. <mc...@us...> - 2012-11-01 16:32:54
|
Update of /cvsroot/sblim/sfcb In directory vz-cvs-3.sog:/tmp/cvs-serv3615 Modified Files: ChangeLog NEWS providerDrv.c Log Message: [ 3580137 ] Classname needed in *ActivateFilter Index: NEWS =================================================================== RCS file: /cvsroot/sblim/sfcb/NEWS,v retrieving revision 1.720 retrieving revision 1.721 diff -u -d -r1.720 -r1.721 --- NEWS 31 Oct 2012 01:40:09 -0000 1.720 +++ NEWS 1 Nov 2012 16:32:51 -0000 1.721 @@ -21,6 +21,7 @@ - 3574936 --disable-debug still allocates trace variables - 3579637 SFCB should check ftok return code - 3582062 Various additional error checking +- 3580137 Classname needed in *ActivateFilter Changes in 1.3.15 ================= Index: providerDrv.c =================================================================== RCS file: /cvsroot/sblim/sfcb/providerDrv.c,v retrieving revision 1.120 retrieving revision 1.121 diff -u -d -r1.120 -r1.121 --- providerDrv.c 6 Oct 2012 01:19:15 -0000 1.120 +++ providerDrv.c 1 Nov 2012 16:32:51 -0000 1.121 @@ -2307,6 +2307,9 @@ CMPIStatus rci = { CMPI_RC_OK, NULL }; NativeSelectExp *se=NULL,*prev=NULL; CMPIObjectPath *path = relocateSerializedObjectPath(req->objectPath.data); + // Get the string of the classname + CMPIString *cn = path->ft->getClassName(path,NULL); + const char *cns = cn->ft->getCharPtr(cn,NULL); CMPIContext *ctx = native_new_CMPIContext(MEM_TRACKED,info); CMPIResult *result = native_new_CMPIResult(0,1,NULL); CMPIFlags flgs=0; @@ -2366,11 +2369,11 @@ authorizeFilterPreV1 fptr = (authorizeFilterPreV1)info->indicationMI->ft->authorizeFilter; rci = fptr(info->indicationMI, ctx, result, - (CMPISelectExp*)se, type, path, + (CMPISelectExp*)se, cns, path, PROVCHARS(req->principal.data)); } else { rci = info->indicationMI->ft->authorizeFilter(info->indicationMI, ctx, - (CMPISelectExp*)se, type, path, + (CMPISelectExp*)se, cns, path, PROVCHARS(req->principal.data)); } TIMING_STOP(hdr,info) @@ -2386,7 +2389,7 @@ (CMPISelectExp*)se, type, path); } else { rci = info->indicationMI->ft->mustPoll(info->indicationMI, ctx, - (CMPISelectExp*)se, type, path); + (CMPISelectExp*)se, cns, path); } TIMING_STOP(hdr,info) _SFCB_TRACE(1, ("--- Back from provider rc: %d", rci.rc)); @@ -2400,7 +2403,7 @@ (CMPISelectExp*)se, type, path, 1); } else { rci = info->indicationMI->ft->activateFilter(info->indicationMI, ctx, - (CMPISelectExp*)se, type, path, 1); + (CMPISelectExp*)se, cns, path, 1); } TIMING_STOP(hdr,info) _SFCB_TRACE(1, ("--- Back from provider rc: %d", rci.rc)); @@ -2436,6 +2439,9 @@ CMPIStatus rci = { CMPI_RC_OK, NULL }; NativeSelectExp *se=NULL, *prev = NULL; CMPIObjectPath *path = relocateSerializedObjectPath(req->objectPath.data); + //Get the string of the classname + CMPIString *cn = path->ft->getClassName(path,NULL); + const char *cns = cn->ft->getCharPtr(cn,NULL); CMPIContext *ctx = native_new_CMPIContext(MEM_TRACKED,info); CMPIResult *result = native_new_CMPIResult(0,1,NULL); CMPIFlags flgs=0; @@ -2470,7 +2476,7 @@ (CMPISelectExp*)se, "", path, 1); } else { rci = info->indicationMI->ft->deActivateFilter(info->indicationMI, ctx, - (CMPISelectExp*)se, "", path, 1); + (CMPISelectExp*)se, cns, path, 1); } TIMING_STOP(hdr,info) if (rci.rc==CMPI_RC_OK) { Index: ChangeLog =================================================================== RCS file: /cvsroot/sblim/sfcb/ChangeLog,v retrieving revision 1.805 retrieving revision 1.806 diff -u -d -r1.805 -r1.806 --- ChangeLog 31 Oct 2012 01:40:09 -0000 1.805 +++ ChangeLog 1 Nov 2012 16:32:51 -0000 1.806 @@ -1,3 +1,8 @@ +2012-11-01 Michael Chase-Salerno <br...@li...> + + * providerDrv.c, cmpiTestIndicationProvider.c: + [ 3580137 ] Classname needed in *ActivateFilter + 2012-10-30 Chris Buccella <buc...@li...> * instance.c, brokerUpc.c: |
From: Chris B. <buc...@us...> - 2012-11-01 15:56:01
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "SFCB - Small Footprint CIM Broker". The branch, master has been updated via 2440f3bb0a6faa9772d596c34d36328abad662fe (commit) from 1023f4ec4b3049b2bf895c5bf88a410eeff23973 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 2440f3bb0a6faa9772d596c34d36328abad662fe Author: buccella <buc...@li...> Date: Thu Nov 1 11:55:13 2012 -0400 [ 3582062 ] Various additional error checking ----------------------------------------------------------------------- Summary of changes: diff --git a/NEWS b/NEWS index b5099bb..5630194 100644 --- a/NEWS +++ b/NEWS @@ -118,6 +118,7 @@ Bugs fixed: - 3539569 Leaks in interopProvider - 3574169 revert interop2 stageschema - 3574936 --disable-debug still allocates trace variables +- 3582062 Various additional error checking Changes in 1.3.15 ================= diff --git a/brokerUpc.c b/brokerUpc.c index 6e5fba1..2f95867 100644 --- a/brokerUpc.c +++ b/brokerUpc.c @@ -154,7 +154,12 @@ deliverIndication(const CMPIBroker * mb, const CMPIContext *ctx, CMPI_uint64 #endif ); - CBInvokeMethod(mb, ctx, op, "_deliver", in, NULL, &st); + /* 85507 filterId was NULL on interopProvider side; check it here */ + if (&se->filterId) + CBInvokeMethod(mb,ctx,op,"_deliver",in,NULL,&st); + else + mlogf(M_ERROR,M_SHOW,"--- Failed to queue indication for delivery: missing filter\n"); + CMRelease(op); CMRelease(in); } diff --git a/instance.c b/instance.c index 953fea4..c347b40 100644 --- a/instance.c +++ b/instance.c @@ -76,7 +76,7 @@ struct native_instance { }; #ifdef HAVE_DEFAULT_PROPERTIES -static void instFillDefaultProperties(struct native_instance *inst, +static int instFillDefaultProperties(struct native_instance *inst, const char *ns, const char *cn); #endif @@ -522,6 +522,12 @@ __ift_getObjectPath(const CMPIInstance *instance, CMPIStatus *rc) mtx = memAlloc(MEM_TRACKED, sizeof(CMPI_MUTEX_TYPE), &dummy); *mtx = Broker->xft->newMutex(0); } + if (! *mtx) { + mlogf(M_ERROR, M_SHOW, "--- Could not get op for instance of %s; mutex creation failure\n", cn); + CMSetStatus(rc, CMPI_RC_ERR_FAILED); + return NULL; + } + Broker->xft->lockMutex(*mtx); if (klt == NULL) klt = UtilFactory->newHashTable(61, @@ -931,7 +937,9 @@ internal_new_CMPIInstance(int mode, const CMPIObjectPath * cop, #ifdef HAVE_DEFAULT_PROPERTIES if (!override) { - instFillDefaultProperties(&instance, ns, cn); + if (instFillDefaultProperties(&instance,ns,cn)) { + mlogf(M_ERROR, M_SHOW, "--- Could not fill default properties for instance of %ss; mutex creation failure\n", cn); + } } #endif @@ -1120,7 +1128,7 @@ setInstanceLocalMode(int mode) } #ifdef HAVE_DEFAULT_PROPERTIES -static void +static int instFillDefaultProperties(struct native_instance *inst, const char *ns, const char *cn) { @@ -1137,6 +1145,9 @@ instFillDefaultProperties(struct native_instance *inst, mtx = malloc(sizeof(CMPI_MUTEX_TYPE)); *mtx = Broker->xft->newMutex(0); } + if (!*mtx) { + return -1; + } Broker->xft->lockMutex(*mtx); if (clt == NULL) clt = @@ -1181,6 +1192,7 @@ instFillDefaultProperties(struct native_instance *inst, } } } + return 0; } #endif hooks/post-receive -- SFCB - Small Footprint CIM Broker |
From: Chris B. <buc...@us...> - 2012-10-31 01:40:12
|
Update of /cvsroot/sblim/sfcb In directory vz-cvs-3.sog:/tmp/cvs-serv18367 Modified Files: instance.c brokerUpc.c ChangeLog NEWS Log Message: [ 3582062 ] Various additional error checking Index: NEWS =================================================================== RCS file: /cvsroot/sblim/sfcb/NEWS,v retrieving revision 1.719 retrieving revision 1.720 diff -u -d -r1.719 -r1.720 --- NEWS 24 Oct 2012 05:01:28 -0000 1.719 +++ NEWS 31 Oct 2012 01:40:09 -0000 1.720 @@ -20,6 +20,7 @@ - 3573507 CreateInstance for IndicationFilter doesn't accept DMTF:CQL - 3574936 --disable-debug still allocates trace variables - 3579637 SFCB should check ftok return code +- 3582062 Various additional error checking Changes in 1.3.15 ================= Index: brokerUpc.c =================================================================== RCS file: /cvsroot/sblim/sfcb/brokerUpc.c,v retrieving revision 1.42 retrieving revision 1.43 diff -u -d -r1.42 -r1.43 --- brokerUpc.c 19 Jul 2012 17:21:22 -0000 1.42 +++ brokerUpc.c 31 Oct 2012 01:40:09 -0000 1.43 @@ -148,7 +148,12 @@ CMPI_uint64 #endif ); - CBInvokeMethod(mb,ctx,op,"_deliver",in,NULL,&st); + /* 85507 filterId was NULL on interopProvider side; check it here */ + if (&se->filterId) + CBInvokeMethod(mb,ctx,op,"_deliver",in,NULL,&st); + else + mlogf(M_ERROR,M_SHOW,"--- Failed to queue indication for delivery: missing filter\n"); + CMRelease(op); /* 3497209 */ CMRelease(in); } Index: instance.c =================================================================== RCS file: /cvsroot/sblim/sfcb/instance.c,v retrieving revision 1.55 retrieving revision 1.56 diff -u -d -r1.55 -r1.56 --- instance.c 18 May 2012 22:57:47 -0000 1.55 +++ instance.c 31 Oct 2012 01:40:09 -0000 1.56 @@ -73,7 +73,7 @@ }; #ifdef HAVE_DEFAULT_PROPERTIES -static void instFillDefaultProperties(struct native_instance *inst, +static int instFillDefaultProperties(struct native_instance *inst, const char * ns, const char * cn); #endif @@ -485,6 +485,11 @@ mtx = memAlloc(MEM_TRACKED, sizeof(CMPI_MUTEX_TYPE), &dummy); *mtx = Broker->xft->newMutex(0); } + if (! *mtx) { + mlogf(M_ERROR, M_SHOW, "--- Could not get op for instance of %s; mutex creation failure\n", cn); + CMSetStatus(rc, CMPI_RC_ERR_FAILED); + return NULL; + } Broker->xft->lockMutex(*mtx); if (klt == NULL) klt = UtilFactory->newHashTable(61, UtilHashTable_charKey | UtilHashTable_ignoreKeyCase); @@ -860,7 +865,9 @@ #ifdef HAVE_DEFAULT_PROPERTIES if(!override) { - instFillDefaultProperties(&instance,ns,cn); + if (instFillDefaultProperties(&instance,ns,cn)) { + mlogf(M_ERROR, M_SHOW, "--- Could not fill default properties for instance of %ss; mutex creation failure\n", cn); + } } #endif @@ -1019,7 +1026,7 @@ } #ifdef HAVE_DEFAULT_PROPERTIES -static void instFillDefaultProperties(struct native_instance *inst, +static int instFillDefaultProperties(struct native_instance *inst, const char * ns, const char * cn) { static CMPI_MUTEX_TYPE * mtx = NULL; @@ -1035,6 +1042,9 @@ mtx = malloc(sizeof(CMPI_MUTEX_TYPE)); *mtx = Broker->xft->newMutex(0); } + if (!*mtx) { + return -1; + } Broker->xft->lockMutex(*mtx); if (clt == NULL) clt = UtilFactory->newHashTable(61, @@ -1075,6 +1085,8 @@ } } } + + return 0; } #endif Index: ChangeLog =================================================================== RCS file: /cvsroot/sblim/sfcb/ChangeLog,v retrieving revision 1.804 retrieving revision 1.805 diff -u -d -r1.804 -r1.805 --- ChangeLog 24 Oct 2012 05:01:28 -0000 1.804 +++ ChangeLog 31 Oct 2012 01:40:09 -0000 1.805 @@ -1,3 +1,8 @@ +2012-10-30 Chris Buccella <buc...@li...> + + * instance.c, brokerUpc.c: + [ 3582062 ] Various additional error checking + 2012-10-24 Dave Heller <hel...@us...> * msgqueue.c |
From: Tyrel D. <ty...@us...> - 2012-10-27 01:08:34
|
Update of /cvsroot/sblim/gather In directory vz-cvs-3.sog:/tmp/cvs-serv3513 Modified Files: Makefile.am NEWS configure.ac Log Message: Fixed 3019058: add man pages/help for gatherd and reposd Index: NEWS =================================================================== RCS file: /cvsroot/sblim/gather/NEWS,v retrieving revision 1.135 retrieving revision 1.136 diff -u -d -r1.135 -r1.136 --- NEWS 25 Oct 2012 23:13:51 -0000 1.135 +++ NEWS 27 Oct 2012 01:08:30 -0000 1.136 @@ -7,6 +7,9 @@ 3573315 thread cleanup segv if gather libs unloaded 3580235 use setProperty for instance keys under Pegasus +Features added: +- 3019058 add man pages/help for gatherd and reposd + Changes in Version 2.2.6 ======================== Index: configure.ac =================================================================== RCS file: /cvsroot/sblim/gather/configure.ac,v retrieving revision 1.44 retrieving revision 1.45 diff -u -d -r1.44 -r1.45 --- configure.ac 15 Aug 2012 03:02:14 -0000 1.44 +++ configure.ac 27 Oct 2012 01:08:31 -0000 1.45 @@ -24,6 +24,8 @@ AC_PROG_LIBTOOL AM_PROG_CC_C_O +AC_CHECK_PROG(enable_man,xmlto,"yes","no") + # Features AC_ARG_ENABLE(base, [AS_HELP_STRING([--disable-base], @@ -166,7 +168,10 @@ CHECK_TESTSUITE AC_CONFIG_FILES([Makefile sblim-gather.spec gatherer.init-suse - gatherer.init-redhat gatherer.init-none]) + gatherer.init-redhat gatherer.init-none + man/gatherd.8.xml.pre man/gatherctl.8.xml.pre + man/gatherd.conf.5.xml.pre man/reposd.8.xml.pre + man/reposctl.8.xml.pre man/reposd.conf.5.xml.pre]) AC_SUBST(ARCHDEF) @@ -174,6 +179,7 @@ AM_CONDITIONAL(VIRT_METRICS, [test "$enable_virt" == "yes"]) AM_CONDITIONAL(Z_METRICS, [test "$enable_z" == "yes"]) AM_CONDITIONAL(PROVIDER,[test "$enable_provider" == "yes"]) +AM_CONDITIONAL(GENMAN,[test "$enable_man" == "yes"]) if test "$enable_debug" == "yes" then @@ -196,6 +202,8 @@ echo "Enable Provider: " $enable_provider echo "Enable Debug: " $enable_debug echo "" +echo "Build manpages (requires xmlto): " $enable_man +echo "" if test $enable_provider == yes then echo "CIMSERVER: " $CIMSERVER Index: Makefile.am =================================================================== RCS file: /cvsroot/sblim/gather/Makefile.am,v retrieving revision 1.27 retrieving revision 1.28 diff -u -d -r1.27 -r1.28 --- Makefile.am 1 Oct 2012 02:15:35 -0000 1.27 +++ Makefile.am 27 Oct 2012 01:08:30 -0000 1.28 @@ -45,6 +45,9 @@ # doc_DATA=README AUTHORS COPYING README.TEST reposd2csv.pl +MANFILES=man/gatherd.8 man/gatherctl.8 man/gatherd.conf.5 \ + man/reposd.8 man/reposctl.8 man/reposd.conf.5 + if BASE_METRICS BASE_DOC=plugin/metricIPProtocolEndpoint.readme \ plugin/metricNetworkPort.readme \ @@ -383,6 +386,9 @@ # Gather init scripts EXTRA_DIST += gatherer.init-suse.in gatherer.init-redhat.in \ gatherer.init-none.in +if GENMAN +man_MANS=$(MANFILES) +endif init_SCRIPTS=gatherer @@ -390,6 +396,18 @@ sed -e s?$$\{prefix\}?$(prefix)?g \ -e s?$$\{exec_prefix\}?$(prefix)?g $< > $@ +SUFFIXES = .xml .xml.pre .5.xml .8.xml .5 .8 + +.xml.pre.xml: + sed -e s?$$\{prefix\}?$(prefix)?g \ + -e s?$$\{exec_prefix\}?$(prefix)?g $< > $@ + +.5.xml.5: + xmlto -o man man $< + +.8.xml.8: + xmlto -o man man $< + # Gather config files sysconf_DATA = gatherd.conf reposd.conf EXTRA_DIST += $(sysconf_DATA) @@ -409,7 +427,8 @@ $(MAKE) -C $(PROVIDER_SUBDIR) preuninstall clean-local: - rm -f gatherer gatherer.init-redhat gatherer.init-suse gatherer.init-none + rm -f gatherer gatherer.init-redhat gatherer.init-suse gatherer.init-none \ + man/*.8 man/*.5 dist-hook: test -d "$(distdir)" && rm -rf `find $(distdir) -type d -name CVS` |
Update of /cvsroot/sblim/gather/man In directory vz-cvs-3.sog:/tmp/cvs-serv3513/man Added Files: gatherctl.8.xml.pre.in gatherd.8.xml.pre.in gatherd.conf.5.xml.pre.in reposctl.8.xml.pre.in reposd.8.xml.pre.in reposd.conf.5.xml.pre.in Log Message: Fixed 3019058: add man pages/help for gatherd and reposd --- NEW FILE: gatherd.8.xml.pre.in --- <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd"> <refentry id="gatherd"> <refentryinfo> <productname>@PACKAGE_NAME@-@PACKAGE_VERSION@</productname> </refentryinfo> <refmeta> <refentrytitle>gatherd</refentrytitle> <manvolnum>8</manvolnum> <refmiscinfo class="manual">Linux Programmer's Manual</refmiscinfo> </refmeta> <refnamediv> <refname>gatherd</refname> <refpurpose>SBLIM metric collection daemon</refpurpose> <refclass>UNIX/Linux</refclass> </refnamediv> <refsynopsisdiv> <cmdsynopsis> <command>gatherd</command> <arg choice="opt"><replaceable>argument</replaceable></arg> </cmdsynopsis> </refsynopsisdiv> <refsect1> <title>Description</title> <para> The <command>gatherd</command> program is a system daemon that collects performance metrics for various components via a set of metric plugins. Raw metric data is forwarded to a seperate repository daemon that is located either locally or remotely (see <citerefentry><refentrytitle>reposd</refentrytitle> <manvolnum>8</manvolnum></citerefentry>). The repository destination, location of plugin directory, and other controllable configuration options are described in the configuration file man page (see <citerefentry> <refentrytitle>gatherd.conf</refentrytitle> <manvolnum>5</manvolnum></citerefentry>). </para> <para> The <command>gatherd</command> daemon can be controlled at runtime by way of the <citerefentry><refentrytitle>gatherctl</refentrytitle><manvolnum>8</manvolnum> </citerefentry> command. This provides the ability to load and unload metric plugins online without the need to restart <command>gatherd</command>. </para> <para> The primary goal of the the sblim-gather package is to implement the DMTF's Base Metric Model (DSP1053). While, <command>gatherd</command>, <citerefentry><refentrytitle>reposd</refentrytitle> <manvolnum>8</manvolnum></citerefentry>, and their plugins can be used standalone, the greatest benefit comes from using their CIM provider layer in conjuction with a CIM Object Manager (see <citerefentry><refentrytitle>cimserver</refentrytitle> <manvolnum>1</manvolnum></citerefentry>). For more information about CIM and the Base Metric Model refer to the Distrubuted Management Task Force (DMTF) at http://www.dmtf.org. </para> </refsect1> <refsect1> <title>Options</title> <variablelist> <varlistentry> <term><option><replaceable>argument</replaceable></option></term> <listitem> <para><command>gatherd</command> daemonizes by default. Passing any value on the command line will cause it to run in the terminal.</para> </listitem> </varlistentry> </variablelist> </refsect1> <refsect1> <title>Files</title> <variablelist> <varlistentry> <term><replaceable>@sysconfdir@/gatherd.conf</replaceable></term> <listitem> <para>This file contains the daemon configuration settings. See <citerefentry> <refentrytitle>gatherd.conf</refentrytitle> <manvolnum>5</manvolnum> </citerefentry> for more information.</para> </listitem> </varlistentry> </variablelist> </refsect1> <refsect1> <title>Bugs</title> <para>The SBLIM project maintains a mailing list to which you should direct all questions regarding sfcb, sfcc, wbemcli, the metric data gatherer, or any of the SBLIM providers. To subscribe to this list visit: <screen><![CDATA[https://lists.sourceforge.net/lists/listinfo/sblim-issues]]></screen> </para> <para>Please report bugs you discover to the bug tracker. The SBLIM project bug tracking page can be found at: <screen><![CDATA[https://sourceforge.net/tracker/?group_id=128809&atid=712784]]></screen> </para> </refsect1> <refsect1> <title>Authors</title> <para>Please refer to the AUTHORS file distributed with sblim-gather.</para> </refsect1> <refsect1> <title>Copyright</title> <para>Copyright © 2003-2012 IBM Corp.</para> </refsect1> <refsect1> <title>License</title> <para><command>gatherd</command> is distributed under the terms of the Eclipse Public License ("Agreement"). Any use, reproduction or distribution of this program constitutes recipeients acceptance of the agreement.</para> <para>You can obtain a current copy of the Eclipse Public License from http://www.opensource.org/licenses/eclipse-1.0.php</para> </refsect1> <refsect1> <title>See Also</title> <para> <citerefentry> <refentrytitle>gatherctl</refentrytitle> <manvolnum>8</manvolnum> </citerefentry>, <citerefentry> <refentrytitle>gatherd.conf</refentrytitle> <manvolnum>5</manvolnum> </citerefentry>, <citerefentry> <refentrytitle>reposd</refentrytitle> <manvolnum>8</manvolnum> </citerefentry>, <citerefentry> <refentrytitle>cimserver</refentrytitle> <manvolnum>1</manvolnum> </citerefentry> </para> </refsect1> </refentry> --- NEW FILE: reposd.8.xml.pre.in --- <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd"> <refentry id="reposd"> <refentryinfo> <productname>@PACKAGE_NAME@-@PACKAGE_VERSION@</productname> </refentryinfo> <refmeta> <refentrytitle>reposd</refentrytitle> <manvolnum>8</manvolnum> <refmiscinfo class="manual">Linux Programmer's Manual</refmiscinfo> </refmeta> <refnamediv> <refname>reposd</refname> <refpurpose>SBLIM metric repository daemon</refpurpose> <refclass>UNIX/Linux</refclass> </refnamediv> <refsynopsisdiv> <cmdsynopsis> <command>reposd</command> <arg choice="opt"><replaceable>argument</replaceable></arg> </cmdsynopsis> </refsynopsisdiv> <refsect1> <title>Description</title> <para> The <command>reposd</command> program is a system daemon that maintains a temporary repository of raw performance metrics for various system components. Raw metric data is forwarded from a seperate collection daemon that is located either locally or remotely (see <citerefentry><refentrytitle>gatherd</refentrytitle> <manvolnum>8</manvolnum></citerefentry>). The calculation of usable metrics from raw data is performed via repository metric plugins. The repository communication port, location of plugin directory, and other controllable configuration options are described in the configuration file man page (see <citerefentry> <refentrytitle>reposd.conf</refentrytitle> <manvolnum>5</manvolnum></citerefentry>). </para> <para> The <command>reposd</command> daemon can be controlled at runtime by way of the <citerefentry><refentrytitle>reposctl</refentrytitle><manvolnum>8</manvolnum> </citerefentry> command. This provides the ability to query metric values or load and unload metric plugins online without the need to restart <command>reposd</command>. </para> <para> The primary goal of the the sblim-gather package is to implement the DMTF's Base Metric Model (DSP1053). While, <command>reposd</command>, <citerefentry><refentrytitle>gatherd</refentrytitle> <manvolnum>8</manvolnum></citerefentry>, and their plugins can be used standalone, the greatest benefit comes from using their CIM provider layer in conjuction with a CIM Object Manager (see <citerefentry><refentrytitle>cimserver</refentrytitle> <manvolnum>1</manvolnum></citerefentry>). For more information about CIM and the Base Metric Model refer to the Distrubuted Management Task Force (DMTF) at http://www.dmtf.org. </para> </refsect1> <refsect1> <title>Options</title> <variablelist> <varlistentry> <term><option><replaceable>argument</replaceable></option></term> <listitem> <para><command>reposd</command> daemonizes by default. Passing any value on the command line will cause it to run in the terminal.</para> </listitem> </varlistentry> </variablelist> </refsect1> <refsect1> <title>Files</title> <variablelist> <varlistentry> <term><replaceable>@sysconfdir@/reposd.conf</replaceable></term> <listitem> <para>This file contains the daemon configuration settings. See <citerefentry> <refentrytitle>reposd.conf</refentrytitle> <manvolnum>5</manvolnum> </citerefentry> for more information.</para> </listitem> </varlistentry> </variablelist> </refsect1> <refsect1> <title>Bugs</title> <para>The SBLIM project maintains a mailing list to which you should direct all questions regarding sfcb, sfcc, wbemcli, the metric data gatherer, or any of the SBLIM providers. To subscribe to this list visit: <screen><![CDATA[https://lists.sourceforge.net/lists/listinfo/sblim-issues]]></screen> </para> <para>Please report bugs you discover to the bug tracker. The SBLIM project bug tracking page can be found at: <screen><![CDATA[https://sourceforge.net/tracker/?group_id=128809&atid=712784]]></screen> </para> </refsect1> <refsect1> <title>Authors</title> <para>Please refer to the AUTHORS file distributed with sblim-gather.</para> </refsect1> <refsect1> <title>Copyright</title> <para>Copyright © 2003-2012 IBM Corp.</para> </refsect1> <refsect1> <title>License</title> <para><command>reposd</command> is distributed under the terms of the Eclipse Public License ("Agreement"). Any use, reproduction or distribution of this program constitutes recipeients acceptance of the agreement.</para> <para>You can obtain a current copy of the Eclipse Public License from http://www.opensource.org/licenses/eclipse-1.0.php</para> </refsect1> <refsect1> <title>See Also</title> <para> <citerefentry> <refentrytitle>reposctl</refentrytitle> <manvolnum>8</manvolnum> </citerefentry>, <citerefentry> <refentrytitle>reposd.conf</refentrytitle> <manvolnum>5</manvolnum> </citerefentry>, <citerefentry> <refentrytitle>gatherd</refentrytitle> <manvolnum>8</manvolnum> </citerefentry>, <citerefentry> <refentrytitle>cimserver</refentrytitle> <manvolnum>1</manvolnum> </citerefentry> </para> </refsect1> </refentry> --- NEW FILE: reposctl.8.xml.pre.in --- <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd"> <refentry id="reposctl"> <refentryinfo> <productname>@PACKAGE_NAME@-@PACKAGE_VERSION@</productname> </refentryinfo> <refmeta> <refentrytitle>reposctl</refentrytitle> <manvolnum>8</manvolnum> <refmiscinfo class="manual">Linux Programmer's Manual</refmiscinfo> </refmeta> <refnamediv> <refname>reposctl</refname> <refpurpose>control utility for reposd</refpurpose> <refclass>UNIX/Linux</refclass> </refnamediv> <refsynopsisdiv> <cmdsynopsis> <command>reposctl</command> </cmdsynopsis> </refsynopsisdiv> <refsect1> <title>Description</title> <para> <command>reposctl</command> is a simple shell program for controling the <citerefentry> <refentrytitle>reposd</refentrytitle><manvolnum>8</manvolnum> </citerefentry> metric repository daemon. It provides the ability to manipulate the state of the daemon as well as online loading and unloading of metric repository plugins. </para> </refsect1> <refsect1> <title>Commands</title> <variablelist> <varlistentry> <term><option>h</option></term> <listitem><para>print help message</para></listitem> </varlistentry> <varlistentry> <term><option>s</option></term> <listitem><para>print status of daemon</para></listitem> </varlistentry> <varlistentry> <term><option>i</option></term> <listitem><para>initialize repository service</para></listitem> </varlistentry> <varlistentry> <term><option>t</option></term> <listitem><para>terminate repository service</para></listitem> </varlistentry> <varlistentry> <term><option>l</option> <replaceable>pluginlib</replaceable></term> <listitem><para>load plugin library</para></listitem> </varlistentry> <varlistentry> <term><option>u</option> <replaceable>pluginlib</replaceable></term> <listitem><para>unload plugin library</para></listitem> </varlistentry> <varlistentry> <term><option>v</option> <replaceable>pluginlib</replaceable></term> <listitem><para>view/list metrics supported by plugin library</para></listitem> </varlistentry> <varlistentry> <term><option>q</option></term> <listitem><para>quit/exit control utility</para></listitem> </varlistentry> <varlistentry> <term><option>g</option> <replaceable>id</replaceable></term> <listitem><para>retrieve values for given metric id</para></listitem> </varlistentry> <varlistentry> <term><option>f</option> <replaceable>id</replaceable> <replaceable>num</replaceable></term> <listitem><para>retrieve filtered (top-n, sorted) values for given metric id</para></listitem> </varlistentry> <varlistentry> <term><option>r</option> <replaceable>id</replaceable></term> <listitem><para>list system and type of resource for given metrid id</para></listitem> </varlistentry> <varlistentry> <term><option>G</option></term> <listitem><para>list current global metric filter</para></listitem> </varlistentry> <varlistentry> <term><option>F</option> <replaceable>num</replaceable></term> <listitem><para>set the global metric filter</para></listitem> </varlistentry> <varlistentry> <term><option>k</option></term> <listitem><para>kill gathering daemon</para></listitem> </varlistentry> <varlistentry> <term><option>d</option></term> <listitem><para>start gathering daemon</para></listitem> </varlistentry> </variablelist> </refsect1> <refsect1> <title>Files</title> <variablelist> <varlistentry> <term><replaceable>@sysconfdir@/reposd.conf</replaceable></term> <listitem> <para>This file contains the daemon configuration settings. See <citerefentry> <refentrytitle>reposd.conf</refentrytitle> <manvolnum>5</manvolnum> </citerefentry> for more information.</para> </listitem> </varlistentry> </variablelist> </refsect1> <refsect1> <title>Bugs</title> <para>The SBLIM project maintains a mailing list to which you should direct all questions regarding sfcb, sfcc, wbemcli, the metric data gatherer, or any of the SBLIM providers. To subscribe to this list visit: <screen><![CDATA[https://lists.sourceforge.net/lists/listinfo/sblim-issues]]></screen> </para> <para>Please report bugs you discover to the bug tracker. The SBLIM project bug tracking page can be found at: <screen><![CDATA[https://sourceforge.net/tracker/?group_id=128809&atid=712784]]></screen> </para> </refsect1> <refsect1> <title>Authors</title> <para>Please refer to the AUTHORS file distributed with sblim-gather.</para> </refsect1> <refsect1> <title>Copyright</title> <para>Copyright © 2003-2012 IBM Corp.</para> </refsect1> <refsect1> <title>License</title> <para><command>reposctl</command> is distributed under the terms of the Eclipse Public License ("Agreement"). Any use, reproduction or distribution of this program constitutes recipeients acceptance of the agreement.</para> <para>You can obtain a current copy of the Eclipse Public License from http://www.opensource.org/licenses/eclipse-1.0.php</para> </refsect1> <refsect1> <title>See Also</title> <para> <citerefentry> <refentrytitle>reposd</refentrytitle> <manvolnum>8</manvolnum> </citerefentry>, <citerefentry> <refentrytitle>reposd.conf</refentrytitle> <manvolnum>5</manvolnum> </citerefentry>, </para> </refsect1> </refentry> --- NEW FILE: gatherctl.8.xml.pre.in --- <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd"> <refentry id="gatherctl"> <refentryinfo> <productname>@PACKAGE_NAME@-@PACKAGE_VERSION@</productname> </refentryinfo> <refmeta> <refentrytitle>gatherctl</refentrytitle> <manvolnum>8</manvolnum> <refmiscinfo class="manual">Linux Programmer's Manual</refmiscinfo> </refmeta> <refnamediv> <refname>gatherctl</refname> <refpurpose>control utility for gatherd</refpurpose> <refclass>UNIX/Linux</refclass> </refnamediv> <refsynopsisdiv> <cmdsynopsis> <command>gatherctl</command> </cmdsynopsis> </refsynopsisdiv> <refsect1> <title>Description</title> <para> <command>gatherctl</command> is a simple shell program for controling the <citerefentry> <refentrytitle>gatherd</refentrytitle><manvolnum>8</manvolnum> </citerefentry> metric collection daemon. It provides the ability to manipulate the state of the daemon as well as online loading and unloading of metric collection plugins. </para> </refsect1> <refsect1> <title>Commands</title> <variablelist> <varlistentry> <term><option>h</option></term> <listitem><para>print help message</para></listitem> </varlistentry> <varlistentry> <term><option>s</option></term> <listitem><para>print status of daemon</para></listitem> </varlistentry> <varlistentry> <term><option>i</option></term> <listitem><para>initialize gathering service</para></listitem> </varlistentry> <varlistentry> <term><option>t</option></term> <listitem><para>terminate gathering service</para></listitem> </varlistentry> <varlistentry> <term><option>b</option></term> <listitem><para>start sampling plugins</para></listitem> </varlistentry> <varlistentry> <term><option>e</option></term> <listitem><para>stop sampling plugins</para></listitem> </varlistentry> <varlistentry> <term><option>l</option> <replaceable>pluginlib</replaceable></term> <listitem><para>load plugin library</para></listitem> </varlistentry> <varlistentry> <term><option>u</option> <replaceable>pluginlib</replaceable></term> <listitem><para>unload plugin library</para></listitem> </varlistentry> <varlistentry> <term><option>v</option> <replaceable>pluginlib</replaceable></term> <listitem><para>view/list metrics supported by plugin library</para></listitem> </varlistentry> <varlistentry> <term><option>q</option></term> <listitem><para>quit/exit control utility</para></listitem> </varlistentry> <varlistentry> <term><option>k</option></term> <listitem><para>kill gathering daemon</para></listitem> </varlistentry> <varlistentry> <term><option>d</option></term> <listitem><para>start gathering daemon</para></listitem> </varlistentry> </variablelist> </refsect1> <refsect1> <title>Files</title> <variablelist> <varlistentry> <term><replaceable>@sysconfdir@/gatherd.conf</replaceable></term> <listitem> <para>This file contains the daemon configuration settings. See <citerefentry> <refentrytitle>gatherd.conf</refentrytitle> <manvolnum>5</manvolnum> </citerefentry> for more information.</para> </listitem> </varlistentry> </variablelist> </refsect1> <refsect1> <title>Bugs</title> <para>The SBLIM project maintains a mailing list to which you should direct all questions regarding sfcb, sfcc, wbemcli, the metric data gatherer, or any of the SBLIM providers. To subscribe to this list visit: <screen><![CDATA[https://lists.sourceforge.net/lists/listinfo/sblim-issues]]></screen> </para> <para>Please report bugs you discover to the bug tracker. The SBLIM project bug tracking page can be found at: <screen><![CDATA[https://sourceforge.net/tracker/?group_id=128809&atid=712784]]></screen> </para> </refsect1> <refsect1> <title>Authors</title> <para>Please refer to the AUTHORS file distributed with sblim-gather.</para> </refsect1> <refsect1> <title>Copyright</title> <para>Copyright © 2003-2012 IBM Corp.</para> </refsect1> <refsect1> <title>License</title> <para><command>gatherctl</command> is distributed under the terms of the Eclipse Public License ("Agreement"). Any use, reproduction or distribution of this program constitutes recipeients acceptance of the agreement.</para> <para>You can obtain a current copy of the Eclipse Public License from http://www.opensource.org/licenses/eclipse-1.0.php</para> </refsect1> <refsect1> <title>See Also</title> <para> <citerefentry> <refentrytitle>gatherd</refentrytitle> <manvolnum>8</manvolnum> </citerefentry>, <citerefentry> <refentrytitle>gatherd.conf</refentrytitle> <manvolnum>5</manvolnum> </citerefentry>, </para> </refsect1> </refentry> --- NEW FILE: gatherd.conf.5.xml.pre.in --- <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd"> <refentry id="gatherd.conf"> <refentryinfo> <productname>@PACKAGE_NAME@-@PACKAGE_VERSION@</productname> </refentryinfo> <refmeta> <refentrytitle>gatherd.conf</refentrytitle> <manvolnum>5</manvolnum> <refmiscinfo class="manual">Linux Programmer's Manual</refmiscinfo> </refmeta> <refnamediv> <refname>gatherd.conf</refname> <refpurpose>SBLIM metric repository daemon configuration file</refpurpose> <refclass>UNIX/Linux</refclass> </refnamediv> <refsect1> <title>Description</title> <para> The file <replaceable>gatherd.conf</replaceable> is read by <citerefentry> <refentrytitle>gatherd</refentrytitle><manvolnum>8</manvolnum></citerefentry> at startup. Each line consists of a configuration option value pair delimited by an '=' character. A '#' (number sign) indicates the beginning of a comment. </para> </refsect1> <refsect1> <title>Options</title> <variablelist> <varlistentry> <term><option>RepositoryHost</option>=<replaceable>addr</replaceable></term> <listitem> <para>The ip address of the remote repository daemon to which metric values will be sent. Default is <command>localhost</command>.</para> </listitem> </varlistentry> <varlistentry> <term><option>RepositoryPort</option>=<replaceable>port</replaceable></term> <listitem> <para>TCP port of remote repository daemon. Default is <command>6363</command>.</para> </listitem> </varlistentry> <varlistentry> <term><option>TraceLevel</option>=<replaceable>level</replaceable></term> <listitem> <para>Trace level for the <command>gatherd</command> process. Default is <command>0</command>.</para> </listitem> </varlistentry> <varlistentry> <term><option>TraceFile</option>=<replaceable>file</replaceable></term> <listitem> <para>Name of file to write tracing information. Default is <command>stderr</command>.</para> </listitem> </varlistentry> <varlistentry> <term><option>TraceComponents</option>=<replaceable>comps[:comps...]</replaceable></term> <listitem> <para>Gatherer components to be traced seperated by a colon (:). Valid components are: comm, util, gather, rrepos. Default is <command>none</command>.</para> </listitem> </varlistentry> <varlistentry> <term><option>PluginDirectory</option>=<replaceable>dir</replaceable></term> <listitem> <para>Directory where metric collection plugins are located. Default is <command>@libdir@/gather/mplug</command>.</para> </listitem> </varlistentry> <varlistentry> <term><option>AutoLoad</option>=<replaceable>plugin[:plugin...]</replaceable></term> <listitem> <para>Plugins to automatically load, initalize and start sampling. Valid values are: * or colon-seperated list. Default is <command>none</command>.</para> </listitem> </varlistentry> <varlistentry> <term><option>SampleInterval</option>=<replaceable>secs</replaceable></term> <listitem> <para>If specified this interval will override the plugin defined individual sampling intervals. Unit is in seconds.</para> <para><command>WARNING:</command> This config option should only be used for debugging purposes. It overrides the per metric defined sample interval of all plugins, and really short intervals can introduce skew in the data due to seconds not being a high enough sample resolution.</para> </listitem> </varlistentry> <varlistentry> <term><option>Synchronization</option>=<replaceable>0|1</replaceable></term> <listitem> <para>Specifies whether the metric plugins are invoked in a time-synchronized manner. Synchronized metrics with the same sample interval will be scheduled together. Possible values are:</para> <screen><![CDATA[1 synchronized relative to Jan, 1st, 1970, 00:00]]></screen> <screen><![CDATA[0 unsynchronized, will be scheduled asap]]></screen> <para>Default is <command>1</command>.</para> </listitem> </varlistentry> </variablelist> </refsect1> <refsect1> <title>Bugs</title> <para>The SBLIM project maintains a mailing list to which you should direct all questions regarding sfcb, sfcc, wbemcli, the metric data gatherer, or any of the SBLIM providers. To subscribe to this list visit: <screen><![CDATA[https://lists.sourceforge.net/lists/listinfo/sblim-issues]]></screen> </para> <para>Please report bugs you discover to the bug tracker. The SBLIM project bug tracking page can be found at: <screen><![CDATA[https://sourceforge.net/tracker/?group_id=128809&atid=712784]]></screen> </para> </refsect1> <refsect1> <title>Authors</title> <para>Please refer to the AUTHORS file distributed with sblim-gather.</para> </refsect1> <refsect1> <title>Copyright</title> <para>Copyright © 2003-2012 IBM Corp.</para> </refsect1> <refsect1> <title>License</title> <para><command>gatherd.conf</command> is distributed under the terms of the Eclipse Public License ("Agreement"). Any use, reproduction or distribution of this program constitutes recipeients acceptance of the agreement.</para> <para>You can obtain a current copy of the Eclipse Public License from http://www.opensource.org/licenses/eclipse-1.0.php</para> </refsect1> <refsect1> <title>See Also</title> <para> <citerefentry> <refentrytitle>gatherd</refentrytitle> <manvolnum>8</manvolnum> </citerefentry> </para> </refsect1> </refentry> --- NEW FILE: reposd.conf.5.xml.pre.in --- <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd"> <refentry id="reposd.conf"> <refentryinfo> <productname>@PACKAGE_NAME@-@PACKAGE_VERSION@</productname> </refentryinfo> <refmeta> <refentrytitle>reposd.conf</refentrytitle> <manvolnum>5</manvolnum> <refmiscinfo class="manual">Linux Programmer's Manual</refmiscinfo> </refmeta> <refnamediv> <refname>reposd.conf</refname> <refpurpose>SBLIM metric repository daemon configuration file</refpurpose> <refclass>UNIX/Linux</refclass> </refnamediv> <refsect1> <title>Description</title> <para> The file <replaceable>reposd.conf</replaceable> is read by <citerefentry> <refentrytitle>reposd</refentrytitle><manvolnum>8</manvolnum></citerefentry> at startup. Each line consists of a configuration option value pair delimited by an '=' character. A '#' (number sign) indicates the beginning of a comment. </para> </refsect1> <refsect1> <title>Options</title> <variablelist> <varlistentry> <term><option>RepositoryPort</option>=<replaceable>port</replaceable></term> <listitem> <para>TCP port repository daemon will listen. Default is <command>6363</command>.</para> </listitem> </varlistentry> <varlistentry> <term><option>RepositoryMaxConnections</option>=<replaceable>conns</replaceable></term> <listitem> <para>Number of parallel client connections the repository daemon is able to handle. Default is <command>100</command>.</para> </listitem> </varlistentry> <varlistentry> <term><option>TraceLevel</option>=<replaceable>level</replaceable></term> <listitem> <para>Trace level for the <command>reposd</command> process. Default is <command>0</command>.</para> </listitem> </varlistentry> <varlistentry> <term><option>TraceFile</option>=<replaceable>file</replaceable></term> <listitem> <para>Name of file to write tracing information. Default is <command>stderr</command>.</para> </listitem> </varlistentry> <varlistentry> <term><option>TraceComponents</option>=<replaceable>comps[:comps...]</replaceable></term> <listitem> <para>Repository components to be traced seperated by a colon (:). Valid components are: comm, util, repos. Default is <command>none</command>.</para> </listitem> </varlistentry> <varlistentry> <term><option>PluginDirectory</option>=<replaceable>dir</replaceable></term> <listitem> <para>Directory where repository metric plugins are located. Default is <command>@libdir@/gather/rplug</command>.</para> </listitem> </varlistentry> <varlistentry> <term><option>AutoLoad</option>=<replaceable>plugin[:plugin...]</replaceable></term> <listitem> <para>Plugins to be automatically load, initalize and start sampling. Valid values are: * or colon-seperated list. Default is <command>none</command>.</para> </listitem> </varlistentry> <varlistentry> <term><option>ExpirationInterval</option>=<replaceable>secs</replaceable></term> <listitem> <para>Specifies how many seconds metric values are kept in the in-core repository. Note that the longer the interval is the more memory that will be consumed by <command>reposd</command>. Valid values are: and integer between 60 and 86400. Default is <command>1200</command>.</para> </listitem> </varlistentry> </variablelist> </refsect1> <refsect1> <title>Bugs</title> <para>The SBLIM project maintains a mailing list to which you should direct all questions regarding sfcb, sfcc, wbemcli, the metric data gatherer, or any of the SBLIM providers. To subscribe to this list visit: <screen><![CDATA[https://lists.sourceforge.net/lists/listinfo/sblim-issues]]></screen> </para> <para>Please report bugs you discover to the bug tracker. The SBLIM project bug tracking page can be found at: <screen><![CDATA[https://sourceforge.net/tracker/?group_id=128809&atid=712784]]></screen> </para> </refsect1> <refsect1> <title>Authors</title> <para>Please refer to the AUTHORS file distributed with sblim-gather.</para> </refsect1> <refsect1> <title>Copyright</title> <para>Copyright © 2003-2012 IBM Corp.</para> </refsect1> <refsect1> <title>License</title> <para><command>reposd.conf</command> is distributed under the terms of the Eclipse Public License ("Agreement"). Any use, reproduction or distribution of this program constitutes recipeients acceptance of the agreement.</para> <para>You can obtain a current copy of the Eclipse Public License from http://www.opensource.org/licenses/eclipse-1.0.php</para> </refsect1> <refsect1> <title>See Also</title> <para> <citerefentry> <refentrytitle>reposd</refentrytitle> <manvolnum>8</manvolnum> </citerefentry> </para> </refsect1> </refentry> |
From: Tyrel D. <ty...@us...> - 2012-10-27 01:03:21
|
Update of /cvsroot/sblim/gather/man In directory vz-cvs-3.sog:/tmp/cvs-serv3262/man Log Message: Directory /cvsroot/sblim/gather/man added to the repository |
From: Tyrel D. <ty...@us...> - 2012-10-27 00:52:15
|
Update of /cvsroot/sblim/gather/comms In directory vz-cvs-3.sog:/tmp/cvs-serv1862/comms Modified Files: mcclt_unix.c Log Message: TODOs that need investigation Index: mcclt_unix.c =================================================================== RCS file: /cvsroot/sblim/gather/comms/mcclt_unix.c,v retrieving revision 1.15 retrieving revision 1.16 diff -u -d -r1.15 -r1.16 --- mcclt_unix.c 20 May 2009 19:39:56 -0000 1.15 +++ mcclt_unix.c 27 Oct 2012 00:52:12 -0000 1.16 @@ -73,6 +73,7 @@ m_setstrerror("mcc_init could not complete socket name %s",commid); M_TRACE(MTRACE_ERROR,MTRACE_COMM, ("mcc_init could not complete socket name %s")); + /* TODO do we need a mutex unlock here? */ return -1; } if (!_sigpipe_h_installed) { @@ -80,6 +81,7 @@ sigact.sa_handler = _sigpipe_h; sigact.sa_flags = 0; sigaction(SIGPIPE,&sigact,NULL); + /* TODO does _sigpipe_h_installed need to be set to true? */ } pthread_mutex_unlock(&sockname_mutex); M_TRACE(MTRACE_DETAILED,MTRACE_COMM,("mcc_init return handle %d",i)); |
Update of /cvsroot/sblim/gather/provider In directory vz-cvs-3.sog:/tmp/cvs-serv24466/provider Modified Files: OSBase_MetricDefForMEProvider.c OSBase_MetricDefinitionProvider.c OSBase_MetricElementCapabilitiesProvider.c OSBase_MetricElementConformsToProfileProvider.c OSBase_MetricForMEProvider.c OSBase_MetricGathererProvider.c OSBase_MetricHostedServiceProvider.c OSBase_MetricInstanceProvider.c OSBase_MetricRegisteredProfileProvider.c OSBase_MetricRepositoryServiceProvider.c OSBase_MetricServiceAffectsElementProvider.c OSBase_MetricServiceCapabilitiesProvider.c OSBase_MetricServiceProvider.c OSBase_MetricUtil.c Log Message: Fixed 358023: use setProperty for instance keys under Pegasus Index: OSBase_MetricRegisteredProfileProvider.c =================================================================== RCS file: /cvsroot/sblim/gather/provider/OSBase_MetricRegisteredProfileProvider.c,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- OSBase_MetricRegisteredProfileProvider.c 1 Aug 2012 00:00:59 -0000 1.3 +++ OSBase_MetricRegisteredProfileProvider.c 25 Oct 2012 23:13:52 -0000 1.4 @@ -87,12 +87,12 @@ NULL); if (cop) { - CMAddKey(cop, "InstanceId", _INSTANCEID, CMPI_chars); ci = CMNewInstance(_broker, cop, NULL); } if (ci) { CMSetPropertyFilter(ci, props, NULL); + CMSetProperty(ci, "InstanceId", _INSTANCEID, CMPI_chars); CMSetProperty(ci, "RegisteredOrganization", ®org, CMPI_uint16); Index: OSBase_MetricInstanceProvider.c =================================================================== RCS file: /cvsroot/sblim/gather/provider/OSBase_MetricInstanceProvider.c,v retrieving revision 1.10 retrieving revision 1.11 diff -u -d -r1.10 -r1.11 --- OSBase_MetricInstanceProvider.c 17 May 2012 01:02:42 -0000 1.10 +++ OSBase_MetricInstanceProvider.c 25 Oct 2012 23:13:52 -0000 1.11 @@ -48,12 +48,12 @@ CMPIInstance *ci = NULL; if (co) { CMSetNameSpaceFromObjectPath(co,defp); - CMAddKey(co,"Antecedent",&defp,CMPI_ref); - CMAddKey(co,"Dependent",&valp,CMPI_ref); ci = CMNewInstance(_broker,co, NULL); if (ci) { CMSetPropertyFilter(ci, props, NULL); + CMSetProperty(ci,"Antecedent",&defp,CMPI_ref); + CMSetProperty(ci,"Dependent",&valp,CMPI_ref); } } return ci; Index: OSBase_MetricServiceAffectsElementProvider.c =================================================================== RCS file: /cvsroot/sblim/gather/provider/OSBase_MetricServiceAffectsElementProvider.c,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- OSBase_MetricServiceAffectsElementProvider.c 17 May 2012 01:02:42 -0000 1.3 +++ OSBase_MetricServiceAffectsElementProvider.c 25 Oct 2012 23:13:52 -0000 1.4 @@ -124,12 +124,12 @@ _CLASSNAME, NULL); if (cop) { - CMAddKey(cop, _LEFTPROP, &cap.value, CMPI_ref); - CMAddKey(cop, _RIGHTROP, &manelm.value, CMPI_ref); inst = CMNewInstance(_broker, cop, NULL); if (inst) { CMSetPropertyFilter(inst, props, NULL); + CMSetProperty(inst, _LEFTPROP, &cap.value, CMPI_ref); + CMSetProperty(inst, _RIGHTROP, &manelm.value, CMPI_ref); return inst; } } Index: OSBase_MetricDefinitionProvider.c =================================================================== RCS file: /cvsroot/sblim/gather/provider/OSBase_MetricDefinitionProvider.c,v retrieving revision 1.10 retrieving revision 1.11 diff -u -d -r1.10 -r1.11 --- OSBase_MetricDefinitionProvider.c 17 May 2012 01:02:42 -0000 1.10 +++ OSBase_MetricDefinitionProvider.c 25 Oct 2012 23:13:52 -0000 1.11 @@ -129,7 +129,7 @@ } else { CMSetStatusWithChars( _broker, &rc, CMPI_RC_ERR_FAILED, - "Could not construct instance." ); + "Could not construct instance." ); } } } else { Index: OSBase_MetricDefForMEProvider.c =================================================================== RCS file: /cvsroot/sblim/gather/provider/OSBase_MetricDefForMEProvider.c,v retrieving revision 1.7 retrieving revision 1.8 diff -u -d -r1.7 -r1.8 --- OSBase_MetricDefForMEProvider.c 17 May 2012 01:02:42 -0000 1.7 +++ OSBase_MetricDefForMEProvider.c 25 Oct 2012 23:13:52 -0000 1.8 @@ -47,12 +47,12 @@ CMPIInstance *ci = NULL; if (co) { CMSetNameSpaceFromObjectPath(co,defp); - CMAddKey(co,"Antecedent",&defp,CMPI_ref); - CMAddKey(co,"Dependent",&valp,CMPI_ref); ci = CMNewInstance(_broker,co, NULL); if (ci) { CMSetPropertyFilter(ci, props, NULL); + CMSetProperty(ci, "Antecedent", &defp, CMPI_ref); + CMSetProperty(ci, "Dependent", &valp, CMPI_ref); } } return ci; Index: OSBase_MetricElementCapabilitiesProvider.c =================================================================== RCS file: /cvsroot/sblim/gather/provider/OSBase_MetricElementCapabilitiesProvider.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- OSBase_MetricElementCapabilitiesProvider.c 17 May 2012 01:02:42 -0000 1.2 +++ OSBase_MetricElementCapabilitiesProvider.c 25 Oct 2012 23:13:52 -0000 1.3 @@ -124,12 +124,12 @@ _CLASSNAME, NULL); if (cop) { - CMAddKey(cop, _LEFTPROP, &cap.value, CMPI_ref); - CMAddKey(cop, _RIGHTROP, &manelm.value, CMPI_ref); inst = CMNewInstance(_broker, cop, NULL); if (inst) { CMSetPropertyFilter(inst, props, NULL); + CMSetProperty(inst, _LEFTPROP, &cap.value, CMPI_ref); + CMSetProperty(inst, _RIGHTROP, &manelm.value, CMPI_ref); return inst; } } Index: OSBase_MetricGathererProvider.c =================================================================== RCS file: /cvsroot/sblim/gather/provider/OSBase_MetricGathererProvider.c,v retrieving revision 1.12 retrieving revision 1.13 diff -u -d -r1.12 -r1.13 --- OSBase_MetricGathererProvider.c 17 May 2012 01:02:42 -0000 1.12 +++ OSBase_MetricGathererProvider.c 25 Oct 2012 23:13:52 -0000 1.13 @@ -118,16 +118,17 @@ op=CMNewObjectPath(_broker,CMGetCharPtr(CMGetNameSpace(ref,NULL)),_ClassName, NULL); if (op) { - CMAddKey(op,"CreationClassName",_ClassName,CMPI_chars); - CMAddKey(op,"Name",_Name,CMPI_chars); - CMAddKey(op,"SystemCreationClassName",CSCreationClassName,CMPI_chars); - CMAddKey(op,"SystemName",get_system_name(),CMPI_chars); ci=CMNewInstance(_broker,op,NULL); } if (ci) { CMSetPropertyFilter(ci, properties, NULL); + CMSetProperty(ci,"CreationClassName",_ClassName,CMPI_chars); + CMSetProperty(ci,"Name",_Name,CMPI_chars); + CMSetProperty(ci,"SystemCreationClassName",CSCreationClassName,CMPI_chars); + CMSetProperty(ci,"SystemName",get_system_name(),CMPI_chars); + CMSetProperty(ci,"Release",PACKAGE_VERSION,CMPI_chars); if (rgather_status(&gs)) { @@ -177,16 +178,17 @@ op=CMNewObjectPath(_broker,CMGetCharPtr(CMGetNameSpace(ref,NULL)),_ClassName, NULL); if (op) { - CMAddKey(op,"CreationClassName",_ClassName,CMPI_chars); - CMAddKey(op,"Name",_Name,CMPI_chars); - CMAddKey(op,"SystemCreationClassName",CSCreationClassName,CMPI_chars); - CMAddKey(op,"SystemName",get_system_name(),CMPI_chars); ci=CMNewInstance(_broker,op,NULL); } if (ci) { CMSetPropertyFilter(ci, properties, NULL); + CMSetProperty(ci,"CreationClassName",_ClassName,CMPI_chars); + CMSetProperty(ci,"Name",_Name,CMPI_chars); + CMSetProperty(ci,"SystemCreationClassName",CSCreationClassName,CMPI_chars); + CMSetProperty(ci,"SystemName",get_system_name(),CMPI_chars); + CMSetProperty(ci,"Release",PACKAGE_VERSION,CMPI_chars); if (rgather_status(&gs)) { Index: OSBase_MetricRepositoryServiceProvider.c =================================================================== RCS file: /cvsroot/sblim/gather/provider/OSBase_MetricRepositoryServiceProvider.c,v retrieving revision 1.12 retrieving revision 1.13 diff -u -d -r1.12 -r1.13 --- OSBase_MetricRepositoryServiceProvider.c 17 May 2012 01:02:42 -0000 1.12 +++ OSBase_MetricRepositoryServiceProvider.c 25 Oct 2012 23:13:52 -0000 1.13 @@ -120,15 +120,17 @@ op=CMNewObjectPath(_broker,CMGetCharPtr(CMGetNameSpace(ref,NULL)),_ClassName, NULL); if (op) { - CMAddKey(op,"CreationClassName",_ClassName,CMPI_chars); - CMAddKey(op,"Name",_Name,CMPI_chars); - CMAddKey(op,"SystemCreationClassName",CSCreationClassName,CMPI_chars); - CMAddKey(op,"SystemName",get_system_name(),CMPI_chars); ci=CMNewInstance(_broker,op,NULL); } if (ci) { CMSetPropertyFilter(ci, properties, NULL); + + CMSetProperty(ci,"CreationClassName",_ClassName,CMPI_chars); + CMSetProperty(ci,"Name",_Name,CMPI_chars); + CMSetProperty(ci,"SystemCreationClassName",CSCreationClassName,CMPI_chars); + CMSetProperty(ci,"SystemName",get_system_name(),CMPI_chars); + CMSetProperty(ci,"Release",PACKAGE_VERSION,CMPI_chars); if (rrepos_status(&rs)) { @@ -183,16 +185,17 @@ op=CMNewObjectPath(_broker,CMGetCharPtr(CMGetNameSpace(ref,NULL)),_ClassName, NULL); if (op) { - CMAddKey(op,"CreationClassName",_ClassName,CMPI_chars); - CMAddKey(op,"Name",_Name,CMPI_chars); - CMAddKey(op,"SystemCreationClassName",CSCreationClassName,CMPI_chars); - CMAddKey(op,"SystemName",get_system_name(),CMPI_chars); ci=CMNewInstance(_broker,op,NULL); } if (ci) { CMSetPropertyFilter(ci, properties, NULL); + CMSetProperty(ci,"CreationClassName",_ClassName,CMPI_chars); + CMSetProperty(ci,"Name",_Name,CMPI_chars); + CMSetProperty(ci,"SystemCreationClassName",CSCreationClassName,CMPI_chars); + CMSetProperty(ci,"SystemName",get_system_name(),CMPI_chars); + CMSetProperty(ci,"Release",PACKAGE_VERSION,CMPI_chars); if (rrepos_status(&rs)) { Index: OSBase_MetricForMEProvider.c =================================================================== RCS file: /cvsroot/sblim/gather/provider/OSBase_MetricForMEProvider.c,v retrieving revision 1.11 retrieving revision 1.12 diff -u -d -r1.11 -r1.12 --- OSBase_MetricForMEProvider.c 17 May 2012 01:02:42 -0000 1.11 +++ OSBase_MetricForMEProvider.c 25 Oct 2012 23:13:52 -0000 1.12 @@ -50,12 +50,12 @@ CMPIInstance *ci = NULL; if (co) { CMSetNameSpaceFromObjectPath(co,defp); - CMAddKey(co,"Antecedent",&defp,CMPI_ref); - CMAddKey(co,"Dependent",&valp,CMPI_ref); ci = CMNewInstance(_broker,co, NULL); if (ci) { CMSetPropertyFilter(ci, props, NULL); + CMSetProperty(ci, "Antecedent", &defp, CMPI_ref); + CMSetProperty(ci, "Dependent", &valp, CMPI_ref); } } return ci; Index: OSBase_MetricHostedServiceProvider.c =================================================================== RCS file: /cvsroot/sblim/gather/provider/OSBase_MetricHostedServiceProvider.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- OSBase_MetricHostedServiceProvider.c 17 May 2012 01:02:42 -0000 1.2 +++ OSBase_MetricHostedServiceProvider.c 25 Oct 2012 23:13:52 -0000 1.3 @@ -124,12 +124,12 @@ _CLASSNAME, NULL); if (cop) { - CMAddKey(cop, _LEFTPROP, &cap.value, CMPI_ref); - CMAddKey(cop, _RIGHTROP, &manelm.value, CMPI_ref); inst = CMNewInstance(_broker, cop, NULL); if (inst) { CMSetPropertyFilter(inst, props, NULL); + CMSetProperty(inst, _LEFTPROP, &cap.value, CMPI_ref); + CMSetProperty(inst, _RIGHTROP, &manelm.value, CMPI_ref); return inst; } } Index: OSBase_MetricElementConformsToProfileProvider.c =================================================================== RCS file: /cvsroot/sblim/gather/provider/OSBase_MetricElementConformsToProfileProvider.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- OSBase_MetricElementConformsToProfileProvider.c 17 May 2012 01:02:42 -0000 1.2 +++ OSBase_MetricElementConformsToProfileProvider.c 25 Oct 2012 23:13:52 -0000 1.3 @@ -127,12 +127,12 @@ _CLASSNAME, NULL); if (cop) { - CMAddKey(cop, _LEFTPROP, &cap.value, CMPI_ref); - CMAddKey(cop, _RIGHTROP, &manelm.value, CMPI_ref); inst = CMNewInstance(_broker, cop, NULL); if (inst) { CMSetPropertyFilter(inst, props, NULL); + CMSetProperty(inst, _LEFTPROP, &cap.value, CMPI_ref); + CMSetProperty(inst, _RIGHTROP, &manelm.value, CMPI_ref); return inst; } } Index: OSBase_MetricUtil.c =================================================================== RCS file: /cvsroot/sblim/gather/provider/OSBase_MetricUtil.c,v retrieving revision 1.23 retrieving revision 1.24 diff -u -d -r1.23 -r1.24 --- OSBase_MetricUtil.c 4 Aug 2012 00:07:02 -0000 1.23 +++ OSBase_MetricUtil.c 25 Oct 2012 23:13:52 -0000 1.24 @@ -874,18 +874,18 @@ co = CMNewObjectPath(broker,namesp,valclsname,rc); if (co) { - CMAddKey(co,"InstanceId", - makeMetricValueId(instid,defname,defid,val->viResource, - val->viSystemId, - val->viCaptureTime), - CMPI_chars); - CMAddKey(co,"MetricDefinitionId",makeMetricDefId(defidstr,defname,defid), - CMPI_chars); ci = CMNewInstance(broker,co,rc); if (ci) { CMSetPropertyFilter(ci, props, NULL); + CMSetProperty(ci,"InstanceId", + makeMetricValueId(instid,defname,defid,val->viResource, + val->viSystemId, + val->viCaptureTime), + CMPI_chars); + CMSetProperty(ci,"MetricDefinitionId",makeMetricDefId(defidstr,defname,defid), + CMPI_chars); CMSetProperty(ci,"MeasuredElementName",val->viResource,CMPI_chars); datetime = CMNewDateTimeFromBinary(broker, @@ -1030,13 +1030,13 @@ /* get plugin's metric definition */ if (co) { - CMAddKey(co,"Id", - makeMetricDefId(instid,defname,defid), - CMPI_chars); ci = CMNewInstance(broker,co,rc); if (ci) { CMSetPropertyFilter(ci, props, NULL); + CMSetProperty(ci,"Id", + makeMetricDefId(instid,defname,defid),CMPI_chars); + if (metricDefinitionList[i].mdef_metrictype&MD_ORGSBLIM) { sprintf(instid,"SBLIM:%s",defname); CMSetProperty(ci,"Name",instid,CMPI_chars); Index: OSBase_MetricServiceProvider.c =================================================================== RCS file: /cvsroot/sblim/gather/provider/OSBase_MetricServiceProvider.c,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- OSBase_MetricServiceProvider.c 17 May 2012 01:02:42 -0000 1.4 +++ OSBase_MetricServiceProvider.c 25 Oct 2012 23:13:52 -0000 1.5 @@ -118,14 +118,16 @@ NULL); if (cop) { - for (i = 0; i < NUMKEYS; i++) { - CMAddKey(cop, keys[i].key, keys[i].value, CMPI_chars); - } ci = CMNewInstance(_broker, cop, NULL); } if (ci) { CMSetPropertyFilter(ci, props, NULL); + + for (i = 0; i < NUMKEYS; i++) { + CMSetProperty(ci, keys[i].key, keys[i].value, CMPI_chars); + } + CMSetProperty(ci, "ElementName", _CLASSNAME, CMPI_chars); CMSetProperty(ci, "Release", PACKAGE_VERSION, CMPI_chars); return ci; Index: OSBase_MetricServiceCapabilitiesProvider.c =================================================================== RCS file: /cvsroot/sblim/gather/provider/OSBase_MetricServiceCapabilitiesProvider.c,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- OSBase_MetricServiceCapabilitiesProvider.c 17 May 2012 01:02:42 -0000 1.3 +++ OSBase_MetricServiceCapabilitiesProvider.c 25 Oct 2012 23:13:52 -0000 1.4 @@ -81,12 +81,13 @@ NULL); if (cop) { - CMAddKey(cop, "InstanceID", _INSTANCEID, CMPI_chars); ci = CMNewInstance(_broker, cop, NULL); } if (ci) { CMSetPropertyFilter(ci, props, NULL); + CMSetProperty(ci, "InstanceID", _INSTANCEID, CMPI_chars); + CMSetProperty(ci, "ElementName", _CLASSNAME, CMPI_chars); array_string = CMNewArray(_broker, 0, CMPI_string, NULL); |