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: Narasimha S. <nsh...@us...> - 2012-04-03 21:26:17
|
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 e6da1a4d2c6d8983f804ac7fa5ed0e00dd37761c (commit)
from c4f1e693534731ad2dda92ec5ab09c496f18e887 (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 e6da1a4d2c6d8983f804ac7fa5ed0e00dd37761c
Author: nsharoff <nsharoff@nsharoff.(none)>
Date: Tue Apr 3 14:25:32 2012 -0700
patches for [ 3495060, 3471814 ]
-----------------------------------------------------------------------
Summary of changes:
diff --git a/ChangeLog b/ChangeLog
index 373deb1..38c6914 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2012-04-03 Narasimha Sharoff <nsh...@us...>
+
+ * indCIMXMLHandler.c, interopProvider.c:
+ [ 3495060 ] verify filter and handler information during subscription
+
+ * objectImpl.c:
+ [ 3471814 ] segfault in objectImpl.c:131,ClObjectGetClString
+ (Patch by Chris Buccella and Narasimha Sharoff)
+
2012-04-03 Michael Chase-Salerno <br...@li...>
* interopProvider.c:
diff --git a/indCIMXMLHandler.c b/indCIMXMLHandler.c
index c618ca9..33b593b 100644
--- a/indCIMXMLHandler.c
+++ b/indCIMXMLHandler.c
@@ -1028,6 +1028,10 @@ IndCIMXMLHandlerInvokeMethod(CMPIMethodMI * mi,
CMPIData handler=CMGetProperty(sub, "Handler", &st);
CMPIObjectPath *hop=handler.value.ref;
CMPIInstance *hdlr=CBGetInstance(_broker, ctxLocal, hop, NULL, &st);
+ if (hdlr == NULL) {
+ mlogf(M_ERROR,M_SHOW,"Deliver indication failed, hdlr is null. rc:%d\n",st.rc);
+ _SFCB_RETURN(st);
+ }
// Build the complete sequence context
// Get the stub from the handler
diff --git a/interopProvider.c b/interopProvider.c
index e066599..0639f9b 100644
--- a/interopProvider.c
+++ b/interopProvider.c
@@ -882,6 +882,39 @@ filterInternalProps(CMPIInstance* ci)
return;
}
+/* feature #3495060 :76814 : Verify the filter and handler information */
+CMPIStatus
+verify_subscription(const CMPIContext * ctx,
+ const CMPIObjectPath *cop,
+ const CMPIInstance *ci)
+{
+ CMPIContext *ctxlocal = NULL;
+ CMPIStatus st = { CMPI_RC_OK, NULL };
+
+ CMPIData sub_filter = CMGetProperty(ci, "Filter", &st);
+ CMPIObjectPath *sub_filter_op = sub_filter.value.ref;
+ ctxlocal = prepareUpcall((CMPIContext *)ctx);
+ CMPIInstance *sub_filter_inst = CBGetInstance(_broker, ctxlocal,
+ sub_filter_op, NULL, &st);
+ if (sub_filter_inst == NULL) {
+ setStatus(&st,st.rc,"Invalid Subscription Filter");
+ CMRelease(ctxlocal);
+ return st;
+ }
+
+ CMPIData sub_handler = CMGetProperty(ci, "Handler", &st);
+ CMPIObjectPath *sub_handler_op = sub_handler.value.ref;
+ CMPIInstance *sub_handler_inst = CBGetInstance(_broker, ctxlocal,
+ sub_handler_op, NULL, &st);
+ if (sub_handler_inst == NULL) {
+ setStatus(&st,st.rc,"Invalid Subscription Handler");
+ CMRelease(ctxlocal);
+ return st;
+ }
+
+ CMRelease(ctxlocal);
+ return st;
+}
/*
* --------------------------------------------------------------------------
@@ -1042,6 +1075,9 @@ InteropProviderCreateInstance(CMPIInstanceMI * mi,
if (isa(nss, cns, "cim_indicationsubscription")) {
_SFCB_TRACE(1, ("--- create cim_indicationsubscription"));
+ st = verify_subscription(ctx, cop, ci); /* 3495060 */
+ if (st.rc != CMPI_RC_OK) _SFCB_RETURN(st);
+
st = processSubscription(_broker, ctx, ciLocal, copLocal);
} else if (isa(nss, cns, "cim_indicationfilter")) {
diff --git a/objectImpl.c b/objectImpl.c
index a668b50..a3ab0d1 100644
--- a/objectImpl.c
+++ b/objectImpl.c
@@ -544,6 +544,63 @@ replaceClStringN(ClObjectHdr * hdr, int id, const char *str, unsigned int length
_SFCB_EXIT();
}
+/* Removes an object from the string buffer. The CMPIData pointing to that
+ object remains intact. A call to this function MUST be followed by a
+ call to addClObject(), else one of the CMPIData entries will be invalid.
+
+ id - the number of the entry to be removed
+ */
+static void
+removeClObject(ClObjectHdr * hdr, int id)
+{
+ _SFCB_ENTER(TRACE_OBJECTIMPL, "removeClObject");
+ // fprintf(stderr, "replaceClString: %p replacing entry for we're skipping %d\n", hdr, (id-1));
+ char *ts, *fs, *tmpstr = NULL;
+ long i, l, u;
+ ClStrBuf *fb;
+
+ fb = getStrBufPtr(hdr);
+ ts = (char *) malloc(fb->bUsed); /* tmp string buffer */
+ fs = &fb->buf[0];
+
+ for (u = i = 0; i < fb->iUsed; i++) {
+ if (i != id - 1) { /* loop through and copy over all _other_ properties */
+ // fprintf(stderr, "replace: keeping %ld\n", i);
+ char *f = fs + fb->indexPtr[i];
+ l = fb->indexPtr[i+1] - fb->indexPtr[i];
+
+ /* Bugzilla 74159 - Align the string buffer & null terminate */
+ /*if (l % sizeof(long) != 0) {
+ l = ALIGN((fb->indexPtr[i+1] - fb->indexPtr[i]), CLALIGN);
+ tmpstr = calloc(1,l);
+ if (tmpstr == NULL) {
+ _SFCB_TRACE(1, ("objectImpl:replaceClString: calloc failed for tmpstr"));
+ }
+ memcpy(tmpstr, f, l);
+ } */
+
+ fb->indexPtr[i] = u;
+
+ /*if (tmpstr != NULL) {
+ memcpy(ts + u, tmpstr, l);
+ free(tmpstr);
+ tmpstr = NULL;
+ }
+ else */
+ memcpy(ts + u, f, l);
+
+ u += l;
+ }
+ }
+ memcpy(fs, ts, u);
+ fb->bUsed = u;
+ free(ts);
+
+ fb->iUsed--; /* fixup the item count, since we have one fewer elements */
+
+ _SFCB_EXIT();
+}
+
// hack to get anything into a stringbuffer
static void
replaceClObject(ClObjectHdr * hdr, int id, const void *obj, int size)
@@ -1635,8 +1692,27 @@ addObjectPropertyH(ClObjectHdr * hdr, ClSection * prps,
}
free(blob);
}
- } else
- (p + i - 1)->data = d;
+ }
+ /* bugzilla 75997 - hdr->type is args */
+ else if (hdr->type == HDR_Args &&
+ od.type == CMPI_instance && (d.state & CMPI_nullValue) == 0) {
+ if (d.type != CMPI_instance) {
+ _SFCB_RETURN(CMPI_RC_ERR_TYPE_MISMATCH);
+ }
+ else {
+ (p + i - 1)->data = d;
+ int size = getInstanceSerializedSize(d.value.inst);
+ void * blob = malloc(size);
+ getSerializedInstance(d.value.inst, blob);
+ //fprintf(stderr, "od.value.inst = %ld\n", (long)od.value.inst);
+ if (od.value.inst) {
+ removeClObject(hdr, (long)od.value.inst);
+ }
+ (p + i - 1)->data.value.inst = (CMPIInstance *) addClObject(hdr, blob, size);
+ free(blob);
+ }
+ }
+ else(p + i - 1)->data = d;
_SFCB_RETURN(i);
}
hooks/post-receive
--
SFCB - Small Footprint CIM Broker
|
|
From: Tyrel D. <ty...@us...> - 2012-04-03 21:06:07
|
Update of /cvsroot/sblim/gather In directory vz-cvs-3.sog:/tmp/cvs-serv11432 Modified Files: ChangeLog configure.ac Log Message: Updated for 2.2.5 release Index: configure.ac =================================================================== RCS file: /cvsroot/sblim/gather/configure.ac,v retrieving revision 1.42 retrieving revision 1.43 diff -u -d -r1.42 -r1.43 --- configure.ac 23 Dec 2011 01:53:45 -0000 1.42 +++ configure.ac 3 Apr 2012 21:06:05 -0000 1.43 @@ -2,7 +2,7 @@ # Process this file with autoconf to produce a configure script. AC_PREREQ(2.59) -AC_INIT([sblim-gather],[2.2.4],[sbl...@li...]) +AC_INIT([sblim-gather],[2.2.5],[sbl...@li...]) AC_CONFIG_SRCDIR([cimplug.h]) AC_CONFIG_HEADER([gather-config.h]) AM_INIT_AUTOMAKE Index: ChangeLog =================================================================== RCS file: /cvsroot/sblim/gather/ChangeLog,v retrieving revision 1.74 retrieving revision 1.75 diff -u -d -r1.74 -r1.75 --- ChangeLog 23 Dec 2011 02:08:37 -0000 1.74 +++ ChangeLog 3 Apr 2012 21:06:05 -0000 1.75 @@ -1,3 +1,39 @@ +2012-04-03 Tyrel Datwyler <ty...@us...> + + * plugin/metricVirt.c, NEWS: + + Fixed 3514701: segv parsing xml if no defined source media + +2012-02-01 Tyrel Datwyler <ty...@us...> + + * NEWS, plugin/metricVirt.c: + + Fixed 3482875: virDomBlkInfo garbage if domain undefined + +2012-02-01 Tyrel Datwyler <ty...@us...> + + * NEWS, plugin/metricVirt.c: + + Fixed 3482869: segv parsing xml if domain becomes undefined + +2012-02-01 Tyrel Datwyler <ty...@us...> + + * NEWS, plugin/metricVirt.c: + + Fixed 3482867: virDomainBlkStats garbage if domain undefined + +2012-02-01 Tyrel Datwyler <ty...@us...> + + * NEWS, plugin/metricVirt.c: + + Fixed 3482806: blkio not updated for inactive domains + +2011-12-22 Tyrel Datwyler <ty...@us...> + + * ChangeLog: + + updated ChangeLog for 2.2.4 release + 2011-12-22 Tyrel Datwyler <ty...@us...> * NEWS, configure.ac, plugin/metricUnixProcess.c: |
|
From: Michael Chase-S. <mc...@us...> - 2012-04-03 21:05: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 c4f1e693534731ad2dda92ec5ab09c496f18e887 (commit)
via e679fcb9698340055068726d1cb08b1e6714f7fc (commit)
from 9485c3a9baaf59453dec79496073d45da8b1cc52 (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 c4f1e693534731ad2dda92ec5ab09c496f18e887
Author: Michael Chase-Salerno <br...@li...>
Date: Tue Apr 3 17:05:37 2012 -0400
[ 3512425 ] SequenceContext needs to be set at startup
commit e679fcb9698340055068726d1cb08b1e6714f7fc
Author: Michael Chase-Salerno <br...@li...>
Date: Tue Apr 3 17:03:19 2012 -0400
[ 3512425 ] SequenceContext needs to be set at startup
-----------------------------------------------------------------------
Summary of changes:
diff --git a/ChangeLog b/ChangeLog
index 5922c5b..373deb1 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2012-04-03 Michael Chase-Salerno <br...@li...>
+
+ * interopProvider.c:
+ [ 3512425 ] SequenceContext needs to be set at startup
+
2012-04-03 Chris Buccella <buc...@li...>
* Makefile.am, configure.ac, default.reg.in, profileProvider.c,
@@ -6,14 +11,14 @@
2012-04-02 Narasimha Sharoff <nsh...@us...>
- * indCIMXMLHandler.c:
- [ 3485438 ] Segfault while retrying to deliver an indication
+ * indCIMXMLHandler.c:
+ [ 3485438 ] Segfault while retrying to deliver an indication
- * sfcBroker.c:
- [ 3462309 ] Do not allow multiple instances of sfcb
+ * sfcBroker.c:
+ [ 3462309 ] Do not allow multiple instances of sfcb
- * cimXmlParser.c:
- [ 3486814 ] sfcb crashes while freeing the cimxml response
+ * cimXmlParser.c:
+ [ 3486814 ] sfcb crashes while freeing the cimxml response
2012-04-02 Michael Chase-Salerno <br...@li...>
diff --git a/NEWS b/NEWS
index 4396020..ef47b90 100644
--- a/NEWS
+++ b/NEWS
@@ -132,6 +132,7 @@ Bugs Fixed:
- 3505407 Client openlog changes settings
- 3485830 SFCB Makes Redundant ActivateFilter Calls
- 3483294 InternalProvider Should Handle SFCB_RegisteredProfile
+- 3512425 SequenceContext needs to be set at startup
Changes in 1.3.13
=================
diff --git a/interopProvider.c b/interopProvider.c
index 1e8b3d8..e066599 100644
--- a/interopProvider.c
+++ b/interopProvider.c
@@ -795,12 +795,33 @@ initInterOp(const CMPIBroker * broker, const CMPIContext *ctx)
enm = _broker->bft->enumerateInstances(_broker, ctx, op, NULL, &st);
if (enm) {
+ // Get the IndicationService name for SequenceContext migration
+ CMPIObjectPath * isop = CMNewObjectPath(_broker, "root/interop", "CIM_IndicationService", NULL);
+ CMPIEnumeration * isenm = _broker->bft->enumerateInstances(_broker, ctx, isop, NULL, NULL);
+ CMPIData isinst = CMGetNext(isenm, NULL);
+ CMPIData mc = CMGetProperty(isinst.value.inst, "Name", NULL);
+ CMPIData ld;
+ // Loop through all the listeners
+ int ldcount=0;
+ char context[100];
while (enm->ft->hasNext(enm, &st)
&& (ci = (enm->ft->getNext(enm, &st)).value.inst)) {
cop = CMGetObjectPath(ci, &st);
if (RIEnabled) {
- // Reset the sequence numbers on sfcb restart
+ // check and set context for migrated listeners.
CMPIInstance *ldi = _broker->bft->getInstance(_broker, ctxLocal, cop, NULL, NULL);
+ ld = CMGetProperty(ldi, "SequenceContext", NULL);
+ if (ld.state != CMPI_goodValue) {
+ _SFCB_TRACE(1,("--- adding SequenceContext to migrated cim_listenerdestination"));
+ // build and set the context string, we can't know the actual creation
+ // time, so just use SFCB start time + index.
+ ldcount++;
+ sprintf (context,"%s#%sM%d#",mc.value.string->ft->getCharPtr(mc.value.string,NULL),sfcBrokerStart,ldcount);
+ CMPIValue scontext;
+ scontext.string = sfcb_native_new_CMPIString(context, NULL, 0);
+ CMSetProperty(ldi, "SequenceContext", &scontext, CMPI_string);
+ }
+ // Reset the sequence numbers on sfcb restart
CMPIValue zarro = {.sint64 = -1 };
CMSetProperty(ldi, "LastSequenceNumber", &zarro, CMPI_sint64);
CBModifyInstance(_broker, ctxLocal, cop, ldi, NULL);
hooks/post-receive
--
SFCB - Small Footprint CIM Broker
|
|
From: Tyrel D. <ty...@us...> - 2012-04-03 20:20:42
|
Update of /cvsroot/sblim/gather In directory vz-cvs-3.sog:/tmp/cvs-serv8051 Modified Files: NEWS Log Message: Fixed 3514701: segv parsing xml if no defined source media Index: NEWS =================================================================== RCS file: /cvsroot/sblim/gather/NEWS,v retrieving revision 1.121 retrieving revision 1.122 diff -u -d -r1.121 -r1.122 --- NEWS 2 Feb 2012 00:39:47 -0000 1.121 +++ NEWS 3 Apr 2012 20:20:40 -0000 1.122 @@ -6,6 +6,7 @@ - 3482867 virDomainBlkStats garbage if domain undefined - 3482869 segv parsing xml if domain becomes undefined - 3482875 virDomBlkInfo garbage if domain undefined +- 3514701 segv parsing xml if no defined source media Changes in Version 2.2.4 ======================== |
|
From: Tyrel D. <ty...@us...> - 2012-04-03 20:19:29
|
Update of /cvsroot/sblim/gather/plugin
In directory vz-cvs-3.sog:/tmp/cvs-serv7961/plugin
Modified Files:
metricVirt.c
Log Message:
Fixed 3514701: segv parsing xml if no defined source media
Index: metricVirt.c
===================================================================
RCS file: /cvsroot/sblim/gather/plugin/metricVirt.c,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -d -r1.20 -r1.21
--- metricVirt.c 2 Feb 2012 00:39:47 -0000 1.20
+++ metricVirt.c 3 Apr 2012 20:19:26 -0000 1.21
@@ -142,8 +142,9 @@
end = strstr(cur, "</disk");
+ /* check that we found a 'source' tag and it is part of the current disk block */
temp = strstr(cur, "<source");
- if (temp > end) {
+ if (!temp || temp > end) {
continue;
}
|
|
From: Chris B. <buc...@us...> - 2012-04-03 19:32:55
|
Update of /cvsroot/sblim/sfcb In directory vz-cvs-3.sog:/tmp/cvs-serv3746 Modified Files: utilTypeCk.c ChangeLog NEWS Log Message: [ 3514443 ] sfcb 1.3.14 compilation error Index: NEWS =================================================================== RCS file: /cvsroot/sblim/sfcb/NEWS,v retrieving revision 1.676 retrieving revision 1.677 diff -u -d -r1.676 -r1.677 --- NEWS 30 Mar 2012 21:51:31 -0000 1.676 +++ NEWS 3 Apr 2012 19:32:52 -0000 1.677 @@ -1,3 +1,10 @@ +Changes in 1.3.15 +================= + +Bugs fixed: + +- 3514443 sfcb 1.3.14 compilation error + Changes in 1.3.14 ================= Index: utilTypeCk.c =================================================================== RCS file: /cvsroot/sblim/sfcb/utilTypeCk.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- utilTypeCk.c 27 Dec 2011 20:45:20 -0000 1.2 +++ utilTypeCk.c 3 Apr 2012 19:32:52 -0000 1.3 @@ -25,7 +25,7 @@ #include <strings.h> #include <limits.h> #include <errno.h> -#include "cmpi/cmpidt.h" +#include "cmpidt.h" /* checks for unsigned integers uint8 - uint64 */ int Index: ChangeLog =================================================================== RCS file: /cvsroot/sblim/sfcb/ChangeLog,v retrieving revision 1.755 retrieving revision 1.756 diff -u -d -r1.755 -r1.756 --- ChangeLog 30 Mar 2012 21:51:31 -0000 1.755 +++ ChangeLog 3 Apr 2012 19:32:52 -0000 1.756 @@ -1,3 +1,8 @@ +2012-04-03 Chris Buccella <buc...@li...> + + * utilTypeCk.c: + [ 3514443 ] sfcb 1.3.14 compilation error + 2012-03-30 Chris Buccella <buc...@li...> * httpAdapter.c: |
|
From: Dave B. <bla...@us...> - 2012-04-03 19:16:37
|
Update of /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/wbem
In directory vz-cvs-3.sog:/tmp/cvs-serv3157/src/org/sblim/cimclient/internal/wbem
Modified Files:
Tag: Experimental
WBEMClientCIMXML.java
Log Message:
3514685 - TCK: getProperty must return default values
Index: WBEMClientCIMXML.java
===================================================================
RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/wbem/WBEMClientCIMXML.java,v
retrieving revision 1.21.2.56
retrieving revision 1.21.2.57
diff -u -d -r1.21.2.56 -r1.21.2.57
--- WBEMClientCIMXML.java 3 Apr 2012 12:50:23 -0000 1.21.2.56
+++ WBEMClientCIMXML.java 3 Apr 2012 19:16:35 -0000 1.21.2.57
@@ -58,6 +58,7 @@
* 3423064 2011-10-13 blaschke-oss Add UpdateExpiredPassword Header for Reqs from Java Client
* 3496355 2012-03-02 blaschke-oss JSR48 1.0.0: add new WBEMClientConstants
* 3514537 2012-04-03 blaschke-oss TCK: execQueryInstances requires boolean, not Boolean
+ * 3514685 2012-04-03 blaschke-oss TCK: getProperty must return default values
*/
package org.sblim.cimclient.internal.wbem;
@@ -330,58 +331,36 @@
public String getProperty(String pKey) {
if (pKey.startsWith("javax.wbem.")) {
// Process JSR48 properties
- String SblimKey;
-
if (pKey.equals(WBEMClientConstants.PROP_ENABLE_CONSOLE_LOGGING)) {
- SblimKey = this.iConfiguration
- .getDomainProperty(WBEMConfigurationProperties.LOG_CONSOLE_LEVEL);
- if (SblimKey == null) return null;
- return SblimKey.equals("OFF") ? "0" : "1";
+ return Level.OFF.equals(this.iConfiguration.getLogConsoleLevel()) ? "0" : "1";
} else if (pKey.equals(WBEMClientConstants.PROP_ENABLE_DEBUG)) {
- SblimKey = this.iConfiguration
- .getDomainProperty(WBEMConfigurationProperties.LOG_DEBUG);
- if (SblimKey == null) return null;
- return SblimKey.equals("true") ? "1" : "0";
+ return this.iConfiguration.isLogDebug() ? "1" : "0";
} else if (pKey.equals(WBEMClientConstants.PROP_ENABLE_FILE_LOGGING)) {
- SblimKey = this.iConfiguration
- .getDomainProperty(WBEMConfigurationProperties.LOG_FILE_LEVEL);
- if (SblimKey == null) return null;
- return SblimKey.equals("OFF") ? "0" : "1";
+ return Level.OFF.equals(this.iConfiguration.getLogFileLevel()) ? "0" : "1";
} else if (pKey.equals(WBEMClientConstants.PROP_LOG_BYTE_LIMIT)) {
- return this.iConfiguration
- .getDomainProperty(WBEMConfigurationProperties.LOG_FILE_SIZE_LIMIT);
+ return Integer.toString(this.iConfiguration.getLogFileSizeLimit());
} else if (pKey.equals(WBEMClientConstants.PROP_LOG_DIR)) {
- SblimKey = this.iConfiguration
- .getDomainProperty(WBEMConfigurationProperties.LOG_FILE_LOCATION);
+ String SblimKey = this.iConfiguration.getLogFileLocation();
if (SblimKey == null) return null;
int i = SblimKey.lastIndexOf(File.separatorChar);
return i != -1 ? SblimKey.substring(0, i) : null;
} else if (pKey.equals(WBEMClientConstants.PROP_LOG_FILENAME)) {
- SblimKey = this.iConfiguration
- .getDomainProperty(WBEMConfigurationProperties.LOG_FILE_LOCATION);
+ String SblimKey = this.iConfiguration.getLogFileLocation();
if (SblimKey == null) return null;
int i = SblimKey.lastIndexOf(File.separatorChar);
return i != -1 ? SblimKey.substring(i + 1) : SblimKey;
} else if (pKey.equals(WBEMClientConstants.PROP_LOG_NUM_FILES)) {
- return this.iConfiguration
- .getDomainProperty(WBEMConfigurationProperties.LOG_FILE_COUNT);
+ return Integer.toString(this.iConfiguration.getLogFileCount());
} else if (pKey.equals(WBEMClientConstants.PROP_TIMEOUT)) {
- return this.iConfiguration
- .getDomainProperty(WBEMConfigurationProperties.HTTP_TIMEOUT);
+ return Integer.toString(this.iConfiguration.getHttpTimeout());
} else if (pKey.equals(WBEMClientConstants.PROPERTY_WBEM_CHUNKING)) {
- SblimKey = this.iConfiguration
- .getDomainProperty(WBEMConfigurationProperties.HTTP_USE_CHUNKING);
- if (SblimKey == null) return null;
- return SblimKey.equals("true") ? "1" : "0";
+ return this.iConfiguration.isHttpChunked() ? "1" : "0";
} else if (pKey.equals(WBEMClientConstants.PROP_CLIENT_KEYSTORE)) {
- return this.iConfiguration
- .getDomainProperty(WBEMConfigurationProperties.KEYSTORE_PATH);
+ return this.iConfiguration.getSslKeyStorePath();
} else if (pKey.equals(WBEMClientConstants.PROP_CLIENT_KEYSTORE_PASSWORD)) {
- return this.iConfiguration
- .getDomainProperty(WBEMConfigurationProperties.KEYSTORE_PASSWORD);
+ return this.iConfiguration.getSslKeyStorePassword();
} else if (pKey.equals(WBEMClientConstants.PROP_CLIENT_TRUSTSTORE)) {
- return this.iConfiguration
- .getDomainProperty(WBEMConfigurationProperties.TRUSTSTORE_PATH);
+ return this.iConfiguration.getSslTrustStorePath();
} else {
return null;
}
|
|
From: Chris B. <buc...@us...> - 2012-04-03 16:04:33
|
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 9485c3a9baaf59453dec79496073d45da8b1cc52 (commit)
from fc989a07063e91acdc1e7fef35bf466778ffe503 (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 9485c3a9baaf59453dec79496073d45da8b1cc52
Author: buccella <buc...@li...>
Date: Tue Apr 3 12:03:50 2012 -0400
[ 3483294 ] InternalProvider Should Handle SFCB_RegisteredProfile
-----------------------------------------------------------------------
Summary of changes:
diff --git a/ChangeLog b/ChangeLog
index 7a789d4..5922c5b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2012-04-03 Chris Buccella <buc...@li...>
+
+ * Makefile.am, configure.ac, default.reg.in, profileProvider.c,
+ providerMgr.c, test/xmltest/modifyInstance_regprofile.lines:
+ [ 3483294 ] InternalProvider Should Handle SFCB_RegisteredProfile
+
2012-04-02 Narasimha Sharoff <nsh...@us...>
* indCIMXMLHandler.c:
diff --git a/Makefile.am b/Makefile.am
index c50bf30..43ecd4a 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -120,6 +120,12 @@ else
ACCOUNT_PASSTHRU_LIBS =
endif
+if SLP
+ PROFILE_PROVIDER_LIBS = libsfcProfileProvider.la
+else
+ PROFILE_PROVDIER_LIBS =
+endif
+
sfcb_sharedobjects = \
$(sfcblibdir)/*.so
@@ -129,7 +135,7 @@ sfcblib_LTLIBRARIES = \
libsfcInternalProvider.la \
libsfcInteropProvider.la \
libsfcInteropServerProvider.la \
- libsfcProfileProvider.la \
+ $(PROFILE_PROVIDER_LIBS) \
libsfcElementCapabilitiesProvider.la \
libsfcClassProvider.la \
libsfcClassProviderGz.la \
@@ -157,13 +163,11 @@ sfcblib_LTLIBRARIES += \
libTestIndicationProvider.la
endif
-SLP_PROGRAMFILES =
-
sbin_PROGRAMS = \
sfcbd
bin_PROGRAMS = \
- sfcbmofpp sfcbdump sfcbinst2mof $(SLP_PROGRAMFILES)
+ sfcbmofpp sfcbdump sfcbinst2mof
noinst_PROGRAMS = \
sfcbdumpP32onI32 classSchema2c sfcbsem
@@ -284,9 +288,7 @@ libsfcIndCIMXMLHandler_la_LIBADD=-lsfcBrokerCore -lsfcInternalProvider $(CIMXMLC
libsfcIndCIMXMLHandler_la_DEPENDENCIES=libsfcBrokerCore.la libsfcInternalProvider.la \
$(CIMXMLCODEC_LIBS) $(HTTP_ADAPTER_LIBS)
-libsfcProfileProvider_la_SOURCES = \
- profileProvider.c \
- $(SLP_SRC)
+libsfcProfileProvider_la_SOURCES = $(SLP_SRC)
libsfcProfileProvider_la_LIBADD=-lsfcBrokerCore
libsfcProfileProvider_la_DEPENDENCIES=libsfcBrokerCore.la
@@ -377,7 +379,8 @@ libsfcCimXmlCodec_la_DEPENDENCIES=libsfcBrokerCore.la
endif
if SLP
-SLP_SRC = cimslpCMPI.c \
+SLP_SRC = profileProvider.c \
+ cimslpCMPI.c \
cimslpSLP.c \
cimslpUtil.c
SLP_INC = cimslpCMPI.h \
@@ -385,6 +388,7 @@ SLP_INC = cimslpCMPI.h \
cimslpUtil.h
else
+SLP_SRC =
SLP_INC =
endif
diff --git a/NEWS b/NEWS
index 3ed725d..4396020 100644
--- a/NEWS
+++ b/NEWS
@@ -131,6 +131,7 @@ Bugs Fixed:
- 3416054 Provider continues despite SIGSEGV
- 3505407 Client openlog changes settings
- 3485830 SFCB Makes Redundant ActivateFilter Calls
+- 3483294 InternalProvider Should Handle SFCB_RegisteredProfile
Changes in 1.3.13
=================
diff --git a/configure.ac b/configure.ac
index da0641a..883f61d 100644
--- a/configure.ac
+++ b/configure.ac
@@ -175,7 +175,11 @@ fi
if test "$enable_slp" == "yes"; then
AC_DEFINE(HAVE_SLP,,[SLP support enabled.])
+ LOAD_PROFILE_PROVIDER=
+else
+ LOAD_PROFILE_PROVIDER='#'
fi
+AC_SUBST(LOAD_PROFILE_PROVIDER)
if test "$enable_slp_hostname_lib" == "yes"; then
AC_DEFINE(SLP_HOSTNAME_LIB,,[SLP Hostname lib enabled])
diff --git a/default.reg.in b/default.reg.in
index b3c5cc2..7d8d9d3 100644
--- a/default.reg.in
+++ b/default.reg.in
@@ -20,12 +20,12 @@
unload: never
namespace: root/interop
#
-[$ProfileProvider$]
- provider: ProfileProvider
- location: sfcProfileProvider
- type: instance method
- unload: never
- namespace: root/interop
+@LOAD_PROFILE_PROVIDER@[$ProfileProvider$]
+@LOAD_PROFILE_PROVIDER@ provider: ProfileProvider
+@LOAD_PROFILE_PROVIDER@ location: sfcProfileProvider
+@LOAD_PROFILE_PROVIDER@ type: method
+@LOAD_PROFILE_PROVIDER@ unload: never
+@LOAD_PROFILE_PROVIDER@ namespace: root/interop
#
@LOAD_QUALIFIER_PROVIDER@[$QualifierProvider$]
@LOAD_QUALIFIER_PROVIDER@ provider: QualifierProvider
@@ -78,10 +78,9 @@
@LOAD_SFCBACCOUNT_PROVIDER@ namespace: root/interop
#
[SFCB_RegisteredProfile]
- provider: ProfileProvider
- location: sfcProfileProvider
+ provider: InternalProvider
+ location: sfcInternalProvider
type: instance
- unload: never
namespace: root/interop
#
[CIM_Namespace]
diff --git a/profileProvider.c b/profileProvider.c
index d502608..b148d07 100644
--- a/profileProvider.c
+++ b/profileProvider.c
@@ -105,226 +105,6 @@ static const CMPIBroker *_broker;
* -------------------------------------------------------------------------
*/
-CMPIContext *
-prepareUpcall(const CMPIContext *ctx)
-{
- /*
- * used to invoke the internal provider in upcalls, otherwise we will be
- * routed here again
- */
- CMPIContext *ctxLocal;
- ctxLocal = native_clone_CMPIContext(ctx);
- CMPIValue val;
- val.string = sfcb_native_new_CMPIString("$DefaultProvider$", NULL, 0);
- ctxLocal->ft->addEntry(ctxLocal, "rerouteToProvider", &val, CMPI_string);
- return ctxLocal;
-}
-
-
-/*
- * --------------------------------------------------------------------------
- */
-/*
- * Instance Provider Interface
- */
-/*
- * --------------------------------------------------------------------------
- */
-
-CMPIStatus
-ProfileProviderCleanup(CMPIInstanceMI * mi,
- const CMPIContext *ctx, CMPIBoolean terminate)
-{
- CMPIStatus st = { CMPI_RC_OK, NULL };
- _SFCB_ENTER(TRACE_INDPROVIDER, "ProfileProviderCleanup");
-#ifdef HAVE_SLP
- // Tell SLP update thread that we're shutting down
- _SFCB_TRACE(1, ("--- Stopping SLP thread"));
- pthread_kill(slpUpdateThread, SIGUSR2);
- // Wait for thread to complete
- pthread_join(slpUpdateThread, NULL);
- _SFCB_TRACE(1, ("--- SLP Thread stopped"));
-#endif // HAVE_SLP
- _SFCB_RETURN(st);
-}
-
-/*
- * -------------------------------------------------------------------------
- */
-
-CMPIStatus
-ProfileProviderEnumInstanceNames(CMPIInstanceMI * mi,
- const CMPIContext *ctx,
- const CMPIResult *rslt,
- const CMPIObjectPath * ref)
-{
- CMPIStatus st = { CMPI_RC_OK, NULL };
- CMPIEnumeration *enm;
- CMPIContext *ctxLocal;
- _SFCB_ENTER(TRACE_INDPROVIDER, "ProfileProviderEnumInstanceNames");
-
- ctxLocal = prepareUpcall((CMPIContext *) ctx);
- enm = _broker->bft->enumerateInstanceNames(_broker, ctxLocal, ref, &st);
- CMRelease(ctxLocal);
-
- while (enm && enm->ft->hasNext(enm, &st)) {
- CMReturnObjectPath(rslt, (enm->ft->getNext(enm, &st)).value.ref);
- }
- if (enm)
- CMRelease(enm);
- _SFCB_RETURN(st);
-}
-
-/*
- * -------------------------------------------------------------------------
- */
-
-CMPIStatus
-ProfileProviderEnumInstances(CMPIInstanceMI * mi,
- const CMPIContext *ctx,
- const CMPIResult *rslt,
- const CMPIObjectPath * ref,
- const char **properties)
-{
- CMPIStatus st = { CMPI_RC_OK, NULL };
- CMPIEnumeration *enm;
- CMPIContext *ctxLocal;
- _SFCB_ENTER(TRACE_INDPROVIDER, "ProfileProviderEnumInstances");
-
- ctxLocal = prepareUpcall((CMPIContext *) ctx);
- enm =
- _broker->bft->enumerateInstances(_broker, ctxLocal, ref, properties,
- &st);
- CMRelease(ctxLocal);
-
- while (enm && enm->ft->hasNext(enm, &st)) {
- CMReturnInstance(rslt, (enm->ft->getNext(enm, &st)).value.inst);
- }
- if (enm)
- CMRelease(enm);
- _SFCB_RETURN(st);
-}
-
-/*
- * -------------------------------------------------------------------------
- */
-
-CMPIStatus
-ProfileProviderGetInstance(CMPIInstanceMI * mi,
- const CMPIContext *ctx,
- const CMPIResult *rslt,
- const CMPIObjectPath * cop,
- const char **properties)
-{
-
- CMPIStatus st = { CMPI_RC_OK, NULL };
- CMPIContext *ctxLocal;
- CMPIInstance *ci;
-
- _SFCB_ENTER(TRACE_INDPROVIDER, "ProfileProviderGetInstance");
-
- ctxLocal = prepareUpcall((CMPIContext *) ctx);
-
- ci = _broker->bft->getInstance(_broker, ctxLocal, cop, properties, &st);
- if (st.rc == CMPI_RC_OK) {
- CMReturnInstance(rslt, ci);
- }
-
- CMRelease(ctxLocal);
-
- _SFCB_RETURN(st);
-
-}
-
-/*
- * -------------------------------------------------------------------------
- */
-
-CMPIStatus
-ProfileProviderCreateInstance(CMPIInstanceMI * mi,
- const CMPIContext *ctx,
- const CMPIResult *rslt,
- const CMPIObjectPath * cop,
- const CMPIInstance *ci)
-{
- CMPIStatus st = { CMPI_RC_OK, NULL };
- CMPIContext *ctxLocal;
- //cimomConfig cfg;
-
- _SFCB_ENTER(TRACE_INDPROVIDER, "ProfileProviderCreateInstance");
-
- ctxLocal = prepareUpcall((CMPIContext *) ctx);
- CMReturnObjectPath(rslt,
- _broker->bft->createInstance(_broker, ctxLocal, cop,
- ci, &st));
- CMRelease(ctxLocal);
-#ifdef HAVE_SLP
- //updateSLPRegistration
- updateSLPReg(ctx, slpLifeTime);
-#endif // HAVE_SLP
-
- _SFCB_RETURN(st);
-}
-
-/*
- * -------------------------------------------------------------------------
- */
-
-CMPIStatus
-ProfileProviderModifyInstance(CMPIInstanceMI * mi,
- const CMPIContext *ctx,
- const CMPIResult *rslt,
- const CMPIObjectPath * cop,
- const CMPIInstance *ci,
- const char **properties)
-{
- CMPIStatus st = { CMPI_RC_ERR_NOT_SUPPORTED, NULL };
- _SFCB_ENTER(TRACE_INDPROVIDER, "ProfileProviderModifyInstance");
- _SFCB_RETURN(st);
-}
-
-/*
- * -------------------------------------------------------------------------
- */
-
-CMPIStatus
-ProfileProviderDeleteInstance(CMPIInstanceMI * mi,
- const CMPIContext *ctx,
- const CMPIResult *rslt,
- const CMPIObjectPath * cop)
-{
- CMPIStatus st = { CMPI_RC_OK, NULL };
- CMPIContext *ctxLocal;
-
- _SFCB_ENTER(TRACE_INDPROVIDER, "ProfileProviderDeleteInstance");
-
- ctxLocal = prepareUpcall((CMPIContext *) ctx);
- st = _broker->bft->deleteInstance(_broker, ctxLocal, cop);
- CMRelease(ctxLocal);
-#ifdef HAVE_SLP
- //updateSLPRegistration
- updateSLPReg(ctx, slpLifeTime);
-#endif // HAVE_SLP
-
- _SFCB_RETURN(st);
-}
-
-/*
- * -------------------------------------------------------------------------
- */
-
-CMPIStatus
-ProfileProviderExecQuery(CMPIInstanceMI * mi,
- const CMPIContext *ctx,
- const CMPIResult *rslt,
- const CMPIObjectPath * cop,
- const char *lang, const char *query)
-{
- CMPIStatus st = { CMPI_RC_ERR_NOT_SUPPORTED, NULL };
- _SFCB_ENTER(TRACE_INDPROVIDER, "ProfileProviderExecQuery");
- _SFCB_RETURN(st);
-}
-
CMPIStatus
ProfileProviderInvokeMethod(CMPIMethodMI * mi,
const CMPIContext *ctx,
@@ -345,9 +125,17 @@ ProfileProviderInvokeMethod(CMPIMethodMI * mi,
CMPIStatus ProfileProviderMethodCleanup(CMPIMethodMI * mi,
const CMPIContext * ctx, CMPIBoolean terminate)
{
- CMPIStatus st = { CMPI_RC_OK, NULL };
- _SFCB_ENTER(TRACE_INDPROVIDER, "ProfileProviderMethodCleanup");
- _SFCB_RETURN(st);
+ CMPIStatus st = { CMPI_RC_OK, NULL };
+ _SFCB_ENTER(TRACE_INDPROVIDER, "ProfileProviderCleanup");
+#ifdef HAVE_SLP
+ // Tell SLP update thread that we're shutting down
+ _SFCB_TRACE(1, ("--- Stopping SLP thread"));
+ pthread_kill(slpUpdateThread, SIGUSR2);
+ // Wait for thread to complete
+ pthread_join(slpUpdateThread, NULL);
+ _SFCB_TRACE(1, ("--- SLP Thread stopped"));
+#endif // HAVE_SLP
+ _SFCB_RETURN(st);
}
@@ -518,17 +306,8 @@ spawnUpdateThread(const CMPIContext *ctx)
#else // no HAVE_SLP
#define UPDATE_SLP_REG CMNoHook
#endif // HAVE_SLP
-/*
- * ------------------------------------------------------------------ *
- * Instance MI Factory NOTE: This is an example using the convenience
- * macros. This is OK as long as the MI has no special requirements, i.e.
- * to store data between calls.
- * ------------------------------------------------------------------
- */
-//CMInstanceMIStub(ProfileProvider, ProfileProvider, _broker, CMNoHook);
-CMInstanceMIStub(ProfileProvider, ProfileProvider, _broker, UPDATE_SLP_REG);
-CMMethodMIStub(ProfileProvider, ProfileProvider, _broker, CMNoHook);
+CMMethodMIStub(ProfileProvider, ProfileProvider, _broker, UPDATE_SLP_REG);
/* MODELINES */
/* DO NOT EDIT BELOW THIS COMMENT */
diff --git a/providerMgr.c b/providerMgr.c
index 57b3b06..c088608 100644
--- a/providerMgr.c
+++ b/providerMgr.c
@@ -998,7 +998,9 @@ processProviderMgrRequests()
startUpProvider("root/interop", "$InterOpProvider$");
}
#endif
+#ifdef HAVE_SLP
startUpProvider("root/interop", "$ProfileProvider$");
+#endif
for (;;) {
MgrHandler hdlr;
diff --git a/test/xmltest/modifyInstance_regprofile.lines b/test/xmltest/modifyInstance_regprofile.lines
index 584374a..9337d8e 100644
--- a/test/xmltest/modifyInstance_regprofile.lines
+++ b/test/xmltest/modifyInstance_regprofile.lines
@@ -1,3 +1,3 @@
<IMETHODRESPONSE NAME="ModifyInstance">
-<ERROR CODE="7" DESCRIPTION="The requested operation is not supported"/>
+<ERROR CODE="6" DESCRIPTION="The requested object could not be found"/>
</IMETHODRESPONSE>
hooks/post-receive
--
SFCB - Small Footprint CIM Broker
|
|
From: Dave B. <bla...@us...> - 2012-04-03 12:50:26
|
Update of /cvsroot/sblim/jsr48-client/src/javax/wbem/client
In directory vz-cvs-3.sog:/tmp/cvs-serv9512/src/javax/wbem/client
Modified Files:
Tag: Experimental
WBEMClient.java
Log Message:
3514537 - TCK: execQueryInstances requires boolean, not Boolean
Index: WBEMClient.java
===================================================================
RCS file: /cvsroot/sblim/jsr48-client/src/javax/wbem/client/WBEMClient.java,v
retrieving revision 1.2.2.16
retrieving revision 1.2.2.17
diff -u -d -r1.2.2.16 -r1.2.2.17
--- WBEMClient.java 2 Mar 2012 18:13:36 -0000 1.2.2.16
+++ WBEMClient.java 3 Apr 2012 12:50:24 -0000 1.2.2.17
@@ -27,6 +27,7 @@
* 2961592 2010-03-01 blaschke-oss Remove WBEMClient.setLocales() UnsupportedOperationException
* 3496301 2012-03-02 blaschke-oss Sync up javax.* javadoc with JSR48 1.0.0 Final
* 3496343 2012-03-02 blaschke-oss JSR48 1.0.0: deprecate WBEMClient associators and references
+ * 3514537 2012-04-03 blaschke-oss TCK: execQueryInstances requires boolean, not Boolean
*/
package javax.wbem.client;
@@ -1431,8 +1432,8 @@
* </pre>
*/
public EnumerateResponse<CIMInstance> execQueryInstances(CIMObjectPath pObjectName,
- String pFilterQuery, String pFilterQueryLanguage, Boolean pReturnQueryResultClass,
- UnsignedInteger32 pTimeout, Boolean pContinueOnError, UnsignedInteger32 pMaxObjects,
+ String pFilterQuery, String pFilterQueryLanguage, boolean pReturnQueryResultClass,
+ UnsignedInteger32 pTimeout, boolean pContinueOnError, UnsignedInteger32 pMaxObjects,
CIMClass pQueryResultClass) throws WBEMException;
/**
|
|
From: Narasimha S. <nsh...@us...> - 2012-04-03 00:29:53
|
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 fc989a07063e91acdc1e7fef35bf466778ffe503 (commit)
from 022cb89d6732224551a3796650f28b9556ac2ccc (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 fc989a07063e91acdc1e7fef35bf466778ffe503
Author: nsharoff <nsharoff@nsharoff.(none)>
Date: Mon Apr 2 17:21:32 2012 -0700
Patches for [ 3486814 , 3462309 , 3485438 ]
-----------------------------------------------------------------------
Summary of changes:
diff --git a/ChangeLog b/ChangeLog
index caae215..7a789d4 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+2012-04-02 Narasimha Sharoff <nsh...@us...>
+
+ * indCIMXMLHandler.c:
+ [ 3485438 ] Segfault while retrying to deliver an indication
+
+ * sfcBroker.c:
+ [ 3462309 ] Do not allow multiple instances of sfcb
+
+ * cimXmlParser.c:
+ [ 3486814 ] sfcb crashes while freeing the cimxml response
+
2012-04-02 Michael Chase-Salerno <br...@li...>
* cimcClientSfcbLocal.c:
diff --git a/cimXmlParser.c b/cimXmlParser.c
index cd75652..50697f8 100644
--- a/cimXmlParser.c
+++ b/cimXmlParser.c
@@ -1847,7 +1847,9 @@ freeParamValues(XtokParamValues * op)
XtokParamValue *pv = op->first,
*dv;
while (pv) {
- freeParamValue(pv);
+ /* 3486814 : type is invalid, value is null */
+ if (pv->type != USHRT_MAX)
+ freeParamValue(pv);
dv = pv;
pv = pv->next;
free(dv);
diff --git a/indCIMXMLHandler.c b/indCIMXMLHandler.c
index 5110005..c618ca9 100644
--- a/indCIMXMLHandler.c
+++ b/indCIMXMLHandler.c
@@ -736,10 +736,14 @@ dqRetry(CMPIContext * ctx, RTElement * cur)
// queue is empty
free(cur);
RQhead = NULL;
+ RQtail = NULL;
} else {
// not last
cur->prev->next = cur->next;
cur->next->prev = cur->prev;
+ /* 3485438-77204 - update qhead/qtail */
+ if (cur == RQhead) RQhead=cur->next;
+ if (cur == RQtail) RQtail=cur->prev;
CMRelease(cur->ref);
CMRelease(cur->sub);
if (cur)
diff --git a/sfcBroker.c b/sfcBroker.c
index dcf7412..7a62a25 100644
--- a/sfcBroker.c
+++ b/sfcBroker.c
@@ -32,6 +32,12 @@
#include <signal.h>
#include <sys/wait.h>
+#include <stdlib.h>
+#include <fcntl.h>
+#include <dirent.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+
#include "trace.h"
#include "msgqueue.h"
#include <pthread.h>
@@ -504,6 +510,39 @@ usage(int status)
exit(status);
}
+/* SF 3462309 : Check if there is an instance of sfcbd running; use procfs */
+static int
+sfcb_is_running()
+{
+ #define STRBUF_LEN 512
+ #define BUF_LEN 30
+ struct dirent *dp = NULL;
+ char *strbuf = malloc(STRBUF_LEN);
+ char *buf = malloc(BUF_LEN);
+ int mypid = getpid();
+ int ret = 0;
+
+ DIR *dir = opendir("/proc");
+ while ((dp = readdir(dir)) != NULL) {
+ if (isdigit(dp->d_name[0])) {
+ sprintf(buf, "/proc/%s/exe", dp->d_name);
+ memset(strbuf, 0, STRBUF_LEN);
+ if (readlink(buf, strbuf, STRBUF_LEN) == -1) continue;
+ if (strstr(strbuf, "sfcbd") != NULL) {
+ ret = strtol(dp->d_name, NULL, 0);
+ if (ret == mypid) { ret = 0; continue; }
+ break;
+ }
+ }
+ }
+
+ closedir(dir);
+ free(buf);
+ free(strbuf);
+ return(ret);
+}
+
+
static void
version()
{
@@ -537,6 +576,13 @@ main(int argc, char *argv[])
pSockets;
char *pauseStr;
+ /* 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;
hooks/post-receive
--
SFCB - Small Footprint CIM Broker
|
|
From: Michael Chase-S. <mc...@us...> - 2012-04-02 22:44:09
|
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 022cb89d6732224551a3796650f28b9556ac2ccc (commit)
via 29fee485bbc6e8be2869c4e62216625d52f61aa6 (commit)
via 19a6ed782b5024306793625139de203280a944cc (commit)
from 573a60bec68c3c0113b3a27809423cccf92d4e4d (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 022cb89d6732224551a3796650f28b9556ac2ccc
Merge: 29fee48 573a60b
Author: Michael Chase-Salerno <br...@li...>
Date: Mon Apr 2 18:43:41 2012 -0400
Merge branch 'master' of ssh://sblim.git.sourceforge.net/gitroot/sblim/sfcb
Conflicts:
ChangeLog
NEWS
commit 29fee485bbc6e8be2869c4e62216625d52f61aa6
Author: Michael Chase-Salerno <br...@li...>
Date: Mon Apr 2 18:27:51 2012 -0400
3505407 Client openlog changes settings
commit 19a6ed782b5024306793625139de203280a944cc
Author: Michael Chase-Salerno <br...@li...>
Date: Mon Apr 2 18:23:08 2012 -0400
3505407 Client openlog changes settings
-----------------------------------------------------------------------
Summary of changes:
diff --git a/ChangeLog b/ChangeLog
index 035039e..caae215 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2012-04-02 Michael Chase-Salerno <br...@li...>
+
+ * cimcClientSfcbLocal.c:
+ [ 3505407 ] Client openlog changes settings
+
2012-04-02 Chris Buccella <buc...@li...>
* interopProvider.c:
diff --git a/NEWS b/NEWS
index eb22b0c..3ed725d 100644
--- a/NEWS
+++ b/NEWS
@@ -129,6 +129,7 @@ Bugs Fixed:
- 3487419 TestIndication Provider Does Not Enable Correctly
- 3441028 sblim-sfcb fails on large https requests
- 3416054 Provider continues despite SIGSEGV
+- 3505407 Client openlog changes settings
- 3485830 SFCB Makes Redundant ActivateFilter Calls
Changes in 1.3.13
diff --git a/cimcClientSfcbLocal.c b/cimcClientSfcbLocal.c
index 7c8bfbc..7a8a7b0 100644
--- a/cimcClientSfcbLocal.c
+++ b/cimcClientSfcbLocal.c
@@ -2101,8 +2101,6 @@ _Create_SfcbLocal_Env(char *id)
ClientEnv *env = (ClientEnv *) malloc(sizeof(ClientEnv));
env->hdl = NULL;
env->ft = &localFT;
- // enable logging when called from sfcc
- startLogging(LOG_ERR,0);
// enable trace logging
_SFCB_TRACE_INIT();
hooks/post-receive
--
SFCB - Small Footprint CIM Broker
|
|
From: Dave B. <bla...@us...> - 2012-04-02 20:59:12
|
Update of /cvsroot/sblim/jsr48-client In directory vz-cvs-3.sog:/tmp/cvs-serv25702 Modified Files: NEWS Log Message: 3505681 - Add detailed release history HTML Index: NEWS =================================================================== RCS file: /cvsroot/sblim/jsr48-client/NEWS,v retrieving revision 1.274 retrieving revision 1.275 diff -u -d -r1.274 -r1.275 --- NEWS 2 Apr 2012 20:41:12 -0000 1.274 +++ NEWS 2 Apr 2012 20:59:10 -0000 1.275 @@ -1,5 +1,6 @@ Changes in HEAD ================ +3505681 Add detailed release history HTML 3500619 JSR48 1.0.0: CIMClass association/key clean up Version 2.1.12 |
|
From: Chris B. <buc...@us...> - 2012-04-02 20:50:26
|
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 573a60bec68c3c0113b3a27809423cccf92d4e4d (commit)
from 4341649409e43df07f647d6e2d1b4b044b6cedb2 (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 573a60bec68c3c0113b3a27809423cccf92d4e4d
Author: buccella <buc...@li...>
Date: Mon Apr 2 16:50:23 2012 -0400
[ 3485830 ] SFCB Makes Redundant ActivateFilter Calls
-----------------------------------------------------------------------
Summary of changes:
diff --git a/ChangeLog b/ChangeLog
index 3051bfb..035039e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2012-04-02 Chris Buccella <buc...@li...>
+
+ * interopProvider.c:
+ [ 3485830 ] SFCB Makes Redundant ActivateFilter Calls
+
2012-03-29 Chris Buccella <buc...@li...>
* providerDrv.c:
diff --git a/NEWS b/NEWS
index e7cf262..eb22b0c 100644
--- a/NEWS
+++ b/NEWS
@@ -129,6 +129,7 @@ Bugs Fixed:
- 3487419 TestIndication Provider Does Not Enable Correctly
- 3441028 sblim-sfcb fails on large https requests
- 3416054 Provider continues despite SIGSEGV
+- 3485830 SFCB Makes Redundant ActivateFilter Calls
Changes in 1.3.13
=================
diff --git a/interopProvider.c b/interopProvider.c
index be285ca..1e8b3d8 100644
--- a/interopProvider.c
+++ b/interopProvider.c
@@ -705,26 +705,28 @@ processSubscription(const CMPIBroker * broker,
CMPI_dateTime);
su = addSubscription(ci, skey, fi, ha);
- fowardSubscription(ctx, fi, OPS_ActivateFilter, &st);
- if (st.rc != CMPI_RC_OK)
- removeSubscription(su, skey);
- // activation succesful, try to enable it
- else {
- // check property
- CMPIData d = CMGetProperty(ci, "SubscriptionState", &st);
- if (d.state == CMPI_goodValue) {
- if (d.value.uint16 == 2) { // ==enabled
- fowardSubscription(ctx, fi, OPS_EnableIndications, &st);
- }
+ /* send Activate filter request only if we haven't aleady */
+ if (fi->useCount == 1) {
+ fowardSubscription(ctx, fi, OPS_ActivateFilter, &st);
+ if (st.rc != CMPI_RC_OK) removeSubscription(su, skey);
+ }
+
+ /* activation succesful, try to enable it */
+ if (st.rc == CMPI_RC_OK) {
+ /* only enable if state is 2 (default) */
+ CMPIData d = CMGetProperty(ci, "SubscriptionState", &st);
+ if(d.state == CMPI_goodValue) {
+ if(d.value.uint16 == 2 && fi->useCount == 1) {
+ fowardSubscription(ctx, fi, OPS_EnableIndications, &st);
+ }
} else {
- /*
- * property not set, assume "enable" by default
- */
+ /* property not set, assume "enable" by default */
val.uint16 = 2;
- st = CMSetProperty((CMPIInstance *) ci, "SubscriptionState", &val,
- CMPI_uint16);
- fowardSubscription(ctx, fi, OPS_EnableIndications, &st);
+ st = CMSetProperty((CMPIInstance*)ci, "SubscriptionState", &val, CMPI_uint16);
+ if (fi->useCount == 1) {
+ fowardSubscription(ctx, fi, OPS_EnableIndications, &st);
+ }
}
}
hooks/post-receive
--
SFCB - Small Footprint CIM Broker
|
|
From: Dave B. <bla...@us...> - 2012-04-02 20:41:14
|
Update of /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml/sax/node
In directory vz-cvs-3.sog:/tmp/cvs-serv24128/src/org/sblim/cimclient/internal/cimxml/sax/node
Modified Files:
ClassNode.java
Log Message:
3500619 - JSR48 1.0.0: CIMClass association/key clean up
Index: ClassNode.java
===================================================================
RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml/sax/node/ClassNode.java,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -d -r1.9 -r1.10
--- ClassNode.java 12 Jun 2009 02:33:23 -0000 1.9
+++ ClassNode.java 2 Apr 2012 20:41:12 -0000 1.10
@@ -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
@@ -19,8 +19,9 @@
* 1783288 2007-09-10 ebak CIMClass.isAssociation() not working for retrieved classes.
* 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)
- * 2531371 2009-02-10 raman_arora Upgrade client to JDK 1.5 (Phase 2)
+ * 2531371 2009-02-10 raman_arora Upgrade client to JDK 1.5 (Phase 2)
* 2797550 2009-06-01 raman_arora JSR48 compliance - add Java Generics
+ * 3500619 2012-03-16 blaschke-oss JSR48 1.0.0: CIMClass association/key clean up
*/
package org.sblim.cimclient.internal.cimxml.sax.node;
@@ -72,6 +73,7 @@
this.iLocalPath = pSession.getDefLocalPath();
this.iQualiHandler = QualifiedNodeHandler.init(this.iQualiHandler);
this.iCIMClassPropAL = GenericExts.initClearArrayList(this.iCIMClassPropAL);
+ this.iKeyed = false;
this.iCIMMethodAL = GenericExts.initClearArrayList(this.iCIMMethodAL);
this.iName = getCIMName(pAttribs);
this.iSuperClass = pAttribs.getValue("SUPERCLASS"); // not mandatory
@@ -146,8 +148,7 @@
public CIMClass getCIMClass(CIMObjectPath pObjPath) {
return new CIMClass(pObjPath, this.iSuperClass, this.iQualiHandler.getQualis(),
this.iCIMClassPropAL.toArray(EMPTY_PA), this.iCIMMethodAL.toArray(EMPTY_MA),
- // FIXME: How about this isAssociation flag?
- false, false);
+ this.iQualiHandler.isAssociation(), this.iKeyed);
}
/**
|
|
From: Chris B. <buc...@us...> - 2012-04-02 20:31:56
|
Update of /cvsroot/sblim/sfcb In directory vz-cvs-3.sog:/tmp/cvs-serv22350 Modified Files: configure.ac Log Message: bump version number Index: configure.ac =================================================================== RCS file: /cvsroot/sblim/sfcb/configure.ac,v retrieving revision 1.125 retrieving revision 1.126 diff -u -d -r1.125 -r1.126 --- configure.ac 3 Feb 2012 16:45:57 -0000 1.125 +++ configure.ac 2 Apr 2012 20:31:54 -0000 1.126 @@ -22,7 +22,7 @@ # Process this file with autoconf to produce a configure script. -AC_INIT(Small Footprint CIM Broker, 1.3.14preview, sbl...@li..., sblim-sfcb) +AC_INIT(Small Footprint CIM Broker, 1.3.15preview, sbl...@li..., sblim-sfcb) AC_CONFIG_SRCDIR([providerDrv.c]) #disable "seems to ignore the --datarootdir setting" warnings |
|
From: Chris B. <buc...@us...> - 2012-04-02 18:36:07
|
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 4341649409e43df07f647d6e2d1b4b044b6cedb2 (commit)
from df603ba875c0b85ddb5d0272518c4b0e4eda4d28 (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 4341649409e43df07f647d6e2d1b4b044b6cedb2
Author: buccella <buc...@li...>
Date: Mon Apr 2 14:35:57 2012 -0400
small memory leak from 3408288
-----------------------------------------------------------------------
Summary of changes:
diff --git a/providerDrv.c b/providerDrv.c
index d56eaa4..8533cf0 100644
--- a/providerDrv.c
+++ b/providerDrv.c
@@ -1010,6 +1010,7 @@ getProcess(ProviderInfo * info, ProviderProcess ** proc)
BinResponseHdr* buf = errorCharsResp(CMPI_RC_ERR_FAILED, msg);
ecr_len = makeSafeResponse(buf, &err_crash_resp);
+ free(buf);
processProviderInvocationRequests(info->providerName);
_SFCB_RETURN(0);
hooks/post-receive
--
SFCB - Small Footprint CIM Broker
|
|
From: Dave B. <bla...@us...> - 2012-04-01 15:04:46
|
Update of /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml
In directory vz-cvs-3.sog:/tmp/cvs-serv18054/src/org/sblim/cimclient/internal/cimxml
Modified Files:
Tag: Experimental
CimXmlSerializer.java
Log Message:
3513357 - Handle multiple CDATAs in CimXmlSerializer
Index: CimXmlSerializer.java
===================================================================
RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml/CimXmlSerializer.java,v
retrieving revision 1.1.2.9
retrieving revision 1.1.2.10
diff -u -d -r1.1.2.9 -r1.1.2.10
--- CimXmlSerializer.java 23 Mar 2012 13:18:43 -0000 1.1.2.9
+++ CimXmlSerializer.java 1 Apr 2012 15:04:43 -0000 1.1.2.10
@@ -18,6 +18,7 @@
* 2524131 2009-01-21 raman_arora Upgrade client to JDK 1.5 (Phase 1)
* 2763216 2009-04-14 blaschke-oss Code cleanup: visible spelling/grammar errors
* 3510321 2012-03-23 blaschke-oss Handle CDATA in CimXmlSerializer
+ * 3513357 2012-04-01 blaschke-oss Handle multiple CDATAs in CimXmlSerializer
*/
package org.sblim.cimclient.internal.cimxml;
@@ -216,6 +217,10 @@
private boolean iLastClosed = false;
+ private final String CDATA_START = "<![CDATA[";
+
+ private final String CDATA_END = "]]>";
+
private CimXmlSerializer(boolean pPretty) {
this.iPretty = pPretty;
}
@@ -322,10 +327,34 @@
break;
case Node.TEXT_NODE:
String value = pNode.getNodeValue();
- if (value != null && value.startsWith("<![CDATA[") && value.endsWith("]]>")) {
- pWriter.write(value);
- } else {
- pWriter.writeValue(value);
+ if (value != null) {
+ int idx = 0;
+ int len = value.length();
+
+ while (idx < len) {
+ int cdata = value.indexOf(this.CDATA_START, idx);
+
+ // rest of string not CDATA, write all (escaped)
+ if (cdata == -1) {
+ pWriter.writeValue(value.substring(idx));
+ break;
+ }
+
+ // write characters before CDATA (escaped)
+ if (idx < cdata) {
+ pWriter.writeValue(value.substring(idx, cdata));
+ idx = cdata;
+ }
+
+ int end = value.indexOf(this.CDATA_END, idx);
+
+ // invalid CDATA
+ if (end == -1) { throw new IOException("CDATA section not closed: " + value); }
+
+ // write CDATA (not escaped)
+ pWriter.write(value.substring(idx, end + this.CDATA_END.length()));
+ idx = end + this.CDATA_END.length();
+ }
}
}
}
|
|
From: Dave B. <bla...@us...> - 2012-03-31 16:00:44
|
Update of /cvsroot/sblim/jsr48-client/src/javax/cim
In directory vz-cvs-3.sog:/tmp/cvs-serv22134/src/javax/cim
Modified Files:
Tag: Experimental
CIMObjectPath.java
Log Message:
3513347 - TCK: CIMObjectPath allows empty string
Index: CIMObjectPath.java
===================================================================
RCS file: /cvsroot/sblim/jsr48-client/src/javax/cim/CIMObjectPath.java,v
retrieving revision 1.11.2.18
retrieving revision 1.11.2.19
diff -u -d -r1.11.2.18 -r1.11.2.19
--- CIMObjectPath.java 31 Mar 2012 15:49:03 -0000 1.11.2.18
+++ CIMObjectPath.java 31 Mar 2012 16:00:40 -0000 1.11.2.19
@@ -29,6 +29,7 @@
* 3496349 2012-03-02 blaschke-oss JSR48 1.0.0: add CIMObjectPath getKeyValue
* 3510090 2012-03-23 blaschke-oss Fix CIMObjectPath.toString() inconsistencies
* 3513343 2012-03-31 blaschke-oss TCK: CIMObjectPath must validate XML schema name
+ * 3513347 2012-03-31 blaschke-oss TCK: CIMObjectPath allows empty string
*/
package javax.cim;
@@ -292,6 +293,8 @@
URI uri;
if (pObjectPath == null) throw new IllegalArgumentException("ObjectPath is null!");
+ if (pObjectPath.trim().length() == 0) throw new IllegalArgumentException(
+ "ObjectPath is empty!");
try {
uri = URI.parse(pObjectPath);
|
|
From: Dave B. <bla...@us...> - 2012-03-31 15:49:07
|
Update of /cvsroot/sblim/jsr48-client/src/javax/cim
In directory vz-cvs-3.sog:/tmp/cvs-serv21508/src/javax/cim
Modified Files:
Tag: Experimental
CIMObjectPath.java
Log Message:
3513343 - TCK: CIMObjectPath must validate XML schema name
Index: CIMObjectPath.java
===================================================================
RCS file: /cvsroot/sblim/jsr48-client/src/javax/cim/CIMObjectPath.java,v
retrieving revision 1.11.2.17
retrieving revision 1.11.2.18
diff -u -d -r1.11.2.17 -r1.11.2.18
--- CIMObjectPath.java 23 Mar 2012 16:44:46 -0000 1.11.2.17
+++ CIMObjectPath.java 31 Mar 2012 15:49:03 -0000 1.11.2.18
@@ -28,11 +28,14 @@
* 3023141 2010-07-01 blaschke-oss CIMObjectPath uses # constructor instead of valueOf
* 3496349 2012-03-02 blaschke-oss JSR48 1.0.0: add CIMObjectPath getKeyValue
* 3510090 2012-03-23 blaschke-oss Fix CIMObjectPath.toString() inconsistencies
+ * 3513343 2012-03-31 blaschke-oss TCK: CIMObjectPath must validate XML schema name
*/
package javax.cim;
import java.io.Serializable;
+import java.net.MalformedURLException;
+import java.net.URL;
import java.util.Arrays;
import org.sblim.cimclient.internal.cim.CIMElementSorter;
@@ -447,6 +450,13 @@
public CIMObjectPath(String pScheme, String pHost, String pPort, String pNamespace,
String pObjectName, CIMProperty<?>[] pKeys, String pXmlSchemaName) {
this(pScheme, pHost, pPort, pNamespace, pObjectName, pKeys);
+ if (pXmlSchemaName != null) {
+ try {
+ new URL(pXmlSchemaName);
+ } catch (MalformedURLException e) {
+ throw new IllegalArgumentException(e);
+ }
+ }
this.iXmlSchemaName = pXmlSchemaName;
}
|
|
From: Dave B. <bla...@us...> - 2012-03-31 15:39:44
|
Update of /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cim
In directory vz-cvs-3.sog:/tmp/cvs-serv20212/src/org/sblim/cimclient/internal/cim
Modified Files:
Tag: Experimental
CIMHelper.java
Log Message:
3513349 - TCK: CIMDataType must not accept null string
Index: CIMHelper.java
===================================================================
RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cim/CIMHelper.java,v
retrieving revision 1.2.2.6
retrieving revision 1.2.2.7
diff -u -d -r1.2.2.6 -r1.2.2.7
--- CIMHelper.java 31 Mar 2012 13:26:08 -0000 1.2.2.6
+++ CIMHelper.java 31 Mar 2012 15:39:42 -0000 1.2.2.7
@@ -19,6 +19,7 @@
* 2964463 2010-03-08 blaschke-oss WBEMClient.initialize() throws wrong exception
* 2942520 2010-03-08 blaschke-oss IPv6 link local address with scope_id including a dot not supported
* 3513353 2012-03-30 blaschke-oss TCK: CIMDataType arrays must have length >= 1
+ * 3513349 2012-03-31 blaschke-oss TCK: CIMDataType must not accept null string
*/
package org.sblim.cimclient.internal.cim;
@@ -98,7 +99,7 @@
/* 11 */CIMDataType.REAL64_T,
/* 12 */CIMDataType.DATETIME_T,
/* 13 */CIMDataType.CHAR16_T,
- /* 14 */new CIMDataType(null),
+ /* 14 */new CIMDataType(""),
/* 15 */CIMDataType.OBJECT_T,
/* 16 */null,
/* 17 */CIMDataType.CLASS_T };
@@ -132,7 +133,7 @@
/* 11 */CIMDataType.REAL64_ARRAY_T,
/* 12 */CIMDataType.DATETIME_ARRAY_T,
/* 13 */CIMDataType.CHAR16_ARRAY_T,
- /* 14 */new CIMDataType(null, 0),
+ /* 14 */new CIMDataType("", 0),
/* 15 */CIMDataType.OBJECT_ARRAY_T,
/* 16 */null,
/* 17 */CIMDataType.CLASS_ARRAY_T };
|
|
From: Dave B. <bla...@us...> - 2012-03-31 13:26:10
|
Update of /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cim
In directory vz-cvs-3.sog:/tmp/cvs-serv9707/src/org/sblim/cimclient/internal/cim
Modified Files:
Tag: Experimental
CIMHelper.java
Log Message:
3513353 - TCK: CIMDataType arrays must have length >= 1
Index: CIMHelper.java
===================================================================
RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cim/CIMHelper.java,v
retrieving revision 1.2.2.5
retrieving revision 1.2.2.6
diff -u -d -r1.2.2.5 -r1.2.2.6
--- CIMHelper.java 31 Mar 2012 00:02:18 -0000 1.2.2.5
+++ CIMHelper.java 31 Mar 2012 13:26:08 -0000 1.2.2.6
@@ -98,7 +98,7 @@
/* 11 */CIMDataType.REAL64_T,
/* 12 */CIMDataType.DATETIME_T,
/* 13 */CIMDataType.CHAR16_T,
- /* 14 */new CIMDataType(""),
+ /* 14 */new CIMDataType(null),
/* 15 */CIMDataType.OBJECT_T,
/* 16 */null,
/* 17 */CIMDataType.CLASS_T };
|
Update of /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml/sax/node
In directory vz-cvs-3.sog:/tmp/cvs-serv9289/src/org/sblim/cimclient/internal/cimxml/sax/node
Modified Files:
Tag: Experimental
ValueArrayNode.java QualifierNode.java QualiDeclNode.java
Node.java
Log Message:
3513353 - TCK: CIMDataType arrays must have length >= 1
Index: Node.java
===================================================================
RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml/sax/node/Node.java,v
retrieving revision 1.1.2.11
retrieving revision 1.1.2.12
diff -u -d -r1.1.2.11 -r1.1.2.12
--- Node.java 23 Feb 2009 18:25:57 -0000 1.1.2.11
+++ Node.java 31 Mar 2012 00:02:17 -0000 1.1.2.12
@@ -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
@@ -21,7 +21,8 @@
* 2003590 2008-06-30 blaschke-oss Change licensing from CPL to EPL
* 2038305 2008-08-14 blaschke-oss SAXException SBLIM Java Client V2.0.7
* 2524131 2009-01-21 raman_arora Upgrade client to JDK 1.5 (Phase 1)
- * 2531371 2009-02-10 raman_arora Upgrade client to JDK 1.5 (Phase 2)
+ * 2531371 2009-02-10 raman_arora Upgrade client to JDK 1.5 (Phase 2)
+ * 3513353 2012-03-30 blaschke-oss TCK: CIMDataType arrays must have length >= 1
*/
package org.sblim.cimclient.internal.cimxml.sax.node;
@@ -29,6 +30,7 @@
import javax.cim.CIMDataType;
import javax.cim.CIMFlavor;
+import org.sblim.cimclient.internal.cim.CIMHelper;
import org.sblim.cimclient.internal.cimxml.sax.CIMObjectFactory;
import org.sblim.cimclient.internal.cimxml.sax.NodeConstIf;
import org.sblim.cimclient.internal.cimxml.sax.SAXSession;
@@ -248,7 +250,10 @@
boolean isArray = hasTrueAttribute(pAttribs, "ISARRAY");
String arraySizeStr = pAttribs.getValue("ARRAYSIZE");
int arraySize = (arraySizeStr == null ? (isArray ? 0 : -1) : Integer.parseInt(arraySizeStr));
- if (isArray || arraySize >= 0) { return new CIMDataType(type.getType(), arraySize); }
+ if (isArray || arraySize >= 0) {
+ if (arraySize > 0) return new CIMDataType(type.getType(), arraySize);
+ return CIMHelper.UnboundedArrayDataType(type.getType());
+ }
return type;
}
Index: QualiDeclNode.java
===================================================================
RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml/sax/node/QualiDeclNode.java,v
retrieving revision 1.1.2.11
retrieving revision 1.1.2.12
diff -u -d -r1.1.2.11 -r1.1.2.12
--- QualiDeclNode.java 27 Mar 2012 19:06:32 -0000 1.1.2.11
+++ QualiDeclNode.java 31 Mar 2012 00:02:17 -0000 1.1.2.12
@@ -22,6 +22,7 @@
* 2531371 2009-02-10 raman_arora Upgrade client to JDK 1.5 (Phase 2)
* 2797550 2009-06-01 raman_arora JSR48 compliance - add Java Generics
* 3511454 2012-03-27 blaschke-oss SAX nodes not reinitialized properly
+ * 3513353 2012-03-30 blaschke-oss TCK: CIMDataType arrays must have length >= 1
*/
package org.sblim.cimclient.internal.cimxml.sax.node;
@@ -30,6 +31,7 @@
import javax.cim.CIMObjectPath;
import javax.cim.CIMQualifierType;
+import org.sblim.cimclient.internal.cim.CIMHelper;
import org.sblim.cimclient.internal.cimxml.sax.CIMObjectFactory;
import org.sblim.cimclient.internal.cimxml.sax.SAXSession;
import org.xml.sax.Attributes;
@@ -155,7 +157,8 @@
setType(valAChild);
this.iValue = CIMObjectFactory.getObject(this.iType, valAChild);
// making array type
- if (!this.iType.isArray()) this.iType = new CIMDataType(this.iType.getType(), 0);
+ if (!this.iType.isArray()) this.iType = CIMHelper.UnboundedArrayDataType(this.iType
+ .getType());
} else if (pChild instanceof ValueNode) {
ValueNode valChild = (ValueNode) pChild;
setType(valChild);
Index: ValueArrayNode.java
===================================================================
RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml/sax/node/ValueArrayNode.java,v
retrieving revision 1.1.2.10
retrieving revision 1.1.2.11
diff -u -d -r1.1.2.10 -r1.1.2.11
--- ValueArrayNode.java 23 Feb 2009 18:25:57 -0000 1.1.2.10
+++ ValueArrayNode.java 31 Mar 2012 00:02:16 -0000 1.1.2.11
@@ -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
@@ -20,7 +20,8 @@
* 1735693 2007-06-12 ebak Empty VALUE.ARRAY elements are parsed as nulls
* 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)
- * 2531371 2009-02-10 raman_arora Upgrade client to JDK 1.5 (Phase 2)
+ * 2531371 2009-02-10 raman_arora Upgrade client to JDK 1.5 (Phase 2)
+ * 3513353 2012-03-30 blaschke-oss TCK: CIMDataType arrays must have length >= 1
*/
package org.sblim.cimclient.internal.cimxml.sax.node;
@@ -30,6 +31,7 @@
import javax.cim.CIMDataType;
import org.sblim.cimclient.GenericExts;
+import org.sblim.cimclient.internal.cim.CIMHelper;
import org.sblim.cimclient.internal.cimxml.sax.SAXSession;
import org.xml.sax.Attributes;
import org.xml.sax.SAXException;
@@ -65,7 +67,8 @@
CIMDataType scalarType = getCIMType(pAttribs, true);
if (scalarType == null) scalarType = getParamType(pAttribs);
// make array type
- this.iType = scalarType == null ? null : new CIMDataType(scalarType.getType(), 0);
+ this.iType = scalarType == null ? null : CIMHelper.UnboundedArrayDataType(scalarType
+ .getType());
}
/**
Index: QualifierNode.java
===================================================================
RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml/sax/node/QualifierNode.java,v
retrieving revision 1.1.2.14
retrieving revision 1.1.2.15
diff -u -d -r1.1.2.14 -r1.1.2.15
--- QualifierNode.java 1 Jun 2009 17:01:10 -0000 1.1.2.14
+++ QualifierNode.java 31 Mar 2012 00:02:16 -0000 1.1.2.15
@@ -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
@@ -22,8 +22,9 @@
* 2013628 2008-07-30 rgummada SAXException when listing classes
* 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)
- * 2531371 2009-02-10 raman_arora Upgrade client to JDK 1.5 (Phase 2)
+ * 2531371 2009-02-10 raman_arora Upgrade client to JDK 1.5 (Phase 2)
* 2797550 2009-06-01 raman_arora JSR48 compliance - add Java Generics
+ * 3513353 2012-03-30 blaschke-oss TCK: CIMDataType arrays must have length >= 1
*/
package org.sblim.cimclient.internal.cimxml.sax.node;
@@ -31,6 +32,7 @@
import javax.cim.CIMDataType;
import javax.cim.CIMQualifier;
+import org.sblim.cimclient.internal.cim.CIMHelper;
import org.sblim.cimclient.internal.cimxml.sax.CIMObjectFactory;
import org.sblim.cimclient.internal.cimxml.sax.SAXSession;
import org.xml.sax.Attributes;
@@ -111,7 +113,8 @@
// create array value
value = CIMObjectFactory.getObject(this.iType, valANode);
// constructs array type
- type = this.iType.isArray() ? this.iType : new CIMDataType(this.iType.getType(), 0);
+ type = this.iType.isArray() ? this.iType : CIMHelper.UnboundedArrayDataType(this.iType
+ .getType());
} else if (absValNode instanceof ValueNode) {
ValueNode valNode = (ValueNode) absValNode;
setType(valNode);
|
|
From: Chris B. <buc...@us...> - 2012-03-30 23:43:08
|
Update of /cvsroot/sblim/sfcb
In directory vz-cvs-3.sog:/tmp/cvs-serv3345
Modified Files:
providerDrv.c
Log Message:
small memory leak from 3408288
Index: providerDrv.c
===================================================================
RCS file: /cvsroot/sblim/sfcb/providerDrv.c,v
retrieving revision 1.114
retrieving revision 1.115
diff -u -d -r1.114 -r1.115
--- providerDrv.c 30 Mar 2012 02:47:11 -0000 1.114
+++ providerDrv.c 30 Mar 2012 23:43:05 -0000 1.115
@@ -875,6 +875,7 @@
BinResponseHdr* buf = errorCharsResp(CMPI_RC_ERR_FAILED, msg);
ecr_len = makeSafeResponse(buf, &err_crash_resp);
+ free(buf);
processProviderInvocationRequests(info->providerName);
_SFCB_RETURN(0);
|
|
From: Chris B. <buc...@us...> - 2012-03-30 21:51:34
|
Update of /cvsroot/sblim/sfcb
In directory vz-cvs-3.sog:/tmp/cvs-serv7775
Modified Files:
httpAdapter.c ChangeLog NEWS
Log Message:
[ 3512094 ] SFCB can leak PAM handles under error conditions
Index: NEWS
===================================================================
RCS file: /cvsroot/sblim/sfcb/NEWS,v
retrieving revision 1.675
retrieving revision 1.676
diff -u -d -r1.675 -r1.676
--- NEWS 30 Mar 2012 17:56:41 -0000 1.675
+++ NEWS 30 Mar 2012 21:51:31 -0000 1.676
@@ -66,6 +66,7 @@
- 3408288 Safer Signal Handlers
- 3441028 sblim-sfcb fails on large https requests
- 3416054 Provider continues despite SIGSEGV
+- 3512094 SFCB can leak PAM handles under error conditions
Changes in 1.3.13
=================
Index: httpAdapter.c
===================================================================
RCS file: /cvsroot/sblim/sfcb/httpAdapter.c,v
retrieving revision 1.103
retrieving revision 1.104
diff -u -d -r1.103 -r1.104
--- httpAdapter.c 30 Mar 2012 02:33:43 -0000 1.103
+++ httpAdapter.c 30 Mar 2012 21:51:31 -0000 1.104
@@ -137,6 +137,14 @@
const char* role;
};
typedef struct auth_extras AuthExtras;
+AuthExtras extras = {NULL, NULL, NULL, NULL};
+
+void releaseAuthHandle() {
+ if (extras.release) {
+ extras.release(extras.authHandle);
+ extras.release = NULL;
+ }
+}
typedef int (*Authenticate) (char *principal, char *pwd);
typedef int (*Authenticate2) (char *principal, char *pwd, AuthExtras *extras);
@@ -210,7 +218,7 @@
* Call the authentication library
* Return 1 on success, 0 on fail, -1 on expired
*/
-int baValidate(char *cred, char **principal, AuthExtras* extras)
+int baValidate(char *cred, char **principal)
{
char *auth,*pw=NULL;
int i;
@@ -253,7 +261,7 @@
else {
*principal=strdup(auth);
if (authenticate2)
- ret = authenticate2(auth, pw, extras);
+ ret = authenticate2(auth, pw, &extras);
else
ret = authenticate(auth, pw);
@@ -963,7 +971,6 @@
}
}
#endif
- AuthExtras extras = {NULL, NULL, NULL, NULL};
if (!authorized && !discardInput && doBa) {
@@ -982,7 +989,7 @@
extras.clientIp = ipstr;
// fprintf(stderr, "client is: %s\n", ipstr);
- barc = baValidate(inBuf.authorization,&inBuf.principal,&extras);
+ barc = baValidate(inBuf.authorization,&inBuf.principal);
#ifdef ALLOW_UPDATE_EXPIRED_PW
if (barc == AUTH_EXPIRED) {
hcrFlags |= HCR_EXPIRED_PW;
@@ -1033,6 +1040,7 @@
exit(1);
}
if (discardInput) {
+ releaseAuthHandle();
free(hdr);
freeBuffer(&inBuf);
_SFCB_RETURN(discardInput-1);
@@ -1083,9 +1091,7 @@
if (response.buffer != NULL)
cleanupCimXmlRequest(&response);
- if (extras.release) {
- extras.release(extras.authHandle);
- }
+ releaseAuthHandle();
#ifdef SFCB_DEBUG
if (uset && (_sfcb_trace_mask & TRACE_RESPONSETIMING) ) {
@@ -1142,6 +1148,7 @@
semAcquireUnDo(httpProcSem,0);
semReleaseUnDo(httpProcSem,httpProcIdX+1);
semRelease(httpWorkSem,0);
+ atexit(releaseAuthHandle);
atexit(uninitGarbageCollector);
atexit(sunsetControl);
}
Index: ChangeLog
===================================================================
RCS file: /cvsroot/sblim/sfcb/ChangeLog,v
retrieving revision 1.754
retrieving revision 1.755
diff -u -d -r1.754 -r1.755
--- ChangeLog 30 Mar 2012 17:56:41 -0000 1.754
+++ ChangeLog 30 Mar 2012 21:51:31 -0000 1.755
@@ -1,3 +1,8 @@
+2012-03-30 Chris Buccella <buc...@li...>
+
+ * httpAdapter.c:
+ [ 3512094 ] SFCB can leak PAM handles under error conditions
+
2012-03-29 Chris Buccella <buc...@li...>
* providerDrv.c:
|
|
From: Chris B. <buc...@us...> - 2012-03-30 19:56:44
|
Update of /cvsroot/sblim/sfcb
In directory vz-cvs-3.sog:/tmp/cvs-serv12251
Modified Files:
indCIMXMLHandler.c
Log Message:
removed debug line
Index: indCIMXMLHandler.c
===================================================================
RCS file: /cvsroot/sblim/sfcb/indCIMXMLHandler.c,v
retrieving revision 1.47
retrieving revision 1.48
diff -u -d -r1.47 -r1.48
--- indCIMXMLHandler.c 7 Mar 2012 20:59:42 -0000 1.47
+++ indCIMXMLHandler.c 30 Mar 2012 19:56:42 -0000 1.48
@@ -440,7 +440,6 @@
_SFCB_TRACE(1,("--- modify %s", cns));
CMPIData newDest = CMGetProperty(ci, "Destination", &st);
- fprintf(stderr, "new dest is %s\n", CMGetCharPtr(newDest.value.string));
if(newDest.state != CMPI_goodValue) {
st.rc = CMPI_RC_ERR_FAILED;
|