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: Chris B. <buc...@us...> - 2013-03-08 20:40:14
|
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 3884f36555f8f67c46ae81162e14daadef3b15bd (commit) via 8c1dacd1c14baf757b506247215f1a34b0d590f1 (commit) from e94199e0c0ef04862ebf71fd217e7e9e5bec168d (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 3884f36555f8f67c46ae81162e14daadef3b15bd Author: buccella <buc...@li...> Date: Fri Mar 8 15:38:12 2013 -0500 [sfcb-tix:#26] ClassProviderSf should read standard repositories commit 8c1dacd1c14baf757b506247215f1a34b0d590f1 Author: buccella <buc...@li...> Date: Fri Mar 8 15:37:51 2013 -0500 [sfcb-tix:#26] ClassProviderSf should read standard repositories ----------------------------------------------------------------------- Summary of changes: classProviderSf.c | 8 ++- .../TestProviders/tests/Test1EnumerateInstances.OK | 73 -------------------- ...cQuery2.lines => Test1EnumerateInstances.lines} | 38 ++++------ test/TestProviders/tests/xmltest.sh | 4 +- test/xmltest/xmltest.sh | 4 +- 5 files changed, 26 insertions(+), 101 deletions(-) diff --git a/classProviderSf.c b/classProviderSf.c index 404a860..a1cc362 100644 --- a/classProviderSf.c +++ b/classProviderSf.c @@ -396,7 +396,7 @@ newClassRegister(char *fname) int v = -1; int r = -1; first = 0; - if (ClVerifyObjImplLevel(cr->vr) && (r = cr->vr->options == ClTypeClassReducedRep)) + if (ClVerifyObjImplLevel(cr->vr)) continue; if (cr->vr) @@ -713,6 +713,12 @@ getResolvedClass(ClassRegister * cr, const char *clsName, { _SFCB_ENTER(TRACE_PROVIDERS, "getResolvedClass"); _SFCB_TRACE(1, ("--- classname %s cReg %p", clsName, cr)); + + /* if standard repo, skip straight to normal gc */ + if (cr->vr->options != ClTypeClassReducedRep) { + return getClass(cr, clsName, rctl); + } + CMPIConstClass *cc = NULL, *cls = NULL; ReadCtl ctl = *rctl; diff --git a/test/TestProviders/tests/Test1EnumerateInstances.OK b/test/TestProviders/tests/Test1EnumerateInstances.OK deleted file mode 100644 index e87011f..0000000 --- a/test/TestProviders/tests/Test1EnumerateInstances.OK +++ /dev/null @@ -1,73 +0,0 @@ -<?xml version="1.0" encoding="utf-8" ?> -<CIM CIMVERSION="2.0" DTDVERSION="2.0"> -<MESSAGE ID="10001" PROTOCOLVERSION="1.0"> -<SIMPLERSP> -<IMETHODRESPONSE NAME="EnumerateInstances"> -<IRETURNVALUE> -<VALUE.NAMEDINSTANCE> -<INSTANCENAME CLASSNAME="Sample_Instance"> -<KEYBINDING NAME="Identifier"> -<KEYVALUE VALUETYPE="numeric">1</KEYVALUE> -</KEYBINDING> -</INSTANCENAME> -<INSTANCE CLASSNAME="Sample_Instance"> -<PROPERTY NAME="Identifier" TYPE="uint8"> -<VALUE>1</VALUE> -</PROPERTY> -<PROPERTY NAME="Einst" EmbeddedObject="object" TYPE="string"> -<VALUE><![CDATA[<INSTANCE CLASSNAME="Sample_Instance"> -<PROPERTY NAME="Identifier" TYPE="uint8"> -<VALUE>1</VALUE> -</PROPERTY> -<PROPERTY NAME="Einst" EmbeddedObject="object" TYPE="string"> -</PROPERTY> -<PROPERTY NAME="Message" TYPE="string"> -<VALUE>I'm an EmbeddedObject</VALUE> -</PROPERTY> -</INSTANCE> -]]></VALUE> -</PROPERTY> -<PROPERTY NAME="Message" TYPE="string"> -<VALUE>Hello World</VALUE> -</PROPERTY> -</INSTANCE> -</VALUE.NAMEDINSTANCE> -<VALUE.NAMEDINSTANCE> -<INSTANCENAME CLASSNAME="Sample_Instance"> -<KEYBINDING NAME="Identifier"> -<KEYVALUE VALUETYPE="numeric">2</KEYVALUE> -</KEYBINDING> -</INSTANCENAME> -<INSTANCE CLASSNAME="Sample_Instance"> -<PROPERTY NAME="Identifier" TYPE="uint8"> -<VALUE>2</VALUE> -</PROPERTY> -<PROPERTY NAME="Einst" EmbeddedObject="object" TYPE="string"> -</PROPERTY> -<PROPERTY NAME="Message" TYPE="string"> -<VALUE>Yo Planet</VALUE> -</PROPERTY> -</INSTANCE> -</VALUE.NAMEDINSTANCE> -<VALUE.NAMEDINSTANCE> -<INSTANCENAME CLASSNAME="Sample_Instance"> -<KEYBINDING NAME="Identifier"> -<KEYVALUE VALUETYPE="numeric">3</KEYVALUE> -</KEYBINDING> -</INSTANCENAME> -<INSTANCE CLASSNAME="Sample_Instance"> -<PROPERTY NAME="Identifier" TYPE="uint8"> -<VALUE>3</VALUE> -</PROPERTY> -<PROPERTY NAME="Einst" EmbeddedObject="object" TYPE="string"> -</PROPERTY> -<PROPERTY NAME="Message" TYPE="string"> -<VALUE>Hey Earth</VALUE> -</PROPERTY> -</INSTANCE> -</VALUE.NAMEDINSTANCE> -</IRETURNVALUE> -</IMETHODRESPONSE> -</SIMPLERSP> -</MESSAGE> -</CIM> diff --git a/test/TestProviders/tests/Test7ExecQuery2.lines b/test/TestProviders/tests/Test1EnumerateInstances.lines similarity index 59% copy from test/TestProviders/tests/Test7ExecQuery2.lines copy to test/TestProviders/tests/Test1EnumerateInstances.lines index ffc8423..dd8dd25 100644 --- a/test/TestProviders/tests/Test7ExecQuery2.lines +++ b/test/TestProviders/tests/Test1EnumerateInstances.lines @@ -1,39 +1,31 @@ <INSTANCENAME CLASSNAME="Sample_Instance"> <KEYBINDING NAME="Identifier"> <KEYVALUE VALUETYPE="numeric">1</KEYVALUE> -</KEYBINDING> -</INSTANCENAME> -</INSTANCEPATH> <INSTANCE CLASSNAME="Sample_Instance"> -<PROPERTY NAME="Message" TYPE="string"> -</PROPERTY> <PROPERTY NAME="Identifier" TYPE="uint8"> <VALUE>1</VALUE> -</PROPERTY> -</INSTANCE> +<PROPERTY NAME="Einst" EmbeddedObject="object" TYPE="string"> +[CDATA[ +<PROPERTY NAME="Identifier" TYPE="uint8"> +<VALUE>1</VALUE> +<PROPERTY NAME="Einst" EmbeddedObject="object" TYPE="string"> +<PROPERTY NAME="Message" TYPE="string"> +<VALUE>I'm an EmbeddedObject</VALUE> +<PROPERTY NAME="Message" TYPE="string"> +<VALUE>Hello World</VALUE> <INSTANCENAME CLASSNAME="Sample_Instance"> <KEYBINDING NAME="Identifier"> <KEYVALUE VALUETYPE="numeric">2</KEYVALUE> -</KEYBINDING> -</INSTANCENAME> -</INSTANCEPATH> <INSTANCE CLASSNAME="Sample_Instance"> -<PROPERTY NAME="Message" TYPE="string"> -</PROPERTY> <PROPERTY NAME="Identifier" TYPE="uint8"> <VALUE>2</VALUE> -</PROPERTY> -</INSTANCE> -<INSTANCENAME CLASSNAME="Sample_Instance"> -<KEYBINDING NAME="Identifier"> +<PROPERTY NAME="Einst" EmbeddedObject="object" TYPE="string"> +<PROPERTY NAME="Message" TYPE="string"> +<VALUE>Yo Planet</VALUE> <KEYVALUE VALUETYPE="numeric">3</KEYVALUE> -</KEYBINDING> -</INSTANCENAME> -</INSTANCEPATH> <INSTANCE CLASSNAME="Sample_Instance"> -<PROPERTY NAME="Message" TYPE="string"> -</PROPERTY> <PROPERTY NAME="Identifier" TYPE="uint8"> <VALUE>3</VALUE> -</PROPERTY> -</INSTANCE> +<PROPERTY NAME="Einst" EmbeddedObject="object" TYPE="string"> +<PROPERTY NAME="Message" TYPE="string"> +<VALUE>Hey Earth</VALUE> diff --git a/test/TestProviders/tests/xmltest.sh b/test/TestProviders/tests/xmltest.sh index 82c43c1..3037e58 100755 --- a/test/TestProviders/tests/xmltest.sh +++ b/test/TestProviders/tests/xmltest.sh @@ -97,7 +97,7 @@ do notline=$(echo $line | awk '{ line=index($line,"!"); print line; }' ) if [ "$notline" != 0 ] ; then text=$(echo $line | awk '{ line=substr($line, 2); print line; }' ) - if grep --q "$text" $_TESTRESULT ; then + if grep -F --q "$text" $_TESTRESULT ; then if [ $passed -eq 0 ] ; then printf $red echo "FAILED disallowed line found" @@ -110,7 +110,7 @@ do fi else # Check for required lines - if ! grep --q "$line" $_TESTRESULT ; then + if ! grep -F --q "$line" $_TESTRESULT ; then if [ $passed -eq 0 ] ; then printf $red echo "FAILED required line not found" diff --git a/test/xmltest/xmltest.sh b/test/xmltest/xmltest.sh index c0955d3..a6051ad 100755 --- a/test/xmltest/xmltest.sh +++ b/test/xmltest/xmltest.sh @@ -100,7 +100,7 @@ do notline=$(echo $line | awk '{ line=index($line,"!"); print line; }' ) if [ "$notline" != 0 ] ; then text=$(echo $line | awk '{ line=substr($line, 2); print line; }' ) - if grep --q "$text" $_TESTRESULT ; then + if grep -F --q "$text" $_TESTRESULT ; then if [ $passed -eq 0 ] ; then echo -n "FAILED disallowed line found" passed=1 @@ -111,7 +111,7 @@ do fi else # Check for required lines - if ! grep --q "$line" $_TESTRESULT ; then + if ! grep -F --q "$line" $_TESTRESULT ; then if [ $passed -eq 0 ] ; then printf $red echo -n "FAILED required line not found" hooks/post-receive -- sfcb - Small Footprint CIM Broker |
From: Dave H. <hel...@us...> - 2013-03-07 06:06:58
|
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 e94199e0c0ef04862ebf71fd217e7e9e5bec168d (commit) from 380537de398cf5fe9467429444b3801008a06a13 (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 e94199e0c0ef04862ebf71fd217e7e9e5bec168d Author: Dave Heller <hel...@us...> Date: Thu Mar 7 01:01:18 2013 -0500 [sfcb-tix:#6] SFCB XML Parser Error with Instance as Parameter ----------------------------------------------------------------------- Summary of changes: cimXmlGen.c | 7 +++++++ cimXmlOps.y | 46 ++++++++++++++++++++++++++++++++++++++++++---- cimXmlParser.c | 9 +++------ cimXmlParser.h | 6 ++++++ 4 files changed, 58 insertions(+), 10 deletions(-) diff --git a/cimXmlGen.c b/cimXmlGen.c index d573a39..fd3e32d 100644 --- a/cimXmlGen.c +++ b/cimXmlGen.c @@ -485,8 +485,15 @@ str2CMPIValue(CMPIType type, XtokValue val, XtokValueReference * ref, getKeyValueTypePtr("ref", NULL, ref, &value, &t, ns); break; case CMPI_instance: + /* + * TODO: Properly support PARAMVALUE subelements INSTANCE, INSTANCENAME, + * VALUE.NAMEDINSTANCE, in addition to EmbeddedInstance. + */ value = makeFromEmbeddedObject(val, ns); break; + case CMPI_class: + /* TODO: Properly support PARAMVALUE subelements CLASS, CLASSNAME. */ + break; default: mlogf(M_ERROR, M_SHOW, "%s(%d): invalid value %d-%p\n", __FILE__, __LINE__, (int) type, val); diff --git a/cimXmlOps.y b/cimXmlOps.y index 7317fb7..09cacbf 100644 --- a/cimXmlOps.y +++ b/cimXmlOps.y @@ -1422,10 +1422,12 @@ buildInvokeMethodRequest(void *parm) for (p = req->paramValues.first; p; p = p->next) { /* - * Update untyped params (p->type==0) and verify those that were - * specified + * Update untyped params (p->type==0) and verify those that were specified. + * (Unlikely to be untyped at this point. Even if no paramtype is given in + * the XML, the rule actions would assign one.) */ - if (p->type == 0 || p->type == CMPI_ARRAY || vmpt) { + if (p->type == 0 || p->type == CMPI_ARRAY || p->type == CMPI_class || + p->type == CMPI_instance || vmpt) { rc = updateMethodParamTypes(hdr); if (rc != CMPI_RC_OK) { @@ -1435,7 +1437,10 @@ buildInvokeMethodRequest(void *parm) return; } } - + /* + * TODO: Add support for PARAMVALUE subelements CLASS, CLASSNAME, INSTANCE, + * INSTANCENAME, VALUE.NAMEDINSTANCE, in addition to EmbeddedInstance. + */ if (p->value.value) { CMPIValue val = str2CMPIValue(p->type, p->value, &p->valueRef, req->op.nameSpace.data, &st); if (st.rc) { @@ -1545,6 +1550,11 @@ updateMethodParamTypes(RequestHdr * hdr) // fprintf(stderr, " is EmbeddedInstance\n"); isEI = 1; break; + /* + * TODO: For PARAMVALUE subelements CLASS, CLASSNAME, INSTANCE, + * INSTANCENAME, VALUE.NAMEDINSTANCE, we probably want to skip + * the below repository check as well. + */ } } if (isEI) @@ -1554,6 +1564,7 @@ updateMethodParamTypes(RequestHdr * hdr) if ((ptok->type == 0) || (ptok->type == CMPI_ARRAY)) { /* * Type was unknown, fill it in + * (unlikely at this point, see comment in buildInvokeMethodRequest) */ // printf("parameter %s missing type, using %s\n", sname, // paramType(pdata.type)); @@ -2256,6 +2267,33 @@ paramValue $$.valueRefArray=$2; $$.type=CMPI_ARRAY | CMPI_ref; } + /* Support new subelements in DSP0201 v2.3.1 */ + | XTOK_PARAMVALUE className ZTOK_PARAMVALUE + { + $$.className=$2; + if (!$$.type) $$.type=CMPI_class; /* should this be CMPI_string? */ + } + | XTOK_PARAMVALUE instanceName ZTOK_PARAMVALUE + { + $$.instanceName=$2; + if (!$$.type) $$.type=CMPI_instance; + } + | XTOK_PARAMVALUE class ZTOK_PARAMVALUE + { + //$$.class=$2; + if (!$$.type) $$.type=CMPI_class; + } + | XTOK_PARAMVALUE instance ZTOK_PARAMVALUE + { + $$.instance=$2; + if (!$$.type) $$.type=CMPI_instance; + } + | XTOK_PARAMVALUE namedInstance ZTOK_PARAMVALUE + { + $$.namedInstance=$2; + /* should we ignore paramtype from the XML and always set to CMPI_instance? */ + if (!$$.type) $$.type=CMPI_instance; + } ; /* diff --git a/cimXmlParser.c b/cimXmlParser.c index 1816d08..c154da5 100644 --- a/cimXmlParser.c +++ b/cimXmlParser.c @@ -487,6 +487,9 @@ static Types types[] = { {"datetime", CMPI_dateTime}, {"real32", CMPI_real32}, {"real64", CMPI_real64}, + {"reference", CMPI_ref}, + {"class", CMPI_class}, + {"instance", CMPI_instance}, {NULL} }; @@ -734,12 +737,6 @@ procParamValue(YYSTYPE * lvalp, ParserControl * parm) break; } } - // is this right? why isn't reference covered by the types array - // in the loop above? - if (lvalp->xtokParamValue.type == 0) { - if (strcasecmp(attr[1].attr, "reference") == 0) - lvalp->xtokParamValue.type = CMPI_ref; - } } if (attr[2].attr) { if (strcasecmp(attr[2].attr, "instance") == 0 diff --git a/cimXmlParser.h b/cimXmlParser.h index 7c752f2..db39e94 100644 --- a/cimXmlParser.h +++ b/cimXmlParser.h @@ -278,6 +278,12 @@ typedef struct xtokParamValue { XtokValueReference valueRef; XtokValueArray valueArray; XtokValueRefArray valueRefArray; + /* Support new subelements in DSP0201 v2.3.1 */ + char *className; + XtokInstanceName instanceName; +// XtokClass class; /* FIXME resolve circular dependency */ + XtokInstance instance; + XtokNamedInstance namedInstance; }; } XtokParamValue; hooks/post-receive -- sfcb - Small Footprint CIM Broker |
From: Chris B. <buc...@us...> - 2013-03-06 19:58:00
|
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 380537de398cf5fe9467429444b3801008a06a13 (commit) from b31b7daf35493309b6a96e5c034ed772b71be4ab (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 380537de398cf5fe9467429444b3801008a06a13 Author: buccella <buc...@li...> Date: Wed Mar 6 14:55:54 2013 -0500 [sfcb-tix:#25] classProviderSf drops Association qualifier on child classes ----------------------------------------------------------------------- Summary of changes: classProviderSf.c | 6 +++--- test/TestProviders/tests/IndTest41References.lines | 1 + test/TestProviders/tests/IndTest41References.xml | 7 +++++++ 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/classProviderSf.c b/classProviderSf.c index 1155078..404a860 100644 --- a/classProviderSf.c +++ b/classProviderSf.c @@ -749,10 +749,10 @@ getResolvedClass(ClassRegister * cr, const char *clsName, char orig_abst = mc->quals & ClClass_Q_Abstract; mergeParents(cr, mc, pn, cls, rctl); - /* We want all our parents' qualifiers except for Abstract. - Overwrite using original Abstract bit */ - mc->quals &= orig_abst; + Clear and set using original Abstract bit */ + mc->quals &= ~ClClass_Q_Abstract; + mc->quals |= orig_abst; if (*rctl == tempRead) { if (cls && (cls_ctl != cached)) diff --git a/test/TestProviders/tests/IndTest41References.lines b/test/TestProviders/tests/IndTest41References.lines new file mode 100644 index 0000000..7805ef5 --- /dev/null +++ b/test/TestProviders/tests/IndTest41References.lines @@ -0,0 +1 @@ +<INSTANCENAME CLASSNAME="CIM_IndicationSubscription"> diff --git a/test/TestProviders/tests/IndTest41References.xml b/test/TestProviders/tests/IndTest41References.xml new file mode 100644 index 0000000..b0822ee --- /dev/null +++ b/test/TestProviders/tests/IndTest41References.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="utf-8" ?> +<CIM CIMVERSION="2.0" DTDVERSION="2.0"> +<MESSAGE ID="4711" PROTOCOLVERSION="1.0"><SIMPLEREQ><IMETHODCALL NAME="ReferenceNames"><LOCALNAMESPACEPATH><NAMESPACE NAME="root"></NAMESPACE><NAMESPACE NAME="interop"></NAMESPACE></LOCALNAMESPACEPATH> +<IPARAMVALUE NAME="ObjectName"><INSTANCENAME CLASSNAME="CIM_IndicationHandlerCIMXML"><KEYBINDING NAME="creationclassname"><KEYVALUE VALUETYPE="string">CIM_IndicationHandlerCIMXML</KEYVALUE></KEYBINDING><KEYBINDING NAME="name"><KEYVALUE VALUETYPE="string">Test_Indication_Handler_</KEYVALUE></KEYBINDING><KEYBINDING NAME="systemcreationclassname"><KEYVALUE VALUETYPE="string">CIM_ComputerSystem</KEYVALUE></KEYBINDING><KEYBINDING NAME="systemname"><KEYVALUE VALUETYPE="string">localhost.localdomain</KEYVALUE></KEYBINDING></INSTANCENAME></IPARAMVALUE> +<IPARAMVALUE NAME="ResultClass"><CLASSNAME NAME="CIM_IndicationSubscription"/></IPARAMVALUE> +</IMETHODCALL></SIMPLEREQ> +</MESSAGE></CIM> hooks/post-receive -- sfcb - Small Footprint CIM Broker |
From: Dave B. <bla...@us...> - 2013-03-06 13:22:02
|
Update of /cvsroot/sblim/jsr48-client In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv15660 Modified Files: NEWS Log Message: 2615 Add Allura links to detailed release history HTML Index: NEWS =================================================================== RCS file: /cvsroot/sblim/jsr48-client/NEWS,v retrieving revision 1.336 retrieving revision 1.337 diff -u -d -r1.336 -r1.337 --- NEWS 6 Mar 2013 13:05:07 -0000 1.336 +++ NEWS 6 Mar 2013 13:22:00 -0000 1.337 @@ -1,5 +1,6 @@ Changes in HEAD ================ + 2615 Add Allura links to detailed release history HTML 2614 Remove redundant code in transmitRequest 3602604 Clean up SAXException messages 3601894 Enhance HTTP and CIM-XML tracing |
From: Dave B. <bla...@us...> - 2013-03-06 13:05:09
|
Update of /cvsroot/sblim/jsr48-client In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv12544 Modified Files: NEWS Log Message: 2614 Remove redundant code in transmitRequest Index: NEWS =================================================================== RCS file: /cvsroot/sblim/jsr48-client/NEWS,v retrieving revision 1.335 retrieving revision 1.336 diff -u -d -r1.335 -r1.336 --- NEWS 14 Feb 2013 23:10:41 -0000 1.335 +++ NEWS 6 Mar 2013 13:05:07 -0000 1.336 @@ -1,5 +1,6 @@ Changes in HEAD ================ + 2614 Remove redundant code in transmitRequest 3602604 Clean up SAXException messages 3601894 Enhance HTTP and CIM-XML tracing 3598613 different data type in cim instance and cim object path |
From: Dave B. <bla...@us...> - 2013-03-05 15:31:10
|
Update of /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/http In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv26938/src/org/sblim/cimclient/internal/http Modified Files: Tag: Experimental HttpClient.java HttpClientPool.java HttpServerConnection.java Log Message: 2618 Need to add property to disable weak cipher suites for the secure indication Index: HttpClientPool.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/http/HttpClientPool.java,v retrieving revision 1.5.2.7 retrieving revision 1.5.2.8 diff -u -d -r1.5.2.7 -r1.5.2.8 --- HttpClientPool.java 8 Sep 2011 12:26:08 -0000 1.5.2.7 +++ HttpClientPool.java 5 Mar 2013 15:31:07 -0000 1.5.2.8 @@ -1,5 +1,5 @@ /** - * (C) Copyright IBM Corp. 2005, 2011 + * (C) Copyright IBM Corp. 2005, 2013 * * THIS FILE IS PROVIDED UNDER THE TERMS OF THE ECLIPSE PUBLIC LICENSE * ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THIS FILE @@ -27,6 +27,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) * 3400209 2011-08-31 blaschke-oss Highlighted Static Analysis (PMD) issues + * 2618 2013-02-27 blaschke-oss Need to add property to disable weak cipher suites for the secure indication */ package org.sblim.cimclient.internal.http; @@ -40,6 +41,7 @@ import javax.net.ssl.SSLContext; import org.sblim.cimclient.internal.logging.LogAndTraceBroker; +import org.sblim.cimclient.internal.util.Util; import org.sblim.cimclient.internal.util.WBEMConfiguration; /** @@ -72,6 +74,8 @@ */ private SSLContext iSslContext; + private String[] iEnabledCipherSuites = null; + /** * Ctor. * @@ -85,6 +89,7 @@ this.iAvailableConnections = new ArrayList<HttpClient>(pConfiguration.getHttpPoolSize()); this.iPoolSize = pConfiguration.getHttpPoolSize(); this.iSslContext = null; + this.iEnabledCipherSuites = null; } /** @@ -269,4 +274,36 @@ return this.iPoolSize; } + /** + * Returns updated array of cipher suites which is current cipher suites + * less any cipher suites listed to be disabled + * + * NOTE: The updated array is generated only upon first invocation and then + * saved, effectively making this a lazy initialization of the cipher suites + * on a HttpClientPool basis - it has to be done here and not in WBEMClient + * where it belongs because socket characteristics are not known to + * WBEMClient + * + * @param pCurrentCipherSuites + * The currently enabled cipher suites + * @param pDisableCipherSuites + * The list of cipher suites to be disabled + * @return The updated enabled cipher suites + */ + public synchronized String[] getUpdatedCipherSuites(String[] pCurrentCipherSuites, + String pDisableCipherSuites) { + if (this.iEnabledCipherSuites == null) { + this.iEnabledCipherSuites = Util.getFilteredStringArray(pCurrentCipherSuites, + pDisableCipherSuites); + int before = pCurrentCipherSuites.length; + int after = this.iEnabledCipherSuites.length; + if (before > 0 && after == 0) LogAndTraceBroker.getBroker().trace(Level.WARNING, + "All cipher suites disabled!"); + else if (before > after) LogAndTraceBroker.getBroker().trace(Level.FINE, + "Some (" + (before - after) + ") cipher suites disabled"); + else if (before == after) LogAndTraceBroker.getBroker().trace(Level.FINER, + "No cipher suites disabled"); + } + return this.iEnabledCipherSuites; + } } Index: HttpServerConnection.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/http/HttpServerConnection.java,v retrieving revision 1.7.2.10 retrieving revision 1.7.2.11 diff -u -d -r1.7.2.10 -r1.7.2.11 --- HttpServerConnection.java 13 Sep 2012 12:01:56 -0000 1.7.2.10 +++ HttpServerConnection.java 5 Mar 2013 15:31:08 -0000 1.7.2.11 @@ -1,5 +1,5 @@ /** - * (C) Copyright IBM Corp. 2005, 2012 + * (C) Copyright IBM Corp. 2005, 2013 * * THIS FILE IS PROVIDED UNDER THE TERMS OF THE ECLIPSE PUBLIC LICENSE * ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THIS FILE @@ -30,6 +30,7 @@ * 3027392 2010-07-09 blaschke-oss Nullcheck of value previously dereferenced * 3206904 2011-03-11 lupusalex Indication listener deadlock causes JVM to run out sockets * 3536399 2012-08-25 hellerda Add client/listener peer authentication properties + * 2618 2013-02-27 blaschke-oss Need to add property to disable weak cipher suites for the secure indication */ package org.sblim.cimclient.internal.http; @@ -50,6 +51,7 @@ import org.sblim.cimclient.internal.logging.LogAndTraceBroker; import org.sblim.cimclient.internal.util.ThreadPool; +import org.sblim.cimclient.internal.util.Util; import org.sblim.cimclient.internal.util.WBEMConfiguration; /** @@ -127,6 +129,22 @@ logger.trace(Level.FINER, "Listener peer verification: require"); ((SSLServerSocket) this.iServerSocket).setNeedClientAuth(true); } + + String disableCipherSuites = this.iSessionProperties.getSslCipherSuitesToDisable(); + if (disableCipherSuites != null) { + SSLServerSocket sslSock = (SSLServerSocket) this.iServerSocket; + String[] currentCipherSuites = sslSock.getEnabledCipherSuites(); + String[] updatedCipherSuites = Util.getFilteredStringArray(currentCipherSuites, + disableCipherSuites); + sslSock.setEnabledCipherSuites(updatedCipherSuites); + int before = currentCipherSuites.length; + int after = updatedCipherSuites.length; + if (before > 0 && after == 0) logger.trace(Level.WARNING, + "All cipher suites disabled!"); + else if (before > after) logger.trace(Level.FINE, "Some (" + (before - after) + + ") cipher suites disabled"); + else if (before == after) logger.trace(Level.FINER, "No cipher suites disabled"); + } } this.iTimeout = this.iSessionProperties.getListenerHttpTimeout(); logger.exit(); Index: HttpClient.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/http/HttpClient.java,v retrieving revision 1.12.2.35 retrieving revision 1.12.2.36 diff -u -d -r1.12.2.35 -r1.12.2.36 --- HttpClient.java 23 Feb 2013 15:35:16 -0000 1.12.2.35 +++ HttpClient.java 5 Mar 2013 15:31:07 -0000 1.12.2.36 @@ -69,6 +69,7 @@ * 3601894 2013-01-23 blaschke-oss Enhance HTTP and CIM-XML tracing * 2619 2013-02-22 blaschke-oss Host should contain port when not 5988/5989 * 2621 2013-02-23 blaschke-oss Not all chunked input has trailers + * 2618 2013-02-27 blaschke-oss Need to add property to disable weak cipher suites for the secure indication */ package org.sblim.cimclient.internal.http; @@ -1125,6 +1126,13 @@ sk.setEnabledCipherSuites(ciphersuites); } + String disableCipherSuites = this.iHttpClientPool.getConfigurationContext() + .getSslCipherSuitesToDisable(); + if (disableCipherSuites != null) { + sk.setEnabledCipherSuites(this.iHttpClientPool.getUpdatedCipherSuites(sk + .getEnabledCipherSuites(), disableCipherSuites)); + } + // Determine whether we need to perform synchronized SSL // handshake or not boolean synchronizedHandshake = this.iHttpClientPool.getConfigurationContext() |
From: Dave B. <bla...@us...> - 2013-03-05 15:31:09
|
Update of /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv26938/src/org/sblim/cimclient Modified Files: Tag: Experimental WBEMConfigurationProperties.java Log Message: 2618 Need to add property to disable weak cipher suites for the secure indication Index: WBEMConfigurationProperties.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/WBEMConfigurationProperties.java,v retrieving revision 1.17.2.35 retrieving revision 1.17.2.36 diff -u -d -r1.17.2.35 -r1.17.2.36 --- WBEMConfigurationProperties.java 17 Jan 2013 14:28:15 -0000 1.17.2.35 +++ WBEMConfigurationProperties.java 5 Mar 2013 15:31:06 -0000 1.17.2.36 @@ -43,6 +43,7 @@ * 3536399 2012-08-25 hellerda Add client/listener peer authentication properties * 3572993 2012-10-01 blaschke-oss parseDouble("2.2250738585072012e-308") DoS vulnerability * 3598613 2013-01-11 blaschke-oss different data type in cim instance and cim object path + * 2618 2013-02-27 blaschke-oss Need to add property to disable weak cipher suites for the secure indication */ package org.sblim.cimclient; @@ -530,6 +531,17 @@ public static final String SSL_LISTENER_PEER_VERIFICATION = "sblim.wbem.sslListenerPeerVerification"; /** + * The comma-separated list of cipher suites that are to be disabled when + * connecting via an SSL socket. In general, this is the list of cipher + * suites considered "too weak" for use in a particular environment.<br /> + * <br /> + * Type: <code>String</code><br /> + * Recognition: <code>On initialization of a new client/listener</code><br /> + * Default: <code>none</code><br /> + */ + public static final String SSL_CIPHER_SUITES_TO_DISABLE = "sblim.wbem.sslCipherSuitesToDisable"; + + /** * Specifies the XML parser for parsing CIM-XML responses.<br /> * The SAX parser is the default choice since it is fast, resource saving * and interoperable. The streaming algorithm of the PULL parser uses the |
From: Tyrel D. <ty...@us...> - 2013-03-01 01:49:13
|
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 "gather - Metric Data Gatherer". The branch, master has been updated via 32b8a6922c71a49676672156a65dc9d1a2bb6e5c (commit) from 86af283d775e439e9734b26ad191b42b33f08f0d (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 32b8a6922c71a49676672156a65dc9d1a2bb6e5c Author: Tyrel Datwyler <ty...@li...> Date: Thu Feb 28 17:48:33 2013 -0800 Updated for 2.2.8 release ----------------------------------------------------------------------- Summary of changes: ChangeLog | 16 ++++++++++++++++ configure.ac | 2 +- 2 files changed, 17 insertions(+), 1 deletions(-) diff --git a/ChangeLog b/ChangeLog index 7bdb31d..f8755b7 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,19 @@ +2013-02-26 Tyrel Datwyler <ty...@li...> + + * NEWS, plugin/cimplugKvm.c, plugin/cimplugXen.c, + provider/OSBase_MetricUtil.c: + + Fixed #1650: libvirt metric associations need to be to root/virt + +2013-02-25 Tyrel Datwyler <ty...@li...> + + * NEWS, provider/OSBase_MetricElementCapabilitiesProvider.c, + provider/OSBase_MetricElementConformsToProfileProvider.c, + provider/OSBase_MetricHostedServiceProvider.c, + provider/OSBase_MetricServiceAffectsElementProvider.c: + + Fixed #2045: Metric assoc providers don't honor result class + 2013-02-14 Tyrel Datwyler <ty...@li...> * NEWS, comms/mcclt_unix.c, comms/mcserv_unix.c, comms/rcclt_ip.c, diff --git a/configure.ac b/configure.ac index 67d64e3..35336c2 100644 --- a/configure.ac +++ b/configure.ac @@ -2,7 +2,7 @@ # Process this file with autoconf to produce a configure script. AC_PREREQ(2.63) -AC_INIT([sblim-gather],[2.2.8pre],[sbl...@li...]) +AC_INIT([sblim-gather],[2.2.8],[sbl...@li...]) AC_CONFIG_SRCDIR([cimplug.h]) AC_CONFIG_HEADER([gather-config.h]) AM_INIT_AUTOMAKE hooks/post-receive -- gather - Metric Data Gatherer |
From: Chris B. <buc...@us...> - 2013-02-28 00:09:12
|
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 b31b7daf35493309b6a96e5c034ed772b71be4ab (commit) from 62af09340953e1b8b3ee376292490e8762f936f5 (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 b31b7daf35493309b6a96e5c034ed772b71be4ab Author: buccella <buc...@li...> Date: Wed Feb 27 19:09:03 2013 -0500 contribution for [sfcb-tix:#24] ----------------------------------------------------------------------- Summary of changes: contributions.txt | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) diff --git a/contributions.txt b/contributions.txt index 6226e22..8b52a52 100644 --- a/contributions.txt +++ b/contributions.txt @@ -217,3 +217,7 @@ PitRunner Bas ten Berge ------------- 01/29/2013 [ 2990304 ] Enhancements for sfcb + +Shreyas Deodhar, QLogic +----------------------- +02/27/2013 [sfcb-tix:#24] GetClass Operation does not filter the class hooks/post-receive -- sfcb - Small Footprint CIM Broker |
From: Chris B. <buc...@us...> - 2013-02-28 00:02:47
|
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 62af09340953e1b8b3ee376292490e8762f936f5 (commit) from b15ae230bf22a10f13f41721f08a830f1b46efbb (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 62af09340953e1b8b3ee376292490e8762f936f5 Author: buccella <buc...@li...> Date: Wed Feb 27 19:02:13 2013 -0500 [sfcb-tix:#24] GetClass Operation does not filter the class ----------------------------------------------------------------------- Summary of changes: Makefile.am | 6 ++-- cimXmlGen.c | 6 +++ cimXmlOps.y | 1 - classProvider.c | 3 ++ classProviderCommon.c | 56 ++++++++++++++++++++++++++++++++ classProviderCommon.h | 3 ++ classProviderGz.c | 3 ++ classProviderSf.c | 3 ++ objectImpl.c | 34 +++++++++++++++++++ objectImpl.h | 25 +++----------- sfcbmacs.h | 2 +- test/xmltest/FilteredClassProperty.out | 1 + test/xmltest/FilteredClassProperty.xml | 10 ++++++ 13 files changed, 129 insertions(+), 24 deletions(-) diff --git a/Makefile.am b/Makefile.am index e3ae115..d5d43ea 100644 --- a/Makefile.am +++ b/Makefile.am @@ -288,17 +288,17 @@ libsfccimAccountPassthroughProvider_la_DEPENDENCIES=libsfcBrokerCore.la endif libsfcClassProviderGz_la_SOURCES = \ - classProviderGz.c + classProviderCommon.c classProviderGz.c libsfcClassProviderGz_la_LIBADD=-lsfcBrokerCore @SFCB_LIBZ@ libsfcClassProviderGz_la_DEPENDENCIES=libsfcBrokerCore.la libsfcClassProviderSf_la_SOURCES = \ - classProviderSf.c + classProviderCommon.c classProviderSf.c libsfcClassProviderSf_la_LIBADD=-lsfcBrokerCore @SFCB_LIBZ@ libsfcClassProviderSf_la_DEPENDENCIES=libsfcBrokerCore.la libsfcClassProvider_la_SOURCES = \ - classProvider.c + classProviderCommon.c classProvider.c libsfcClassProvider_la_LIBADD=-lsfcBrokerCore libsfcClassProvider_la_DEPENDENCIES=libsfcBrokerCore.la diff --git a/cimXmlGen.c b/cimXmlGen.c index 59850ed..d573a39 100644 --- a/cimXmlGen.c +++ b/cimXmlGen.c @@ -958,6 +958,9 @@ cls2xml(CMPIConstClass * cls, UtilStringBuffer * sb, unsigned int flags) } for (i = 0, m = ClClassGetPropertyCount(cl); i < m; i++) { + if(ClClassHasFilteredProps(cl) && ClClassIsPropertyAtFiltered(cl, i)) { + continue; + } qsb->ft->reset(qsb); data = getPropertyQualsAt(cls, i, &name, &quals, &refName, NULL); if (flags & FL_includeQualifiers) @@ -993,6 +996,9 @@ cls2xml(CMPIConstClass * cls, UtilStringBuffer * sb, unsigned int flags) CMPIString *name, *mname; + if(ClClassHasFilteredProps(cl) && ClClassIsMethodAtFiltered(cl, i)) { + continue; + } qsb->ft->reset(qsb); ClClassGetMethodAt(cl, i, &mtype, &smname, &quals); mname = sfcb_native_new_CMPIString(smname, NULL, 2); diff --git a/cimXmlOps.y b/cimXmlOps.y index 0af0e86..7317fb7 100644 --- a/cimXmlOps.y +++ b/cimXmlOps.y @@ -384,7 +384,6 @@ buildGetInstanceRequest(void *parm) sreq->hdr.sessionId = hdr->sessionId; for (i = 0; i < req->properties; i++) { - fprintf(stderr, "setting filter prop %d to %s\n", i, req->propertyList.values[i].value); sreq->properties[i] = setCharsMsgSegment(req->propertyList.values[i].value); } diff --git a/classProvider.c b/classProvider.c index 6c35e00..a37096b 100644 --- a/classProvider.c +++ b/classProvider.c @@ -902,6 +902,9 @@ ClassProviderGetClass(CMPIClassMI * mi, cl = getClass(cReg, (char *) cn->hdl); if (cl) { _SFCB_TRACE(1, ("--- Class found")); + if(properties) { + filterClass(cl, properties); + } CMReturnInstance(rslt, (CMPIInstance *) cl); } else { _SFCB_TRACE(1, ("--- Class not found")); diff --git a/classProviderCommon.c b/classProviderCommon.c new file mode 100644 index 0000000..0f5434f --- /dev/null +++ b/classProviderCommon.c @@ -0,0 +1,56 @@ +#include "classProviderCommon.h" + +//candidate for sfcCommon +int contained_list(const char **list, const char *name) +{ + if (list) { + while (*list) { + if (strcasecmp(*list++, name) == 0) return 1; + } + } + return 0; +} + +void filterClass(CMPIConstClass* cimClass, const char** props) +{ + _SFCB_ENTER(TRACE_PROVIDERS, "filterClass"); + char* name = NULL; + int propCount; + unsigned long quals; + CMPIData data = { 0, CMPI_notFound, {0} }; + CMPIType mtype; + char* refName = NULL; + int i; + + ClClass * cls = (ClClass*)cimClass->hdl; + ClClassSetHasFilteredProps(cls); + propCount = ClClassGetPropertyCount(cls); + + ClProperty *property = (ClProperty*)ClObjectGetClSection(&cls->hdr, &cls->properties); + + for(i = 0; i < propCount; i++) { + ClClassGetPropertyAt(cls, i, &data, &name, &quals, &refName); + if(name){ + if((!contained_list(props, name))) + (property + i)->flags |= ClProperty_Filtered; + } + } + + int methCount = ClClassGetMethodCount(cls); + + ClMethod *method = (ClMethod*)ClObjectGetClSection(&cls->hdr, &cls->methods); + + for(i = 0; i < methCount; i++) { + char * smname; + + ClClassGetMethodAt(cls, i, &mtype, &smname, &quals); + + if(smname){ + if((!contained_list(props, smname))) + { + (method + i)->flags |= ClProperty_Filtered; + } + } + } + +} diff --git a/classProviderCommon.h b/classProviderCommon.h index a809ccc..756c29d 100644 --- a/classProviderCommon.h +++ b/classProviderCommon.h @@ -59,6 +59,9 @@ static pthread_once_t nsHt_once = PTHREAD_ONCE_INIT; #define Iterator HashTableIterator* #define NEW(x) ((x *) calloc(1,sizeof(x))) + +void filterClass(CMPIConstClass* cimClass, const char** props); + /* MODELINES */ /* DO NOT EDIT BELOW THIS COMMENT */ /* Modelines are added by 'make pretty' */ diff --git a/classProviderGz.c b/classProviderGz.c index e65bc12..33ab5c9 100644 --- a/classProviderGz.c +++ b/classProviderGz.c @@ -847,6 +847,9 @@ ClassProviderGetClass(CMPIClassMI * mi, _SFCB_TRACE(1, ("--- Class found")); cl = clLocal->ft->clone(clLocal, NULL); memLinkInstance((CMPIInstance *) cl); + if(properties) { + filterClass(cl, properties); + } CMReturnInstance(rslt, (CMPIInstance *) cl); } else { _SFCB_TRACE(1, ("--- Class not found")); diff --git a/classProviderSf.c b/classProviderSf.c index 4fc48a5..1155078 100644 --- a/classProviderSf.c +++ b/classProviderSf.c @@ -1220,6 +1220,9 @@ ClassProviderGetClass(CMPIClassMI * mi, _SFCB_TRACE(1, ("--- Class found")); cl = clLocal->ft->clone(clLocal, NULL); memLinkInstance((CMPIInstance *) cl); + if(properties) { + filterClass(cl, properties); + } CMReturnInstance(rslt, (CMPIInstance *) cl); if (ctl != cached) CMRelease(cl); diff --git a/objectImpl.c b/objectImpl.c index 5125fd5..d72c0d2 100644 --- a/objectImpl.c +++ b/objectImpl.c @@ -2127,6 +2127,40 @@ ClClassGetMethParameterAt(ClClass * cls, ClMethod * m, int pid, return 0; } +//This function checks whether Methods from the class are filtered or not +int ClClassIsMethodAtFiltered(ClClass * inst, int id) +{ + ClMethod *p; + p = (ClMethod *) ClObjectGetClSection(&inst->hdr, &inst->methods); + if((p + id)->flags & ClProperty_Filtered) { + return 1; + } + else { + return 0; + } +} + +//This function checks whether Properties from the class are filtered or not +int ClClassIsPropertyAtFiltered(ClClass * inst, int id) +{ + ClProperty *p; + p = (ClProperty *) ClObjectGetClSection(&inst->hdr, &inst->properties); + if((p + id)->flags & ClProperty_Filtered) { + return 1; + } + else { + return 0; + } +} + +void ClClassSetHasFilteredProps(ClClass *cls) { + cls->hdr.flags |= HDR_HasFilteredProps; +} + +int ClClassHasFilteredProps(ClClass *cls) { + return ((cls->hdr.flags & HDR_HasFilteredProps) > 0); +} + // ------------------------------------------------------- // ----- // -- Instance support diff --git a/objectImpl.h b/objectImpl.h index a2e6edc..0359c61 100644 --- a/objectImpl.h +++ b/objectImpl.h @@ -157,6 +157,7 @@ typedef struct { #define HDR_StrBufferMalloced 16 #define HDR_ArrayBufferMalloced 32 #define HDR_FromMof 64 +#define HDR_HasFilteredProps 128 #endif unsigned short type; #ifndef SETCLPFX @@ -517,6 +518,10 @@ extern int ClClassGetMethParameterAt(ClClass * cls, ClMethod * m, extern int ClClassGetMethParamQualifierAt(ClClass * cls, ClParameter * parm, int id, CMPIData *d, char **name); +extern int ClClassIsMethodAtFiltered(ClClass * inst, int id); +extern int ClClassIsPropertyAtFiltered(ClClass * inst, int id); +extern void ClClassSetHasFilteredProps(ClClass *c); +extern int ClClassHasFilteredProps(ClClass *c); extern int isInstance(const CMPIInstance *ci); extern ClInstance *ClInstanceNew(const char *ns, const char *cn); extern ClInstance *ClInstanceNewFromMof(const char *ns, const char *cn); @@ -575,25 +580,7 @@ extern void ClQualifierRelocateQualifier(ClQualifierDeclaration * q); extern int ClQualifierAddQualifier(ClObjectHdr * hdr, ClSection * qlfs, const char *id, CMPIData d); -extern int - - - - - - - - - - - - - - - - - -ClQualifierDeclarationGetQualifierData(ClQualifierDeclaration * q, +extern int ClQualifierDeclarationGetQualifierData(ClQualifierDeclaration * q, CMPIData *data); extern void ClQualifierFree(ClQualifierDeclaration * q); const char *ClObjectGetClObject(ClObjectHdr * hdr, ClString * id); diff --git a/sfcbmacs.h b/sfcbmacs.h index 07fcf60..47ea1e8 100644 --- a/sfcbmacs.h +++ b/sfcbmacs.h @@ -3,7 +3,7 @@ */ static CMPIStatus __attribute__ ((unused)) notSupSt = { CMPI_RC_ERR_NOT_SUPPORTED, NULL }; -static CMPIStatus okSt = { CMPI_RC_OK, NULL }; +static CMPIStatus __attribute__ ((unused)) okSt = { CMPI_RC_OK, NULL }; #define notSupCMPI_EQ(pfx) \ pfx##ExecQuery(CMPIInstanceMI __attribute__ ((unused)) *mi, \ diff --git a/test/xmltest/FilteredClassProperty.out b/test/xmltest/FilteredClassProperty.out new file mode 100644 index 0000000..07e9f61 --- /dev/null +++ b/test/xmltest/FilteredClassProperty.out @@ -0,0 +1 @@ +500 Can't connect to localhost:5988 (Connection refused) diff --git a/test/xmltest/FilteredClassProperty.xml b/test/xmltest/FilteredClassProperty.xml new file mode 100644 index 0000000..ed19ed0 --- /dev/null +++ b/test/xmltest/FilteredClassProperty.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- From sfcb-tix#24 --> +<CIM CIMVERSION="2.0" DTDVERSION="2.0"><MESSAGE ID="1000" PROTOCOLVERSION="1.0"> +<SIMPLEREQ><IMETHODCALL NAME="GetClass"> +<LOCALNAMESPACEPATH><NAMESPACE NAME="root"/><NAMESPACE NAME="cimv2"/></LOCALNAMESPACEPATH> + <IPARAMVALUE NAME="ClassName"><CLASSNAME NAME="Linux_Processor"/></IPARAMVALUE> + <IPARAMVALUE NAME="LocalOnly"><VALUE>FALSE</VALUE></IPARAMVALUE> + <IPARAMVALUE NAME="PropertyList"> + <VALUE.ARRAY><VALUE>NumberOfEnabledCores</VALUE></VALUE.ARRAY> + </IPARAMVALUE><IPARAMVALUE NAME="IncludeQualifiers"><VALUE>FALSE</VALUE></IPARAMVALUE></IMETHODCALL></SIMPLEREQ></MESSAGE></CIM> hooks/post-receive -- sfcb - Small Footprint CIM Broker |
From: Tyrel D. <ty...@us...> - 2013-02-27 01:44:51
|
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 "gather - Metric Data Gatherer". The branch, master has been updated via 86af283d775e439e9734b26ad191b42b33f08f0d (commit) from b42647e0448cacb06fe4a0ec441cc8fe05e8be8e (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 86af283d775e439e9734b26ad191b42b33f08f0d Author: Tyrel Datwyler <ty...@li...> Date: Tue Feb 26 17:43:56 2013 -0800 Fixed #1650: libvirt metric associations need to be to root/virt ----------------------------------------------------------------------- Summary of changes: NEWS | 1 + plugin/cimplugKvm.c | 3 ++- plugin/cimplugXen.c | 3 ++- provider/OSBase_MetricUtil.c | 8 +++++--- 4 files changed, 10 insertions(+), 5 deletions(-) diff --git a/NEWS b/NEWS index 4aef35f..e7540fe 100644 --- a/NEWS +++ b/NEWS @@ -6,6 +6,7 @@ Bugs fixed: - 3196679 remove sysfs dependency when not building z plugins - #2023 clean up compile warnings - #2045 Metric assoc providers don't honor result class +- #1650 libvirt metric associations need to be to root/virt Features added: - 2284848 CPU utilization should account for steal-time diff --git a/plugin/cimplugKvm.c b/plugin/cimplugKvm.c index b7ea1fc..40b4c50 100644 --- a/plugin/cimplugKvm.c +++ b/plugin/cimplugKvm.c @@ -25,6 +25,7 @@ #include <string.h> #include <stdlib.h> +static const char * ns = "root/virt"; CMPIObjectPath *COP4VALID(CMPIBroker * broker, const char *id, const char *systemid) @@ -32,7 +33,7 @@ CMPIObjectPath *COP4VALID(CMPIBroker * broker, const char *id, /* we construct the operating system id according to the OSBase rules */ CMPIObjectPath *cop = - CMNewObjectPath(broker, NULL, "KVM_ComputerSystem", + CMNewObjectPath(broker, ns, "KVM_ComputerSystem", NULL); if (cop) { CMAddKey(cop, "Name", id, CMPI_chars); diff --git a/plugin/cimplugXen.c b/plugin/cimplugXen.c index 1551ef7..6fe97f3 100644 --- a/plugin/cimplugXen.c +++ b/plugin/cimplugXen.c @@ -24,6 +24,7 @@ #include <string.h> #include <stdlib.h> +static const char * ns = "root/virt"; CMPIObjectPath *COP4VALID(CMPIBroker * broker, const char *id, const char *systemid) @@ -31,7 +32,7 @@ CMPIObjectPath *COP4VALID(CMPIBroker * broker, const char *id, /* we construct the operating system id according to the OSBase rules */ CMPIObjectPath *cop = - CMNewObjectPath(broker, NULL, "Xen_ComputerSystem", + CMNewObjectPath(broker, ns, "Xen_ComputerSystem", NULL); if (cop) { CMAddKey(cop, "Name", id, CMPI_chars); diff --git a/provider/OSBase_MetricUtil.c b/provider/OSBase_MetricUtil.c index f2bc441..96c42e5 100644 --- a/provider/OSBase_MetricUtil.c +++ b/provider/OSBase_MetricUtil.c @@ -1127,9 +1127,11 @@ void computeResourceNamespace(const CMPIObjectPath *rescop, const CMPIObjectPath *mcop, const char *systemid) { - char * namespace = CMGetCharPtr(CMGetNameSpace(mcop,NULL)); - if (namespace) { - CMSetNameSpace((CMPIObjectPath*)rescop,namespace); + char * localnsp = CMGetCharPtr(CMGetNameSpace(mcop,NULL)); + char * resnsp = CMGetCharPtr(CMGetNameSpace(rescop,NULL)); + + if (!resnsp && localnsp) { + CMSetNameSpace((CMPIObjectPath*)rescop,localnsp); CMSetHostname((CMPIObjectPath*)rescop,systemid); } } hooks/post-receive -- gather - Metric Data Gatherer |
From: Tyrel D. <ty...@us...> - 2013-02-26 02:18:37
|
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 "gather - Metric Data Gatherer". The branch, master has been updated via b42647e0448cacb06fe4a0ec441cc8fe05e8be8e (commit) from ba11c046eb07a53a71d5a998e805b9d1b29c83a7 (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 b42647e0448cacb06fe4a0ec441cc8fe05e8be8e Author: Tyrel Datwyler <ty...@li...> Date: Mon Feb 25 18:17:44 2013 -0800 Fixed #2045: Metric assoc providers don't honor result class ----------------------------------------------------------------------- Summary of changes: NEWS | 1 + .../OSBase_MetricElementCapabilitiesProvider.c | 28 +++++++++++-------- ...OSBase_MetricElementConformsToProfileProvider.c | 28 +++++++++++-------- provider/OSBase_MetricHostedServiceProvider.c | 28 +++++++++++-------- .../OSBase_MetricServiceAffectsElementProvider.c | 28 +++++++++++-------- 5 files changed, 65 insertions(+), 48 deletions(-) diff --git a/NEWS b/NEWS index 4768bc0..4aef35f 100644 --- a/NEWS +++ b/NEWS @@ -5,6 +5,7 @@ Bugs fixed: - 3603719 Clean up configuration toolchain and fix DSO linking - 3196679 remove sysfs dependency when not building z plugins - #2023 clean up compile warnings +- #2045 Metric assoc providers don't honor result class Features added: - 2284848 CPU utilization should account for steal-time diff --git a/provider/OSBase_MetricElementCapabilitiesProvider.c b/provider/OSBase_MetricElementCapabilitiesProvider.c index e4fda1f..370ea3f 100644 --- a/provider/OSBase_MetricElementCapabilitiesProvider.c +++ b/provider/OSBase_MetricElementCapabilitiesProvider.c @@ -175,7 +175,7 @@ static CMPIStatus Associators(CMPIAssociationMI * mi, const char * resultRole, const char ** properties) { - CMPIEnumeration * assoc; + CMPIEnumeration * assoc = NULL; CMPIObjectPath * cop; CMPIInstance * inst; CMPIData data; @@ -191,20 +191,22 @@ static CMPIStatus Associators(CMPIAssociationMI * mi, CMGetCharPtr(CMGetNameSpace(op, NULL)), _RIGHTREF, NULL); - - assoc = CBEnumInstances(_broker, ctx, cop, properties, &rc); + if (CMClassPathIsA(_broker, cop, resultClass, &rc)) { + assoc = CBEnumInstances(_broker, ctx, cop, properties, &rc); + } } else if (CMClassPathIsA(_broker, op, _RIGHTREF, NULL)) { cop = CMNewObjectPath(_broker, CMGetCharPtr(CMGetNameSpace(op, NULL)), _LEFTREF, NULL); - - assoc = CBEnumInstances(_broker, ctx, cop, properties, &rc); + if (CMClassPathIsA(_broker, cop, resultClass, &rc)) { + assoc = CBEnumInstances(_broker, ctx, cop, properties, &rc); + } } else { return rc; } - if (CMHasNext(assoc, &rc)) { + if (assoc && CMHasNext(assoc, &rc)) { data = CMGetNext(assoc, NULL); CMReturnInstance(rslt, data.value.inst); } else { @@ -224,7 +226,7 @@ static CMPIStatus AssociatorNames(CMPIAssociationMI * mi, const char * role, const char * resultRole) { - CMPIEnumeration * assoc; + CMPIEnumeration * assoc = NULL; CMPIObjectPath * cop; CMPIInstance * inst; CMPIData data; @@ -240,20 +242,22 @@ static CMPIStatus AssociatorNames(CMPIAssociationMI * mi, CMGetCharPtr(CMGetNameSpace(op, NULL)), _RIGHTREF, NULL); - - assoc = CBEnumInstanceNames(_broker, ctx, cop, &rc); + if (CMClassPathIsA(_broker, cop, resultClass, &rc)) { + assoc = CBEnumInstanceNames(_broker, ctx, cop, &rc); + } } else if (CMClassPathIsA(_broker, op, _RIGHTREF, NULL)) { cop = CMNewObjectPath(_broker, CMGetCharPtr(CMGetNameSpace(op, NULL)), _LEFTREF, NULL); - - assoc = CBEnumInstanceNames(_broker, ctx, cop, &rc); + if (CMClassPathIsA(_broker, cop, resultClass, &rc)) { + assoc = CBEnumInstanceNames(_broker, ctx, cop, &rc); + } } else { return rc; } - if (CMHasNext(assoc, &rc)) { + if (assoc && CMHasNext(assoc, &rc)) { data = CMGetNext(assoc, NULL); CMReturnObjectPath(rslt, data.value.ref); } else { diff --git a/provider/OSBase_MetricElementConformsToProfileProvider.c b/provider/OSBase_MetricElementConformsToProfileProvider.c index cda8167..220d810 100644 --- a/provider/OSBase_MetricElementConformsToProfileProvider.c +++ b/provider/OSBase_MetricElementConformsToProfileProvider.c @@ -178,7 +178,7 @@ static CMPIStatus Associators(CMPIAssociationMI * mi, const char * resultRole, const char ** properties) { - CMPIEnumeration * assoc; + CMPIEnumeration * assoc = NULL; CMPIObjectPath * cop; CMPIInstance * inst; CMPIData data; @@ -194,20 +194,22 @@ static CMPIStatus Associators(CMPIAssociationMI * mi, _CIMV2, _RIGHTREF, NULL); - - assoc = CBEnumInstances(_broker, ctx, cop, properties, &rc); + if (CMClassPathIsA(_broker, cop, resultClass, &rc)) { + assoc = CBEnumInstances(_broker, ctx, cop, properties, &rc); + } } else if (CMClassPathIsA(_broker, op, _RIGHTREF, NULL)) { cop = CMNewObjectPath(_broker, _INTEROP, _LEFTREF, NULL); - - assoc = CBEnumInstances(_broker, ctx, cop, properties, &rc); + if (CMClassPathIsA(_broker, cop, resultClass, &rc)) { + assoc = CBEnumInstances(_broker, ctx, cop, properties, &rc); + } } else { return rc; } - if (CMHasNext(assoc, &rc)) { + if (assoc && CMHasNext(assoc, &rc)) { data = CMGetNext(assoc, NULL); CMReturnInstance(rslt, data.value.inst); } else { @@ -227,7 +229,7 @@ static CMPIStatus AssociatorNames(CMPIAssociationMI * mi, const char * role, const char * resultRole) { - CMPIEnumeration * assoc; + CMPIEnumeration * assoc = NULL; CMPIObjectPath * cop; CMPIInstance * inst; CMPIData data; @@ -243,20 +245,22 @@ static CMPIStatus AssociatorNames(CMPIAssociationMI * mi, _CIMV2, _RIGHTREF, NULL); - - assoc = CBEnumInstanceNames(_broker, ctx, cop, &rc); + if (CMClassPathIsA(_broker, cop, resultClass, &rc)) { + assoc = CBEnumInstanceNames(_broker, ctx, cop, &rc); + } } else if (CMClassPathIsA(_broker, op, _RIGHTREF, NULL)) { cop = CMNewObjectPath(_broker, _INTEROP, _LEFTREF, NULL); - - assoc = CBEnumInstanceNames(_broker, ctx, cop, &rc); + if (CMClassPathIsA(_broker, cop, resultClass, &rc)) { + assoc = CBEnumInstanceNames(_broker, ctx, cop, &rc); + } } else { return rc; } - if (CMHasNext(assoc, &rc)) { + if (assoc && CMHasNext(assoc, &rc)) { data = CMGetNext(assoc, NULL); CMReturnObjectPath(rslt, data.value.ref); } else { diff --git a/provider/OSBase_MetricHostedServiceProvider.c b/provider/OSBase_MetricHostedServiceProvider.c index fef7aa6..9b70727 100644 --- a/provider/OSBase_MetricHostedServiceProvider.c +++ b/provider/OSBase_MetricHostedServiceProvider.c @@ -175,7 +175,7 @@ static CMPIStatus Associators(CMPIAssociationMI * mi, const char * resultRole, const char ** properties) { - CMPIEnumeration * assoc; + CMPIEnumeration * assoc = NULL; CMPIObjectPath * cop; CMPIInstance * inst; CMPIData data; @@ -191,20 +191,22 @@ static CMPIStatus Associators(CMPIAssociationMI * mi, CMGetCharPtr(CMGetNameSpace(op, NULL)), _RIGHTREF, NULL); - - assoc = CBEnumInstances(_broker, ctx, cop, properties, &rc); + if (resultClass && CMClassPathIsA(_broker, cop, resultClass, &rc)) { + assoc = CBEnumInstances(_broker, ctx, cop, properties, &rc); + } } else if (CMClassPathIsA(_broker, op, _RIGHTREF, NULL)) { cop = CMNewObjectPath(_broker, CMGetCharPtr(CMGetNameSpace(op, NULL)), _LEFTREF, NULL); - - assoc = CBEnumInstances(_broker, ctx, cop, properties, &rc); + if (resultClass && CMClassPathIsA(_broker, cop, resultClass, &rc)) { + assoc = CBEnumInstances(_broker, ctx, cop, properties, &rc); + } } else { return rc; } - if (CMHasNext(assoc, &rc)) { + if (assoc && CMHasNext(assoc, &rc)) { data = CMGetNext(assoc, NULL); CMReturnInstance(rslt, data.value.inst); } else { @@ -224,7 +226,7 @@ static CMPIStatus AssociatorNames(CMPIAssociationMI * mi, const char * role, const char * resultRole) { - CMPIEnumeration * assoc; + CMPIEnumeration * assoc = NULL; CMPIObjectPath * cop; CMPIInstance * inst; CMPIData data; @@ -240,20 +242,22 @@ static CMPIStatus AssociatorNames(CMPIAssociationMI * mi, CMGetCharPtr(CMGetNameSpace(op, NULL)), _RIGHTREF, NULL); - - assoc = CBEnumInstanceNames(_broker, ctx, cop, &rc); + if (CMClassPathIsA(_broker, cop, resultClass, &rc)) { + assoc = CBEnumInstanceNames(_broker, ctx, cop, &rc); + } } else if (CMClassPathIsA(_broker, op, _RIGHTREF, NULL)) { cop = CMNewObjectPath(_broker, CMGetCharPtr(CMGetNameSpace(op, NULL)), _LEFTREF, NULL); - - assoc = CBEnumInstanceNames(_broker, ctx, cop, &rc); + if (CMClassPathIsA(_broker, cop, resultClass, &rc)) { + assoc = CBEnumInstanceNames(_broker, ctx, cop, &rc); + } } else { return rc; } - if (CMHasNext(assoc, &rc)) { + if (assoc && CMHasNext(assoc, &rc)) { data = CMGetNext(assoc, NULL); CMReturnObjectPath(rslt, data.value.ref); } else { diff --git a/provider/OSBase_MetricServiceAffectsElementProvider.c b/provider/OSBase_MetricServiceAffectsElementProvider.c index f28309a..4b3c4ff 100644 --- a/provider/OSBase_MetricServiceAffectsElementProvider.c +++ b/provider/OSBase_MetricServiceAffectsElementProvider.c @@ -175,7 +175,7 @@ static CMPIStatus Associators(CMPIAssociationMI * mi, const char * resultRole, const char ** properties) { - CMPIEnumeration * assoc; + CMPIEnumeration * assoc = NULL; CMPIObjectPath * cop; CMPIInstance * inst; CMPIData data; @@ -191,20 +191,22 @@ static CMPIStatus Associators(CMPIAssociationMI * mi, CMGetCharPtr(CMGetNameSpace(op, NULL)), _RIGHTREF, NULL); - - assoc = CBEnumInstances(_broker, ctx, cop, properties, &rc); + if (CMClassPathIsA(_broker, cop, resultClass, &rc)) { + assoc = CBEnumInstances(_broker, ctx, cop, properties, &rc); + } } else if (CMClassPathIsA(_broker, op, _RIGHTREF, NULL)) { cop = CMNewObjectPath(_broker, CMGetCharPtr(CMGetNameSpace(op, NULL)), _LEFTREF, NULL); - - assoc = CBEnumInstances(_broker, ctx, cop, properties, &rc); + if (CMClassPathIsA(_broker, cop, resultClass, &rc)) { + assoc = CBEnumInstances(_broker, ctx, cop, properties, &rc); + } } else { return rc; } - if (CMHasNext(assoc, &rc)) { + if (assoc && CMHasNext(assoc, &rc)) { while(CMHasNext(assoc, &rc)) { data = CMGetNext(assoc, NULL); CMReturnInstance(rslt, data.value.inst); @@ -226,7 +228,7 @@ static CMPIStatus AssociatorNames(CMPIAssociationMI * mi, const char * role, const char * resultRole) { - CMPIEnumeration * assoc; + CMPIEnumeration * assoc = NULL; CMPIObjectPath * cop; CMPIInstance * inst; CMPIData data; @@ -242,20 +244,22 @@ static CMPIStatus AssociatorNames(CMPIAssociationMI * mi, CMGetCharPtr(CMGetNameSpace(op, NULL)), _RIGHTREF, NULL); - - assoc = CBEnumInstanceNames(_broker, ctx, cop, &rc); + if (CMClassPathIsA(_broker, cop, resultClass, &rc)) { + assoc = CBEnumInstanceNames(_broker, ctx, cop, &rc); + } } else if (CMClassPathIsA(_broker, op, _RIGHTREF, NULL)) { cop = CMNewObjectPath(_broker, CMGetCharPtr(CMGetNameSpace(op, NULL)), _LEFTREF, NULL); - - assoc = CBEnumInstanceNames(_broker, ctx, cop, &rc); + if (CMClassPathIsA(_broker, cop, resultClass, &rc)) { + assoc = CBEnumInstanceNames(_broker, ctx, cop, &rc); + } } else { return rc; } - if (CMHasNext(assoc, &rc)) { + if (assoc && CMHasNext(assoc, &rc)) { while (CMHasNext(assoc, &rc)) { data = CMGetNext(assoc, NULL); CMReturnObjectPath(rslt, data.value.ref); hooks/post-receive -- gather - Metric Data Gatherer |
From: Michael Chase-S. <mc...@us...> - 2013-02-25 17:44:01
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "mofc - Managed Object Format Compiler". The branch, master has been updated via d60520908bff8d54fec300b2c8a1e27ae3fc63fa (commit) from 4251cd67501aaa725b1bc2105ad66bd5293b01c9 (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 d60520908bff8d54fec300b2c8a1e27ae3fc63fa Author: Michael Chase-Salerno <br...@li...> Date: Mon Feb 25 12:42:37 2013 -0500 [Sfcb:#7] autoconfiscate.sh needs --force for all tools ----------------------------------------------------------------------- Summary of changes: autoconfiscate.sh | 8 ++++---- 1 files changed, 4 insertions(+), 4 deletions(-) diff --git a/autoconfiscate.sh b/autoconfiscate.sh index 23f0fc0..d95c294 100755 --- a/autoconfiscate.sh +++ b/autoconfiscate.sh @@ -1,6 +1,6 @@ #!/bin/sh -aclocal && -autoheader && -libtoolize && +aclocal --force && +autoheader --force && +libtoolize --force && automake -af && -autoconf +autoconf --force hooks/post-receive -- mofc - Managed Object Format Compiler |
From: Michael Chase-S. <mc...@us...> - 2013-02-25 17:41: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 b15ae230bf22a10f13f41721f08a830f1b46efbb (commit) from 7966270d0c39d092623f10a7e967b6096d3d9e23 (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 b15ae230bf22a10f13f41721f08a830f1b46efbb Author: Michael Chase-Salerno <br...@li...> Date: Mon Feb 25 12:39:59 2013 -0500 [Sfcb:#7] autoconfiscate.sh needs --force for all tools ----------------------------------------------------------------------- Summary of changes: autoconfiscate.sh | 8 ++++---- 1 files changed, 4 insertions(+), 4 deletions(-) diff --git a/autoconfiscate.sh b/autoconfiscate.sh index 5fd65f7..828136a 100755 --- a/autoconfiscate.sh +++ b/autoconfiscate.sh @@ -1,9 +1,9 @@ #!/bin/sh -aclocal && -autoheader && -libtoolize && +aclocal --force && +autoheader --force && +libtoolize --force && automake -af && -autoconf && +autoconf --force && #if test -d test; then cd test && ./autoconfiscate.sh && cd ..; fi if test -d mofc; then cd mofc && ./autoconfiscate.sh; fi if test -d cmpi-devel; then cd cmpi-devel && ./autoconfiscate.sh; fi hooks/post-receive -- sfcb - Small Footprint CIM Broker |
From: Dave B. <bla...@us...> - 2013-02-25 12:24:03
|
Update of /cvsroot/sblim/jsr48-client/utst/org/sblim/cimclient/unittest/wbem In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv26245/utst/org/sblim/cimclient/unittest/wbem Modified Files: Tag: Experimental WBEMClientTest.java Log Message: 2616 Add new API WBEMClientSBLIM.sendIndication() Index: WBEMClientTest.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/utst/org/sblim/cimclient/unittest/wbem/WBEMClientTest.java,v retrieving revision 1.1.2.2 retrieving revision 1.1.2.3 diff -u -d -r1.1.2.2 -r1.1.2.3 --- WBEMClientTest.java 23 Feb 2013 19:56:54 -0000 1.1.2.2 +++ WBEMClientTest.java 25 Feb 2013 12:24:00 -0000 1.1.2.3 @@ -133,6 +133,8 @@ // Clean up listener.removeListener(LISTENER_PORT); client.close(); + + Thread.sleep(1000); // Delay for Java 7 to release port } catch (IOException e) { fail("Exception thrown: " + e.getMessage()); } @@ -233,5 +235,9 @@ verify("Unexpected exception for invalid port: " + e.getMessage(), e.getID() == WBEMException.CIM_ERR_INVALID_PARAMETER); } + + // Clean up + listener.removeListener(LISTENER_PORT); + client.close(); } } |
From: Dave B. <bla...@us...> - 2013-02-24 14:25:17
|
Update of /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/doc-files In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv25783/src/org/sblim/cimclient/doc-files Modified Files: Tag: Experimental development.html Log Message: 2623 Reflect SourceForge upgrade in documentation Index: development.html =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/doc-files/development.html,v retrieving revision 1.1.2.5 retrieving revision 1.1.2.6 diff -u -d -r1.1.2.5 -r1.1.2.6 --- development.html 22 Apr 2010 14:39:53 -0000 1.1.2.5 +++ development.html 24 Feb 2013 14:25:15 -0000 1.1.2.6 @@ -1,7 +1,7 @@ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"> <html><head><!-- * - * (C) Copyright IBM Corp. 2006, 2010 + * (C) Copyright IBM Corp. 2006, 2013 * * 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 @@ * 2799260 2009-06-01 raman_arora Fix left over @author tag from Java5 upgrade * 2972697 2010-03-18 blaschke-oss Fix spelling errors in HTML files * 2990370 2010-04-22 blaschke-oss Development/unittest HTML out of date + * 2623 2013-02-24 blaschke-oss Reflect SourceForge upgrade in documentation --></head> <body style="background-color: white;"> @@ -41,22 +42,23 @@ Once a patch has been approved in the community review it will be merged into the "HEAD" branch. When a new release is published it represents the content of the "HEAD" branch at the release date. Of course, all releases have a corresponding version tag in CVS.</p> -<h2>Bug Tracker</h2> -The Bug Tracker process step are as follows +<h2>Bug Tickets</h2> +The Bug Ticket process step are as follows <ol> - <li>Somebody (a.k.a. the bug owner) files a bug in Bug Tracker.</li> + <li>Somebody (a.k.a. the bug owner) files a bug in Bug Tickets.</li> <li>A developer reads the problem description and assigns the bug.</li> - <li>A developer either accepts the bug (resolution->Accepted)<ul><li>Proceed with step 4</li></ul> or denies it (resolution-> - Duplicate, Invalid, Rejected, Wont Fix or Works For Me).<ul><li>A reasonable justification will be posted + <li>A developer either accepts the bug (Status->open-accepted)<ul><li>Proceed with step 4</li></ul> + requests additional information (Status->open-needinfo)<ul><li>Await new information, repeat step 3</li></ul> + or denies it (Status->pending-duplicate, pending-invalid, pending-rejected, pending-wont-fix or pending-works-for-me).<ul><li>A reasonable justification will be posted to the comments. Once the bug owner agrees we proceed with step 8.</li></ul></li> - <li>A developer creates a patch. The patch will be attached to Bug Tracker and committed into the - Experimental branch (resolution->Fixed).</li> - <li>The community review is initiated. A corresponding comment is added to Bug Tracker.</li> - <li>The community review is completed and successful. A corresponding comment is added to Bug Tracker - and the patch is merged into the HEAD branch. The bug status is changed to Pending. If the community review + <li>A developer creates a patch. The patch will be attached to Bug Ticket and committed into the + Experimental branch (Status->open-fixed).</li> + <li>The community review is initiated. A corresponding comment is added to Bug Ticket.</li> + <li>The community review is completed and successful. A corresponding comment is added to Bug Ticket + and the patch is merged into the HEAD branch. The bug Status is changed to pending-fixed. If the community review was unsuccessful we go back to step 4.</li> - <li>The patch is picked up by the next release.</li> - <li>The bug is closed (status->Closed).</li> + <li>The patch is picked up by the next release. A corresponding comment is added to Bug Ticket.</li> + <li>The bug is closed (Status->closed-*).</li> </ol> <h2>Patches</h2> Patches are created relative to the latest release. We usually use the "create patch" action @@ -172,8 +174,8 @@ before any code is committed. There are a few warnings that can be ignored for good reason, e.g. a precautionary throws declaration where the declared exception is not actually thrown by the current implementation. But the cases are rare.</p> -<p>All code is REQUIRED to compile on IBM/SUN Java 1.5.x/1.6.x. -Therefore Java 1.6 constructs are not allowed.</p> +<p>All code is REQUIRED to compile on IBM/SUN Java 1.5.x/1.6.x/1.7.x. +Therefore Java 1.6 and 1.7 constructs are not allowed.</p> <p>Use of default or protected visibility is discouraged. Fields should be private, provide getters and setters for public or subclass access. External and internal classes/interfaces should be clearly separated by using "*.internal" packages.</p> |
Update of /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv12659/src/org/sblim/cimclient/internal/cimxml Modified Files: Tag: Experimental CIMXMLBuilderImpl.java CIMClientXML_HelperImpl.java CIMXMLParserImpl.java Log Message: 2616 Add new API WBEMClientSBLIM.sendIndication() Index: CIMXMLBuilderImpl.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml/CIMXMLBuilderImpl.java,v retrieving revision 1.9.2.35 retrieving revision 1.9.2.36 diff -u -d -r1.9.2.35 -r1.9.2.36 --- CIMXMLBuilderImpl.java 27 Nov 2012 01:31:03 -0000 1.9.2.35 +++ CIMXMLBuilderImpl.java 23 Feb 2013 19:56:54 -0000 1.9.2.36 @@ -1,7 +1,7 @@ /** * CIMXMLBuilderImpl.java * - * (C) Copyright IBM Corp. 2005, 2012 + * (C) Copyright IBM Corp. 2005, 2013 * * THIS FILE IS PROVIDED UNDER THE TERMS OF THE ECLIPSE PUBLIC LICENSE * ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THIS FILE @@ -49,6 +49,7 @@ * 3001333 2010-05-19 blaschke-oss CIMMethod class ignores propagated parameter * 3304058 2011-05-20 blaschke-oss Use same date format in change history * 3588558 2012-11-26 blaschke-oss An enhancement on Java CIM Client logging + * 2616 2013-02-23 blaschke-oss Add new API WBEMClientSBLIM.sendIndication() */ package org.sblim.cimclient.internal.cimxml; @@ -2221,4 +2222,55 @@ return localnamespacepathE; } + + /** + * createSIMPLEEXPREQ + * + * @param pDoc + * @return Element + */ + public static Element createSIMPLEEXPREQ(Document pDoc) { + // <!ELEMENT SIMPLEEXPREQ (EXPMETHODCALL)> + Element e = pDoc.createElement("SIMPLEEXPREQ"); + return e; + } + + /** + * createEXPMETHODCALL + * + * @param pDoc + * @param pParentE + * @param pName + * @return Element + */ + public static Element createEXPMETHODCALL(Document pDoc, Element pParentE, String pName) { + // <!ELEMENT EXPMETHODCALL (EXPPARAMVALUE*)> + // <!ATTLIST EXPMETHODCALL %NAME> + Element e = pDoc.createElement("EXPMETHODCALL"); + if (pName != null) { + e.setAttribute("NAME", pName); + } + pParentE.appendChild(e); + return e; + } + + /** + * createEXPPARAMVALUE + * + * @param pDoc + * @param pParentE + * @param pName + * @return Element + */ + public static Element createEXPPARAMVALUE(Document pDoc, Element pParentE, String pName) { + // <!ELEMENT EXPPARAMVALUE (INSTANCE? | VALUE? | METHODRESPONSE? | + // IMETHODRESPONSE?)> + // <!ATTLIST EXPPARAMVALUE %NAME> + Element e = pDoc.createElement("EXPPARAMVALUE"); + if (pName != null) { + e.setAttribute("NAME", pName); + } + pParentE.appendChild(e); + return e; + } } Index: CIMXMLParserImpl.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml/CIMXMLParserImpl.java,v retrieving revision 1.14.2.40 retrieving revision 1.14.2.41 diff -u -d -r1.14.2.40 -r1.14.2.41 --- CIMXMLParserImpl.java 17 Jan 2013 14:28:20 -0000 1.14.2.40 +++ CIMXMLParserImpl.java 23 Feb 2013 19:56:54 -0000 1.14.2.41 @@ -57,6 +57,7 @@ * 3526679 2012-05-14 blaschke-oss DOM parser ignores ERROR node CODE * 3572993 2012-10-01 blaschke-oss parseDouble("2.2250738585072012e-308") DoS vulnerability * 3598613 2013-01-11 blaschke-oss different data type in cim instance and cim object path + * 2616 2013-02-23 blaschke-oss Add new API WBEMClientSBLIM.sendIndication() */ package org.sblim.cimclient.internal.cimxml; @@ -2110,6 +2111,13 @@ return request; } // SIMPLEEXPRSP + Element simpleexprspE = (Element) searchFirstNode(pMessageE, "SIMPLEEXPRSP"); + if (simpleexprspE != null) { + CIMResponse response = parseSIMPLEEXPRSP(simpleexprspE); + response.setMethod("SIMPLEEXPRSP"); + response.setId(id); + return response; + } // MULTIEXPRSP // SIMPLEREQ @@ -3092,4 +3100,56 @@ } } + /** + * parseSIMPLEEXPRSP + * + * @param pSimpleExpRspE + * @return CIMResponse + * @throws CIMXMLParseException + */ + public static CIMResponse parseSIMPLEEXPRSP(Element pSimpleExpRspE) throws CIMXMLParseException { + // <!ELEMENT SIMPLEEXPRSP (EXPMETHODRESPONSE)> + + // EXPMETHODRESPONSE + Element expmethodresponseE = (Element) searchFirstNode(pSimpleExpRspE, "EXPMETHODRESPONSE"); + if (expmethodresponseE != null) { return parseEXPMETHODRESPONSE(expmethodresponseE); } + + throw new CIMXMLParseException("EXPMETHODRESPONSE node not found!"); + } + + /** + * parseEXPMETHODRESPONSE + * + * @param pExpMethodResponseE + * @return CIMResponse + * @throws CIMXMLParseException + */ + public static CIMResponse parseEXPMETHODRESPONSE(Element pExpMethodResponseE) + throws CIMXMLParseException { + // <!ELEMENT EXPMETHODRESPONSE (ERROR | IRETURNVALUE?)> + + CIMResponse response = new CIMResponse(); + + // ERROR + Element errorE = (Element) searchFirstNode(pExpMethodResponseE, "ERROR"); + if (errorE != null) { + WBEMException exception = parseERROR(errorE); + response.setError(exception); + return response; + } + + // RETURNVALUE + Element[] retValElementA = searchNodes(pExpMethodResponseE, "IRETURNVALUE"); + if (retValElementA != null && retValElementA.length > 0) { + Vector<Object> v = new Vector<Object>(); + for (int i = 0; i < retValElementA.length; i++) { + Element returnvalueE = retValElementA[i]; + v.add(parseIRETURNVALUE(returnvalueE)); + } + response.setReturnValue(v); + } + + return response; + } + } Index: CIMClientXML_HelperImpl.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml/CIMClientXML_HelperImpl.java,v retrieving revision 1.18.2.31 retrieving revision 1.18.2.32 diff -u -d -r1.18.2.31 -r1.18.2.32 --- CIMClientXML_HelperImpl.java 23 Jan 2013 20:53:46 -0000 1.18.2.31 +++ CIMClientXML_HelperImpl.java 23 Feb 2013 19:56:54 -0000 1.18.2.32 @@ -49,6 +49,7 @@ * 3521119 2012-04-24 blaschke-oss JSR48 1.0.0: remove CIMObjectPath 2/3/4-parm ctors * 3527580 2012-05-17 blaschke-oss WBEMClient should not throw IllegalArgumentException * 3601894 2013-01-23 blaschke-oss Enhance HTTP and CIM-XML tracing + * 2616 2013-02-23 blaschke-oss Add new API WBEMClientSBLIM.sendIndication() */ package org.sblim.cimclient.internal.cimxml; @@ -2589,4 +2590,24 @@ return simplereqE; } + /** + * sendIndication_request + * + * @param pDoc + * @param pIndication + * @return Element sendIndication_request + * @throws WBEMException + */ + public Element sendIndication_request(Document pDoc, CIMInstance pIndication) + throws WBEMException { + Element simpleexpreqE = CIMXMLBuilderImpl.createSIMPLEEXPREQ(pDoc); + Element expmethodcallE = CIMXMLBuilderImpl.createEXPMETHODCALL(pDoc, simpleexpreqE, + "ExportIndication"); + Element expparamvalueE = CIMXMLBuilderImpl.createEXPPARAMVALUE(pDoc, expmethodcallE, + "NewIndication"); + + CIMXMLBuilderImpl.createINSTANCE(pDoc, expparamvalueE, pIndication); + + return simpleexpreqE; + } } |
From: Dave B. <bla...@us...> - 2013-02-23 19:56:56
|
Update of /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv12659/src/org/sblim/cimclient Modified Files: Tag: Experimental WBEMClientSBLIM.java Log Message: 2616 Add new API WBEMClientSBLIM.sendIndication() Index: WBEMClientSBLIM.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/WBEMClientSBLIM.java,v retrieving revision 1.3.2.8 retrieving revision 1.3.2.9 diff -u -d -r1.3.2.8 -r1.3.2.9 --- WBEMClientSBLIM.java 3 May 2012 11:14:13 -0000 1.3.2.8 +++ WBEMClientSBLIM.java 23 Feb 2013 19:56:54 -0000 1.3.2.9 @@ -1,7 +1,7 @@ /** * WBEMClientSBLIM.java * - * (C) Copyright IBM Corp. 2006, 2012 + * (C) Copyright IBM Corp. 2006, 2013 * * THIS FILE IS PROVIDED UNDER THE TERMS OF THE ECLIPSE PUBLIC LICENSE * ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THIS FILE @@ -22,6 +22,7 @@ * 2942520 2010-03-08 blaschke-oss IPv6 link local address with scope_id including a dot not supported * 3516848 2012-04-11 blaschke-oss enumerateNamespaces() method to WBEMClient * 3522904 2012-05-02 blaschke-oss Add new API WBEMClientSBLIM.isActive() + * 2616 2013-02-23 blaschke-oss Add new API WBEMClientSBLIM.sendIndication() */ package org.sblim.cimclient; @@ -30,6 +31,7 @@ import java.util.Locale; import java.util.Properties; +import javax.cim.CIMInstance; import javax.cim.CIMObjectPath; import javax.net.SocketFactory; import javax.security.auth.Subject; @@ -230,4 +232,25 @@ * otherwise. */ public boolean isActive(); + + /** + * Sends the indication to the specified recipient. + * + * @param pRecipient + * URI of indication recipient. + * @param pIndication + * Indication. + * @return <code>true</code> if indication received successfully, + * <code>false</code> otherwise. + * @throws WBEMException + * If unsuccessful, one of the following status codes must be + * returned. The ORDERED list is: + * + * <pre> + * CIM_ERR_INVALID_PARAMETER (including missing, duplicate, unrecognized + * or otherwise incorrect parameters) + * CIM_ERR_FAILED (some other unspecified error occurred) + * </pre> + */ + public boolean sendIndication(URI pRecipient, CIMInstance pIndication) throws WBEMException; } |
From: Dave B. <bla...@us...> - 2013-02-23 15:35:19
|
Update of /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/http/io In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv30409/src/org/sblim/cimclient/internal/http/io Modified Files: Tag: Experimental ChunkedInputStream.java Log Message: 2621 Not all chunked input has trailers Index: ChunkedInputStream.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/http/io/ChunkedInputStream.java,v retrieving revision 1.3.2.11 retrieving revision 1.3.2.12 diff -u -d -r1.3.2.11 -r1.3.2.12 --- ChunkedInputStream.java 23 Jan 2013 20:53:46 -0000 1.3.2.11 +++ ChunkedInputStream.java 23 Feb 2013 15:35:16 -0000 1.3.2.12 @@ -25,6 +25,7 @@ * 3304058 2011-05-20 blaschke-oss Use same date format in change history * 3557283 2012-11-05 blaschke-oss Print full response when get EOF from CIMOM * 3601894 2013-01-23 blaschke-oss Enhance HTTP and CIM-XML tracing + * 2621 2013-02-23 blaschke-oss Not all chunked input has trailers */ package org.sblim.cimclient.internal.http.io; @@ -45,6 +46,8 @@ private InputStream iIn; + private String iTrailerFields; + private String iOrigin; private long iChunkSize = 0; @@ -62,9 +65,11 @@ * * @param pStream * The stream to create this one upon + * @param pTrailerFields + * The names of trailer fields */ - public ChunkedInputStream(InputStream pStream) { - this(pStream, null); + public ChunkedInputStream(InputStream pStream, String pTrailerFields) { + this(pStream, pTrailerFields, null); } /** @@ -72,11 +77,14 @@ * * @param pStream * The stream to create this one upon + * @param pTrailerFields + * The names of trailer fields * @param pOrigin * The origin of the stream (response, indication request, etc.) */ - public ChunkedInputStream(InputStream pStream, String pOrigin) { + public ChunkedInputStream(InputStream pStream, String pTrailerFields, String pOrigin) { this.iIn = pStream; + this.iTrailerFields = pTrailerFields; this.iOrigin = pOrigin == null ? "Unknown" : pOrigin; } @@ -126,14 +134,24 @@ + (this.iChunkSize < len ? this.iChunkSize : len) + " bytes from HTTP chunk with remaining length of " + this.iChunkSize); - throw new EOFException("Unexpected EOF"); + throw new EOFException("Unexpected EOF reading chunk"); } } else { // read trailer this.iEof = true; - this.iTrailers = new HttpHeader(this.iIn); - // ebak: http trailers - this.iTrailers.examineTrailer(this.iOrigin); + if (this.iTrailerFields != null && this.iTrailerFields.trim().length() > 0) { + try { + this.iTrailers = new HttpHeader(this.iIn); + // ebak: http trailers + this.iTrailers.examineTrailer(this.iOrigin); + } catch (IOException e) { + LogAndTraceBroker.getBroker().trace( + Level.WARNING, + "Unexpected EOF reading trailer, expected fields were " + + this.iTrailerFields); + throw new EOFException("Unexpected EOF reading trailer"); + } + } } return total > 0 ? total : -1; } |
From: Dave B. <bla...@us...> - 2013-02-23 13:32:27
|
Update of /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/http/io In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv25022/src/org/sblim/cimclient/internal/http/io Modified Files: Tag: Experimental ChunkedOutputStream.java Log Message: 2620 Chunked output broken Index: ChunkedOutputStream.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/http/io/ChunkedOutputStream.java,v retrieving revision 1.3.2.4 retrieving revision 1.3.2.5 diff -u -d -r1.3.2.4 -r1.3.2.5 --- ChunkedOutputStream.java 23 Feb 2009 18:25:58 -0000 1.3.2.4 +++ ChunkedOutputStream.java 23 Feb 2013 13:32:24 -0000 1.3.2.5 @@ -1,5 +1,5 @@ /** - * (C) Copyright IBM Corp. 2005, 2009 + * (C) Copyright IBM Corp. 2005, 2013 * * THIS FILE IS PROVIDED UNDER THE TERMS OF THE ECLIPSE PUBLIC LICENSE * ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THIS FILE @@ -19,11 +19,14 @@ * 1565892 2006-11-28 lupusalex Make SBLIM client JSR48 compliant * 2003590 2008-06-30 blaschke-oss Change licensing from CPL to EPL * 2524131 2009-01-21 raman_arora Upgrade client to JDK 1.5 (Phase 1) - * 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) + * 2620 2013-02-23 blaschke-oss Chunked output broken */ package org.sblim.cimclient.internal.http.io; -import java.io.*; +import java.io.DataOutputStream; +import java.io.IOException; +import java.io.OutputStream; /** * Class ChunkedOutputStream implements an output stream for chunked messages @@ -55,7 +58,7 @@ @Override public void close() throws IOException { flush(); - this.iOs.writeChars("0\r\n"); + this.iOs.writeBytes(Integer.toHexString(0) + "\r\n"); this.iOs.flush(); } |
From: Dave B. <bla...@us...> - 2013-02-23 13:32:26
|
Update of /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/http In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv25022/src/org/sblim/cimclient/internal/http Modified Files: Tag: Experimental MessageWriter.java Log Message: 2620 Chunked output broken Index: MessageWriter.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/http/MessageWriter.java,v retrieving revision 1.4.2.5 retrieving revision 1.4.2.6 diff -u -d -r1.4.2.5 -r1.4.2.6 --- MessageWriter.java 23 Jan 2013 20:53:45 -0000 1.4.2.5 +++ MessageWriter.java 23 Feb 2013 13:32:24 -0000 1.4.2.6 @@ -22,6 +22,7 @@ * 2524131 2009-01-21 raman_arora Upgrade client to JDK 1.5 (Phase 1) * 3304058 2011-05-20 blaschke-oss Use same date format in change history * 3601894 2013-01-23 blaschke-oss Enhance HTTP and CIM-XML tracing + * 2620 2013-02-23 blaschke-oss Chunked output broken */ package org.sblim.cimclient.internal.http; @@ -156,6 +157,7 @@ "Indication Response HTTP Headers= " + this.iHeader.toString()); this.iHeader.write(this.iRealOS); this.iRealOS.flush(); + if (this.iChunked) this.iClientOS.close(); this.iBufferedOS.writeTo(this.iRealOS); if (this.iChunked && (this.iTrailer != null)) { LogAndTraceBroker.getBroker().trace(Level.FINER, |
From: Dave B. <bla...@us...> - 2013-02-23 12:20:26
|
Update of /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/http In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv21923/src/org/sblim/cimclient/internal/http Modified Files: Tag: Experimental HttpClient.java Log Message: 2619 Host should contain port when not 5988/5989 Index: HttpClient.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/http/HttpClient.java,v retrieving revision 1.12.2.33 retrieving revision 1.12.2.34 diff -u -d -r1.12.2.33 -r1.12.2.34 --- HttpClient.java 23 Jan 2013 20:53:46 -0000 1.12.2.33 +++ HttpClient.java 23 Feb 2013 12:20:24 -0000 1.12.2.34 @@ -67,6 +67,7 @@ * 3524050 2012-06-06 blaschke-oss Improve WWW-Authenticate in HTTPClient.java * 3557283 2012-11-05 blaschke-oss Print full response when get EOF from CIMOM * 3601894 2013-01-23 blaschke-oss Enhance HTTP and CIM-XML tracing + * 2619 2013-02-22 blaschke-oss Host should contain port when not 5988/5989 */ package org.sblim.cimclient.internal.http; @@ -565,7 +566,17 @@ this.iMethod.write(out); - this.iRequestHeaders.addField("Host", this.iUrl.getHost()); + StringBuilder hostField = new StringBuilder(this.iUrl.getHost()); + if (this.iUrl.getPort() > 0 + && ((WBEMConstants.HTTPS.equalsIgnoreCase(this.iUrl.getScheme()) && this.iUrl + .getPort() != WBEMConstants.DEFAULT_WBEM_SECURE_PORT) || (WBEMConstants.HTTP + .equalsIgnoreCase(this.iUrl.getScheme()) && this.iUrl + .getPort() != WBEMConstants.DEFAULT_WBEM_PORT))) { + hostField.append(':'); + hostField.append(this.iUrl.getPort()); + } + this.iRequestHeaders.addField("Host", hostField.toString()); + if (this.iServerOutput != null) this.iRequestHeaders.addField( "Content-length", "" + this.iServerOutput.size()); else this.iRequestHeaders.addField("Content-length", "0"); |
From: Dave B. <bla...@us...> - 2013-02-21 11:39:19
|
Update of /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/wbem In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv6216/src/org/sblim/cimclient/internal/wbem Modified Files: Tag: Experimental WBEMClientCIMXML.java Log Message: 2614 Remove redundant code in transmitRequest Index: WBEMClientCIMXML.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/wbem/WBEMClientCIMXML.java,v retrieving revision 1.21.2.69 retrieving revision 1.21.2.70 diff -u -d -r1.21.2.69 -r1.21.2.70 --- WBEMClientCIMXML.java 23 Jan 2013 20:53:46 -0000 1.21.2.69 +++ WBEMClientCIMXML.java 21 Feb 2013 11:39:17 -0000 1.21.2.70 @@ -70,6 +70,7 @@ * 3553858 2012-08-06 blaschke-oss Append duplicate HTTP header fields instead of replace * 3554738 2012-08-16 blaschke-oss dump CIM xml by LogAndTraceBroker.trace() * 3601894 2013-01-23 blaschke-oss Enhance HTTP and CIM-XML tracing + * 2614 2013-02-21 blaschke-oss Remove redundant code in transmitRequest */ package org.sblim.cimclient.internal.wbem; @@ -1691,6 +1692,8 @@ private String getHttpErrorString(int pStatusCode) { switch (pStatusCode) { + case 400: + return "400 - BAD REQUEST"; case 401: return "401 - UNAUTHORIZED"; case 403: @@ -1770,7 +1773,6 @@ this.iAuthorization = auth; } - String cimError = headers.getField("CIMError"); exceptionNum = WBEMException.CIM_ERR_FAILED; switch (resultCode) { @@ -1808,7 +1810,8 @@ // version, CIM version or Protocol Version // that is expecting String cimProtocolVersion = headers.getField("CIMProtocolVersion"); - if (cimProtocolVersion == null && cimError == null && useMPost) { + if (cimProtocolVersion == null && headers.getField("CIMError") == null + && useMPost) { logger .trace(Level.FINER, "Received HTTP Error 501 - NOT IMPLEMENTED with M-POST, falling back to POST"); @@ -1819,20 +1822,12 @@ break; } - logger.trace(Level.FINER, "Received HTTP Error 501 - NOT IMPLEMENTED" - + (cimError != null ? "(CIMError: \"" + cimError + "\")" : "") - + ", skipping retries"); + logger.trace(Level.FINER, + "Received HTTP Error 501 - NOT IMPLEMENTED, skipping retries"); retries = 0; break; case HttpURLConnection.HTTP_BAD_REQUEST: // 400 - logger.trace(Level.FINER, "Received HTTP Error 400 - BAD REQUEST" - + getHttpErrorString(resultCode) - + (cimError != null ? " (CIMError: \"" + cimError + "\")" : "") - + ", skipping retries"); - retries = 0; - break; - case HttpURLConnection.HTTP_FORBIDDEN: // 403 case HttpURLConnection.HTTP_BAD_METHOD: // 405 logger.trace(Level.FINER, "Received HTTP Error " @@ -1889,6 +1884,9 @@ // Look for CIM error, include in exception if it exists String errorCIM = connection.getHeaderField("CIMError"); + if (errorCIM != null) { + logger.trace(Level.FINER, "Found CIMError field with value \"" + errorCIM + "\""); + } // Look for OpenPegasus error details, decode and include in exception // if it exists |
From: Michael Chase-S. <mc...@us...> - 2013-02-20 17:03:37
|
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 41982d1f73f84c553182ee213fcaae32b9cd0910 (commit) via 9a1084242d5828aff91bca5ea2e3fb67d7a0bb82 (commit) from 840ee3df1dce230cfd03d7d171946d26f456a31f (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 41982d1f73f84c553182ee213fcaae32b9cd0910 Merge: 9a10842 840ee3d Author: Michael Chase-Salerno <br...@li...> Date: Wed Feb 20 12:03:09 2013 -0500 Merge branch 'master' of ssh://git.code.sf.net/p/sblim/sfcb Conflicts: NEWS commit 9a1084242d5828aff91bca5ea2e3fb67d7a0bb82 Author: Michael Chase-Salerno <br...@li...> Date: Wed Feb 20 12:01:56 2013 -0500 [#2490] wbemcat should use URI perl module ----------------------------------------------------------------------- Summary of changes: NEWS | 2 ++ wbemcat | 18 +++++++----------- 2 files changed, 9 insertions(+), 11 deletions(-) diff --git a/NEWS b/NEWS index fa598bd..2a15235 100644 --- a/NEWS +++ b/NEWS @@ -29,6 +29,8 @@ Bugs fixed: - 2612 Don't persist indications - 2613 Check sfcCommon version - 2552 datetime conversions do not handle timezone +- 2490 wbemcat should use URI perl module +======= Changes in 1.4.3 ================ diff --git a/wbemcat b/wbemcat index 55c765b..4794d6a 100755 --- a/wbemcat +++ b/wbemcat @@ -3,6 +3,7 @@ use strict; use Getopt::Long; use LWP::UserAgent; +use URI; my $version = "1.1.0"; my $port = 5988; @@ -10,7 +11,6 @@ my $host = "localhost"; my $protocol = "http"; my $user=""; my $password=""; -my $cred_host=""; my $content_type = "application/xml"; #default for xml requests my $path = "/cimom"; #default for xml requests my $method= "POST"; #default for xml requests @@ -60,19 +60,15 @@ if ($file) { $payloadstr = join("", @payload); -if ( $user && $password ) -{ - $cred_host=$user . ":" . $password . "@" . $host; -} -else -{ - $cred_host = $host; -} - my $ua = LWP::UserAgent->new; $ua->agent("wbemcat $version"); -my $req = HTTP::Request->new($method, "$protocol://$cred_host:$port$path"); +my $uri = URI->new("$protocol://$host:$port$path"); +if ( $user && $password ) +{ + $uri->userinfo("$user:$password"); +} +my $req = HTTP::Request->new($method, $uri); $req->content_type($content_type); if ($content_type eq "application/xml") { $req->header("CIMProtocolVersion" => "1.0", hooks/post-receive -- sfcb - Small Footprint CIM Broker |
From: Dave H. <hel...@us...> - 2013-02-20 16:30:01
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "sfcb - Small Footprint CIM Broker". The branch, master has been updated via 840ee3df1dce230cfd03d7d171946d26f456a31f (commit) from 72f7aae5e0a1a5935f1015bbb14dca46df0e6637 (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 840ee3df1dce230cfd03d7d171946d26f456a31f Author: Dave Heller <hel...@us...> Date: Wed Feb 20 11:28:11 2013 -0500 [2552] datetime conversions do not handle timezone ----------------------------------------------------------------------- Summary of changes: NEWS | 1 + datetime.c | 9 ++-- test/unittest/newDateTime.c | 112 +++++++++++++++++++++++++++++++++++++++--- 3 files changed, 109 insertions(+), 13 deletions(-) diff --git a/NEWS b/NEWS index 3782ea7..fa598bd 100644 --- a/NEWS +++ b/NEWS @@ -28,6 +28,7 @@ Bugs fixed: - 3603454 control should do type conversions on startup - 2612 Don't persist indications - 2613 Check sfcCommon version +- 2552 datetime conversions do not handle timezone Changes in 1.4.3 ================ diff --git a/datetime.c b/datetime.c index 92a8c2b..cdbae38 100644 --- a/datetime.c +++ b/datetime.c @@ -2,7 +2,7 @@ /* * datetime.c * - * (C) Copyright IBM Corp. 2005 + * (C) Copyright IBM Corp. 2013 * * THIS FILE IS PROVIDED UNDER THE TERMS OF THE ECLIPSE PUBLIC LICENSE * ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THIS FILE @@ -135,24 +135,23 @@ chars2bin(const char *string, CMPIStatus *rc) else { struct tm tmp; + time_t sse; memset(&tmp, 0, sizeof(struct tm)); tzset(); - tmp.tm_gmtoff = timezone; - tmp.tm_isdst = daylight; tmp.tm_mday = atoi(str + 6); str[6] = 0; tmp.tm_mon = atoi(str + 4) - 1; str[4] = 0; tmp.tm_year = atoi(str) - 1900; - if(mktime(&tmp) < 0) { + if((sse = timegm(&tmp)) < 0) { CMSetStatus(rc, CMPI_RC_ERR_INVALID_PARAMETER); } msecs = msecs + (secs * 1000000ULL); - msecs += (CMPIUint64) mktime(&tmp) * 1000000ULL; + msecs += (CMPIUint64) sse * 1000000ULL; // Add in the offset msecs -= offset * 1000000ULL; } diff --git a/test/unittest/newDateTime.c b/test/unittest/newDateTime.c index daa5e0d..621514d 100644 --- a/test/unittest/newDateTime.c +++ b/test/unittest/newDateTime.c @@ -2,6 +2,7 @@ #include <stdio.h> #include <stdlib.h> #define TRUE 1 +#define FALSE 0 #define CMPI_PLATFORM_LINUX_GENERIC_GNU @@ -15,9 +16,16 @@ #define SFCB_ASM(x) #endif +extern CMPIDateTime *NewCMPIDateTime(CMPIStatus *rc); +extern CMPIDateTime *NewCMPIDateTimeFromBinary(CMPIUint64 binTime, + CMPIBoolean interval, CMPIStatus *rc); +extern CMPIDateTime *NewCMPIDateTimeFromChars(const char *utcTime, + CMPIStatus *rc); + CMPIDateTime *dt, *dt1, - *dt2; + *dt2, + *dt3; CMPIStatus st, st1, st2, @@ -28,19 +36,107 @@ main(void) { int rc = 0; const char *str = "00000024163645.123456:000"; + char *current, *result; + long long blob; + printf("Performing NewDateTime tests.... \n"); + printf("- Getting current time from NewCMPIDateTime()...\n"); dt = (CMPIDateTime *) NewCMPIDateTime(&st); - printf("Done dt \n"); - dt1 = - (CMPIDateTime *) NewCMPIDateTimeFromBinary((CMPIUint64) 1000000, - TRUE, &st1); - printf("Done dt1 \n"); + printf(" Current time in CMPIDateTime: %s\n", + current = (char*) dt->ft->getStringFormat(dt, NULL )->hdl); + printf(" Current time in usec since 1970-01-01: %ld\n", + blob = (long long) dt->ft->getBinaryFormat(dt, NULL )); + printf( + "- Converting back to CMPIDateTime using NewCMPIDateTimeFromBinary()...\n"); + dt = (CMPIDateTime *) NewCMPIDateTimeFromBinary((CMPIUint64) blob, FALSE, + &st1); + printf(" Convert time in CMPIDateTime: %s\n", + result = (char*) dt->ft->getStringFormat(dt, NULL )->hdl); + if (!strcmp(current, result)) + printf(" Result matches the original string.\n"); + else { + printf(" Result does not match the original string.\n"); + rc = 1; + } + + printf("Performing interval tests....\n"); + printf("- Getting a 1s interval from NewCMPIDateTime()...\n"); + blob = (CMPIUint64) 1000000; + dt1 = (CMPIDateTime *) NewCMPIDateTimeFromBinary(blob, TRUE, &st1); + printf(" Interval in CMPIDateTime: %s\n", + result = (char*) dt1->ft->getStringFormat(dt1, NULL )->hdl); + + printf("- Getting a test interval from NewCMPIDateTime()...\n"); dt2 = (CMPIDateTime *) NewCMPIDateTimeFromChars(str, &st2); - printf("Done dt2 \n"); + printf(" Interval in CMPIDateTime: %s\n", + result = (char*) dt2->ft->getStringFormat(dt2, NULL )->hdl); + + printf("Performing NewCMPIDateTimeFromChars() tests....\n"); + printf("- Creating a test date in standard time...\n"); + char cimDt[26]; + char buffr[11]; + long usecs = 0L; + struct tm bdt; + + memset(&bdt, 0, sizeof(struct tm)); + bdt.tm_isdst = -1; + bdt.tm_year = 2015 - 1900; + bdt.tm_mon = 2 - 1; + bdt.tm_mday = 19; + + mktime(&bdt); // get value of tm_gmtoff + + strftime(cimDt, 26, "%Y%m%d%H%M%S.", &bdt); + snprintf(buffr, 11, "%6.6ld%+4.3ld", usecs, bdt.tm_gmtoff / 60); + strcat(cimDt, buffr); + str = cimDt; + dt3 = (CMPIDateTime *) NewCMPIDateTimeFromChars(str, &st3); + printf(" Test date in CMPIDateTime: %s\n", + (char*) dt3->ft->getStringFormat(dt3, NULL )->hdl); + printf(" Test date in usec since 1970-01-01: %ld\n", + blob = (long long) dt3->ft->getBinaryFormat(dt3, NULL )); + printf( + "- Converting back to CMPIDateTime using NewCMPIDateTimeFromBinary()...\n"); + dt3 = (CMPIDateTime *) NewCMPIDateTimeFromBinary((CMPIUint64) blob, FALSE, + &st1); + printf(" Convert time in CMPIDateTime: %s\n", + result = (char*) dt3->ft->getStringFormat(dt3, NULL )->hdl); + if (!strcmp(str, result)) + printf(" Result matches the original string.\n"); + else { + printf(" Result does not match the original string.\n"); + rc = 1; + } + + printf("- Creating a test date in daylight saving time...\n"); + bdt.tm_mon = 8 - 1; + mktime(&bdt); + strftime(cimDt, 26, "%Y%m%d%H%M%S.", &bdt); + snprintf(buffr, 11, "%6.6ld%+4.3ld", usecs, bdt.tm_gmtoff / 60); + strcat(cimDt, buffr); + str = cimDt; + dt3 = (CMPIDateTime *) NewCMPIDateTimeFromChars(str, &st3); + printf(" Test date in CMPIDateTime: %s\n", + (char*) dt3->ft->getStringFormat(dt3, NULL )->hdl); + printf(" Test date in usec since 1970-01-01: %ld\n", + blob = (long long) dt3->ft->getBinaryFormat(dt3, NULL )); + printf( + "- Converting back to CMPIDateTime using NewCMPIDateTimeFromBinary()...\n"); + dt3 = (CMPIDateTime *) NewCMPIDateTimeFromBinary((CMPIUint64) blob, FALSE, + &st1); + printf(" Convert time in CMPIDateTime: %s\n", + result = (char*) dt3->ft->getStringFormat(dt3, NULL )->hdl); + if (!strcmp(str, result)) + printf(" Result matches the original string.\n"); + else { + printf(" Result does not match the original string.\n"); + rc = 1; + } + printf("st.rc = %d \n ", st.rc); printf("st1.rc = %d \n ", st1.rc); printf("st2.rc = %d \n ", st2.rc); - if (CMIsInterval((const CMPIDateTime *) dt2, &st3.rc)) + if (CMIsInterval((const CMPIDateTime *) dt2, &st2)) printf("dt2 is Interval... \n"); if (st.rc != CMPI_RC_OK) { hooks/post-receive -- sfcb - Small Footprint CIM Broker |