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: Michael Chase-S. <mc...@us...> - 2012-02-04 01:03:33
|
Update of /cvsroot/sblim/sfcb In directory vz-cvs-3.sog:/tmp/cvs-serv21993 Modified Files: ChangeLog NEWS indCIMXMLHandler.c interopProvider.c sfcb.cfg.pre.in Log Message: 3484025 Disable indication sequencing Index: NEWS =================================================================== RCS file: /cvsroot/sblim/sfcb/NEWS,v retrieving revision 1.629 retrieving revision 1.630 diff -u -d -r1.629 -r1.630 --- NEWS 3 Feb 2012 16:45:57 -0000 1.629 +++ NEWS 4 Feb 2012 01:03:30 -0000 1.630 @@ -8,6 +8,7 @@ - 3435778 Preserve leading/trailing whitespace in values - 3433733 CreationClassNames should be supplied - 3446179 Add a feature to validate CMPI types +- 3484025 Disable indication sequencing Bugs fixed: Index: indCIMXMLHandler.c =================================================================== RCS file: /cvsroot/sblim/sfcb/indCIMXMLHandler.c,v retrieving revision 1.41 retrieving revision 1.42 diff -u -d -r1.41 -r1.42 --- indCIMXMLHandler.c 27 Jan 2012 02:33:15 -0000 1.41 +++ indCIMXMLHandler.c 4 Feb 2012 01:03:30 -0000 1.42 @@ -60,6 +60,8 @@ } return 1; } + +int RIEnabled=-1; /* ------------------------------------------------------------------ * * Instance MI Cleanup @@ -375,6 +377,8 @@ strftime(gtime, 15, "%Y%m%d%H%M%S", &cttm); } + // Even though reliable indications may be disabled, we need to do this + // in case it ever gets enabled. // Get the IndicationService name CMPIObjectPath * isop = CMNewObjectPath(_broker, "root/interop", "CIM_IndicationService", NULL); CMPIEnumeration * isenm = _broker->bft->enumerateInstances(_broker, ctx, isop, NULL, NULL); @@ -846,53 +850,60 @@ if (interOpNameSpace(ref,&st)==0) _SFCB_RETURN(st); if (strcasecmp(methodName, "_deliver") == 0) { - - // Set the indication sequence values + // On the first indication, check if reliable indications are enabled. + if (RIEnabled == -1) { + CMPIObjectPath *op=CMNewObjectPath(_broker,"root/interop","CIM_IndicationService",NULL); + CMPIEnumeration *isenm = _broker->bft->enumerateInstances(_broker, ctx, op, NULL, NULL); + CMPIData isinst=CMGetNext(isenm,NULL); + CMPIData mc=CMGetProperty(isinst.value.inst,"DeliveryRetryAttempts",NULL); + RIEnabled=mc.value.uint16; + } CMPIInstance *indo=CMGetArg(in,"indication",NULL).value.inst; CMPIInstance *ind=CMClone(indo,NULL); - CMPIObjectPath * iop=CMGetObjectPath(ind,NULL); - CMPIInstance *sub=CMGetArg(in,"subscription",NULL).value.inst; - CMPIObjectPath * subop=CMGetObjectPath(sub,NULL); - CMPIData handler=CMGetProperty(sub, "Handler", &st); - CMPIObjectPath *hop=handler.value.ref; - CMPIContext *ctxLocal = prepareUpcall((CMPIContext *) ctx); - CMPIInstance *hdlr=CBGetInstance(_broker, ctxLocal, hop, NULL, &st); - CMAddKey(iop,"SFCB_IndicationID",&indID,CMPI_uint32); - CMSetProperty(ind,"SFCB_IndicationID",&indID,CMPI_uint32); + CMPIContext *ctxLocal=NULL; + CMPIObjectPath *iop=NULL,*subop=NULL; + CMPIInstance *sub=NULL; - // Build the complete sequence context - // Get the stub from the handler - CMPIString *context = CMGetProperty(hdlr, "SequenceContext", &st).value.string; - // and add the sfcb start time - char *cstr=malloc( (strlen(context->ft->getCharPtr(context,NULL)) + strlen(sfcBrokerStart) + 1) * sizeof(char)); - sprintf(cstr,"%s%s",context->ft->getCharPtr(context,NULL),sfcBrokerStart); - context = sfcb_native_new_CMPIString(cstr, NULL, 0); - // and put it in the indication - CMSetProperty(ind, "SequenceContext", &context, CMPI_string); - free(cstr); - CMRelease(context); + if (RIEnabled) { + ctxLocal = prepareUpcall((CMPIContext *) ctx); + // Set the indication sequence values + iop=CMGetObjectPath(ind,NULL); + CMAddKey(iop,"SFCB_IndicationID",&indID,CMPI_uint32); + CMSetProperty(ind,"SFCB_IndicationID",&indID,CMPI_uint32); + sub=CMGetArg(in,"subscription",NULL).value.inst; + CMPIData handler=CMGetProperty(sub, "Handler", &st); + CMPIObjectPath *hop=handler.value.ref; + CMPIInstance *hdlr=CBGetInstance(_broker, ctxLocal, hop, NULL, &st); + + // Build the complete sequence context + // Get the stub from the handler + CMPIString *context = CMGetProperty(hdlr, "SequenceContext", &st).value.string; + // and add the sfcb start time + char *cstr=malloc( (strlen(context->ft->getCharPtr(context,NULL)) + strlen(sfcBrokerStart) + 1) * sizeof(char)); + sprintf(cstr,"%s%s",context->ft->getCharPtr(context,NULL),sfcBrokerStart); + context = sfcb_native_new_CMPIString(cstr, NULL, 0); + // and put it in the indication + CMSetProperty(ind, "SequenceContext", &context, CMPI_string); + free(cstr); + CMRelease(context); - // Get the proper sequence number - CMPIValue lastseq = CMGetProperty(hdlr, "LastSequenceNumber", &st).value; - lastseq.sint64++; - // Handle wrapping of the signed int - if (lastseq.sint64 < 0) lastseq.sint64=0; - // Update the last used number in the handler - CMSetProperty(hdlr, "LastSequenceNumber", &lastseq.sint64, CMPI_sint64); - CBModifyInstance(_broker, ctxLocal, hop, hdlr, NULL); - // And the indication - CMSetProperty(ind, "SequenceNumber", &lastseq, CMPI_sint64); + // Get the proper sequence number + CMPIValue lastseq = CMGetProperty(hdlr, "LastSequenceNumber", &st).value; + lastseq.sint64++; + // Handle wrapping of the signed int + if (lastseq.sint64 < 0) lastseq.sint64=0; + // Update the last used number in the handler + CMSetProperty(hdlr, "LastSequenceNumber", &lastseq.sint64, CMPI_sint64); + CBModifyInstance(_broker, ctxLocal, hop, hdlr, NULL); + // And the indication + CMSetProperty(ind, "SequenceNumber", &lastseq, CMPI_sint64); + } // Now send the indication st = deliverInd(ref, in, ind); if (st.rc != 0) { - // Get the retry params from IndService - CMPIObjectPath *op=CMNewObjectPath(_broker,"root/interop","CIM_IndicationService",NULL); - CMPIEnumeration *isenm = _broker->bft->enumerateInstances(_broker, ctx, op, NULL, NULL); - CMPIData isinst=CMGetNext(isenm,NULL); - CMPIData mc=CMGetProperty(isinst.value.inst,"DeliveryRetryAttempts",NULL); - if (mc.value.uint16 > 0) { + if (RIEnabled){ _SFCB_TRACE(1,("--- Indication delivery failed, adding to retry queue")); // Indication delivery failed, send to retry queue // build an element @@ -900,6 +911,7 @@ element = (RTElement *) malloc(sizeof(*element)); element->ref=ref->ft->clone(ref,NULL); // Get the OP of the subscription and indication + subop=CMGetObjectPath(sub,NULL); element->sub=subop->ft->clone(subop,NULL); element->ind=iop->ft->clone(iop,NULL); // Store other attrs @@ -924,9 +936,9 @@ CMPIContext * pctx = native_clone_CMPIContext(ctx); pthread_create(&t, &tattr,&retryExport,(void *) pctx); } + CMRelease(ctxLocal); } } - CMRelease(ctxLocal); CMRelease(ind); } else { Index: sfcb.cfg.pre.in =================================================================== RCS file: /cvsroot/sblim/sfcb/sfcb.cfg.pre.in,v retrieving revision 1.29 retrieving revision 1.30 diff -u -d -r1.29 -r1.30 --- sfcb.cfg.pre.in 23 Nov 2011 03:24:00 -0000 1.29 +++ sfcb.cfg.pre.in 4 Feb 2012 01:03:31 -0000 1.30 @@ -264,6 +264,8 @@ ## Number of retry attempts before giving up ## Default is 3 attempts (not including initial attempt) ## A value of 0 disables reliable indications +## including indication sequence numbers and subscription +## removal. #DeliveryRetryAttempts: 3 ## The length of time an destination can fail before the subscription Index: interopProvider.c =================================================================== RCS file: /cvsroot/sblim/sfcb/interopProvider.c,v retrieving revision 1.49 retrieving revision 1.50 diff -u -d -r1.49 -r1.50 --- interopProvider.c 27 Jan 2012 02:33:15 -0000 1.49 +++ interopProvider.c 4 Feb 2012 01:03:31 -0000 1.50 @@ -652,6 +652,12 @@ CMRelease(enm); } + 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,"DeliveryRetryAttempts",NULL); + int RIEnabled=mc.value.uint16; + _SFCB_TRACE(1,("--- checking for cim_listenerdestination")); op=CMNewObjectPath(broker,"root/interop","cim_listenerdestination",&st); enm = _broker->bft->enumerateInstances(_broker, ctx, op, NULL, &st); @@ -659,11 +665,14 @@ if(enm) { while(enm->ft->hasNext(enm, &st) && (ci=(enm->ft->getNext(enm, &st)).value.inst)) { cop=CMGetObjectPath(ci,&st); - // Reset the sequence numbers on sfcb restart - CMPIInstance *ldi = _broker->bft->getInstance(_broker, ctxLocal, cop, NULL, NULL); - CMPIValue zarro = {.sint64 = -1 }; - CMSetProperty(ldi, "LastSequenceNumber", &zarro, CMPI_sint64); - CBModifyInstance(_broker, ctxLocal, cop, ldi, NULL); + + if (RIEnabled) { + // Reset the sequence numbers on sfcb restart + CMPIInstance *ldi = _broker->bft->getInstance(_broker, ctxLocal, cop, NULL, NULL); + CMPIValue zarro = {.sint64 = -1 }; + CMSetProperty(ldi, "LastSequenceNumber", &zarro, CMPI_sint64); + CBModifyInstance(_broker, ctxLocal, cop, ldi, NULL); + } addHandler(ci,cop); } CMRelease(enm); Index: ChangeLog =================================================================== RCS file: /cvsroot/sblim/sfcb/ChangeLog,v retrieving revision 1.706 retrieving revision 1.707 diff -u -d -r1.706 -r1.707 --- ChangeLog 3 Feb 2012 16:45:57 -0000 1.706 +++ ChangeLog 4 Feb 2012 01:03:30 -0000 1.707 @@ -1,3 +1,8 @@ +2012-02-03 Michael Chase-Salerno <br...@li...> + + * interopProvider.c, indCIMXMLHandler.c, sfcb.cfg.pre.in + [ 3484025 ] Disable indication sequencing + 2012-02-03 Chris Buccella <buc...@li...> * profileProvider.c, providerMgr.c, default.reg.in, configure.ac, |
From: Dave B. <bla...@us...> - 2012-02-03 22:02:27
|
Update of /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/doc-files In directory vz-cvs-3.sog:/tmp/cvs-serv18219/src/org/sblim/cimclient/doc-files Modified Files: Tag: Experimental unittest.html Log Message: 3484014 - Add LogAndTraceBroker.isLoggable for message/trace Index: unittest.html =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/doc-files/unittest.html,v retrieving revision 1.1.2.15 retrieving revision 1.1.2.16 diff -u -d -r1.1.2.15 -r1.1.2.16 --- unittest.html 30 Aug 2011 16:28:07 -0000 1.1.2.15 +++ unittest.html 3 Feb 2012 22:02:25 -0000 1.1.2.16 @@ -3,7 +3,7 @@ <head> <!-- * - * (C) Copyright IBM Corp. 2006, 2011 + * (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 @@ -25,6 +25,7 @@ * 2994252 2010-04-30 blaschke-oss CIMDateTimeInterval.getTotalMilliseconds() not unit tested * 3293248 2011-05-03 blaschke-oss Support for CIM_ERROR instances within ERROR * 3397922 2011-08-30 blaschke-oss support OctetString + * 3484014 2012-02-03 blaschke-oss Add LogAndTraceBroker.isLoggable for message/trace --> </head> <body style="background-color: white;"> @@ -322,6 +323,16 @@ <h3>logging.LogAndTraceBrokerTest</h3> <table border="1" cellpadding="5" cellspacing="0" width="100%"> + <tr><td>testInternalListeners</td> + <td>Tests if all three internal listeners come up correctly and that isLoggable + works correctly.</td></tr> + <tr><td>testExternalListeners</td> + <td>Tests if external listeners come up correctly and that isLoggable works + correctly.</td></tr> + <tr><td>testListeners</td> + <td>Tests if all three internal listeners and external listeners come up + correctly, that they can be removed successfully and that isLoggable works + correctly in all cases.</td></tr> <tr><td>testMessage1</td> <td>Tests if a log message is forwarded correctly to the log&trace listeners. This test checks the message level, locale, parameter.</td></tr> |
From: Chris B. <buc...@us...> - 2012-02-03 16:46:00
|
Update of /cvsroot/sblim/sfcb/test/xmltest In directory vz-cvs-3.sog:/tmp/cvs-serv21781/test/xmltest Modified Files: modifyInstance_regprofile.lines Log Message: [ 3483294 ] InternalProvider Should Handle SFCB_RegisteredProfile Index: modifyInstance_regprofile.lines =================================================================== RCS file: /cvsroot/sblim/sfcb/test/xmltest/modifyInstance_regprofile.lines,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- modifyInstance_regprofile.lines 16 Sep 2009 11:02:07 -0000 1.2 +++ modifyInstance_regprofile.lines 3 Feb 2012 16:45:57 -0000 1.3 @@ -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> |
From: Tyrel D. <ty...@us...> - 2012-02-02 00:39:49
|
Update of /cvsroot/sblim/gather In directory vz-cvs-3.sog:/tmp/cvs-serv9296 Modified Files: NEWS Log Message: Fixed 3482875: virDomBlkInfo garbage if domain undefined Index: NEWS =================================================================== RCS file: /cvsroot/sblim/gather/NEWS,v retrieving revision 1.120 retrieving revision 1.121 diff -u -d -r1.120 -r1.121 --- NEWS 2 Feb 2012 00:11:35 -0000 1.120 +++ NEWS 2 Feb 2012 00:39:47 -0000 1.121 @@ -5,6 +5,7 @@ - 3482806 blkio not updated for inactive domains - 3482867 virDomainBlkStats garbage if domain undefined - 3482869 segv parsing xml if domain becomes undefined +- 3482875 virDomBlkInfo garbage if domain undefined Changes in Version 2.2.4 ======================== |
From: Tyrel D. <ty...@us...> - 2012-02-02 00:11:38
|
Update of /cvsroot/sblim/gather/plugin In directory vz-cvs-3.sog:/tmp/cvs-serv5491/plugin Modified Files: metricVirt.c Log Message: Fixed 3482869: segv parsing xml if domain becomes undefined Index: metricVirt.c =================================================================== RCS file: /cvsroot/sblim/gather/plugin/metricVirt.c,v retrieving revision 1.18 retrieving revision 1.19 diff -u -d -r1.18 -r1.19 --- metricVirt.c 2 Feb 2012 00:00:25 -0000 1.18 +++ metricVirt.c 2 Feb 2012 00:11:35 -0000 1.19 @@ -124,7 +124,7 @@ parse = 1; cur = virDomainGetXMLDesc(domain, 0); - while (parse) { + while (parse && cur) { if ((cur = strstr(cur, "<disk"))) { cur = strstr(cur, "type=\'"); cur = cur + 6; |
From: Tyrel D. <ty...@us...> - 2012-02-02 00:00:27
|
Update of /cvsroot/sblim/gather/plugin In directory vz-cvs-3.sog:/tmp/cvs-serv3610/plugin Modified Files: metricVirt.c Log Message: Fixed 3482867: virDomainBlkStats garbage if domain undefined Index: metricVirt.c =================================================================== RCS file: /cvsroot/sblim/gather/plugin/metricVirt.c,v retrieving revision 1.17 retrieving revision 1.18 diff -u -d -r1.17 -r1.18 --- metricVirt.c 1 Feb 2012 20:03:47 -0000 1.17 +++ metricVirt.c 2 Feb 2012 00:00:25 -0000 1.18 @@ -186,17 +186,18 @@ virDomainGetBlockInfo(domain, disk->source, &blkinfo, 0); disk->capacity = blkinfo.capacity; + disk->read = 0; + disk->write = 0; + /* virDomainBlockStats only works on running domains */ - if (active) { - virDomainBlockStats(domain, disk->target, &blkstats, - sizeof(virDomainBlockStatsStruct)); + if (active && (!virDomainBlockStats(domain, + disk->target, + &blkstats, + sizeof(virDomainBlockStatsStruct)))) { /* Convert to Kilobytes */ disk->read = blkstats.rd_bytes / 1024; disk->write = blkstats.wr_bytes / 1024; - } else { - disk->read = 0; - disk->write = 0; } } else { parse = 0; |
From: Tyrel D. <ty...@us...> - 2012-02-01 20:03:49
|
Update of /cvsroot/sblim/gather In directory vz-cvs-3.sog:/tmp/cvs-serv12178 Modified Files: NEWS Log Message: Fixed 3482806: blkio not updated for inactive domains Index: NEWS =================================================================== RCS file: /cvsroot/sblim/gather/NEWS,v retrieving revision 1.117 retrieving revision 1.118 diff -u -d -r1.117 -r1.118 --- NEWS 23 Dec 2011 01:53:45 -0000 1.117 +++ NEWS 1 Feb 2012 20:03:46 -0000 1.118 @@ -1,3 +1,9 @@ +Changes in Version 2.2.5 +======================== + +Bugs fixed: +- 3482806 blkio not updated for inactive domains + Changes in Version 2.2.4 ======================== |
From: Michael Chase-S. <mc...@us...> - 2012-01-27 02:14: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 aa547cbd23a10c9adffbed6782cd34da76b245d6 (commit) from 4d5f6ac79b297dad62c6893edcda2ab50856ec6f (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 aa547cbd23a10c9adffbed6782cd34da76b245d6 Author: Michael Chase-Salerno <br...@li...> Date: Thu Jan 26 21:13:56 2012 -0500 3478933 Sequence Number reset issues Accidental cleanup removal ----------------------------------------------------------------------- Summary of changes: diff --git a/test/TestProviders/tests/IndRetryTest.sh b/test/TestProviders/tests/IndRetryTest.sh index 4f7df63..d28edc1 100755 --- a/test/TestProviders/tests/IndRetryTest.sh +++ b/test/TestProviders/tests/IndRetryTest.sh @@ -339,7 +339,7 @@ fi ### # Cleanup and exit ### -#cleanup +cleanup # Set Indication_Service back to the defaults ./GenMI.pl 20 3 2592000 2 if [ $? -ne 0 ] hooks/post-receive -- SFCB - Small Footprint CIM Broker |
From: Michael Chase-S. <mc...@us...> - 2012-01-27 02:05:48
|
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 4d5f6ac79b297dad62c6893edcda2ab50856ec6f (commit) via d14de74bf848d41e2993dfea8b2a4d706a70f05b (commit) from 78386f106235d265f8a4b806110123d24f868b0a (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 4d5f6ac79b297dad62c6893edcda2ab50856ec6f Author: Michael Chase-Salerno <br...@li...> Date: Thu Jan 26 21:05:14 2012 -0500 3478933 Sequence Number reset issues commit d14de74bf848d41e2993dfea8b2a4d706a70f05b Author: Michael Chase-Salerno <br...@li...> Date: Thu Jan 26 21:03:14 2012 -0500 3478933 Sequence Number reset issues ----------------------------------------------------------------------- Summary of changes: diff --git a/ChangeLog b/ChangeLog index cb2f499..cfc8130 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2012-01-26 Michael Chase-Salerno <br...@li...> + + * interopProvider.c, indCIMXMLHandler.c, indRetryTest.sh + [ 3478933 ] Sequence Number reset issues + 2012-01-25 Michael Chase-Salerno <br...@li...> * providerMgr.c diff --git a/indCIMXMLHandler.c b/indCIMXMLHandler.c index 08d7daa..ba7bbdc 100644 --- a/indCIMXMLHandler.c +++ b/indCIMXMLHandler.c @@ -434,7 +434,7 @@ IndCIMXMLHandlerCreateInstance(CMPIInstanceMI * mi, // set the properties CMSetProperty(ciLocal, "SequenceContext", &scontext, CMPI_string); - CMPIValue zarro = {.sint64 = 0 }; + CMPIValue zarro = {.sint64 = -1 }; CMSetProperty(ciLocal, "LastSequenceNumber", &zarro, CMPI_sint64); } @@ -982,7 +982,7 @@ IndCIMXMLHandlerInvokeMethod(CMPIMethodMI * mi, CMPIValue lastseq = CMGetProperty(hdlr, "LastSequenceNumber", &st).value; lastseq.sint64++; // Handle wrapping of the signed int - if (lastseq.sint64 < 0) lastseq.sint64=1; + if (lastseq.sint64 < 0) lastseq.sint64=0; // Update the last used number in the handler CMSetProperty(hdlr, "LastSequenceNumber", &lastseq.sint64, CMPI_sint64); CBModifyInstance(_broker, ctxLocal, hop, hdlr, NULL); diff --git a/interopProvider.c b/interopProvider.c index 8a16c82..6e62a1a 100644 --- a/interopProvider.c +++ b/interopProvider.c @@ -712,7 +712,6 @@ initInterOp(const CMPIBroker * broker, const CMPIContext *ctx) &st); ctxLocal = prepareUpcall((CMPIContext *) ctx); enm = _broker->bft->enumerateInstances(_broker, ctxLocal, op, NULL, &st); - CMRelease(ctxLocal); if (enm) { while (enm->ft->hasNext(enm, &st) @@ -741,6 +740,11 @@ initInterOp(const CMPIBroker * broker, const CMPIContext *ctx) while (enm->ft->hasNext(enm, &st) && (ci = (enm->ft->getNext(enm, &st)).value.inst)) { cop = CMGetObjectPath(ci, &st); + // Reset the sequence numbers on sfcb restart + CMPIInstance *ldi = _broker->bft->getInstance(_broker, ctxLocal, cop, NULL, NULL); + CMPIValue zarro = {.sint64 = -1 }; + CMSetProperty(ldi, "LastSequenceNumber", &zarro, CMPI_sint64); + CBModifyInstance(_broker, ctxLocal, cop, ldi, NULL); addHandler(ci, cop); } CMRelease(enm); @@ -748,9 +752,7 @@ initInterOp(const CMPIBroker * broker, const CMPIContext *ctx) _SFCB_TRACE(1, ("--- checking for cim_indicationsubscription")); op = CMNewObjectPath(broker, "root/interop", "cim_indicationsubscription", &st); - ctxLocal = prepareUpcall((CMPIContext *) ctx); enm = _broker->bft->enumerateInstances(_broker, ctxLocal, op, NULL, &st); - CMRelease(ctxLocal); if (enm) { while (enm->ft->hasNext(enm, &st) @@ -762,6 +764,7 @@ initInterOp(const CMPIBroker * broker, const CMPIContext *ctx) } CMRelease(enm); } + CMRelease(ctxLocal); _SFCB_EXIT(); } diff --git a/test/TestProviders/tests/IndRetryTest.sh b/test/TestProviders/tests/IndRetryTest.sh index ac72f33..4f7df63 100755 --- a/test/TestProviders/tests/IndRetryTest.sh +++ b/test/TestProviders/tests/IndRetryTest.sh @@ -314,9 +314,9 @@ fi # Check sequence numbers echo -n " Indication flood sequence numbers: " -i=1 +i=0 f=0 -while [ $i -lt $((lim+1)) ] +while [ $i -lt $((lim)) ] do grep -A1 SequenceNumber $ODIR/SFCB_Listener.txt | grep '<VALUE>'$i'</VALUE>' > /dev/null 2>&1 if [ $? -eq 0 ] @@ -333,12 +333,13 @@ then echo "PASSED" else echo "$f missing: FAILED" + RC=1 fi ### # Cleanup and exit ### -cleanup +#cleanup # Set Indication_Service back to the defaults ./GenMI.pl 20 3 2592000 2 if [ $? -ne 0 ] hooks/post-receive -- SFCB - Small Footprint CIM Broker |
From: Dave B. <bla...@us...> - 2012-01-26 18:35:00
|
Update of /cvsroot/sblim/jsr48-client/smpl/org/sblim/cimclient/samples In directory vz-cvs-3.sog:/tmp/cvs-serv27808/smpl/org/sblim/cimclient/samples Modified Files: Tag: Experimental Jsr48PegasusIndicationSample.java Added Files: Tag: Experimental Jsr48SfcbIndicationSample.java Log Message: 3480115 - Add Jsr48SfcbIndicationSample --- NEW FILE: Jsr48SfcbIndicationSample.java --- /** * (C) Copyright IBM Corp. 2012 * * THIS FILE IS PROVIDED UNDER THE TERMS OF THE ECLIPSE PUBLIC LICENSE * ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THIS FILE * CONSTITUTES RECIPIENTS ACCEPTANCE OF THE AGREEMENT. * * You can obtain a current copy of the Eclipse Public License from * http://www.opensource.org/licenses/eclipse-1.0.php * * @author : Dave Blaschke, bla...@us... * @author : Chris Buccella, buc...@li... * * Flag Date Prog Description * ------------------------------------------------------------------------------- * 3480115 2012-01-26 blaschke-oss Add Jsr48SfcbIndicationSample */ package org.sblim.cimclient.samples; import java.io.IOException; import java.net.InetAddress; import java.net.MalformedURLException; import java.net.URL; import java.net.UnknownHostException; import javax.cim.CIMArgument; import javax.cim.CIMDataType; import javax.cim.CIMInstance; import javax.cim.CIMObjectPath; import javax.cim.CIMProperty; import javax.wbem.WBEMException; import javax.wbem.client.WBEMClient; import javax.wbem.client.WBEMClientConstants; import javax.wbem.listener.IndicationListener; import javax.wbem.listener.WBEMListener; import javax.wbem.listener.WBEMListenerFactory; /** * Class Jsr48SfcbIndicationSample is an example for setting up an indication * listener with the JSR48 API and receiving a test indication from an SFCB * provider included in its test suite. * * The following steps need to be performed on the CIMOM (SFCB 1.3.14 or later) * prior to running this sample: * * 1) Stop CIMOM (if not already stopped) * * <pre> * /usr/local/etc/init.d/sfcb stop * </pre> * * 2) Enable CIMOM test suite for providers (append whatever other configuration * options are needed, if any): * * <pre> * ./configure --enable-tests=providers * </pre> * * 3) Build CIMOM * * <pre> * make * make install * make postinstall * </pre> * * 4) Start CIMOM * * <pre> * /usr/local/etc/init.d/sfcb start * </pre> * * At this point, an instance of Test_Indication can be generated by invoking * the method SendTestIndication of Test_Indication on the CIMOM. That is * accomplished by running this sample. * * This example is based on the article "Generate dummy CIM indications for * testing on Linux" on developerWorks: * * http://www.ibm.com/developerworks/opensource/library/l-cim-test/index.html */ public class Jsr48SfcbIndicationSample { private static final String PROTOCOL = "http"; private static final String LISTENER_PORT = "5999"; // Namespace where indication provider is registered private static final String PROVIDER_NAMESPACE = "root/interop"; // Namespace where indication originates private static final String INDICATION_NAMESPACE = "root/interop"; private static CIMObjectPath cSubscriptionPath; private static CIMObjectPath cFilterPath; private static CIMObjectPath cDestinationPath; private static WBEMListener cListener; private static int cId = 0; /** * Starts a listener. The JSR48 library will open a HTTP(S) server socket * and listen for incoming indications on that socket. Any indications * received will be forwarded to the registered IndicationListener * implementation. The sample one here just prints the indication to stdout * along with a message indicating whether the CIMOM supports reliable * indications. * * @return <code>true</code> if the listener could be started, * <code>false</code> otherwise. */ public static boolean startListener() { try { cListener = WBEMListenerFactory.getListener(WBEMClientConstants.PROTOCOL_CIMXML); cListener.addListener(new IndicationListener() { public void indicationOccured(String pIndicationURL, CIMInstance pIndication) { System.out.println("Indication received on: " + pIndicationURL + ":"); try { URL parsedURL = new URL(pIndicationURL); System.out.println("The URL could be parsed, path is: " + parsedURL.getPath()); } catch (MalformedURLException e) { System.out.println("The URL could NOT be parsed: " + e); } System.out.println(Jsr48CimSample.toMof(pIndication)); System.out .println("Based on content of indication, CIMOM DOES" + ((pIndication.getProperty("SequenceContext") == null) || (pIndication.getProperty("SequenceNumber") == null) ? " NOT " : " ") + "support reliable indications."); } }, Integer.parseInt(LISTENER_PORT), PROTOCOL); return true; } catch (IOException e) { // nothing to do here } return false; } /** * Constructs a CIM_ListenerDestinationCIMXML instance * * @param pNamespace * The scoping namespace * @param pURL * The URL of the destination * @return The instance */ private static CIMInstance makeListenerDestination(String pNamespace, String pURL) { final CIMProperty<String> name = new CIMProperty<String>("Name", CIMDataType.STRING_T, "JSR48SFCBSampleListener" + getNextId()); final CIMProperty<String> creationClassName = new CIMProperty<String>("CreationClassName", CIMDataType.STRING_T, "CIM_ListenerDestinationCIMXML"); final CIMProperty<String> destination = new CIMProperty<String>("Destination", CIMDataType.STRING_T, pURL); final CIMProperty<?>[] properties = new CIMProperty[] { name, creationClassName, destination }; final CIMObjectPath path = new CIMObjectPath("CIM_ListenerDestinationCIMXML", pNamespace); return new CIMInstance(path, properties); } /** * Constructs a CIM_IndicationFilter instance * * @param pNamespace * The scoping namespace * @param pQuery * The WQL query of the filter * @return The instance */ private static CIMInstance makeFilter(String pNamespace, String pQuery) { final CIMProperty<String> name = new CIMProperty<String>("Name", CIMDataType.STRING_T, "JSR48SFCBSampleFilter" + getNextId()); final CIMProperty<String> query = new CIMProperty<String>("Query", CIMDataType.STRING_T, pQuery); final CIMProperty<String> queryLanguage = new CIMProperty<String>("QueryLanguage", CIMDataType.STRING_T, "WQL"); final CIMProperty<String> sourceNameSpace = new CIMProperty<String>("SourceNamespace", CIMDataType.STRING_T, pNamespace); final CIMProperty<?>[] properties = new CIMProperty[] { name, query, queryLanguage, sourceNameSpace }; final CIMObjectPath path = new CIMObjectPath("CIM_IndicationFilter", pNamespace); return new CIMInstance(path, properties); } /** * Constructs a CIM_IndicationSubscription association * * @param pNamespace * The scoping namespace * @param pDestinationPath * The path of the handler * @param pFilterPath * The path of the filter * @return The association instance */ private static CIMInstance makeSubscription(String pNamespace, CIMObjectPath pDestinationPath, CIMObjectPath pFilterPath) { final CIMProperty<CIMObjectPath> handler = new CIMProperty<CIMObjectPath>("Handler", new CIMDataType("CIM_ListenerDestinationCIMXML"), pDestinationPath); final CIMProperty<CIMObjectPath> filter = new CIMProperty<CIMObjectPath>("Filter", new CIMDataType("CIM_IndicationFilter"), pFilterPath); final CIMProperty<?>[] properties = new CIMProperty[] { handler, filter }; final CIMObjectPath path = new CIMObjectPath("CIM_IndicationSubscription", pNamespace); return new CIMInstance(path, properties); } /** * Returns a monotonically increasing sequence of integers on subsequent * calls * * @return An integer */ private static String getNextId() { return String.valueOf(++cId); } /** * Creates the three CIM instances necessary for making a subscription on * all RT_TestIndication indications in this namespace * * @param pClient * The WBEM client to use * @param pNamespace * The namespace to subscribe in * @return <code>true</code> if the subscription succeeds, * <code>false</code> otherwise */ public static boolean subscribe(WBEMClient pClient, String pNamespace) { try { cDestinationPath = pClient.createInstance(makeListenerDestination(INDICATION_NAMESPACE, PROTOCOL + "://" + InetAddress.getLocalHost().getHostAddress() + ":" + LISTENER_PORT + "/create")); cFilterPath = pClient.createInstance(makeFilter(INDICATION_NAMESPACE, "SELECT * FROM Test_Indication")); cSubscriptionPath = pClient.createInstance(makeSubscription(pNamespace, cDestinationPath, cFilterPath)); return true; } catch (WBEMException e) { e.printStackTrace(); } catch (UnknownHostException e) { e.printStackTrace(); } return false; } /** * Cleans up the instances of the subscription we've made. * * @param pClient * The WBEM client to use * @param pNamespace * The namespace we've subscribed in */ private static void unsubscribe(WBEMClient pClient, String pNamespace) { if (cSubscriptionPath != null) { try { pClient.deleteInstance(cSubscriptionPath); } catch (WBEMException e) { e.printStackTrace(); } } if (cFilterPath != null) { try { pClient.deleteInstance(cFilterPath); } catch (WBEMException e) { e.printStackTrace(); } } if (cDestinationPath != null) { try { pClient.deleteInstance(cDestinationPath); } catch (WBEMException e) { e.printStackTrace(); } } } /** * Runs the sample. Will start a listener, subscribe for Test_Indication * indication, generate the indication, catch the indication and finally * clean up and shut down. * * @param args * A String array containing { CIMOM_URL, USER, PASSWORD } e.g. { * "http://myserver.mydomain.com:5988", "user", "pw" } */ static public void main(String[] args) { try { // Initialize client. This will not trigger any communication with // the CIMOM. final WBEMClient client = Jsr48OperationSample.connect(new URL(args[0]), args[1], args[2]); // Namespace where indication provider is registered (see file // header) final String namespace = PROVIDER_NAMESPACE; if (client == null) { System.err.println("Client init failed. Probably due to invalid cl parameters."); System.err.println("URL: " + args[0]); System.err.println("User: " + args[1]); System.err.println("Password: " + args[2]); return; } // Start the listener so that we are "on air" when the indication // comes in if (startListener()) { System.out.println("Listener started."); } else { System.err.println("Listener startup failed. Most probably the port " + LISTENER_PORT + " is not available."); client.close(); return; } try { // Make the subscription. Since this is the first WBEM operation // called, the client will connect to the CIMOM now. If we've // any connectivity or authentication problems the WBEMException // will be thrown right in the subscribe method. if (subscribe(client, namespace)) { System.out.println("Subscription successful."); } else { System.err.println("Subscription failed."); return; } // SendTestIndication does not use any in/out parameters CIMArgument<?>[] input = new CIMArgument[0]; CIMArgument<?>[] output = new CIMArgument[0]; // This will trigger a TestIndication that is caught by our // listener Object obj = client.invokeMethod(new CIMObjectPath("Test_Indication", INDICATION_NAMESPACE), "SendTestIndication", input, output); if (obj.toString().equals("0")) { System.out .println("Indication generated successfully, waiting for delivery..."); Thread.sleep(5000); } else { System.out.println("Indication not generated successfully!"); } System.out.println("Sample completed."); } finally { // Clean up our subscription unsubscribe(client, namespace); // Close listener cListener.removeListener(Integer.parseInt(LISTENER_PORT)); client.close(); System.out.println("Cleaned up."); } } catch (Exception e) { e.printStackTrace(); } } } Index: Jsr48PegasusIndicationSample.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/smpl/org/sblim/cimclient/samples/Jsr48PegasusIndicationSample.java,v retrieving revision 1.1.2.6 retrieving revision 1.1.2.7 diff -u -d -r1.1.2.6 -r1.1.2.7 --- Jsr48PegasusIndicationSample.java 3 Jan 2012 16:33:56 -0000 1.1.2.6 +++ Jsr48PegasusIndicationSample.java 26 Jan 2012 18:34:58 -0000 1.1.2.7 @@ -17,6 +17,7 @@ * 3267429 2011-04-01 blaschke-oss Samples should close client * 3374206 2011-07-22 blaschke-oss NullPointerException caused by Indication * 3469018 2012-01-03 blaschke-oss Properties not passed to CIMIndicationHandler + * 3480115 2012-01-26 blaschke-oss Add Jsr48SfcbIndicationSample */ package org.sblim.cimclient.samples; @@ -110,6 +111,12 @@ private static final String LISTENER_PORT = "5999"; + // Namespace where indication provider is registered + private static final String PROVIDER_NAMESPACE = "root/PG_Interop"; + + // Namespace where indication originates + private static final String INDICATION_NAMESPACE = "SDKExamples/DefaultCXX"; + private static CIMObjectPath cSubscriptionPath; private static CIMObjectPath cFilterPath; @@ -318,11 +325,10 @@ public static boolean subscribe(WBEMClient pClient, String pNamespace) { try { - cDestinationPath = pClient.createInstance(makeListenerDestination( - "SDKExamples/DefaultCXX", PROTOCOL + "://" - + InetAddress.getLocalHost().getHostAddress() + ":" + LISTENER_PORT - + "/create")); - cFilterPath = pClient.createInstance(makeFilter("SDKExamples/DefaultCXX", + cDestinationPath = pClient.createInstance(makeListenerDestination(INDICATION_NAMESPACE, + PROTOCOL + "://" + InetAddress.getLocalHost().getHostAddress() + ":" + + LISTENER_PORT + "/create")); + cFilterPath = pClient.createInstance(makeFilter(INDICATION_NAMESPACE, "SELECT * FROM RT_TestIndication")); cSubscriptionPath = pClient.createInstance(makeSubscription(pNamespace, cDestinationPath, cFilterPath)); @@ -387,7 +393,7 @@ // Namespace where indication provider is registered (see file // header) - final String namespace = "root/PG_Interop"; + final String namespace = PROVIDER_NAMESPACE; if (client == null) { System.err.println("Client init failed. Probably due to invalid cl parameters."); @@ -427,7 +433,7 @@ // This will trigger a TestIndication that is caught by our // listener Object obj = client.invokeMethod(new CIMObjectPath("RT_TestIndication", - "SDKExamples/DefaultCXX"), "SendTestIndication", input, output); + INDICATION_NAMESPACE), "SendTestIndication", input, output); if (obj.toString().equals("0")) { System.out |
From: Michael Chase-S. <mc...@us...> - 2012-01-25 16:52:45
|
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 78386f106235d265f8a4b806110123d24f868b0a (commit) via c0267787f90ebdc386045e45ced2f040758e6b47 (commit) from 46e17f272fa749b3ee0e560c069f7c0b12b4072d (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 78386f106235d265f8a4b806110123d24f868b0a Author: Michael Chase-Salerno <br...@li...> Date: Wed Jan 25 11:51:46 2012 -0500 [ 3478930 ] Handle SIGPIPE in providerMgr commit c0267787f90ebdc386045e45ced2f040758e6b47 Author: Michael Chase-Salerno <br...@li...> Date: Wed Jan 25 11:50:30 2012 -0500 [ 3478930 ] Handle SIGPIPE in providerMgr ----------------------------------------------------------------------- Summary of changes: diff --git a/ChangeLog b/ChangeLog index 6edf663..cb2f499 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2012-01-25 Michael Chase-Salerno <br...@li...> + + * providerMgr.c + [ 3478930 ] Handle SIGPIPE in providerMgr + 2011-12-11 Michael Chase-Salerno <br...@li...> * test/xmltest/SAE* diff --git a/providerDrv.c b/providerDrv.c index efc58f4..038f16e 100644 --- a/providerDrv.c +++ b/providerDrv.c @@ -458,6 +458,15 @@ stopProc(void *p) exit(0); } +static void handleSigPipe(int sig) +{ + // Got a sigpipe, but we don't want to do anything about it because it could + // cause the provider to unload improperly. + mlogf(M_ERROR,M_SHOW, "-#- %s - %d provider received a SIGPIPE signal, ignoring\n", + processName, currentProc); +} + + static void handleSigSegv(int sig) { @@ -862,6 +871,7 @@ getProcess(ProviderInfo * info, ProviderProcess ** proc) setSignal(SIGCHLD, SIG_DFL, 0); setSignal(SIGTERM, SIG_IGN, 0); setSignal(SIGHUP, SIG_IGN, 0); + setSignal(SIGPIPE, handleSigPipe,0); setSignal(SIGUSR1, handleSigUsr1, 0); setSignal(SIGSEGV, handleSigSegv, SA_ONESHOT); hooks/post-receive -- SFCB - Small Footprint CIM Broker |
From: Michael Chase-S. <mc...@us...> - 2012-01-25 16:15:10
|
Update of /cvsroot/sblim/sfcb In directory vz-cvs-3.sog:/tmp/cvs-serv22113 Modified Files: ChangeLog NEWS providerDrv.c Log Message: 3478930 Handle SIGPIPE in providerMgr Index: NEWS =================================================================== RCS file: /cvsroot/sblim/sfcb/NEWS,v retrieving revision 1.626 retrieving revision 1.627 diff -u -d -r1.626 -r1.627 --- NEWS 30 Nov 2011 23:29:07 -0000 1.626 +++ NEWS 25 Jan 2012 16:15:07 -0000 1.627 @@ -17,6 +17,7 @@ - 3422650 Associators calls to IndicationService depends on cmpi-base - 3428806 type=null in authorizeFilter call - 3419721 reset CMPIValue buffer in str2CMPIValue +- 3478930 Handle SIGPIPE in providerMgr Changes in 1.3.13 ================= Index: providerDrv.c =================================================================== RCS file: /cvsroot/sblim/sfcb/providerDrv.c,v retrieving revision 1.104 retrieving revision 1.105 diff -u -d -r1.104 -r1.105 --- providerDrv.c 26 Oct 2011 17:15:11 -0000 1.104 +++ providerDrv.c 25 Jan 2012 16:15:07 -0000 1.105 @@ -376,6 +376,14 @@ } +static void handleSigPipe(int sig) +{ + // Got a sigpipe, but we don't want to do anything about it because it could + // cause the provider to unload improperly. + mlogf(M_ERROR,M_SHOW, "-#- %s - %d provider received a SIGPIPE signal, ignoring\n", + processName, currentProc); +} + static void handleSigSegv(int sig) { Parms *threads=activeThreadsFirst; @@ -725,6 +733,7 @@ setSignal(SIGCHLD, SIG_DFL,0); setSignal(SIGTERM, SIG_IGN,0); setSignal(SIGHUP, SIG_IGN,0); + setSignal(SIGPIPE, handleSigPipe,0); setSignal(SIGUSR1, handleSigUsr1,0); setSignal(SIGSEGV, handleSigSegv,SA_ONESHOT); Index: ChangeLog =================================================================== RCS file: /cvsroot/sblim/sfcb/ChangeLog,v retrieving revision 1.703 retrieving revision 1.704 diff -u -d -r1.703 -r1.704 --- ChangeLog 11 Dec 2011 19:08:58 -0000 1.703 +++ ChangeLog 25 Jan 2012 16:15:07 -0000 1.704 @@ -1,3 +1,8 @@ +2012-01-25 Michael Chase-Salerno <br...@li...> + + * providerMgr.c + [ 3478930 ] Handle SIGPIPE in providerMgr + 2011-12-11 Michael Chase-Salerno <br...@li...> * test/xmltest/SAE* |
From: Dave B. <bla...@us...> - 2012-01-18 13:06:50
|
Update of /cvsroot/sblim/jsr48-client In directory vz-cvs-3.sog:/tmp/cvs-serv18318 Modified Files: NEWS Log Message: 3469427 - Fix broken HTML links Index: NEWS =================================================================== RCS file: /cvsroot/sblim/jsr48-client/NEWS,v retrieving revision 1.248 retrieving revision 1.249 diff -u -d -r1.248 -r1.249 --- NEWS 17 Jan 2012 14:24:47 -0000 1.248 +++ NEWS 18 Jan 2012 13:06:47 -0000 1.249 @@ -1,5 +1,6 @@ Changes in HEAD ================ +3469427 Fix broken HTML links 3469210 Include reliable indications in HTML 3469018 Properties not passed to CIMIndicationHandler |
From: Dave B. <bla...@us...> - 2012-01-18 13:06:49
|
Update of /cvsroot/sblim/jsr48-client/src In directory vz-cvs-3.sog:/tmp/cvs-serv18318/src Modified Files: overview.html Log Message: 3469427 - Fix broken HTML links Index: overview.html =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/overview.html,v retrieving revision 1.18 retrieving revision 1.19 diff -u -d -r1.18 -r1.19 --- overview.html 27 May 2010 13:01:54 -0000 1.18 +++ overview.html 18 Jan 2012 13:06:47 -0000 1.19 @@ -2,7 +2,7 @@ <html><head> <!-- * - * (C) Copyright IBM Corp. 2005, 2010 + * (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 @@ -20,6 +20,7 @@ * 2524131 2009-01-21 raman_arora Upgrade client to JDK 1.5 (Phase 1) * 2799260 2009-06-01 raman_arora Fix left over @author tag from Java5 upgrade * 3001243 2010-05-13 blaschke-oss Overview HTML out of date + * 3469427 2012-01-04 blaschke-oss Fix broken HTML links --> </head> <body style="background-color: white;"> @@ -116,12 +117,12 @@ <li>DMTF DSP0004:2005, CIM Infrastructure Specification, version 2.3 (final), available at: <br> <a href="http://www.dmtf.org/standards/published_documents/DSP0004V2.3_final.pdf"> http://www.dmtf.org/standards/published_documents/DSP0004V2.3_final.pdf</a></li> - <li>DMTF DSP0200:2005, CIM Operations over HTTP, version 1.2 (preliminary), available at: <br> - <a href="http://www.dmtf.org/standards/published_documents/DSP200.pdf"> - http://www.dmtf.org/standards/published_documents/DSP200.pdf</a></li> - <li>DMTF DSP0201:2005, Representation of CIM in XML, version 2.2 (preliminary), available at: <br> - <a href="http://www.dmtf.org/standards/published_documents/DSP201.pdf"> - http://www.dmtf.org/standards/published_documents/DSP201.pdf</a></li> + <li>DMTF DSP0200:2005, CIM Operations over HTTP, version 1.2 (final), available at: <br> + <a href="http://www.dmtf.org/standards/published_documents/DSP200.html"> + http://www.dmtf.org/standards/published_documents/DSP200.html</a></li> + <li>DMTF DSP0201:2005, Representation of CIM in XML, version 2.2 (final), available at: <br> + <a href="http://www.dmtf.org/standards/published_documents/DSP201.html"> + http://www.dmtf.org/standards/published_documents/DSP201.html</a></li> <li>IETF RFC 2614, An API for Service Location, available at: <br> <a href="http://tools.ietf.org/html/rfc2614"> http://tools.ietf.org/html/rfc2614</a></li> |
From: Dave B. <bla...@us...> - 2012-01-17 14:24:49
|
Update of /cvsroot/sblim/jsr48-client In directory vz-cvs-3.sog:/tmp/cvs-serv23632 Modified Files: NEWS Log Message: 3469210 - Include reliable indications in HTML Index: NEWS =================================================================== RCS file: /cvsroot/sblim/jsr48-client/NEWS,v retrieving revision 1.247 retrieving revision 1.248 diff -u -d -r1.247 -r1.248 --- NEWS 17 Jan 2012 14:11:11 -0000 1.247 +++ NEWS 17 Jan 2012 14:24:47 -0000 1.248 @@ -1,5 +1,6 @@ Changes in HEAD ================ +3469210 Include reliable indications in HTML 3469018 Properties not passed to CIMIndicationHandler Version 2.1.11 |
From: Dave B. <bla...@us...> - 2012-01-17 14:11:14
|
Update of /cvsroot/sblim/jsr48-client/smpl/org/sblim/cimclient/samples In directory vz-cvs-3.sog:/tmp/cvs-serv17572/smpl/org/sblim/cimclient/samples Modified Files: Jsr48PegasusIndicationSample.java Log Message: 3469018 - Properties not passed to CIMIndicationHandler Index: Jsr48PegasusIndicationSample.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/smpl/org/sblim/cimclient/samples/Jsr48PegasusIndicationSample.java,v retrieving revision 1.5 retrieving revision 1.6 diff -u -d -r1.5 -r1.6 --- Jsr48PegasusIndicationSample.java 10 Aug 2011 11:52:14 -0000 1.5 +++ Jsr48PegasusIndicationSample.java 17 Jan 2012 14:11:11 -0000 1.6 @@ -1,5 +1,5 @@ /** - * (C) Copyright IBM Corp. 2011 + * (C) Copyright IBM Corp. 2011, 2012 * * THIS FILE IS PROVIDED UNDER THE TERMS OF THE ECLIPSE PUBLIC LICENSE * ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THIS FILE @@ -16,6 +16,7 @@ * 3185818 2011-02-18 blaschke-oss indicationOccured URL incorrect * 3267429 2011-04-01 blaschke-oss Samples should close client * 3374206 2011-07-22 blaschke-oss NullPointerException caused by Indication + * 3469018 2012-01-03 blaschke-oss Properties not passed to CIMIndicationHandler */ package org.sblim.cimclient.samples; @@ -24,6 +25,7 @@ import java.net.MalformedURLException; import java.net.URL; import java.net.UnknownHostException; +import java.util.Properties; import javax.cim.CIMArgument; import javax.cim.CIMDataType; @@ -37,6 +39,8 @@ import javax.wbem.listener.WBEMListener; import javax.wbem.listener.WBEMListenerFactory; +import org.sblim.cimclient.WBEMListenerSBLIM; + /** * Class Jsr48PegasusIndicationSample is an example for setting up an indication * listener with the JSR48 API and receiving a test indication from an @@ -160,6 +164,62 @@ } /** + * Starts a reliable listener. The JSR48 library will open a HTTP(S) server + * socket and listen for incoming indications on that socket. Any + * indications received will be forwarded to the registered + * IndicationListener implementation. The sample one here just prints the + * indication to stdout along with a message indicating whether the CIMOM + * supports reliable indications. + * + * @return <code>true</code> if the listener could be started, + * <code>false</code> otherwise. + */ + public static boolean startReliableListener() { + try { + cListener = WBEMListenerFactory.getListener(WBEMClientConstants.PROTOCOL_CIMXML); + + // Cast WBEMListener to WBEMListenerSBLIM to get access to the + // addListener() method that accepts properties - this method is not + // part of the JSR48 standard, but is a SBLIM addition + WBEMListenerSBLIM sListener = (WBEMListenerSBLIM) cListener; + + // Enable reliable indications using 2 retries at intervals of 30 + // seconds + Properties props = new Properties(); + props.setProperty("sblim.wbem.listenerEnableReliableIndications", "true"); + props.setProperty("sblim.wbem.listenerDeliveryRetryAttempts", "2"); + props.setProperty("sblim.wbem.listenerDeliveryRetryInterval", "30"); + + sListener.addListener(new IndicationListener() { + + public void indicationOccured(String pIndicationURL, CIMInstance pIndication) { + System.out.println("Indication received on: " + pIndicationURL + ":"); + try { + URL parsedURL = new URL(pIndicationURL); + System.out.println("The URL could be parsed, path is: " + + parsedURL.getPath()); + } catch (MalformedURLException e) { + System.out.println("The URL could NOT be parsed: " + e); + } + System.out.println(Jsr48CimSample.toMof(pIndication)); + CIMProperty<?> context = pIndication.getProperty("SequenceContext"); + CIMProperty<?> number = pIndication.getProperty("SequenceNumber"); + System.out.println("Based on content of indication, CIMOM DOES" + + (context == null || number == null || context.getValue() == null + || number.getValue() == null ? " NOT " : " ") + + "support reliable indications."); + } + }, Integer.parseInt(LISTENER_PORT), PROTOCOL, null, props); + + return true; + + } catch (IOException e) { + // nothing to do here + } + return false; + } + + /** * Constructs a CIM_ListenerDestinationCIMXML instance * * @param pNamespace |
From: Dave B. <bla...@us...> - 2012-01-04 15:48:54
|
Update of /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/discovery In directory vz-cvs-3.sog:/tmp/cvs-serv26571/src/org/sblim/cimclient/discovery Modified Files: Tag: Experimental WBEMServiceAdvertisement.java Log Message: 3469427 - Fix broken HTML links Index: WBEMServiceAdvertisement.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/discovery/WBEMServiceAdvertisement.java,v retrieving revision 1.1.2.5 retrieving revision 1.1.2.6 diff -u -d -r1.1.2.5 -r1.1.2.6 --- WBEMServiceAdvertisement.java 23 Feb 2009 18:25:57 -0000 1.1.2.5 +++ WBEMServiceAdvertisement.java 4 Jan 2012 15:48:51 -0000 1.1.2.6 @@ -1,5 +1,5 @@ /** - * (C) Copyright IBM Corp. 2007, 2009 + * (C) Copyright IBM Corp. 2007, 2012 * * THIS FILE IS PROVIDED UNDER THE TERMS OF THE ECLIPSE PUBLIC LICENSE * ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THIS FILE @@ -16,7 +16,8 @@ * 1678915 2007-03-12 lupusalex Integrated WBEM service discovery via SLP * 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) + * 3469427 2012-01-04 blaschke-oss Fix broken HTML links */ package org.sblim.cimclient.discovery; @@ -101,7 +102,7 @@ * defined in this advertisement. This information MUST be the * CIM_ObjectManagerCommunicationMechanism.CommunicationMechanism property * value. CIM-XML is defined in the CIM Operations over HTTP specification - * which can be found at http://dmtf.org/ <br /> + * which can be found at http://www.dmtf.org/ <br /> * <br /> * Values: <code>"Unknown", "Other", "cim-xml"</code> */ |
From: Dave B. <bla...@us...> - 2012-01-03 23:14:53
|
Update of /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/doc-files In directory vz-cvs-3.sog:/tmp/cvs-serv3242/src/org/sblim/cimclient/doc-files Modified Files: Tag: Experimental indications.html Log Message: 3469210 - Include reliable indications in HTML Index: indications.html =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/doc-files/indications.html,v retrieving revision 1.5.2.8 retrieving revision 1.5.2.9 diff -u -d -r1.5.2.8 -r1.5.2.9 --- indications.html 22 Apr 2010 14:39:53 -0000 1.5.2.8 +++ indications.html 3 Jan 2012 23:14:51 -0000 1.5.2.9 @@ -3,7 +3,7 @@ <head> <!-- * - * (C) Copyright IBM Corp. 2006, 2010 + * (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 @@ -23,6 +23,7 @@ * 2946113 2010-02-08 blaschke-oss First steps code snippet has compile errors * 2972697 2010-03-18 blaschke-oss Fix spelling errors in HTML files * 2990370 2010-04-22 blaschke-oss Development/unittest HTML out of date + * 3469210 2012-01-03 blaschke-oss Include reliable indications in HTML --> </head> <body style="background-color: white;"> @@ -60,7 +61,6 @@ throw e; } } -} </pre> </div> </div> @@ -117,6 +117,75 @@ <tr><td align="center">60s</td><td align="center">0</td><td align="center">8</td><td align="center">0</td><td align="center">10s</td><td>More dynamic handler allocation. Will destroy all handlers fast when idling and create them without delay on traffic. Allows higher HTTP timeout.</td></tr> <tr><td align="center">60s</td><td align="center">0</td><td align="center">8</td><td align="center">0</td><td align="center">120s</td><td>Similar to default but keeps handler count stable by long idle timeout instead of backlog. Makes it less vulnerable against blocking, but keeps handler open long after traffic peeks. Needs on average more handlers than default.</td></tr> <tr><td align="center">10s</td><td align="center">0</td><td align="center">2</td><td align="center">0</td><td align="center">10s</td><td>Resource saving: maximum of two handlers, aggressive HTTP timeout, short idle timeout. Will keep number of handlers low but is heavily creating & destroying its handlers.</td></tr> - </table> + </table> + <h2>Reliable Indications</h2> + <p>Reliable indication support, as defined by DMTF Indications Profile [DSP1054], is included in the SBLIM CIM Client for Java beginning with version 2.1.9. The gist of + reliable indication support is for indications to be delivered to the listener in the order intended by the CIMOM, NOT the order which they arrive at the Client. In other + words, if the CIMOM sends indications [#4,#5,#6] but network issues cause them to arrive at the Client as [#5,#6,#4], the Client will deliver them to the listener as [#4,#5,#6]. + <p>When reliable indication support is enabled (the default is disabled), the Client is responsible for determining when to dispatch reliable indications, which includes + queuing unexpected indications in either a hash table or linked list, caching all indications for the duration of their sequence identifier lifetime, and logging missing, + duplicate and out-of-order indications. + <p>A reliable indication must contain both the SequenceContext and SequenceNumber properties, the latter of which is used to deliver indications to the listener in order + of increasing value. The sequence identifier lifetime is defined as: + <div style="border: 1px dashed #3c78b5; font-size: 14px; font-family: Courier; margin: 10px; line-height: 17px;"> + <div style="background-color: #f0f0f0; padding: 10px;"> + <pre> +DeliveryRetryAttempts * DeliveryRetryInterval * 10 + </pre> + </div> + </div> + where DeliveryRetryAttempts and DeliveryRetryInterval are properties in the CIM_IndicationService instance on the CIMOM dispatching the indications. + <p>There are four configuration options that allow you to control reliable indication handling: + <ul> + <li><em>sblim.wbem.listenerEnableReliableIndications</em>: Enables or disables reliable indication support. If set to true, indications are queued by the Client in a linked list or hash table and delivered in order to the listener . If set to false, indications are passed directly to the listener.</li> + <li><em>sblim.wbem.listenerDeliveryRetryAttempts</em>: Sets the default value to use for the CIM_IndicationService DeliveryRetryAttempts property. This value should match the value of the property of the CIM_IndicationService instance on the CIMOM dispatching the indications.</li> + <li><em>sblim.wbem.listenerDeliveryRetryInterval</em>: Sets the default value to use for the CIM_IndicationService DeliveryRetryInterval property. This value should match the value of the property of the CIM_IndicationService instance on the CIMOM dispatching the indications.</li> + <li><em>sblim.wbem.listenerReliableIndicationHashtableCapacity</em>: Sets the default value to use for the reliable indication handler's initial hash table capacity. A value of 0 indicates use a linked list instead. Linked lists are better suited for a small number of listener destinations per WBEMListener while hash tables are better suited for a large number.</li> + </ul> + <p>The following code snippet illustrates how to set up a simple indication listener with reliable indication support enabled.</p> + <div style="border: 1px dashed #3c78b5; font-size: 14px; font-family: Courier; margin: 10px; line-height: 17px;"> + <div style="background-color: #f0f0f0; padding: 10px;"> + <pre> +/** + * Starts a indication listener that dumps every received indication to System.out + * @param port The TCP port to listen on + * @param ssl Set true if you want to listen on a secure (SSL) socket + * @return The indication listener instance. Call removeLister() to stop the listener. + */ +private WBEMListener startIndicationListener(int pPort, boolean pSsl) throws IOException { + + try { + WBEMListener listener = WBEMListenerFactory.getListener(WBEMClientConstants.PROTOCOL_CIMXML); + // Cast WBEMListener to WBEMListenerSBLIM to get access to the addListener() method that + // accepts properties - this method is not part of the JSR48 standard, but is a SBLIM addition + WBEMListenerSBLIM SBLIMlistener = (WBEMListenerSBLIM) listener; + + // Enable reliable indications using 2 retries at intervals of 30 seconds + Properties props = new Properties(); + props.setProperty("sblim.wbem.listenerEnableReliableIndications", "true"); + props.setProperty("sblim.wbem.listenerDeliveryRetryAttempts", "2"); + props.setProperty("sblim.wbem.listenerDeliveryRetryInterval", "30"); + + SBLIMlistener.addListener(new IndicationListener() { + public void indicationOccured(String pIndicationURL, CIMInstance pIndication) { + System.out.println("Indication received on: " + pIndicationURL + ":"); + System.out.println(pIndication.toString()); + } + }, pPort, pSsl ? "https" : "http", null, props); + + return listener; + + } catch (IOException e) { + System.err.println("Failed to bind socket to port "+pPort); + throw e; + } + } + </pre> + </div> + </div> + <p>The properties can also be set in the properties file itself, in which case the code would be identical to the first snippet above. However, that would enable reliable + indication support and set the attempts/interval for all listeners whereas this code snippet enables support and sets the attempts/interval for this particular listener only. + <p><b>NOTE:</b>If reliable indication support is enabled but the CIMOM does not send reliable indications (required properties missing), the indications are passed directly + to the listener. </body> </html> |
From: Dave B. <bla...@us...> - 2012-01-03 16:33:58
|
Update of /cvsroot/sblim/jsr48-client/smpl/org/sblim/cimclient/samples In directory vz-cvs-3.sog:/tmp/cvs-serv26579/smpl/org/sblim/cimclient/samples Modified Files: Tag: Experimental Jsr48PegasusIndicationSample.java Log Message: 3469018 - Properties not passed to CIMIndicationHandler Index: Jsr48PegasusIndicationSample.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/smpl/org/sblim/cimclient/samples/Jsr48PegasusIndicationSample.java,v retrieving revision 1.1.2.5 retrieving revision 1.1.2.6 diff -u -d -r1.1.2.5 -r1.1.2.6 --- Jsr48PegasusIndicationSample.java 8 Sep 2011 14:41:47 -0000 1.1.2.5 +++ Jsr48PegasusIndicationSample.java 3 Jan 2012 16:33:56 -0000 1.1.2.6 @@ -1,5 +1,5 @@ /** - * (C) Copyright IBM Corp. 2011 + * (C) Copyright IBM Corp. 2011, 2012 * * THIS FILE IS PROVIDED UNDER THE TERMS OF THE ECLIPSE PUBLIC LICENSE * ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THIS FILE @@ -16,6 +16,7 @@ * 3185818 2011-02-18 blaschke-oss indicationOccured URL incorrect * 3267429 2011-04-01 blaschke-oss Samples should close client * 3374206 2011-07-22 blaschke-oss NullPointerException caused by Indication + * 3469018 2012-01-03 blaschke-oss Properties not passed to CIMIndicationHandler */ package org.sblim.cimclient.samples; @@ -24,6 +25,7 @@ import java.net.MalformedURLException; import java.net.URL; import java.net.UnknownHostException; +import java.util.Properties; import javax.cim.CIMArgument; import javax.cim.CIMDataType; @@ -37,6 +39,8 @@ import javax.wbem.listener.WBEMListener; import javax.wbem.listener.WBEMListenerFactory; +import org.sblim.cimclient.WBEMListenerSBLIM; + /** * Class Jsr48PegasusIndicationSample is an example for setting up an indication * listener with the JSR48 API and receiving a test indication from an @@ -160,6 +164,62 @@ } /** + * Starts a reliable listener. The JSR48 library will open a HTTP(S) server + * socket and listen for incoming indications on that socket. Any + * indications received will be forwarded to the registered + * IndicationListener implementation. The sample one here just prints the + * indication to stdout along with a message indicating whether the CIMOM + * supports reliable indications. + * + * @return <code>true</code> if the listener could be started, + * <code>false</code> otherwise. + */ + public static boolean startReliableListener() { + try { + cListener = WBEMListenerFactory.getListener(WBEMClientConstants.PROTOCOL_CIMXML); + + // Cast WBEMListener to WBEMListenerSBLIM to get access to the + // addListener() method that accepts properties - this method is not + // part of the JSR48 standard, but is a SBLIM addition + WBEMListenerSBLIM sListener = (WBEMListenerSBLIM) cListener; + + // Enable reliable indications using 2 retries at intervals of 30 + // seconds + Properties props = new Properties(); + props.setProperty("sblim.wbem.listenerEnableReliableIndications", "true"); + props.setProperty("sblim.wbem.listenerDeliveryRetryAttempts", "2"); + props.setProperty("sblim.wbem.listenerDeliveryRetryInterval", "30"); + + sListener.addListener(new IndicationListener() { + + public void indicationOccured(String pIndicationURL, CIMInstance pIndication) { + System.out.println("Indication received on: " + pIndicationURL + ":"); + try { + URL parsedURL = new URL(pIndicationURL); + System.out.println("The URL could be parsed, path is: " + + parsedURL.getPath()); + } catch (MalformedURLException e) { + System.out.println("The URL could NOT be parsed: " + e); + } + System.out.println(Jsr48CimSample.toMof(pIndication)); + CIMProperty<?> context = pIndication.getProperty("SequenceContext"); + CIMProperty<?> number = pIndication.getProperty("SequenceNumber"); + System.out.println("Based on content of indication, CIMOM DOES" + + (context == null || number == null || context.getValue() == null + || number.getValue() == null ? " NOT " : " ") + + "support reliable indications."); + } + }, Integer.parseInt(LISTENER_PORT), PROTOCOL, null, props); + + return true; + + } catch (IOException e) { + // nothing to do here + } + return false; + } + + /** * Constructs a CIM_ListenerDestinationCIMXML instance * * @param pNamespace |
From: Narasimha S. <nsh...@us...> - 2011-12-27 20:45:22
|
Update of /cvsroot/sblim/sfcb In directory vz-cvs-3.sog:/tmp/cvs-serv20153 Modified Files: utilTypeCk.c Log Message: [3446179] Add a feature to validate CMPI types Index: utilTypeCk.c =================================================================== RCS file: /cvsroot/sblim/sfcb/utilTypeCk.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- utilTypeCk.c 30 Nov 2011 23:26:39 -0000 1.1 +++ utilTypeCk.c 27 Dec 2011 20:45:20 -0000 1.2 @@ -18,9 +18,11 @@ * */ +#define _XOPEN_SOURCE 600 #include <stdio.h> #include <stdlib.h> #include <string.h> +#include <strings.h> #include <limits.h> #include <errno.h> #include "cmpi/cmpidt.h" |
From: Narasimha S. <nsh...@us...> - 2011-12-27 20:44:00
|
Update of /cvsroot/sblim/sfcb In directory vz-cvs-3.sog:/tmp/cvs-serv19945 Modified Files: cimXmlGen.c Log Message: [3446179] Add a feature to validate CMPI types Index: cimXmlGen.c =================================================================== RCS file: /cvsroot/sblim/sfcb/cimXmlGen.c,v retrieving revision 1.76 retrieving revision 1.77 diff -u -d -r1.76 -r1.77 --- cimXmlGen.c 30 Nov 2011 23:22:29 -0000 1.76 +++ cimXmlGen.c 27 Dec 2011 20:43:57 -0000 1.77 @@ -55,6 +55,7 @@ extern CMPIData __ift_internal_getPropertyAt(const CMPIInstance * ci, CMPICount i, char ** name, CMPIStatus * rc, int readonly); +extern int invalid_uint(const char *v, const CMPIType type); const char *opGetClassNameChars(CMPIObjectPath * cop); |
From: Tyrel D. <ty...@us...> - 2011-12-23 02:08:40
|
Update of /cvsroot/sblim/gather In directory vz-cvs-3.sog:/tmp/cvs-serv28337 Modified Files: ChangeLog Log Message: updated ChangeLog for 2.2.4 release Index: ChangeLog =================================================================== RCS file: /cvsroot/sblim/gather/ChangeLog,v retrieving revision 1.73 retrieving revision 1.74 diff -u -d -r1.73 -r1.74 --- ChangeLog 18 May 2011 04:04:42 -0000 1.73 +++ ChangeLog 23 Dec 2011 02:08:37 -0000 1.74 @@ -1,3 +1,109 @@ +2011-12-22 Tyrel Datwyler <ty...@us...> + + * NEWS, configure.ac, plugin/metricUnixProcess.c: + + Rejected 3098510: add process name to UnixProcessMetric (reverted + to revision 1.13 of metricUnixProcess) + +2011-11-28 Tyrel Datwyler <ty...@us...> + + * NEWS, plugin/metricKvm.c, plugin/metricVirt.c, + plugin/metricVirt.h, plugin/repositoryKvm.c: + + Fixed 3444879: add VM Block IO Metrics + +2011-11-16 Tyrel Datwyler <ty...@us...> + + * plugin/metricIPProtocolEndpoint.c: + + Fixed under allocation of data buffer for BytesSubmitted + +2011-11-16 Tyrel Datwyler <ty...@us...> + + * NEWS, plugin/metricStorage.c: + + Fixed 3439114: storage plugin leaks file descriptors + +2011-11-16 Tyrel Datwyler <ty...@us...> + + * Makefile.am, NEWS, plugin/metricStorage.c, + plugin/repositoryStorage.c, provider/Makefile.am, + provider/mof/Linux_Storage.mof, + provider/mof/Linux_Storage.registration: + + Fixed 3439075: add Host Block IO metrics + +2011-11-14 Tyrel Datwyler <ty...@us...> + + * NEWS, plugin/metricIPProtocolEndpoint.c, + plugin/metricIPProtocolEndpoint.readme, + plugin/repositoryIPProtocolEndpoint.c: + + Fixed 3438074: add packet drop metrics to IPProtocolEP + +2011-11-14 Tyrel Datwyler <ty...@us...> + + * NEWS, plugin/metricIPProtocolEndpoint.c, + plugin/repositoryIPProtocolEndpoint.c: + + Fixed 3438050: clean up IPProtocolEP raw data parsing + +2011-10-27 hellerda + + * NEWS, gatherer.init-redhat.in: + + Fixed 3429347: initscript incorrect return code + +2011-10-27 hellerda + + * NEWS, plugin/metricVirt.c: + + Fixed 3429346: libvirt race conditions + +2011-10-18 Tyrel Datwyler <ty...@us...> + + * NEWS, plugin/metricUnixProcess.c: + + Fixed 3397109 UnixProcess plugins occasionally crashes (patch by + Vitezslav Crhonek) + +2011-10-06 Tyrel Datwyler <ty...@us...> + + * NEWS, plugin/metricVirt.c, plugin/metricVirt.h: + + Fixed 3419837: bad alloc and usigned returns in metricVirt + +2011-09-22 Tyrel Datwyler <ty...@us...> + + * NEWS, plugin/metricUnixProcess.c: + + Rolled back 3397109: UnixProcess plugins occasionally crashes + +2011-09-21 Tyrel Datwyler <ty...@us...> + + * NEWS, plugin/metricVirt.c: + + Fixed 3412635: bad string allocations + +2011-08-23 Tyrel Datwyler <ty...@us...> + + * NEWS, plugin/metricUnixProcess.c: + + Fixed 3397109: gcc extensions not available on new distros + +2011-08-18 Tyrel Datwyler <ty...@us...> + + * Makefile.am, NEWS, plugin/metricIPProtocolEndpoint.c, + plugin/metricNetworkPort.c: + + Fixed 3394202: large network counters overflow raw metric buffer + +2011-05-17 Tyrel Datwyler <ty...@us...> + + * ChangeLog, NEWS, configure.ac: + + Updated for release version 2.2.3 + 2011-05-16 Tyrel Datwyler <ty...@us...> * Makefile.am, NEWS, plugin/metricVirt.c: @@ -627,7 +733,7 @@ [ 2065755 ] gatherer: getInstance always reports zero plugins -2008-03-04 nsharoff +2008-03-04 Narasimmha Sharoff <nsh...@us...> * configure.ac: |
From: Tyrel D. <ty...@us...> - 2011-12-23 01:53:48
|
Update of /cvsroot/sblim/gather In directory vz-cvs-3.sog:/tmp/cvs-serv22257 Modified Files: NEWS configure.ac Log Message: Rejected 3098510: add process name to UnixProcessMetric (reverted to revision 1.13 of metricUnixProcess) Index: NEWS =================================================================== RCS file: /cvsroot/sblim/gather/NEWS,v retrieving revision 1.116 retrieving revision 1.117 diff -u -d -r1.116 -r1.117 --- NEWS 29 Nov 2011 06:28:09 -0000 1.116 +++ NEWS 23 Dec 2011 01:53:45 -0000 1.117 @@ -16,6 +16,9 @@ - 3439075 add Host Block IO metrics - 3444879 add VM Block IO Metrics +Features removed: +- 3098510 add process name to UnixProcessMetric + Changes in Version 2.2.3 ======================== Index: configure.ac =================================================================== RCS file: /cvsroot/sblim/gather/configure.ac,v retrieving revision 1.41 retrieving revision 1.42 diff -u -d -r1.41 -r1.42 --- configure.ac 18 May 2011 04:04:42 -0000 1.41 +++ configure.ac 23 Dec 2011 01:53:45 -0000 1.42 @@ -2,7 +2,7 @@ # Process this file with autoconf to produce a configure script. AC_PREREQ(2.59) -AC_INIT([sblim-gather],[2.2.3],[sbl...@li...]) +AC_INIT([sblim-gather],[2.2.4],[sbl...@li...]) AC_CONFIG_SRCDIR([cimplug.h]) AC_CONFIG_HEADER([gather-config.h]) AM_INIT_AUTOMAKE |
From: Tyrel D. <ty...@us...> - 2011-12-23 01:53:47
|
Update of /cvsroot/sblim/gather/plugin In directory vz-cvs-3.sog:/tmp/cvs-serv22257/plugin Modified Files: metricUnixProcess.c Log Message: Rejected 3098510: add process name to UnixProcessMetric (reverted to revision 1.13 of metricUnixProcess) Index: metricUnixProcess.c =================================================================== RCS file: /cvsroot/sblim/gather/plugin/metricUnixProcess.c,v retrieving revision 1.17 retrieving revision 1.18 diff -u -d -r1.17 -r1.18 --- metricUnixProcess.c 18 Oct 2011 22:38:43 -0000 1.17 +++ metricUnixProcess.c 23 Dec 2011 01:53:45 -0000 1.18 @@ -38,8 +38,6 @@ #include <sys/types.h> #include <dirent.h> -#define BUFSIZE 1024 - /* ---------------------------------------------------------------------------*/ static MetricDefinition metricDef[6]; @@ -172,8 +170,6 @@ char * ptr = NULL; char * end = NULL; char * hlp = NULL; - char procname[BUFSIZE]; - char resname[2*BUFSIZE]; char buf[4096]; char os_buf[4096]; int _enum_size = 0; @@ -223,16 +219,8 @@ strcat(buf,_enum_pid + (i*64)); strcat(buf,"/stat"); if( (fhd = fopen(buf,"r")) != NULL ) { - fscanf(fhd,"%s %s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %lld %lld", - &resname, - &procname, + fscanf(fhd,"%*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %lld %lld", &u_time,&k_time ); - - /* remove parens from procname and concatenate as "pid.procname" */ - procname[0] = '.'; - procname[strlen(procname) - 1] = 0; - strcat(resname, procname); - fclose(fhd); } @@ -242,7 +230,7 @@ mv = calloc( 1, sizeof(MetricValue) + (strlen(buf)+1) + - (strlen(resname)+1) ); + (strlen(_enum_pid+(i*64))+1) ); if (mv) { mv->mvId = mid; mv->mvTimeStamp = time(NULL); @@ -251,7 +239,7 @@ mv->mvData = (char*)mv + sizeof(MetricValue); strncpy( mv->mvData, buf, strlen(buf) ); mv->mvResource = (char*)mv + sizeof(MetricValue) + (strlen(buf)+1); - strcpy(mv->mvResource,resname); + strcpy(mv->mvResource,_enum_pid+(i*64)); mret(mv); } } @@ -272,8 +260,6 @@ MetricValue * mv = NULL; FILE * fhd = NULL; char * _enum_pid = NULL; - char resname[2*BUFSIZE]; - char procname[BUFSIZE]; char buf[254]; int _enum_size = 0; int i = 0; @@ -302,24 +288,16 @@ strcat(buf,_enum_pid + (i*64)); strcat(buf,"/stat"); if( (fhd = fopen(buf,"r")) != NULL ) { - fscanf(fhd,"%s %s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s " + fscanf(fhd,"%*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s " "%*s %*s %*s %*s %*s %*s %*s %*s %*s %lld %*s", - &resname, - &procname, &rss); - - /* remove parens from procname and concatenate as "pid.procname" */ - procname[0] = '.'; - procname[strlen(procname) - 1] = 0; - strcat(resname, procname); - fclose(fhd); size = rss * sysconf(_SC_PAGESIZE); } mv = calloc( 1, sizeof(MetricValue) + sizeof(unsigned long long) + - (strlen(resname)+1) ); + (strlen(_enum_pid + (i*64))+1) ); if (mv) { mv->mvId = mid; mv->mvTimeStamp = time(NULL); @@ -328,7 +306,7 @@ mv->mvData = (char*)mv + sizeof(MetricValue); *(unsigned long long *)mv->mvData = htonll(size); mv->mvResource = (char*)mv + sizeof(MetricValue) + sizeof(unsigned long long); - strcpy(mv->mvResource,resname); + strcpy(mv->mvResource,_enum_pid + (i*64)); mret(mv); } } @@ -349,8 +327,6 @@ MetricValue * mv = NULL; FILE * fhd = NULL; char * _enum_pid = NULL; - char resname[2*BUFSIZE]; - char procname[BUFSIZE]; char buf[254]; int _enum_size = 0; int i = 0; @@ -379,22 +355,14 @@ strcat(buf,"/stat"); if( (fhd = fopen(buf,"r")) != NULL ) { fscanf(fhd, - "%s %s %*s %*s %*s %*s %*s %*s %*s %*s %*s %lld", - &resname, - &procname, + "%*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %lld", &page); - - /* remove parens from procname and concatenate as "pid.procname" */ - procname[0] = '.'; - procname[strlen(procname) - 1] = 0; - strcat(resname, procname); - fclose(fhd); } mv = calloc( 1, sizeof(MetricValue) + sizeof(unsigned long long) + - (strlen(resname)+1) ); + (strlen(_enum_pid + (i*64))+1) ); if (mv) { mv->mvId = mid; mv->mvTimeStamp = time(NULL); @@ -403,7 +371,7 @@ mv->mvData = (char*)mv + sizeof(MetricValue); *(unsigned long long*)mv->mvData = htonll(page); mv->mvResource = (char*)mv + sizeof(MetricValue) + sizeof(unsigned long long); - strcpy(mv->mvResource,resname); + strcpy(mv->mvResource,_enum_pid + (i*64)); mret(mv); } } @@ -424,8 +392,6 @@ MetricValue * mv = NULL; FILE * fhd = NULL; char * _enum_pid = NULL; - char resname[2*BUFSIZE]; - char procname[BUFSIZE]; char buf[254]; int _enum_size = 0; int i = 0; @@ -454,24 +420,16 @@ strcat(buf,"/stat"); if( (fhd = fopen(buf,"r")) != NULL ) { fscanf(fhd, - "%s %s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s " + "%*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s " "%*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s " "%*s %*s %*s %*s %lld", - &resname, - &procname, &page); - - /* remove parens from procname and concatenate as "pid.procname" */ - procname[0] = '.'; - procname[strlen(procname) - 1] = 0; - strcat(resname, procname); - fclose(fhd); } mv = calloc( 1, sizeof(MetricValue) + sizeof(unsigned long long) + - (strlen(resname)+1) ); + (strlen(_enum_pid + (i*64))+1) ); if (mv) { mv->mvId = mid; mv->mvTimeStamp = time(NULL); @@ -480,7 +438,7 @@ mv->mvData = (char*)mv + sizeof(MetricValue); *(unsigned long long*)mv->mvData = htonll(page); mv->mvResource = (char*)mv + sizeof(MetricValue) + sizeof(unsigned long long); - strcpy(mv->mvResource,resname); + strcpy(mv->mvResource,_enum_pid + (i*64)); mret(mv); } } @@ -501,8 +459,6 @@ MetricValue * mv = NULL; FILE * fhd = NULL; char * _enum_pid = NULL; - char resname[2*BUFSIZE]; - char procname[BUFSIZE]; char buf[254]; int _enum_size = 0; int i = 0; @@ -529,23 +485,15 @@ strcat(buf,_enum_pid + (i*64)); strcat(buf,"/stat"); if( (fhd = fopen(buf,"r")) != NULL ) { - fscanf(fhd,"%s %s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s " + fscanf(fhd,"%*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s " "%*s %*s %*s %*s %*s %*s %*s %*s %lld", - &resname, - &procname, &size); - - /* remove parens from procname and concatenate as "pid.procname" */ - procname[0] = '.'; - procname[strlen(procname) - 1] = 0; - strcat(resname, procname); - fclose(fhd); } mv = calloc( 1, sizeof(MetricValue) + sizeof(unsigned long long) + - (strlen(resname)+1) ); + (strlen(_enum_pid + (i*64))+1) ); if (mv) { mv->mvId = mid; mv->mvTimeStamp = time(NULL); @@ -554,7 +502,7 @@ mv->mvData = (char*)mv + sizeof(MetricValue); *(unsigned long long *)mv->mvData = htonll(size); mv->mvResource = (char*)mv + sizeof(MetricValue) + sizeof(unsigned long long); - strcpy(mv->mvResource,resname); + strcpy(mv->mvResource,_enum_pid + (i*64)); mret(mv); } } @@ -575,8 +523,6 @@ MetricValue * mv = NULL; FILE * fhd = NULL; char * _enum_pid = NULL; - char resname[2*BUFSIZE]; - char procname[BUFSIZE]; char buf[254]; int _enum_size = 0; int i = 0; @@ -608,26 +554,11 @@ fclose(fhd); } - memset(buf,0,sizeof(buf)); - strcpy(buf,"/proc/"); - strcat(buf,_enum_pid + (i*64)); - strcat(buf,"/stat"); - if ((fhd = fopen(buf,"r")) != NULL) { - fscanf(fhd,"%s %s", &resname, &procname); - - /* remove parens from procname and concatenate as "pid.procname" */ - procname[0] = '.'; - procname[strlen(procname) - 1] = 0; - strcat(resname, procname); - - fclose(fhd); - } - size = size * sysconf(_SC_PAGESIZE); mv = calloc( 1, sizeof(MetricValue) + sizeof(unsigned long long) + - (strlen(resname)+1) ); + (strlen(_enum_pid + (i*64))+1) ); if (mv) { mv->mvId = mid; mv->mvTimeStamp = time(NULL); @@ -636,7 +567,7 @@ mv->mvData = (char*)mv + sizeof(MetricValue); *(unsigned long long *)mv->mvData = htonll(size); mv->mvResource = (char*)mv + sizeof(MetricValue) + sizeof(unsigned long long); - strcpy(mv->mvResource,resname); + strcpy(mv->mvResource,_enum_pid + (i*64)); mret(mv); } } |
From: Michael Chase-S. <mc...@us...> - 2011-12-22 23:38:45
|
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 46e17f272fa749b3ee0e560c069f7c0b12b4072d (commit) from 2b708ad6d865aecb8ba8e8b68c0b6c4f915c8574 (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 46e17f272fa749b3ee0e560c069f7c0b12b4072d Author: Michael Chase-Salerno <br...@li...> Date: Thu Dec 22 18:37:30 2011 -0500 Don't require sbin in the grep ----------------------------------------------------------------------- Summary of changes: diff --git a/extra/sfcb-ps b/extra/sfcb-ps index eed0d57..16fcec8 100755 --- a/extra/sfcb-ps +++ b/extra/sfcb-ps @@ -42,7 +42,7 @@ cat <<HELP $N - Attempt to identify SFCB co-processes. This scans for all the SFCB server processes (ones whose name matches - "sbin/sfcbd"), and attempts to determine the specific role of each of + "sfcbd"), and attempts to determine the specific role of each of those processes. Caution: Determination is not always 100% accurate. In particular, @@ -103,11 +103,11 @@ done if [ -n "$RAW_PS" ] ; then printf "%5s %5s %5s %-4s %s\n" PID PPID PGID STAT CMD - ps -e -o pid,ppid,pgid,stat,cmd | grep 'sbin[/]sfcb' + ps -e -o pid,ppid,pgid,stat,cmd | grep 'sfcbd' exit 0 fi -PS_INFO=$(ps -e -o pid,ppid,pgid,stat,cmd | grep 'sbin[/]sfcb') +PS_INFO=$(ps -e -o pid,ppid,pgid,stat,cmd | grep 'sfcbd') if [ -z "$PS_INFO" ] ; then echo "No SFCB Processes found." @@ -122,7 +122,6 @@ echo "$PS_INFO" | while read pid ppid pgid stat cmd ; do # # If not launched as a daemon, we have to be told how to recognize # the right one (with the -main option). - if [ "$pid" = "$pgid" -o "$pid" = "$MAIN_PID" ] ; then role="SFCB Main" hooks/post-receive -- SFCB - Small Footprint CIM Broker |