Hello community, here is the log from the commit of package openwsman-yast for openSUSE:Factory checked in at 2011-12-09 09:32:07 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/openwsman-yast (Old) and /work/SRC/openSUSE:Factory/.openwsman-yast.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "openwsman-yast", Maintainer is "[email protected]" Changes: -------- --- /work/SRC/openSUSE:Factory/openwsman-yast/openwsman-yast.changes 2011-10-19 00:47:05.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.openwsman-yast.new/openwsman-yast.changes 2011-12-09 09:32:15.000000000 +0100 @@ -1,0 +2,12 @@ +Thu Dec 8 14:14:23 UTC 2011 - [email protected] + +- Version 1.5.10 + - Requires Openwsman >= 2.2.x + - Fix argument extraction for 'eval' + +------------------------------------------------------------------- +Thu Dec 8 11:05:12 UTC 2011 - [email protected] + +- fix plugin API version + +------------------------------------------------------------------- Old: ---- openwsman-yast-1.5.9.patch openwsman-yast-1.5.9.tar.bz2 openwsman-yast-const.patch New: ---- openwsman-yast-1.5.10.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ openwsman-yast.spec ++++++ --- /var/tmp/diff_new_pack.LszO3T/_old 2011-12-09 09:32:17.000000000 +0100 +++ /var/tmp/diff_new_pack.LszO3T/_new 2011-12-09 09:32:17.000000000 +0100 @@ -18,16 +18,15 @@ Name: openwsman-yast -Version: 1.5.9 -Release: 108 +Version: 1.5.10 +Release: 2 License: BSD-3-Clause -Url: http://build.opensuse.org/project/show?project=home:kwk +Url: http://build.opensuse.org/project/show?project=systemsmanagement%3Awbem Source: %{name}-%{version}.tar.bz2 -Patch: %{name}-%{version}.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build Group: System/Management -BuildRequires: gcc-c++ libwsman-devel >= 1.5.0 libxcrypt-devel libxml2-devel openwsman >= 1.5.0 pkgconfig yast2-core-devel -Requires: openwsman-server >= 1.5.0 +BuildRequires: gcc-c++ libwsman-devel >= 2.2.0 libxcrypt-devel libxml2-devel openwsman >= 2.2.0 pkgconfig yast2-core-devel +Requires: openwsman-server >= 2.2.0 Requires: yast2-core Summary: YaST plugin for openwsman-server @@ -37,15 +36,8 @@ Combined with rwsman (the openwsman client bindings for Ruby) and Ruby On Rails, one can e.g. easily create a Web interface for YaST. - - -Authors: --------- - Klaus K�mpf <[email protected]> - %prep %setup -%patch -p1 %build %configure --prefix=/usr --libdir=%{_libdir} --sysconfdir=/etc --docdir=/usr/share/doc/packages/openwsman --disable-static ++++++ openwsman-yast-1.5.9.tar.bz2 -> openwsman-yast-1.5.10.tar.bz2 ++++++ ++++ 69527 lines of diff (skipped) ++++ retrying with extended exclude list diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/openwsman-yast-1.5.9/configure.in new/openwsman-yast-1.5.10/configure.in --- old/openwsman-yast-1.5.9/configure.in 2007-12-15 13:36:14.000000000 +0100 +++ new/openwsman-yast-1.5.10/configure.in 2011-12-08 15:12:06.000000000 +0100 @@ -3,7 +3,7 @@ dnl ******************************************* AC_PREREQ(2.53) -AC_INIT(openwsman-yast, 1.5.9) +AC_INIT(openwsman-yast, 1.5.10) AC_CONFIG_SRCDIR(src/yast.c) AM_INIT_AUTOMAKE(AC_PACKAGE_NAME, AC_PACKAGE_VERSION) @@ -11,9 +11,9 @@ AM_MAINTAINER_MODE AC_PROG_MAKE_SET -PKG_CHECK_MODULES(WSMAN, openwsman >= 1.5, [ +PKG_CHECK_MODULES(WSMAN, openwsman >= 2.2, [ WSMAN_VERSION=`$PKG_CONFIG --modversion openwsman`],[ - AC_MSG_ERROR([need libwsman-devel version 1.5 or greater], [-1])]) + AC_MSG_ERROR([need openwsman-devel version 2.2 or greater], [-1])]) AC_SUBST(WSMAN_VERSION) dnl *************************** diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/openwsman-yast-1.5.9/openwsman-yast.spec.in new/openwsman-yast-1.5.10/openwsman-yast.spec.in --- old/openwsman-yast-1.5.9/openwsman-yast.spec.in 2007-12-15 13:36:53.000000000 +0100 +++ new/openwsman-yast-1.5.10/openwsman-yast.spec.in 2011-12-08 15:13:36.000000000 +0100 @@ -1,22 +1,22 @@ Name: openwsman-yast Version: @PACKAGE_VERSION@ Release: 2 -License: BSD +License: BSD-3-Clause Url: http://build.opensuse.org/project/show?project=home%3Akwk Source: %{name}-%{version}.tar.bz2 BuildRoot: %{_tmppath}/%{name}-%{version}-build -Group: Applications/Management -BuildRequires: openwsman >= 1.5.0 libwsman-devel >= 1.5.0 gcc-c++ pkgconfig libxml2-devel yast2-core-devel libxcrypt-devel -Requires: openwsman-server >= 1.5.0 +Group: System/Management +BuildRequires: openwsman >= 2.2.0 libwsman-devel >= 2.2.0 gcc-c++ pkgconfig libxml2-devel yast2-core-devel libxcrypt-devel +Requires: openwsman-server >= 2.2.0 Requires: yast2-core -Summary: YaST plugin for openwsman +Summary: YaST plugin for openwsman-server %description -This package provides a plugin for the openwsman server -to make YaST functionality available via the WS-Management -protocol. - +This package provides a YaST plugin for wsmand, the WS Management +Daemon. The plugin makes YaST (the ycp layer api) remotely accessible. +Combined with rwsman (the openwsman client bindings for Ruby) and Ruby +On Rails, one can e.g. easily create a Web interface for YaST. %prep %setup diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/openwsman-yast-1.5.9/src/yast.c new/openwsman-yast-1.5.10/src/yast.c --- old/openwsman-yast-1.5.9/src/yast.c 2007-07-05 10:46:11.000000000 +0200 +++ new/openwsman-yast-1.5.10/src/yast.c 2011-12-08 14:53:46.000000000 +0100 @@ -130,7 +130,7 @@ WsDispatchInterfaceInfo *ifc = (WsDispatchInterfaceInfo *)data; ifc->flags = 0; ifc->actionUriBase = NULL; - ifc->version = WSMAN_VERSION; + ifc->version = "2.2"; ifc->vendor = "Novell, Inc."; ifc->displayName = "YaST"; ifc->notes = "Return value from call"; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/openwsman-yast-1.5.9/src/yast.h new/openwsman-yast-1.5.10/src/yast.h --- old/openwsman-yast-1.5.9/src/yast.h 2007-07-05 10:46:11.000000000 +0200 +++ new/openwsman-yast-1.5.10/src/yast.h 2011-12-08 14:35:00.000000000 +0100 @@ -14,6 +14,7 @@ #include <wsman-xml-serializer.h> #include <wsman-declarations.h> +#include <u/libu.h> // The resource is modeled as an xml string // see below: SER_DECLARE_TYPE diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/openwsman-yast-1.5.9/src/yast_stub_custom.c new/openwsman-yast-1.5.10/src/yast_stub_custom.c --- old/openwsman-yast-1.5.9/src/yast_stub_custom.c 2007-11-15 16:21:40.000000000 +0100 +++ new/openwsman-yast-1.5.10/src/yast_stub_custom.c 2011-12-08 15:21:21.000000000 +0100 @@ -72,7 +72,7 @@ hnode_t *node; while ((node = hash_scan_next( &ptr )) ) { - debug ( "YaST: hash [%s] = [%s]", hnode_getkey( node ), hnode_get( node ) ); + debug ( "YaST: hash [%s] = [%p]", hnode_getkey( node ), hnode_get( node ) ); } return; } @@ -98,7 +98,8 @@ // retrieve the incoming SOAP message, the body and the context SoapH soap = soap_get_op_soap( op ); in_doc = soap_get_op_doc( op, 1 ); - +#if 0 + /* debug only */ if (in_doc) { char *buf = NULL; int size; @@ -106,7 +107,7 @@ ws_xml_dump_memory_node_tree( node, &buf, &size ); } - +#endif WsContextH cntx = ws_create_ep_context( soap, in_doc ); if (!cntx) { error( "Cannot create context" ); @@ -155,7 +156,6 @@ hash_t *method_args = wsman_get_method_args( cntx, resource_uri ); debug_hash( method_args, "YaST: method args" ); - if ( !method_args ) { // args given ? status.fault_code = WSMAN_INVALID_PARAMETER; status.fault_detail_code = WSMAN_DETAIL_MISSING_VALUES; @@ -173,17 +173,42 @@ debug ("YaST: YCP/eval called" ); // property for 'eval' must be 'ycp' - hnode_t *ycpnode = hash_lookup( method_args, "ycp" ); - debug ("YaST: 'ycp' node @ %p", ycpnode ); - if (!ycpnode) { + hnode_t *hn = hash_lookup( method_args, METHOD_ARGS_KEY ); + debug ("YaST: %s @ %p", METHOD_ARGS_KEY, hn ); + if (!hn) { + status.fault_code = WSMAN_SCHEMA_VALIDATION_ERROR; + status.fault_detail_code = WSMAN_DETAIL_INVALID_VALUE; + debug( "YaST: no method args found for 'eval'" ); + goto cleanup; + } + + list_t *arglist = (list_t *)hnode_get(hn); + lnode_t *argnode = list_first(arglist); + if (!argnode) { + status.fault_code = WSMAN_SCHEMA_VALIDATION_ERROR; + status.fault_detail_code = WSMAN_DETAIL_INVALID_VALUE; + debug( "YaST: argument list is empty for 'eval'" ); + goto cleanup; + } + + methodarglist_t *arraynode = (methodarglist_t *)argnode->list_data; + if (!arraynode || strcmp(arraynode->key, "ycp")) { + status.fault_code = WSMAN_SCHEMA_VALIDATION_ERROR; + status.fault_detail_code = WSMAN_DETAIL_INVALID_VALUE; + debug( "YaST: missing 'ycp' argument for 'eval'" ); + goto cleanup; + } + + selector_entry *sentry = (selector_entry *)arraynode->data; + if (!sentry) { status.fault_code = WSMAN_SCHEMA_VALIDATION_ERROR; status.fault_detail_code = WSMAN_DETAIL_INVALID_VALUE; - debug( "YaST: no 'ycp' property found for 'eval'" ); + debug( "YaST: 'ycp' argument for 'eval' has no data" ); goto cleanup; } // get value of "ycp" - char *ycp = hnode_get( ycpnode ); + const char *ycp = sentry->entry.text; // create response out_doc = wsman_create_response_envelope( in_doc , NULL ); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/openwsman-yast-1.5.9/src/yast_yast.cc new/openwsman-yast-1.5.10/src/yast_yast.cc --- old/openwsman-yast-1.5.9/src/yast_yast.cc 2007-08-06 16:24:12.000000000 +0200 +++ new/openwsman-yast-1.5.10/src/yast_yast.cc 2011-12-08 14:26:21.000000000 +0100 @@ -9,23 +9,6 @@ #define y2log_component "openwsman" -#include <wsman-xml-api.h> - -#ifdef LOG_DEBUG -#undef LOG_DEBUG -#endif -#ifdef LOG_WARNING -#undef LOG_WARNING -#endif -#ifdef error -#undef error -#endif -#ifdef warning -#undef warning -#endif -#ifdef debug -#undef debug -#endif #include <ycp/ExecutionEnvironment.h> #include <y2/Y2Component.h> @@ -42,6 +25,7 @@ #include "yast.h" +#include <wsman-xml-api.h> void yast_initialize() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/openwsman-yast-1.5.9/wsman_yast_config.h.in new/openwsman-yast-1.5.10/wsman_yast_config.h.in --- old/openwsman-yast-1.5.9/wsman_yast_config.h.in 2007-07-06 11:26:55.000000000 +0200 +++ new/openwsman-yast-1.5.10/wsman_yast_config.h.in 2011-12-08 14:28:57.000000000 +0100 @@ -165,6 +165,10 @@ /* Define to 1 if you have the `va_copy' function. */ #undef HAVE_VA_COPY +/* Define to the sub-directory in which libtool stores uninstalled libraries. + */ +#undef LT_OBJDIR + /* Name of package */ #undef PACKAGE @@ -180,6 +184,9 @@ /* Define to the one symbol short name of this package. */ #undef PACKAGE_TARNAME +/* Define to the home page for this package. */ +#undef PACKAGE_URL + /* Define to the version of this package. */ #undef PACKAGE_VERSION @@ -215,5 +222,8 @@ /* Defined if verbose debug logging is requested */ #undef WSMAN_DEBUG_VERBOSE +/* Define to `unsigned int' if <sys/types.h> does not define. */ +#undef size_t + /* Define to `int' if <sys/types.h> does not define. */ #undef ssize_t -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
