Hello community, here is the log from the commit of package sblim-sfcb for openSUSE:Factory checked in at 2014-12-10 23:44:30 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/sblim-sfcb (Old) and /work/SRC/openSUSE:Factory/.sblim-sfcb.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "sblim-sfcb" Changes: -------- --- /work/SRC/openSUSE:Factory/sblim-sfcb/sblim-sfcb.changes 2014-12-01 14:00:47.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.sblim-sfcb.new/sblim-sfcb.changes 2014-12-10 23:44:08.000000000 +0100 @@ -0,0 +1,32 @@ +Fri Nov 28 08:53:06 UTC 2014 - [email protected] + +- Update to 1.4.9 + New features: + - [sfcb-tix:#97] Add a select timeout for req handlers + see httpReqHandlerTimeout in sfcb.cfg + + Bugs fixed: + - [sfcb-tix:#106] CMPIRole not passed to provider context + - [sfcb-tix:#107] Quietly unpack schema at make postinstall + - [sfcb-tix:#108] Some associatorname CIM operations hang + +- new patches + * 0002-providerMgr-add-prototypes.patch + * 0004-Check-for-existance-of-autoconfiscate.sh-before-call.patch + * 0009-Improvide-error-message-if-ClassProvider-for-root-in.patch + * 0010-Enable-authentication-by-default.patch + +- obsolete/rebased patches + * 0002-Enable-broker.LogMessage-and-broker.trace.patch renamed to + 0003-Enable-broker.LogMessage-and-broker.trace.patch + * 0002-Enable-broker.LogMessage-and-broker.trace.patch renamed to + 0003-Enable-broker.LogMessage-and-broker.trace.patch + * 0006-Define-YYPARSE_PARAM-early-for-cimXmlOps-and-cimXmlP.patch + renamed to 0005-Define-YYPARSE_PARAM-early-for-cimXmlOps-and-cimXmlP.patch + * 0007-Don-t-crash-if-class-repo-is-not-initialized.patch renamed + to 0006-Don-t-crash-if-class-repo-is-not-initialized.patch + * 0008-Increase-max-trace-msg-len-to-4096.patch renamed to + 0007-Increase-max-trace-msg-len-to-4096.patch + * 0010-Properly-shut-down-if-provider-crashed.patch renamed to + 0008-Properly-shut-down-if-provider-crashed.patch + Old: ---- 0002-Enable-broker.LogMessage-and-broker.trace.patch 0006-Define-YYPARSE_PARAM-early-for-cimXmlOps-and-cimXmlP.patch 0007-Don-t-crash-if-class-repo-is-not-initialized.patch 0008-Increase-max-trace-msg-len-to-4096.patch 0010-Properly-shut-down-if-provider-crashed.patch sblim-sfcb-1.4.8.tar.bz2 New: ---- 0002-providerMgr-add-prototypes.patch 0003-Enable-broker.LogMessage-and-broker.trace.patch 0004-Check-for-existance-of-autoconfiscate.sh-before-call.patch 0005-Define-YYPARSE_PARAM-early-for-cimXmlOps-and-cimXmlP.patch 0006-Don-t-crash-if-class-repo-is-not-initialized.patch 0007-Increase-max-trace-msg-len-to-4096.patch 0008-Properly-shut-down-if-provider-crashed.patch 0009-Improvide-error-message-if-ClassProvider-for-root-in.patch 0010-Enable-authentication-by-default.patch sblim-sfcb-1.4.9.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ sblim-sfcb.spec ++++++ --- /var/tmp/diff_new_pack.q9vCkq/_old 2014-12-10 23:44:10.000000000 +0100 +++ /var/tmp/diff_new_pack.q9vCkq/_new 2014-12-10 23:44:10.000000000 +0100 @@ -28,9 +28,9 @@ Group: System/Management Name: sblim-sfcb -Version: 1.4.8 +Version: 1.4.9 Release: 0 -%define srcversion 1.4.8 +%define srcversion 1.4.9 Url: http://sblim.sf.net/ Source0: %{name}-%{srcversion}.tar.bz2 Source1: autoconfiscate.sh @@ -44,13 +44,19 @@ # SUSE build service Patch1: 0001-Makefile.am-Honor-build-environment.patch -Patch2: 0002-Enable-broker.LogMessage-and-broker.trace.patch +Patch2: 0002-providerMgr-add-prototypes.patch +Patch3: 0003-Enable-broker.LogMessage-and-broker.trace.patch +Patch4: 0004-Check-for-existance-of-autoconfiscate.sh-before-call.patch # fixes local build -Patch6: 0006-Define-YYPARSE_PARAM-early-for-cimXmlOps-and-cimXmlP.patch -Patch7: 0007-Don-t-crash-if-class-repo-is-not-initialized.patch -Patch8: 0008-Increase-max-trace-msg-len-to-4096.patch -Patch10: 0010-Properly-shut-down-if-provider-crashed.patch +Patch5: 0005-Define-YYPARSE_PARAM-early-for-cimXmlOps-and-cimXmlP.patch +Patch6: 0006-Don-t-crash-if-class-repo-is-not-initialized.patch +Patch7: 0007-Increase-max-trace-msg-len-to-4096.patch +Patch8: 0008-Properly-shut-down-if-provider-crashed.patch + +# functionality fixes +Patch9: 0009-Improvide-error-message-if-ClassProvider-for-root-in.patch +Patch10: 0010-Enable-authentication-by-default.patch Patch11: sblim-sfcb-1.4.8-fix-bashisms.patch @@ -120,9 +126,13 @@ cp %{S:7} . %patch1 -p1 %patch2 -p1 +%patch3 -p1 +%patch4 -p1 +%patch5 -p1 %patch6 -p1 %patch7 -p1 %patch8 -p1 +%patch9 -p1 %patch10 -p1 %patch11 -p1 ++++++ 0001-Makefile.am-Honor-build-environment.patch ++++++ --- /var/tmp/diff_new_pack.q9vCkq/_old 2014-12-10 23:44:10.000000000 +0100 +++ /var/tmp/diff_new_pack.q9vCkq/_new 2014-12-10 23:44:10.000000000 +0100 @@ -1,7 +1,7 @@ -From 074d1140eaa2f48f401e26ef736686cca9843d49 Mon Sep 17 00:00:00 2001 +From 156cc6c7f4dea416cddda20d67a591ca2319b79d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Klaus=20K=C3=A4mpf?= <[email protected]> Date: Wed, 18 Aug 2010 11:20:53 +0200 -Subject: [PATCH 01/11] Makefile.am: Honor build environment +Subject: [PATCH 01/10] Makefile.am: Honor build environment --- Makefile.am | 8 ++++++-- @@ -30,5 +30,5 @@ footprint-sloc: -- -1.8.1.4 +2.1.2 ++++++ 0002-providerMgr-add-prototypes.patch ++++++ >From 14d64ce544cb7798e495a49f0f0074282114ada9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Klaus=20K=C3=A4mpf?= <[email protected]> Date: Tue, 7 Sep 2010 09:10:06 +0200 Subject: [PATCH 02/10] providerMgr: add prototypes --- providerMgr.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/providerMgr.c b/providerMgr.c index 79297242a7cc..05677b3c3e40 100644 --- a/providerMgr.c +++ b/providerMgr.c @@ -53,6 +53,12 @@ #define SFCB_ASM(x) #endif +extern int getEnumState(CMPIEnumeration *enumeration); +extern CMPIArray *getEnumDatap(CMPIEnumeration *enumeration); +extern void incLastValid(CMPIEnumeration *enumeration); +extern void setEnumArray(CMPIEnumeration *enumeration, CMPIArray *array); +extern void setEnumState(CMPIEnumeration *enumeration, int new_state); + static pthread_mutex_t resultsocketMutex = PTHREAD_MUTEX_INITIALIZER; extern CMPIBroker *Broker; -- 2.1.2 ++++++ 0002-Enable-broker.LogMessage-and-broker.trace.patch -> 0003-Enable-broker.LogMessage-and-broker.trace.patch ++++++ --- /work/SRC/openSUSE:Factory/sblim-sfcb/0002-Enable-broker.LogMessage-and-broker.trace.patch 2014-02-02 22:23:56.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.sblim-sfcb.new/0003-Enable-broker.LogMessage-and-broker.trace.patch 2014-12-10 23:44:08.000000000 +0100 @@ -1,7 +1,7 @@ -From f84cc8ed658db1430c0b6c8ac724ff2e27be67c7 Mon Sep 17 00:00:00 2001 +From 28a7a0f15494cd0dbf25850889c6815b8c4f4b05 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Klaus=20K=C3=A4mpf?= <[email protected]> Date: Thu, 5 Aug 2010 12:23:45 +0200 -Subject: [PATCH 02/11] Enable broker.LogMessage and broker.trace +Subject: [PATCH 03/10] Enable broker.LogMessage and broker.trace --- brokerEnc.c | 18 ++++++++++-------- @@ -42,5 +42,5 @@ } -- -1.8.1.4 +2.1.2 ++++++ 0004-Check-for-existance-of-autoconfiscate.sh-before-call.patch ++++++ >From 232be625616c372aad3d1967bcca5a1b20c273c2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Klaus=20K=C3=A4mpf?= <[email protected]> Date: Wed, 30 Mar 2011 11:36:19 +0200 Subject: [PATCH 04/10] Check for existance of autoconfiscate.sh before calling it in a sub-directory --- autoconfiscate.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/autoconfiscate.sh b/autoconfiscate.sh index 828136aadaff..5c58e50bac11 100755 --- a/autoconfiscate.sh +++ b/autoconfiscate.sh @@ -5,5 +5,5 @@ libtoolize --force && automake -af && 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 +if test -f mofc/autoconfiscate.sh; then cd mofc && ./autoconfiscate.sh; fi +if test -f cmpi-devel/autoconfiscate.sh; then cd cmpi-devel && ./autoconfiscate.sh; fi -- 2.1.2 ++++++ 0006-Define-YYPARSE_PARAM-early-for-cimXmlOps-and-cimXmlP.patch -> 0005-Define-YYPARSE_PARAM-early-for-cimXmlOps-and-cimXmlP.patch ++++++ --- /work/SRC/openSUSE:Factory/sblim-sfcb/0006-Define-YYPARSE_PARAM-early-for-cimXmlOps-and-cimXmlP.patch 2014-02-02 22:23:56.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.sblim-sfcb.new/0005-Define-YYPARSE_PARAM-early-for-cimXmlOps-and-cimXmlP.patch 2014-12-10 23:44:08.000000000 +0100 @@ -1,7 +1,7 @@ -From d086e3093f6f79c48aa4ff705e782fcf5848d5b0 Mon Sep 17 00:00:00 2001 +From a0e3b3f677a5c1079c18fc800b2f769a03ec8bc3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Klaus=20K=C3=A4mpf?= <[email protected]> Date: Tue, 16 Jul 2013 11:17:01 +0200 -Subject: [PATCH 06/11] Define YYPARSE_PARAM early for cimXmlOps and +Subject: [PATCH 05/10] Define YYPARSE_PARAM early for cimXmlOps and cimXmlParser --- @@ -22,5 +22,5 @@ # define CMPI_FLAG_ContinueOnError 16 # define CMPI_FLAG_ReturnQueryResultClass 32 -- -1.8.1.4 +2.1.2 ++++++ 0007-Don-t-crash-if-class-repo-is-not-initialized.patch -> 0006-Don-t-crash-if-class-repo-is-not-initialized.patch ++++++ --- /work/SRC/openSUSE:Factory/sblim-sfcb/0007-Don-t-crash-if-class-repo-is-not-initialized.patch 2014-02-02 22:23:56.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.sblim-sfcb.new/0006-Don-t-crash-if-class-repo-is-not-initialized.patch 2014-12-10 23:44:08.000000000 +0100 @@ -1,7 +1,7 @@ -From f798f3f85546206ec6ae81f9a61d7c6b393a604a Mon Sep 17 00:00:00 2001 +From 57b8690c012629816e8e03a82be8ac1612f0bcb7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Klaus=20K=C3=A4mpf?= <[email protected]> Date: Thu, 8 Aug 2013 12:25:35 +0200 -Subject: [PATCH 07/11] Don't crash if class repo is not initialized +Subject: [PATCH 06/10] Don't crash if class repo is not initialized --- classProviderSf.c | 2 +- @@ -21,5 +21,5 @@ } -- -1.8.1.4 +2.1.2 ++++++ 0008-Increase-max-trace-msg-len-to-4096.patch -> 0007-Increase-max-trace-msg-len-to-4096.patch ++++++ --- /work/SRC/openSUSE:Factory/sblim-sfcb/0008-Increase-max-trace-msg-len-to-4096.patch 2014-02-02 22:23:56.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.sblim-sfcb.new/0007-Increase-max-trace-msg-len-to-4096.patch 2014-12-10 23:44:08.000000000 +0100 @@ -1,7 +1,7 @@ -From 6ef8e7325be337c951900238bc3ac3ec3846885e Mon Sep 17 00:00:00 2001 +From ab95ffa0a3024e87925b22f6aad8bd44583b5475 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Klaus=20K=C3=A4mpf?= <[email protected]> Date: Wed, 28 Aug 2013 15:20:53 +0200 -Subject: [PATCH 08/11] Increase max trace msg len to 4096 +Subject: [PATCH 07/10] Increase max trace msg len to 4096 --- trace.h | 2 +- @@ -21,5 +21,5 @@ #define TRACE_PROVIDERMGR 1 #define TRACE_PROVIDERDRV 2 -- -1.8.1.4 +2.1.2 ++++++ 0010-Properly-shut-down-if-provider-crashed.patch -> 0008-Properly-shut-down-if-provider-crashed.patch ++++++ --- /work/SRC/openSUSE:Factory/sblim-sfcb/0010-Properly-shut-down-if-provider-crashed.patch 2014-02-02 22:23:56.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.sblim-sfcb.new/0008-Properly-shut-down-if-provider-crashed.patch 2014-12-10 23:44:08.000000000 +0100 @@ -1,17 +1,17 @@ -From 94411523d1eecff4ab15e6958552c8f18671daba Mon Sep 17 00:00:00 2001 +From f3a48e18136840d223b8c60749b21652a4e4cf92 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Klaus=20K=C3=A4mpf?= <[email protected]> Date: Fri, 15 Nov 2013 12:56:04 -0500 -Subject: [PATCH 10/11] Properly shut down if provider crashed +Subject: [PATCH 08/10] Properly shut down if provider crashed --- sfcBroker.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/sfcBroker.c b/sfcBroker.c -index 5063415ef883..c2e33dcc49d9 100644 +index ca043c9fa01c..4fb2e0aa9e97 100644 --- a/sfcBroker.c +++ b/sfcBroker.c -@@ -259,7 +259,9 @@ stopBroker(void *p) +@@ -262,7 +262,9 @@ stopBroker(void *p) if (stopNextProc()) { pthread_cond_timedwait(&sdCnd, &sdMtx, &waitTime); } @@ -23,5 +23,5 @@ } if (providersStopped) -- -1.8.1.4 +2.1.2 ++++++ 0009-Improvide-error-message-if-ClassProvider-for-root-in.patch ++++++ >From 04694ec45951551d080cb6407601af4f9d6fdcf9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Klaus=20K=C3=A4mpf?= <[email protected]> Date: Mon, 16 Jun 2014 15:35:41 +0200 Subject: [PATCH 09/10] Improvide error message if ClassProvider for root/interop can't start --- providerMgr.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/providerMgr.c b/providerMgr.c index 05677b3c3e40..6ffe582fb106 100644 --- a/providerMgr.c +++ b/providerMgr.c @@ -1026,7 +1026,7 @@ processProviderMgrRequests() if (exFlags & 2) { rc=startUpProvider("root/interop", "$ClassProvider$",0); if (rc != 0 ) { - mlogf(M_ERROR,M_SHOW,"--- ClassProvider failed to start, rc:%d\n",rc); + mlogf(M_ERROR,M_SHOW,"--- ClassProvider failed to start for root/interop, rc:%d\n",rc); sigprocmask(SIG_SETMASK, &old_mask, NULL); _SFCB_RETURN(); } -- 2.1.2 ++++++ 0010-Enable-authentication-by-default.patch ++++++ >From 4898f6cb9db019b1ee6b1083a72eba87768bf3b4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Klaus=20K=C3=A4mpf?= <[email protected]> Date: Thu, 27 Nov 2014 13:07:34 +0100 Subject: [PATCH 10/10] Enable authentication by default --- sfcb.cfg.pre.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sfcb.cfg.pre.in b/sfcb.cfg.pre.in index 77a2155c8d9a..012dbbc549e3 100644 --- a/sfcb.cfg.pre.in +++ b/sfcb.cfg.pre.in @@ -93,7 +93,7 @@ sfcbCustomLib: sfcCustomLib ## Enable basic authentication for HTTP and HTTPS connections ## Default is false -doBasicAuth: false +doBasicAuth: true ## Name of of the authenticaion library. Leave off the ".so" ## Default is: sfcBasicAuthentication -- 2.1.2 ++++++ sblim-sfcb-1.4.8.tar.bz2 -> sblim-sfcb-1.4.9.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sblim-sfcb-1.4.8/Makefile.in new/sblim-sfcb-1.4.9/Makefile.in --- old/sblim-sfcb-1.4.8/Makefile.in 2014-03-27 00:56:15.000000000 +0100 +++ new/sblim-sfcb-1.4.9/Makefile.in 2014-11-25 03:06:32.000000000 +0100 @@ -69,8 +69,8 @@ $(top_srcdir)/man/sfcbuuid.1.pre.in \ $(top_srcdir)/man/wbemcat.1.pre.in \ $(top_srcdir)/man/xmltest.1.pre.in AUTHORS COPYING ChangeLog \ - INSTALL NEWS cimXmlOps.c cimXmlOps.h config.guess config.sub \ - depcomp install-sh ltmain.sh missing queryLexer.c \ + INSTALL NEWS cimXmlOps.c cimXmlOps.h compile config.guess \ + config.sub depcomp install-sh ltmain.sh missing queryLexer.c \ queryParser.c queryParser.h ylwrap ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sblim-sfcb-1.4.8/NEWS new/sblim-sfcb-1.4.9/NEWS --- old/sblim-sfcb-1.4.8/NEWS 2014-03-27 00:53:19.000000000 +0100 +++ new/sblim-sfcb-1.4.9/NEWS 2014-11-25 03:01:55.000000000 +0100 @@ -1,3 +1,14 @@ +Changes in 1.4.9 +================ + +New features: +- [sfcb-tix:#97] Add a select timeout for req handlers + +Bugs fixed: +- [sfcb-tix:#106] CMPIRole not passed to provider context +- [sfcb-tix:#107] Quietly unpack schema at make postinstall +- [sfcb-tix:#108] Some associatorname CIM operations hang + Changes in 1.4.8 ================ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sblim-sfcb-1.4.8/cimXmlOps.c new/sblim-sfcb-1.4.9/cimXmlOps.c --- old/sblim-sfcb-1.4.8/cimXmlOps.c 2014-03-27 00:56:52.000000000 +0100 +++ new/sblim-sfcb-1.4.9/cimXmlOps.c 2014-11-25 02:44:02.000000000 +0100 @@ -222,7 +222,7 @@ binCtx->oHdr = (OperationHdr *) req; binCtx->bHdr = &sreq->hdr; - binCtx->bHdr->flags = req->flags; + binCtx->bHdr->flags = 0; binCtx->rHdr = hdr; binCtx->bHdrSize = sizeof(*sreq); binCtx->type = CMPI_ref; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sblim-sfcb-1.4.8/cimXmlOps.y new/sblim-sfcb-1.4.9/cimXmlOps.y --- old/sblim-sfcb-1.4.8/cimXmlOps.y 2014-03-27 00:46:28.000000000 +0100 +++ new/sblim-sfcb-1.4.9/cimXmlOps.y 2014-11-25 02:43:09.000000000 +0100 @@ -145,7 +145,7 @@ binCtx->oHdr = (OperationHdr *) req; binCtx->bHdr = &sreq->hdr; - binCtx->bHdr->flags = req->flags; + binCtx->bHdr->flags = 0; binCtx->rHdr = hdr; binCtx->bHdrSize = sizeof(*sreq); binCtx->type = CMPI_ref; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sblim-sfcb-1.4.8/cimXmlParser.c new/sblim-sfcb-1.4.9/cimXmlParser.c --- old/sblim-sfcb-1.4.8/cimXmlParser.c 2014-03-27 00:46:28.000000000 +0100 +++ new/sblim-sfcb-1.4.9/cimXmlParser.c 2014-11-25 02:43:09.000000000 +0100 @@ -1,6 +1,6 @@ /* - * $Id: cimXmlParser.c c29c15e on Wed Feb 19 18:47:31 2014 -0500 by Dave Heller $ + * $Id: cimXmlParser.c a9dda19 on Fri Apr 25 19:12:04 2014 -0400 by Dave Heller $ * * © Copyright IBM Corp. 2005, 2007 * @@ -1724,7 +1724,7 @@ control.reqHdr.binCtx = calloc(1, sizeof(BinRequestContext)); control.reqHdr.principal = ctx->principal; control.reqHdr.sessionId = ctx->sessionId; - control.reqHdr.role = NULL; + control.reqHdr.role = ctx->role; control.paramValues.last = control.paramValues.first = NULL; control.properties.last = control.properties.first = NULL; control.qualifiers.last = control.qualifiers.first = NULL; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sblim-sfcb-1.4.8/cimXmlParserProcessed.c new/sblim-sfcb-1.4.9/cimXmlParserProcessed.c --- old/sblim-sfcb-1.4.8/cimXmlParserProcessed.c 2014-03-27 00:56:52.000000000 +0100 +++ new/sblim-sfcb-1.4.9/cimXmlParserProcessed.c 2014-11-25 02:44:02.000000000 +0100 @@ -1,6 +1,6 @@ /* - * $Id: cimXmlParser.c c29c15e on Wed Feb 19 18:47:31 2014 -0500 by Dave Heller $ + * $Id: cimXmlParser.c a9dda19 on Fri Apr 25 19:12:04 2014 -0400 by Dave Heller $ * * © Copyright IBM Corp. 2005, 2007 * @@ -1724,7 +1724,7 @@ control.reqHdr.binCtx = calloc(1, sizeof(BinRequestContext)); control.reqHdr.principal = ctx->principal; control.reqHdr.sessionId = ctx->sessionId; - control.reqHdr.role = NULL; + control.reqHdr.role = ctx->role; control.paramValues.last = control.paramValues.first = NULL; control.properties.last = control.properties.first = NULL; control.qualifiers.last = control.qualifiers.first = NULL; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sblim-sfcb-1.4.8/configure new/sblim-sfcb-1.4.9/configure --- old/sblim-sfcb-1.4.8/configure 2014-03-27 00:56:16.000000000 +0100 +++ new/sblim-sfcb-1.4.9/configure 2014-11-25 03:06:33.000000000 +0100 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.68 for Small Footprint CIM Broker 1.4.8. +# Generated by GNU Autoconf 2.68 for Small Footprint CIM Broker 1.4.9. # # Report bugs to <[email protected]>. # @@ -570,8 +570,8 @@ # Identity of this package. PACKAGE_NAME='Small Footprint CIM Broker' PACKAGE_TARNAME='sblim-sfcb' -PACKAGE_VERSION='1.4.8' -PACKAGE_STRING='Small Footprint CIM Broker 1.4.8' +PACKAGE_VERSION='1.4.9' +PACKAGE_STRING='Small Footprint CIM Broker 1.4.9' PACKAGE_BUGREPORT='[email protected]' PACKAGE_URL='' @@ -1400,7 +1400,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures Small Footprint CIM Broker 1.4.8 to adapt to many kinds of systems. +\`configure' configures Small Footprint CIM Broker 1.4.9 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1470,7 +1470,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of Small Footprint CIM Broker 1.4.8:";; + short | recursive ) echo "Configuration of Small Footprint CIM Broker 1.4.9:";; esac cat <<\_ACEOF @@ -1608,7 +1608,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -Small Footprint CIM Broker configure 1.4.8 +Small Footprint CIM Broker configure 1.4.9 generated by GNU Autoconf 2.68 Copyright (C) 2010 Free Software Foundation, Inc. @@ -2209,7 +2209,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by Small Footprint CIM Broker $as_me 1.4.8, which was +It was created by Small Footprint CIM Broker $as_me 1.4.9, which was generated by GNU Autoconf 2.68. Invocation command line was $ $0 $@ @@ -3032,7 +3032,7 @@ # Define the identity of the package. PACKAGE='sblim-sfcb' - VERSION='1.4.8' + VERSION='1.4.9' cat >>confdefs.h <<_ACEOF @@ -16066,7 +16066,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by Small Footprint CIM Broker $as_me 1.4.8, which was +This file was extended by Small Footprint CIM Broker $as_me 1.4.9, which was generated by GNU Autoconf 2.68. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -16132,7 +16132,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -Small Footprint CIM Broker config.status 1.4.8 +Small Footprint CIM Broker config.status 1.4.9 configured by $0, generated by GNU Autoconf 2.68, with options \\"\$ac_cs_config\\" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sblim-sfcb-1.4.8/configure.ac new/sblim-sfcb-1.4.9/configure.ac --- old/sblim-sfcb-1.4.8/configure.ac 2014-03-27 00:50:52.000000000 +0100 +++ new/sblim-sfcb-1.4.9/configure.ac 2014-11-25 03:00:34.000000000 +0100 @@ -1,4 +1,4 @@ -# $Id: configure.ac b954c94 on Sun Dec 29 12:18:36 2013 -0500 by Dave Heller $ +# $Id: configure.ac db4cac6 on Wed Mar 26 20:16:34 2014 -0400 by Dave Heller $ # # configure.ac # @@ -22,7 +22,7 @@ # Process this file with autoconf to produce a configure script. -AC_INIT(Small Footprint CIM Broker, 1.4.8, [email protected], sblim-sfcb) +AC_INIT(Small Footprint CIM Broker, 1.4.9, [email protected], sblim-sfcb) AC_CONFIG_SRCDIR([providerDrv.c]) #disable "seems to ignore the --datarootdir setting" warnings diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sblim-sfcb-1.4.8/control.c new/sblim-sfcb-1.4.9/control.c --- old/sblim-sfcb-1.4.8/control.c 2014-03-27 00:46:28.000000000 +0100 +++ new/sblim-sfcb-1.4.9/control.c 2014-11-25 02:43:10.000000000 +0100 @@ -73,9 +73,12 @@ char **origArgv; int origArgc; -int useCDATA; unsigned int labelProcs; +int useCDATA; +int httpProcIdX; +long httpReqHandlerTimeout; + /** * Kindly null terminate, always, even if might overwrite * the last char of the truncated string. @@ -158,6 +161,7 @@ {"keepaliveMaxRequest", CTL_LONG, NULL, {.slong=10}}, {"selectTimeout", CTL_LONG, NULL, {.slong=5}}, {"maxBindAttempts", CTL_LONG, NULL, {.slong=8}}, + {"httpReqHandlerTimeout", CTL_LONG, NULL, {.slong=40}}, {"providerSampleInterval", CTL_LONG, NULL, {.slong=30}}, {"providerTimeoutInterval", CTL_LONG, NULL, {.slong=60}}, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sblim-sfcb-1.4.8/getSchema.sh new/sblim-sfcb-1.4.9/getSchema.sh --- old/sblim-sfcb-1.4.8/getSchema.sh 2014-03-27 00:57:29.000000000 +0100 +++ new/sblim-sfcb-1.4.9/getSchema.sh 2014-11-25 03:06:54.000000000 +0100 @@ -109,7 +109,8 @@ fi if [ $? = 0 ]; then fetch_mof && - unzip $ZIPFLAGS -d $sfcbdir/CIM $TMPZIP && + echo "Unpacking CIM Schema to $sfcbdir/CIM/ ..." && + unzip -q $ZIPFLAGS -d $sfcbdir/CIM $TMPZIP && fixschema && exit 0 fi diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sblim-sfcb-1.4.8/getSchema.sh.pre.in new/sblim-sfcb-1.4.9/getSchema.sh.pre.in --- old/sblim-sfcb-1.4.8/getSchema.sh.pre.in 2014-03-27 00:46:28.000000000 +0100 +++ new/sblim-sfcb-1.4.9/getSchema.sh.pre.in 2014-11-25 02:43:10.000000000 +0100 @@ -109,7 +109,8 @@ fi if [ $? = 0 ]; then fetch_mof && - unzip $ZIPFLAGS -d $sfcbdir/CIM $TMPZIP && + echo "Unpacking CIM Schema to $sfcbdir/CIM/ ..." && + unzip -q $ZIPFLAGS -d $sfcbdir/CIM $TMPZIP && fixschema && exit 0 fi diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sblim-sfcb-1.4.8/httpAdapter.c new/sblim-sfcb-1.4.9/httpAdapter.c --- old/sblim-sfcb-1.4.8/httpAdapter.c 2014-03-27 00:46:28.000000000 +0100 +++ new/sblim-sfcb-1.4.9/httpAdapter.c 2014-11-25 02:43:10.000000000 +0100 @@ -94,11 +94,12 @@ int httpLocalOnly = 0; /* 1 = only listen on loopback * interface */ static long hMax; -static int httpProcIdX; +extern int httpProcIdX; static int stopAccepting = 0; static int running = 0; static long keepaliveTimeout = 15; static long keepaliveMaxRequest = 10; +extern long httpReqHandlerTimeout; static long numRequest; static long selectTimeout = 5; /* default 5 sec. timeout for select() before read() */ struct timeval httpSelectTimeout = { 0, 0 }; @@ -2254,6 +2255,9 @@ if (getControlNum("keepaliveMaxRequest", &keepaliveMaxRequest)) keepaliveMaxRequest = 10; + if (getControlNum("httpReqHandlerTimeout", &httpReqHandlerTimeout)) + httpReqHandlerTimeout = 40; + char* chunkStr; if (getControlChars("useChunking", &chunkStr) == 0) { if (strcmp(chunkStr, "false") == 0) { @@ -2310,6 +2314,14 @@ keepaliveMaxRequest); } + if (httpReqHandlerTimeout == 0) { + mlogf(M_INFO, M_SHOW, "--- Request handler timeout disabled\n"); + httpReqHandlerTimeout = LONG_MAX; + } else { + mlogf(M_INFO, M_SHOW, "--- Request handler timeout: %ld seconds\n", + httpReqHandlerTimeout); + } + /* Label the process by modifying the cmdline */ extern void append2Argv(char *appendstr); extern unsigned int labelProcs; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sblim-sfcb-1.4.8/msgqueue.c new/sblim-sfcb-1.4.9/msgqueue.c --- old/sblim-sfcb-1.4.8/msgqueue.c 2014-03-27 00:46:30.000000000 +0100 +++ new/sblim-sfcb-1.4.9/msgqueue.c 2014-11-25 02:43:12.000000000 +0100 @@ -216,6 +216,20 @@ struct iovec iov; struct msghdr msg; + extern int httpProcIdX; + int isReady; + fd_set fds; + struct timeval initialTV = { 0, 0 }, + currentTV; + + if (httpProcIdX) { /* we are a req handler */ + FD_ZERO(&fds); + FD_SET(*s, &fds); + extern long httpReqHandlerTimeout; + initialTV.tv_sec = httpReqHandlerTimeout; + currentTV = initialTV; + } + _SFCB_ENTER(TRACE_MSGQUEUE, "spGetMsg"); _SFCB_TRACE(1, ("--- Receiving from %d length %d", *s, length)); @@ -235,6 +249,21 @@ iov.iov_base = data + r; iov.iov_len = length - r; + /* SFCB-0097: Add a select timeout for req handlers */ + if (httpProcIdX) { + isReady = select(*s+1, &fds, NULL, NULL, ¤tTV); + + if (isReady == 0) /* timeout */ + return -2; + + if (isReady < 0) { + if (errno == EINTR) + continue; + else + return spHandleError(s, em); + } + } + if ((n = recvmsg(*s, &msg, 0)) < 0) { if (errno == EINTR) { _SFCB_TRACE(1, (" Receive interrupted %d", currentProc)); @@ -294,7 +323,7 @@ SpMessageHdr spMsg; static char *em = "rcvMsg receiving from"; MqgStat imqg; - int fromfd; + int fromfd, rc; unsigned long maxlen; int partRecvd = 0, totalRecvd = 0; @@ -305,8 +334,10 @@ if (mqg == NULL) mqg = &imqg; do { - if ((spGetMsg(s, &fromfd, &spMsg, sizeof(spMsg), mqg)) == -1) + if ((rc = spGetMsg(s, &fromfd, &spMsg, sizeof(spMsg), mqg)) == -1) return spHandleError(s, em); + if (rc < 0) + _SFCB_RETURN(rc); if (mqg && mqg->teintr) { mqg->eintr = 1; @@ -476,7 +507,14 @@ iov[0].iov_base = &spMsg; iov[0].iov_len = sizeof(spMsg); - if ((rc = sendmsg(*to, &msg, 0)) < 0) { + /* SFCB-0097: Suppress SIGPIPE for provider processes, since it probably just + * means the req handler went away, and we handle that error here */ + int flags = 0; + extern int httpProcIdX; + if (httpProcIdX == 0) /* not a req handler */ + flags = MSG_NOSIGNAL; + + if ((rc = sendmsg(*to, &msg, flags)) < 0) { return spHandleError(to, em); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sblim-sfcb-1.4.8/providerMgr.c new/sblim-sfcb-1.4.9/providerMgr.c --- old/sblim-sfcb-1.4.8/providerMgr.c 2014-03-27 00:46:30.000000000 +0100 +++ new/sblim-sfcb-1.4.9/providerMgr.c 2014-11-25 02:43:12.000000000 +0100 @@ -1,6 +1,6 @@ /* - * $Id: providerMgr.c 405966f on Sat Dec 28 12:28:30 2013 -0500 by Dave Heller $ + * $Id: providerMgr.c 5ea1945 on Thu May 1 19:59:43 2014 -0400 by Dave Heller $ * * © Copyright IBM Corp. 2005, 2007 * @@ -1277,6 +1277,11 @@ else if (ctx->rc == MSG_X_EXTENDED_CTL_MSG) { ctx->rc = ctx->ctlXdata->code; } + else if (ctx->rc == -2) { + extern int httpProcIdX; + if (httpProcIdX) + exit(1); + } if (!localMode) { closeSocket(&sockets, COM_ALL, "getProviderContext"); @@ -1301,6 +1306,7 @@ BinResponseHdr *resp = NULL; int fromS; void *heapCtl = markHeap(); + extern int httpProcIdX; #ifdef SFCB_DEBUG struct rusage us, ue; @@ -1412,7 +1418,7 @@ free(resp); resp = NULL; - if (spRecvResult(&sockets.receive, &fromS, (void**) &resp, &size) < 0) { + if ((rc = spRecvResult(&sockets.receive, &fromS, (void**) &resp, &size)) < 0) { size = 0; /* force failure handling */ } @@ -1422,6 +1428,13 @@ if (resp == NULL || size == 0) { resp = calloc(sizeof(BinResponseHdr), 1); resp->rc = CMPI_RC_ERR_FAILED + 1; + if (rc == -2) { + mlogf(M_ERROR, M_SHOW, + "--- req hander %d timed out waiting for provider response\n", + httpProcIdX); + resp->object[0] = setCharsMsgSegment( + "Req handler timed out waiting for provider response"); + } } for (i = 0; i < resp->count; i++) { resp->object[i].data = @@ -1444,7 +1457,7 @@ else if ((ctx->noResp & 1) == 0) { - if (spRecvResult(&sockets.receive, &fromS, (void **) &resp, &size) < 0) { + if ((rc = spRecvResult(&sockets.receive, &fromS, (void**) &resp, &size)) < 0) { size = 0; /* force failure case */ } @@ -1454,6 +1467,13 @@ if (resp == NULL || size == 0) { resp = calloc(sizeof(BinResponseHdr), 1); resp->rc = CMPI_RC_ERR_FAILED + 1; + if (rc == -2) { + mlogf(M_ERROR, M_SHOW, + "--- req hander %d timed out waiting for provider response\n", + httpProcIdX); + resp->object[0] = setCharsMsgSegment( + "Req handler timed out waiting for provider response"); + } } ctx->rCount = ctx->pCount; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sblim-sfcb-1.4.8/sfcb.cfg.pre.in new/sblim-sfcb-1.4.9/sfcb.cfg.pre.in --- old/sblim-sfcb-1.4.8/sfcb.cfg.pre.in 2014-03-27 00:46:31.000000000 +0100 +++ new/sblim-sfcb-1.4.9/sfcb.cfg.pre.in 2014-11-25 02:43:13.000000000 +0100 @@ -1,4 +1,4 @@ -# $Id: sfcb.cfg.pre.in 0b313d3 on Sat Mar 22 11:32:35 2014 -0400 by Dave Heller $ +# $Id: sfcb.cfg.pre.in 5ea1945 on Thu May 1 19:59:43 2014 -0400 by Dave Heller $ ## ## Sample Configuration for Small Footprint CIM Broker ## @@ -122,6 +122,18 @@ ## Default is 10 #keepaliveMaxRequest: 10 +## Maximum time in seconds a HTTP process (i.e request handler) will wait for +## a provider response before giving up. A timeout implies the provider is hung +## or has crashed. The timeout prevents the handler from waiting indefinitely. +## A value too short may allow insufficient time for long-running processes to +## complete; a value too long may allow handlers to be tied up longer than +## necessary. A value of 0 implies no timeout (wait indefinitely). Note this +## property has no effect on the time a handler will wait on a HTTP client; +## that is governed by selectTimeout or keepaliveTimeout, depending on whether +## or not the handler is in a request. +## Default is 40 +#httpReqHandlerTimeout: 40 + ## The location of the HTTP named socket. This should be someplace writable ## by the user that sfcb runs under. ## Default is /tmp/sfcbHttpSocket diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sblim-sfcb-1.4.8/sfcb.spec new/sblim-sfcb-1.4.9/sfcb.spec --- old/sblim-sfcb-1.4.8/sfcb.spec 2014-03-27 00:56:43.000000000 +0100 +++ new/sblim-sfcb-1.4.9/sfcb.spec 2014-11-25 03:06:53.000000000 +0100 @@ -8,7 +8,7 @@ Summary: Small Footprint CIM Broker Name: sblim-sfcb -Version: 1.4.8 +Version: 1.4.9 Release: 0 Group: Systems Management/Base License: EPL diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sblim-sfcb-1.4.8/test/Makefile new/sblim-sfcb-1.4.9/test/Makefile --- old/sblim-sfcb-1.4.8/test/Makefile 2014-03-27 00:56:43.000000000 +0100 +++ new/sblim-sfcb-1.4.9/test/Makefile 2014-11-25 03:06:53.000000000 +0100 @@ -180,10 +180,10 @@ PACKAGE = sblim-sfcb PACKAGE_BUGREPORT = [email protected] PACKAGE_NAME = Small Footprint CIM Broker -PACKAGE_STRING = Small Footprint CIM Broker 1.4.8 +PACKAGE_STRING = Small Footprint CIM Broker 1.4.9 PACKAGE_TARNAME = sblim-sfcb PACKAGE_URL = -PACKAGE_VERSION = 1.4.8 +PACKAGE_VERSION = 1.4.9 PATH_SEPARATOR = : PROFILER = RANLIB = ranlib @@ -204,7 +204,7 @@ STRIP = strip SYSTEMDDIR = /share/systemd TEST_SUBDIRS = -VERSION = 1.4.8 +VERSION = 1.4.9 YACC = bison -y abs_builddir = /root/sblim/sfcb/test abs_srcdir = /root/sblim/sfcb/test -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
