Hello community,
here is the log from the commit of package sblim-sfcb for openSUSE:Factory
checked in at Fri Jan 9 02:01:19 CET 2009.
--------
--- sblim-sfcb/sblim-sfcb.changes 2008-12-16 16:01:56.000000000 +0100
+++ /mounts/work_src_done/STABLE/sblim-sfcb/sblim-sfcb.changes 2009-01-07 22:00:14.603123000 +0100
@@ -1,0 +2,26 @@
+Wed Jan 7 13:56:58 MST 2009 - bwhiteley@suse.de
+
+- Restart sfcbd when package is upgraded (bnc#463993)
+
+-------------------------------------------------------------------
+Tue Jan 6 11:14:19 MST 2009 - bwhiteley@suse.de
+
+- Fix output of /etc/init.d/sfcb status (bnc#463799)
+
+-------------------------------------------------------------------
+Mon Dec 22 15:00:35 MST 2008 - bwhiteley@suse.de
+
+- Disabled sfcbd daemon by default (bnc#460650)
+
+-------------------------------------------------------------------
+Fri Dec 19 15:11:31 MST 2008 - npaxton@novell.com
+
+- Preserve static instances during repository creation.
+ (bnc#457366, sblim tracker #2140807)
+
+-------------------------------------------------------------------
+Wed Dec 17 23:32:43 CET 2008 - bwhiteley@suse.de
+
+- Improved patch for configurable access control. (bnc#444403)
+
+-------------------------------------------------------------------
calling whatdependson for head-i586
New:
----
0320-bnc457366A-2140807-static_instances.patch
0330-bnc457366B-2441640-mofc_instance_migration.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ sblim-sfcb.spec ++++++
--- /var/tmp/diff_new_pack.H18911/_old 2009-01-09 02:00:57.000000000 +0100
+++ /var/tmp/diff_new_pack.H18911/_new 2009-01-09 02:00:57.000000000 +0100
@@ -1,7 +1,7 @@
#
# spec file for package sblim-sfcb (Version 1.3.2)
#
-# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -21,7 +21,7 @@
Name: sblim-sfcb
Version: 1.3.2
-Release: 12
+Release: 13
Group: System/Management
License: Other uncritical OpenSource License; CPL 1.0
Url: http://sblim.sf.net/
@@ -66,6 +66,8 @@
Patch290: 0290-bnc445795-2095972-startup_hang.patch
Patch300: 0300-bnc425457-2169514-limit_message_size.patch
Patch310: 0310-bnc457768-2433594-unaligned_access.patch
+Patch320: 0320-bnc457366A-2140807-static_instances.patch
+Patch330: 0330-bnc457366B-2441640-mofc_instance_migration.patch
Provides: cimserver
Provides: cim-server
%if 0%{?suse_version} >= 1030
@@ -131,6 +133,10 @@
%patch290 -p0 -b .0290-bnc445795-2095972-startup_hang.patch
%patch300 -p0 -b .0300-bnc425457-2169514-limit_message_size.patch
%patch310 -p0 -b .0310-bnc457768-2433594-unaligned_access.patch
+%patch320 -p0 -b .0320-bnc457366A-2140807-static_instances.patch
+cd mofc
+%patch330 -p0 -b .0330-bnc457366B-2441640-mofc_instance_migration.patch
+cd ..
export PATCH_GET=0
%build
@@ -196,41 +202,52 @@
/usr/sbin/groupmod -A root sfcb >/dev/null 2>&1 || :
%post
+test -n "$FIRST_ARG" || FIRST_ARG=$1
#removed NWP, placed into init script for first service startup
#%{_datadir}/sfcb/genSslCert.sh %{_sysconfdir}/sfcb
%if 0%{?suse_version}
-%{fillup_and_insserv -f -y sfcb}
+%{fillup_and_insserv -f sfcb}
%endif
-# Added NWP 5/14/08 - moved from 'post schema'
-sfcbrepos -f 2> /dev/null
+if test "$FIRST_ARG" -eq 1 ; then
+ sfcbrepos -f 2> /dev/null || :
+fi
+# else we do it in postun instead.
/sbin/ldconfig
exit 0
%preun
-%stop_on_removal
+%stop_on_removal sfcb
%postun
+test -n "$FIRST_ARG" || FIRST_ARG=$1
/sbin/ldconfig
+if test "$FIRST_ARG" -ge 1 ; then
+ sfcbrepos -f 2> /dev/null || :
+fi
+%restart_on_update sfcb
%insserv_cleanup
-# comment out - NWP - removing schema pkg
-#%post schema
-#sfcbrepos -f 2> /dev/null
-#exit 0
-#%files schema
-#%defattr(-,root,root)
-#%dir %{_datadir}/sfcb/
-#%{_datadir}/sfcb/CIM
%files -f _pkg_list
%changelog
+* Wed Jan 07 2009 bwhiteley@suse.de
+- Restart sfcbd when package is upgraded (bnc#463993)
+* Tue Jan 06 2009 bwhiteley@suse.de
+- Fix output of /etc/init.d/sfcb status (bnc#463799)
+* Mon Dec 22 2008 bwhiteley@suse.de
+- Disabled sfcbd daemon by default (bnc#460650)
+* Fri Dec 19 2008 npaxton@novell.com
+- Preserve static instances during repository creation.
+ (bnc#457366, sblim tracker #2140807)
+* Wed Dec 17 2008 bwhiteley@suse.de
+- Improved patch for configurable access control. (bnc#444403)
* Tue Dec 16 2008 kkaempf@suse.de
- Adjust padding to siezof(void *) on ia64 (bnc#457768)
* Mon Dec 08 2008 bwhiteley@suse.de
- Fix location of docs (bnc#457195)
* Mon Dec 08 2008 bwhiteley@suse.de
- Adjust pam configuration to SUSE standard (bnc#457266)
-* Sat Dec 06 2008 bwhiteley@suse.de
+* Fri Dec 05 2008 bwhiteley@suse.de
- Fix startup deadlock (bnc#445795, sblim tracker #2095972).
- Limit message size (bnc#425457, sblim tracker #2169514)
- Better fix for content length check (bnc#425457,
@@ -240,7 +257,7 @@
- Fix some calls to mlogf (sblim tracker #2390100, bnc#425457)
- Check for empty string in decode64 (sblim tracker #2391132,
bnc#425457)
-* Thu Nov 20 2008 bwhiteley@suse.de
+* Wed Nov 19 2008 bwhiteley@suse.de
- Fix unix socket bind problem. (bnc#445334)
* Fri Nov 07 2008 bwhiteley@suse.de
- Better patch for HTTP connection close -- sblim tracker #2193250
++++++ 0250-bnc444403-access_control.patch ++++++
--- /var/tmp/diff_new_pack.H18911/_old 2009-01-09 02:00:58.000000000 +0100
+++ /var/tmp/diff_new_pack.H18911/_new 2009-01-09 02:00:58.000000000 +0100
@@ -1,6 +1,6 @@
-diff -up ./httpAdapter.c.orig ./httpAdapter.c
---- ./httpAdapter.c.orig 2008-12-03 00:38:33.000000000 -0700
-+++ ./httpAdapter.c 2008-12-03 16:11:56.000000000 -0700
+diff -up ./httpAdapter.c.0250-bnc444403-access_control.patch ./httpAdapter.c
+--- ./httpAdapter.c.0250-bnc444403-access_control.patch 2008-12-09 10:05:44.000000000 -0700
++++ ./httpAdapter.c 2008-12-09 10:07:53.000000000 -0700
@@ -53,11 +53,15 @@
#include
#include
@@ -17,19 +17,23 @@
unsigned long exFlags = 0;
static char *name;
static int debug;
-@@ -848,11 +852,12 @@ static int doHttpRequest(CommHndl conn_f
+@@ -846,13 +850,14 @@ static int doHttpRequest(CommHndl conn_f
+
+ int authorized = 0;
if (!discardInput && doUdsAuth) {
- struct ucred cr;
- socklen_t cl = sizeof(cr);
+- struct ucred cr;
+- socklen_t cl = sizeof(cr);
- if (getsockopt(conn_fd.socket, SOL_SOCKET, SO_PEERCRED, &cr, &cl) == 0) {
- if (cr.uid == 0) {
- authorized = 1;
- }
- }
-+ int rc = getsockopt(conn_fd.socket, SOL_SOCKET, SO_PEERCRED, &cr, &cl);
-+ if (rc == 0 && cr.uid != -1) {
-+ /* unix socket -- already authenticated via permissions of
-+ * socket file */
++ struct sockaddr_un sun;
++ sun.sun_family = 0;
++ socklen_t cl = sizeof(sun);
++ int rc = getpeername(conn_fd.socket, (struct sockaddr*)&sun, &cl);
++ if (rc == 0 && sun.sun_family == AF_UNIX) {
++ /* Already authenticated via permissions on unix socket */
+ authorized = 1;
+ }
}
@@ -66,9 +70,9 @@
}
if (!debug) {
-diff -up ./pam/sfcb.orig ./pam/sfcb
---- ./pam/sfcb.orig 2008-12-03 02:08:57.000000000 -0700
-+++ ./pam/sfcb 2008-12-03 02:09:32.000000000 -0700
+diff -up ./pam/sfcb.0250-bnc444403-access_control.patch ./pam/sfcb
+--- ./pam/sfcb.0250-bnc444403-access_control.patch 2007-02-15 07:07:23.000000000 -0700
++++ ./pam/sfcb 2008-12-09 10:05:44.000000000 -0700
@@ -1,4 +1,5 @@
# Sample PAM Configuration for Small Footprint CIM Broker
+auth required pam_succeed_if.so quiet user ingroup sfcb
++++++ 0320-bnc457366A-2140807-static_instances.patch ++++++
++++ 892 lines (skipped)
++++++ 0330-bnc457366B-2441640-mofc_instance_migration.patch ++++++
Index: backend_print.c
===================================================================
RCS file: /cvsroot/sblim/mofc/backend_print.c,v
retrieving revision 1.3
diff -u -r1.3 backend_print.c
--- backend_print.c 27 Oct 2006 13:14:21 -0000 1.3
+++ backend_print.c 16 Dec 2008 23:41:28 -0000
@@ -139,6 +139,10 @@
fprintf(f,"Instance %s ",ie -> class_id);
fprintf(f,"{\n");
+ if (ie->instmig)
+ fprintf(f, " From Instance Import/Migration\n");
+ else
+ fprintf(f, " From MOF\n");
print_property_chain(f,ie -> class_props);
fprintf(f,"}\n");
fprintf(f,"\n");
Index: backend_sfcb.c
===================================================================
RCS file: /cvsroot/sblim/mofc/backend_sfcb.c,v
retrieving revision 1.19
diff -u -r1.19 backend_sfcb.c
--- backend_sfcb.c 28 Aug 2007 08:37:13 -0000 1.19
+++ backend_sfcb.c 16 Dec 2008 23:41:28 -0000
@@ -449,7 +449,11 @@
}
path = mofc_getObjectPath(ce, ie, ns);
- inst = ClInstanceNew(ns, ie->class_id);
+
+ if (ie->instmig)
+ inst = ClInstanceNew(ns, ie->class_id);
+ else
+ inst = ClInstanceNewFromMof(ns, ie->class_id);
while (inst_props) {
if (sfcb_options & BACKEND_VERBOSE) {
Index: mofc.y
===================================================================
RCS file: /cvsroot/sblim/mofc/mofc.y,v
retrieving revision 1.6
diff -u -r1.6 mofc.y
--- mofc.y 3 Jan 2007 11:44:08 -0000 1.6
+++ mofc.y 16 Dec 2008 23:41:28 -0000
@@ -31,7 +31,7 @@
extern class_chain * cls_chain_current;
extern class_chain * inst_chain_current;
extern qual_chain * qual_chain_current;
-
+extern int g_instmig;
%}
@@ -225,7 +225,7 @@
opt_property_initializer_list
'}' ';'
{
- $$ = make_instance(current_symtab,$1,$4,$7);
+ $$ = make_instance(current_symtab,$1,$4,$7,g_instmig);
add_class_list(cls_chain_current,get_class_def(current_symtab,$4));
}
;
Index: mofdecl.h
===================================================================
RCS file: /cvsroot/sblim/mofc/mofdecl.h,v
retrieving revision 1.2
diff -u -r1.2 mofdecl.h
--- mofdecl.h 20 Nov 2005 17:37:05 -0000 1.2
+++ mofdecl.h 16 Dec 2008 23:41:28 -0000
@@ -30,7 +30,7 @@
int yyparse(void);
char * upstrdup( const char *, int );
int init_scanner(char * parsefiles[], int numfiles, const char * includedir,
- const char * extrafile, int verbose);
+ const char * extrafile, const char * instmigfile, int verbose);
void stop_scanner(void);
FILE * try_open_file(const char * filename);
extern int line_number;
Index: mofparse.c
===================================================================
RCS file: /cvsroot/sblim/mofc/mofparse.c,v
retrieving revision 1.8
diff -u -r1.8 mofparse.c
--- mofparse.c 7 Nov 2008 16:51:36 -0000 1.8
+++ mofparse.c 16 Dec 2008 23:41:29 -0000
@@ -24,6 +24,7 @@
#include
#include
#include
+#include
#include "mofc.h"
#include "backend.h"
#ifdef HAVE_CONFIG_H
@@ -42,9 +43,10 @@
static char prefix[3000] = {0};
static char backendopt[300] = {0};
static char namespace[600] = {0};
+static char instmigfile[600] = {0};
static size_t backendopt_used = 0;
static char * inclfile = NULL;
-static char * valid_options = "b:o:I:i:d:n:hvV";
+static char * valid_options = "b:o:I:i:d:n:m:hvV";
extern class_chain * cls_chain_current;
extern class_chain * inst_chain_current;
@@ -67,7 +69,7 @@
strncpy(outfile,optarg,sizeof(outfile));
break;
case 'n':
- strncpy(namespace,optarg,sizeof(outfile));
+ strncpy(namespace,optarg,sizeof(namespace));
break;
case 'd':
strncpy(outdir,optarg,sizeof(outdir));
@@ -91,6 +93,9 @@
case 'i':
inclfile = strdup(optarg);
break;
+ case 'm':
+ strncpy(instmigfile,optarg,sizeof(instmigfile));
+ break;
default:
return -1;
}
@@ -101,7 +106,7 @@
static void usage(const char * name)
{
fprintf(stderr,"usage: %s [-hvV] [-I includepath ...] [-i extrafile] [-o outfile] \
-[-b backendopts] [-d outputdirectory] [-n namespace] filename ... \n",name);
+[-b backendopts] [-d outputdirectory] [-n namespace] [-m instancefile] filename ... \n",name);
}
static void version()
@@ -123,6 +128,7 @@
printf(" -b backendopts backend options, see backend documentation\n");
printf(" -d output directory (recommended when parsing qualifiers and instances, as this creates more than one file)\n");
printf(" -n target namespace, only needed for instances and qualifiers\n");
+ printf(" -m filename file that includes instances for import/migration\n");
}
static int error_occured = 0;
@@ -187,7 +193,7 @@
strcat(prefix, outfile);
}
- if (init_scanner(argv+argidx,argc-argidx,inclpath,inclfile,opt_verbose) != 0 ) {
+ if (init_scanner(argv+argidx,argc-argidx,inclpath,inclfile,instmigfile,opt_verbose) != 0 ) {
return 2;
}
if ( ( yyparse() || error_occured )) {
@@ -195,14 +201,22 @@
fprintf( stderr, "error has occured in %s\n", argv[argidx] );
}
stop_scanner();
+ if (inclfile)
+ free(inclfile);
return 3;
}
if (backend_ptr(cls_chain_current, inst_chain_current, qual_chain_current, prefix, outdir, namespace,
opt_verbose ? BACKEND_VERBOSE : BACKEND_DEFAULT,
backendopt) ) {
fprintf( stderr, "backend error has occured writing %s\n", outfile );
+ stop_scanner();
+ if (inclfile)
+ free(inclfile);
+ return 4;
}
stop_scanner();
+ if (inclfile)
+ free(inclfile);
return 0;
}
Index: mofs.l
===================================================================
RCS file: /cvsroot/sblim/mofc/mofs.l,v
retrieving revision 1.7
diff -u -r1.7 mofs.l
--- mofs.l 7 Nov 2008 16:51:36 -0000 1.7
+++ mofs.l 16 Dec 2008 23:41:29 -0000
@@ -78,6 +78,7 @@
char * upyytext;
char * includepath = NULL;
char * extrainclude = NULL;
+int g_instmig = 0;
typedef struct file_stack_struct {
char * file_name;
@@ -88,9 +89,10 @@
#ifndef SCANDEBUG
class_chain * file_cls;
#endif
+ int instmig;
} file_stack_entry;
file_stack_entry *current_file;
-void push_file(FILE * file_handle, char * filename, int keep_symtab);
+void push_file(FILE * file_handle, char * filename, int keep_symtab, int instmig);
void pop_file();
%}
@@ -179,7 +181,7 @@
}
file_handle = try_open_file( incfilename );
if ( file_handle ) {
- push_file( file_handle, incfilename, 0 );
+ push_file( file_handle, incfilename, 0, 0 );
} else {
fprintf(stderr,"include file %s not found\n",
incfilename);
@@ -203,6 +205,7 @@
fclose(current_file -> file_handle);
}
current_file = current_file -> next_file;
+ g_instmig = current_file -> instmig;
file_name = current_file -> file_name;
line_number = current_file -> line_number;
cls_chain_current = current_file -> file_cls;
@@ -222,7 +225,7 @@
*/
int init_scanner(char * parsefiles[], int numfiles, const char * includedir,
- const char * extrafile, int verbose)
+ const char * extrafile, const char * instmigfile, int verbose)
{
FILE * file_handle;
int i;
@@ -261,20 +264,37 @@
inst_chain_current = calloc(sizeof(class_chain),1);
qual_chain_current = calloc(sizeof(qual_chain),1);
current_file = NULL;
+ /* Must push instanceMigration file prior to other files,
+ so it gets installed last.
+ This will cause any instances that are in both MOF and static
+ (ie previous MOF, then modified), the MOF version will be
+ written first, then the static instance version will be written
+ after, causing an overwrite, so the static instance wins
+ */
+ if (instmigfile && *instmigfile) {
+ file_handle = try_open_file( instmigfile );
+ if (file_handle) {
+ push_file(file_handle, (char *)instmigfile,1,1);
+ } else {
+ fprintf(stderr,"instance import/migration file %s not found\n",
+ instmigfile);
+ return -1;
+ }
+ }
for (i=numfiles-1; i >=0; i--) {
file_handle = fopen(parsefiles[i],"r");
if (file_handle == NULL) {
fprintf(stderr,"could not open %s\n",parsefiles[i]);
return -1;
}
- push_file(file_handle,parsefiles[i],1);
+ push_file(file_handle,parsefiles[i],1,0);
}
includepath = (char*) includedir;
extrainclude = (char*) extrafile;
if (extrainclude) {
file_handle = try_open_file( extrainclude );
if (file_handle) {
- push_file(file_handle, extrainclude,0);
+ push_file(file_handle, extrainclude,0,0);
} else {
fprintf(stderr,"extra file %s not found\n",
extrainclude);
@@ -291,12 +311,13 @@
htdelete( current_symtab );
}
-void push_file( FILE *file_handle, char * filename, int keep_symtab )
+void push_file( FILE *file_handle, char * filename, int keep_symtab, int instmig )
{
file_stack_entry * fse =
calloc( sizeof(file_stack_entry), 1);
fse -> file_handle = file_handle;
fse -> file_name = strdup( filename );
+ fse -> instmig = instmig;
fse -> yybuffer =
yy_create_buffer( file_handle, YY_BUF_SIZE );
if (current_file) {
Index: symtab.c
===================================================================
RCS file: /cvsroot/sblim/mofc/symtab.c,v
retrieving revision 1.11
diff -u -r1.11 symtab.c
--- symtab.c 4 Jan 2007 11:43:08 -0000 1.11
+++ symtab.c 16 Dec 2008 23:41:29 -0000
@@ -391,12 +391,14 @@
class_entry * make_instance( hashentry * he,
qual_chain * qu_ch,
const char * name,
- prop_or_method_list * pom_li)
+ prop_or_method_list * pom_li,
+ int instmig)
{
class_entry * ce = malloc(sizeof(class_entry));
prop_chain * props;
ce -> class_id = strdup(name);
+ ce -> instmig = instmig;
if (pom_li) {
ce -> class_props = pom_li -> pom_props;
}
@@ -650,7 +652,7 @@
prop_chain * props = e->class_props;
while (props) {
- if(strcmp(props->prop_id, prop_id))
+ if(strcasecmp(props->prop_id, prop_id))
props = props->prop_next;
else
return props;
Index: symtab.h
===================================================================
RCS file: /cvsroot/sblim/mofc/symtab.h,v
retrieving revision 1.6
diff -u -r1.6 symtab.h
--- symtab.h 3 Jan 2007 11:44:08 -0000 1.6
+++ symtab.h 16 Dec 2008 23:41:29 -0000
@@ -133,7 +133,8 @@
struct class_struct * class_parent;
qual_chain * class_quals;
prop_chain * class_props;
- method_chain * class_methods;
+ method_chain * class_methods;
+ int instmig;
};
typedef struct symtab_struct {
@@ -210,7 +211,8 @@
class_entry * make_instance(hashentry * he,
qual_chain * qu_ch,
const char * name,
- prop_or_method_list * pom_li);
+ prop_or_method_list * pom_li,
+ int instmig);
prop_chain * check_for_prop(class_entry * e, char * prop_id);
int check_for_keys(class_entry * ce, class_entry * ie);
class_entry * get_class_def_for_instance(class_entry * ie);
++++++ sblim-sfcb.init ++++++
--- /var/tmp/diff_new_pack.H18911/_old 2009-01-09 02:00:58.000000000 +0100
+++ /var/tmp/diff_new_pack.H18911/_new 2009-01-09 02:00:58.000000000 +0100
@@ -91,6 +91,7 @@
stop
;;
status)
+ echo -n "Checking for Small Footprint CIM Broker (SFCB): "
checkproc sfcbd
rc_status -v
;;
@@ -101,7 +102,7 @@
reload)
reload
;;
- condrestart)
+ try-restart|condrestart)
$0 status
if test $? = 0; then
$0 restart
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org