commit yast2-http-server for openSUSE:Factory
Hello community, here is the log from the commit of package yast2-http-server for openSUSE:Factory checked in at Sat Mar 7 11:49:24 CET 2009. -------- --- yast2-http-server/yast2-http-server.changes 2009-02-23 12:21:56.000000000 +0100 +++ /mounts/work_src_done/STABLE/yast2-http-server/yast2-http-server.changes 2009-03-06 16:56:56.000000000 +0100 @@ -1,0 +2,13 @@ +Fri Mar 6 16:49:11 CET 2009 - mzugec@suse.cz + +- modules ordering problem (bnc#350590) +- validation of modules dependency +- 2.18.2 + +------------------------------------------------------------------- +Tue Mar 3 10:25:03 CET 2009 - mzugec@suse.cz + +- added X-SuSE-YaST-AutoInstSchema into desktop file (bnc#480466) +- 2.18.1 + +------------------------------------------------------------------- calling whatdependson for head-i586 Old: ---- yast2-http-server-2.18.0.tar.bz2 New: ---- yast2-http-server-2.18.2.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ yast2-http-server.spec ++++++ --- /var/tmp/diff_new_pack.o32178/_old 2009-03-07 11:48:33.000000000 +0100 +++ /var/tmp/diff_new_pack.o32178/_new 2009-03-07 11:48:33.000000000 +0100 @@ -1,5 +1,5 @@ # -# spec file for package yast2-http-server (Version 2.18.0) +# spec file for package yast2-http-server (Version 2.18.2) # # Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany. # @@ -19,12 +19,12 @@ Name: yast2-http-server -Version: 2.18.0 +Version: 2.18.2 Release: 1 License: GPL v2 or later Group: System/YaST BuildRoot: %{_tmppath}/%{name}-%{version}-build -Source0: yast2-http-server-2.18.0.tar.bz2 +Source0: yast2-http-server-2.18.2.tar.bz2 Prefix: /usr BuildRequires: docbook-xsl-stylesheets doxygen libxslt libzio perl-XML-Writer popt-devel sgml-skel update-desktop-files yast2 yast2-devtools yast2-network yast2-packagemanager-devel yast2-perl-bindings yast2-testsuite Requires: yast2-network yast2-perl-bindings libzio @@ -44,7 +44,7 @@ Stanislav Visnovsky <visnov@suse.cz> %prep -%setup -n yast2-http-server-2.18.0 +%setup -n yast2-http-server-2.18.2 %build %{prefix}/bin/y2tool y2autoconf @@ -80,6 +80,13 @@ /usr/lib/YaST2/servers_non_y2/* %doc %{prefix}/share/doc/packages/yast2-http-server %changelog +* Fri Mar 06 2009 mzugec@suse.cz +- modules ordering problem (bnc#350590) +- validation of modules dependency +- 2.18.2 +* Tue Mar 03 2009 mzugec@suse.cz +- added X-SuSE-YaST-AutoInstSchema into desktop file (bnc#480466) +- 2.18.1 * Mon Feb 23 2009 mzugec@suse.cz - fixed text (bnc#476002) - 2.18.0 ++++++ yast2-http-server-2.18.0.tar.bz2 -> yast2-http-server-2.18.2.tar.bz2 ++++++ ++++ 2030 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/yast2-http-server-2.18.0/configure.in new/yast2-http-server-2.18.2/configure.in --- old/yast2-http-server-2.18.0/configure.in 2009-02-23 12:14:11.000000000 +0100 +++ new/yast2-http-server-2.18.2/configure.in 2009-03-03 10:23:08.000000000 +0100 @@ -3,7 +3,7 @@ dnl -- This file is generated by y2autoconf 2.17.6 - DO NOT EDIT! -- dnl (edit configure.in.in instead) -AC_INIT(yast2-http-server, 2.17.5, http://bugs.opensuse.org/, yast2-http-server) +AC_INIT(yast2-http-server, 2.18.0, http://bugs.opensuse.org/, yast2-http-server) dnl Check for presence of file 'RPMNAME' AC_CONFIG_SRCDIR([RPMNAME]) @@ -18,7 +18,7 @@ AM_INIT_AUTOMAKE(tar-ustar -Wno-portability) dnl Important YaST2 variables -VERSION="2.17.5" +VERSION="2.18.0" RPMNAME="yast2-http-server" MAINTAINER="Michal Zugec <mzugec@suse.cz>" 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/yast2-http-server-2.18.0/doc/autodocs/Makefile.am new/yast2-http-server-2.18.2/doc/autodocs/Makefile.am --- old/yast2-http-server-2.18.0/doc/autodocs/Makefile.am 2008-01-24 14:40:00.000000000 +0100 +++ new/yast2-http-server-2.18.2/doc/autodocs/Makefile.am 1970-01-01 01:00:00.000000000 +0100 @@ -1,12 +0,0 @@ -# -# Makefile.am for devtools/devtools/skeletons/config/doc/autodocs -# - -htmldir = $(docdir)/autodocs - -index.html: $(srcdir)/../../src/*.ycp - $(ybindir)/ycpdoc -d. $(srcdir)/../../src/*.ycp - -html_DATA = index.html $(wildcard *.html) - -CLEANFILES = $(html_DATA) 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/yast2-http-server-2.18.0/doc/Makefile.am new/yast2-http-server-2.18.2/doc/Makefile.am --- old/yast2-http-server-2.18.0/doc/Makefile.am 2008-01-24 14:40:00.000000000 +0100 +++ new/yast2-http-server-2.18.2/doc/Makefile.am 1970-01-01 01:00:00.000000000 +0100 @@ -1,12 +0,0 @@ -# -# Makefile.am for devtools/devtools/skeletons/config/doc -# - -SUBDIRS = autodocs - -htmldir = $(docdir) - -doc_DATA = -html_DATA = - -EXTRA_DIST = $(doc_DATA) $(html_DATA) 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/yast2-http-server-2.18.0/src/http-server.desktop new/yast2-http-server-2.18.2/src/http-server.desktop --- old/yast2-http-server-2.18.0/src/http-server.desktop 2008-05-20 12:05:55.000000000 +0200 +++ new/yast2-http-server-2.18.2/src/http-server.desktop 2009-03-03 10:27:50.000000000 +0100 @@ -16,6 +16,7 @@ X-SuSE-YaST-SortKey= X-SuSE-YaST-AutoInstResource=http-server X-SuSE-YaST-AutoInstClonable=true +X-SuSE-YaST-AutoInstSchema=http-server.rnc Icon=yast-http-server Exec=/sbin/yast2 http-server 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/yast2-http-server-2.18.0/src/HttpServerWidgets.ycp new/yast2-http-server-2.18.2/src/HttpServerWidgets.ycp --- old/yast2-http-server-2.18.0/src/HttpServerWidgets.ycp 2009-02-23 12:15:55.000000000 +0100 +++ new/yast2-http-server-2.18.2/src/HttpServerWidgets.ycp 2009-03-06 16:50:30.000000000 +0100 @@ -6,7 +6,7 @@ * Stanislav Visnovsky <visnov@suse.cz> * Internal * - * $Id: HttpServerWidgets.ycp 55672 2009-02-23 11:15:54Z mzugec $ + * $Id: HttpServerWidgets.ycp 55984 2009-03-06 15:50:29Z mzugec $ */ { @@ -629,6 +629,7 @@ global void initModules (string key); global symbol handleModules (string key, map event); +global boolean validateModules (string key, map event); global void initListenSettings (string key); global symbol handleListenSettings (string key, map event); global void initServiceStatus (string key); @@ -1469,6 +1470,8 @@ ), "init" : initModules, "handle" : handleModules, + "validate_type" : `function, + "validate_function" : validateModules, "help" : HELPS["modules"]:"", ], @@ -2467,7 +2470,7 @@ integer index = -1; // create temporary list of maps from modules list< map<string, any > > listmodules = maplist(string name , modules,{ - return( mapmap(string k,any v, $["default":"1", "name":name, "summary":_("unknown"), "required":"0", "suggested":"0"], + return( mapmap(string k,any v, $["default":"1", "name":name, "summary":_("unknown"), "requires":""], {return ($[k:v]); })); }); // add to known modules list modules from temporary list @@ -2494,6 +2497,30 @@ UI::SetFocus (`id (`modules)); } + global boolean validateModules(string id, map key){ + boolean valid=true; + list<string> selected = []; + foreach(term i, (list<term>)UI::QueryWidget(`modules, `Items), { + if (i[2]:""==_("Enabled")) selected=add(selected, i[1]:""); + }); + map<string, any> all_modules =$[]; + foreach(map row, YaST::HTTPDData::GetKnownModules(), { + all_modules[row["name"]:""] = remove(row, "name"); + }); + foreach(string mod, selected, { + string require = all_modules[mod, "requires"]:""; + if (size(require)>0){ + if (!contains(selected, require)){ + string message = sformat("%1:\n %2 %3 %4\n%5", _("Modules dependency problem"), mod, _("requires"), require, _("Enable required module or disable first one.")); + Popup::Error(message); + y2warning("Error message: %1", message); + valid=false; + } + } + }); + return valid; + } + /** * Handle function of a widget * @param key any widget key of widget that is processed 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/yast2-http-server-2.18.0/src/YaPI/HTTPDModules.pm new/yast2-http-server-2.18.2/src/YaPI/HTTPDModules.pm --- old/yast2-http-server-2.18.0/src/YaPI/HTTPDModules.pm 2008-02-21 17:35:10.000000000 +0100 +++ new/yast2-http-server-2.18.2/src/YaPI/HTTPDModules.pm 2009-03-06 14:58:44.000000000 +0100 @@ -1,14 +1,18 @@ package YaPI::HTTPDModules; use YaPI; textdomain "http-server"; - %modules = ( +# (without_leading mod_) module name = { +# summary => __("Translatable text with module description - will be shown in YaST table"), +# packages => [ list of rpm packages needed for particular module ], +# default => 0 or 1 if this module should be enabled by default +# postition => order in /etc/sysconfig/apache2 (lowest numbew, ... , higher number) +# requires => required modulename (this is used in YaST dialog validation) +# } 'authz_host' => { summary => __("Provides access control based on client host name, IP address, etc."), packages => [], default => 1, - required => 0, - suggested => 0, position => 10, directives=> [ { option => "Allow", "context" => [ "Directory" ] }, { option => "Deny", "context" => [ "Directory" ] }, @@ -19,8 +23,6 @@ summary => __("Executing CGI scripts based on media type or request method"), packages => [], default => 1, - required => 0, - suggested => 0, position => 20, directives=> [ { option => "Action", "context" => [ "Directory", "Server", "Virtual" ] }, { option => "Script", "context" => [ "Directory", "Server", "Virtual" ] } @@ -30,8 +32,6 @@ summary => __("Mapping different parts of the host file system in the document tree and for URL redirection"), packages => [], default => 1, - required => 0, - suggested => 0, position => 30, directives=> [ { option => "Alias", "context" => [ "Server", "Virtual" ] }, { option => "AliasMatch", "context" => [ "Server", "Virtual" ] }, @@ -47,8 +47,6 @@ summary => __("Basic authentication"), packages => [], default => 1, - required => 0, - suggested => 0, position => 40, directives=> [ { option => "AuthBasicAuthoritative", "context" => [ "Directory" ] , "values" => [ "On", "Off" ] }, { option => "AuthBasicProvider", "context" => [ "Directory" ] } @@ -58,8 +56,6 @@ summary => __("User authentication using text files"), packages => [], default => 1, - required => 0, - suggested => 0, position => 40, directives=> [ { option => "AuthUserFile", "context" => [ "Directory" ] } ] @@ -68,8 +64,6 @@ summary => __("User Authorization"), packages => [], default => 1, - required => 0, - suggested => 0, position => 40, directives=> [ { option => "AuthzUserAuthoritative", "context" => [ "Directory" ], "values" => [ "On", "Off" ] } ] @@ -78,8 +72,6 @@ summary => __("Group authorization using plaintext files"), packages => [], default => 1, - required => 0, - suggested => 0, position => 40, directives=> [ { option => "AuthGroupFile", "context" => [ "Directory" ] }, { option => "AuthzGroupFileAuthoritative", "context" => [ "Directory" ], "values" => [ "On", "Off" ] } @@ -89,18 +81,12 @@ summary => __("User authentication using DBM files"), packages => [], default => 0, - required => 0, - suggested => 0, position => 50, module => { -# AuthDBMAuthoritative => 'mod_auth_dbm', -# AuthDBMGroupFile => 'mod_auth_dbm', AuthDBMType => 'mod_auth_dbm', AuthDBMUserFile => 'mod_auth_dbm' }, directives=> [ -#{ option => "AuthDBMAuthoritative", "context" => [ "Directory" ] , "values" => [ "On", "Off" ] }, -# { option => "AuthDBMGroupFile", "context" => [ "Directory" ] }, { option => "AuthDBMType", "context" => [ "Directory" ] , "values" => [ "default", "SDBM", "GDBM", "NDBM", "DB" ] }, { option => "AuthDBMUserFile", "context" => [ "Directory" ] } @@ -110,8 +96,6 @@ summary => __("Generates directory indices, automatically, similar to the Unix ls command"), packages => [], default => 1, - required => 0, - suggested => 0, position => 60, directives=> [ { option => "AddAlt", "context" => [ "Directory", "Server", "Virtual" ] }, { option => "AddAltByEncoding", "context" => [ "Directory", "Server", "Virtual" ] }, @@ -133,8 +117,6 @@ summary => __("Execution of CGI scripts"), packages => [], default => 1, - required => 0, - suggested => 0, position => 70, directives=> [ { option => "ScriptLog", "context" => [ "Server", "Virtual" ] }, { option => "ScriptLogBuffer", "context" => [ "Server", "Virtual" ] }, @@ -145,8 +127,6 @@ summary => __("Provides for trailing slash redirects and serving directory index files"), packages => [], default => 1, - required => 0, - suggested => 0, position => 80, directives=> [ { option => "DirectoryIndex", "context" => [ "Directory", "Server", "Virtual" ] }, { option => "DirectorySlash", "context" => [ "Directory", "Server", "Virtual" ] , "values" => [ "On", "Off" ] } @@ -156,8 +136,6 @@ summary => __("Modifies the environment passed to CGI scripts and SSI pages"), packages => [], default => 0, - required => 0, - suggested => 0, position => 90, directives=> [ { option => "PassEnv", "context" => [ "Directory", "Server", "Virtual" ] }, { option => "SetEnv", "context" => [ "Directory", "Server", "Virtual" ] }, @@ -168,8 +146,6 @@ summary => __("Generation of Expires HTTP headers according to user-specified criteria"), packages => [], default => 0, - required => 0, - suggested => 0, position => 100, module => { ExpiresActive => 'mod_expires', @@ -185,8 +161,6 @@ summary => __("Server-parsed HTML documents (Server Side Includes)"), packages => [], default => 1, - required => 0, - suggested => 0, position => 110, directives=> [ { option => "SSIEndTag", "context" => [ "Server", "Virtual" ] }, { option => "SSIErrorMsg", "context" => [ "Directory", "Server", "Virtual" ] }, @@ -201,8 +175,6 @@ summary => __("Logging of the requests made to the server"), packages => [], default => 1, - required => 0, - suggested => 0, position => 120, directives=> [ { option => "BufferedLogs", "context" => [ "Server" ] , "values" => [ "On", "Off" ] }, { option => "CookieLog", "context" => [ "Server", "Virtual" ] }, @@ -215,8 +187,6 @@ summary => __("Associates the requested file name\'s extensions with the file\'s behavior and content"), packages => [], default => 1, - required => 0, - suggested => 0, position => 130, directives=> [ { option => "AddCharset", "context" => [ "Directory", "Server", "Virtual" ] }, { option => "AddEncoding", "context" => [ "Directory", "Server", "Virtual" ] }, @@ -242,8 +212,6 @@ summary => __("Provides for content negotiation"), packages => [], default => 1, - required => 0, - suggested => 0, position => 140, directives=> [ { option => "CacheNegotiatedDocs", "context" => [ "Server", "Virtual" ], "values" => [ "On", "Off" ] }, { option => "ForceLanguagePriority", "context" => [ "Directory", "Server", "Virtual" ] }, @@ -254,8 +222,6 @@ summary => __("Allows the setting of environment variables based on characteristics of the request"), packages => [], default => 1, - required => 0, - suggested => 0, position => 150, directives=> [ { option => "BrowserMatch", "context" => [ "Directory", "Server", "Virtual" ] }, { option => "BrowserMatchNoCase", "context" => [ "Directory", "Server", "Virtual" ] }, @@ -267,8 +233,6 @@ summary => __("Provides information about server activity and performance"), packages => [], default => 1, - required => 0, - suggested => 0, position => 160, directives=> [ { option => "ExtendedStatus", "context" => [ "Server" ], "values" => [ "On", "Off" ] } ] @@ -277,8 +241,6 @@ summary => __("Allows CGI scripts to run as a specified user and group"), packages => [], default => 0, - required => 0, - suggested => 0, position => 0, module => { SuexecUserGroup => 'mod_suexec', @@ -290,8 +252,6 @@ summary => __("User-specific directories"), packages => [], default => 1, - required => 0, - suggested => 0, position => 180, directives=> [ { option =>"UserDir", "context" => [ "Server", "Virtual" ] } ] @@ -300,16 +260,12 @@ summary => __("Sends files that contain their own HTTP headers"), packages => [], default => 1, - required => 0, - suggested => 0, position => 190 }, 'authn_anon' => { summary => __("Allows \"anonymous\" user access to authenticated areas"), packages => [], default => 0, - required => 0, - suggested => 0, position => 200, module => { Anonymous => 'mod_auth_anon', @@ -331,8 +287,6 @@ summary => __("User authentication using MD5 Digest Authentication"), packages => [], default => 0, - required => 0, - suggested => 0, position => 210, directives=> [ { option =>"AuthDigestAlgorithm", "context" => [ "Directory" ], "values" => [ "MD5", "MD5-sess" ] }, { option =>"AuthDigestDomain", "context" => [ "Directory" ] }, @@ -348,8 +302,6 @@ summary => __("Allows an LDAP directory to be used to store the database for HTTP Basic authentication"), packages => [], default => 0, - required => 0, - suggested => 0, position => 355, directives=> [ { option =>"AuthLDAPBindDN", "context" => [ "Directory" ] }, { option =>"AuthLDAPBindPassword", "context" => [ "Directory" ] }, @@ -368,8 +320,6 @@ summary => __("Content cache keyed to URIs"), packages => [], default => 0, - required => 0, - suggested => 0, position => 230, directives=> [ { option =>"CacheDefaultExpire", "context" => [ "Server", "Virtual" ] }, { option =>"CacheDisable", "context" => [ "Server", "Virtual" ] }, @@ -387,8 +337,6 @@ summary => __("Specify character set translation or recoding"), packages => [], default => 0, - required => 0, - suggested => 0, position => 240, directives=> [ { option =>"CharsetDefault", "context" => [ "Directory", "Server", "Virtual" ] }, { option =>"CharsetOptions", "context" => [ "Directory", "Server", "Virtual" ] }, @@ -399,8 +347,6 @@ summary => __("Distributed Authoring and Versioning (WebDAV) functionality"), packages => [], default => 0, - required => 0, - suggested => 0, position => 250, module => { Dav => 'mod_dav', @@ -416,8 +362,6 @@ summary => __("File system provider for mod_dav"), packages => [], default => 0, - required => 0, - suggested => 0, position => 260, module => { DavLockDB => 'mod_dav_fs' @@ -429,8 +373,6 @@ summary => __("Compress content before it is delivered to the client"), packages => [], default => 0, - required => 0, - suggested => 0, position => 270, module => { DeflateBufferSize => 'mod_deflate', @@ -445,14 +387,11 @@ { option =>"DeflateMemLevel", "context" => [ "Server", "Virtual" ] }, { option =>"DeflateWindowSize", "context" => [ "Server", "Virtual" ] } ] - }, 'disk_cache' => { summary => __("Content cache storage manager keyed to URIs"), packages => [], default => 0, - required => 0, - suggested => 0, position => 280, directives=> [ { option =>"CacheDirLength", "context" => [ "Server", "Virtual" ] }, { option =>"CacheDirLevels", "context" => [ "Server", "Virtual" ] }, @@ -465,8 +404,6 @@ summary => __("A simple echo server to illustrate protocol modules"), packages => [], default => 0, - required => 0, - suggested => 0, position => 290, directives=> [ { option =>"ProtocolEcho", "context" => [ "Server", "Virtual" ], "values" => [ "On", "Off" ] } ] @@ -475,8 +412,6 @@ summary => __("Pass the response body through an external program before delivery to the client"), packages => [], default => 0, - required => 0, - suggested => 0, position => 300, module => { ExtFilterDefine => 'mod_ext_filter', @@ -485,26 +420,20 @@ directives=> [ { option =>"ExtFilterDefine", "context" => [ "Server" ] }, { option =>"ExtFilterOptions", "context" => [ "Directory" ] } ] - }, 'file_cache' => { summary => __("Caches a static list of files in memory"), packages => [], default => 0, - required => 0, - suggested => 0, position => 310, directives=> [ { option =>"CacheFile", "context" => [ "Server" ] }, { option =>"MMapFile", "context" => [ "Server" ] } ] - }, 'headers' => { summary => __("Customization of HTTP request and response headers"), packages => [], default => 0, - required => 0, - suggested => 0, position => 320, module => { Header => 'mod_headers', @@ -513,28 +442,22 @@ directives=> [ { option =>"Header", "context" => [ "Server", "Virtual", "Directory" ] }, { option =>"RequestHeader", "context" => [ "Server", "Virtual", "Directory" ] } ] - }, 'imagemap' => { summary => __("Server-side image map processing"), packages => [], default => 1, - required => 0, - suggested => 0, position => 330, directives=> [ { option =>"ImapBase", "context" => [ "Server", "Virtual", "Directory" ] }, { option =>"ImapDefault", "context" => [ "Server", "Virtual", "Directory" ] }, { option =>"ImapMenu", "context" => [ "Server", "Virtual", "Directory" ], "values" => [ "none", "formatted", "semiformatted", "unformatted" ] } ] - }, 'info' => { summary => __("Provides a comprehensive overview of the server configuration"), packages => [], default => 0, - required => 0, - suggested => 0, position => 340, module => { AddModuleInfo => 'mod_info' }, directives=> [ { option =>"AddModuleInfo", "context" => [ "Server", "Virtual" ] }, @@ -544,8 +467,6 @@ summary => __("LDAP connection pooling and result caching services for use by other LDAP modules"), packages => [], default => 0, - required => 0, - suggested => 0, position => 350, directives=> [ { option =>"LDAPCacheEntries", "context" => [ "Server" ] }, { option =>"LDAPCacheTTL", "context" => [ "Server" ] }, @@ -566,16 +487,12 @@ summary => __("Logging of input and output bytes per request"), packages => [], default => 0, - required => 0, - suggested => 0, position => 360 }, 'mem_cache' => { summary => __("Content cache keyed to URIs"), packages => [], default => 0, - required => 0, - suggested => 0, position => 370, directives=> [ { option =>"MCacheMaxObjectCount", "context" => [ "Server" ] }, { option =>"MCacheMaxObjectSize", "context" => [ "Server" ] }, @@ -589,20 +506,15 @@ summary => __("Determines the MIME type of a file by looking at a few bytes of its contents"), packages => [], default => 0, - required => 0, - suggested => 0, position => 380, module => { MimeMagicFile => 'mod_mime_magic' }, directives=> [ { option =>"MimeMagicFile", "context" => [ "Server", "Virtual" ] }, ] - }, 'proxy' => { summary => __("HTTP/1.1 proxy/gateway server"), packages => [], default => 0, - required => 0, - suggested => 0, position => 390, module => { NoProxy => 'mod_proxy', @@ -646,14 +558,11 @@ { option =>"ProxyVia", "context" => [ "Server", "Virtual" ], "values" => [ "On", "Off", "Full", "Block" ] } ] - }, 'proxy_connect' => { summary => __("mod_proxy extension for CONNECT request handling"), packages => [], default => 0, - required => 0, - suggested => 0, position => 400, module => { AllowCONNECT => 'mod_proxy_connect' } }, @@ -661,24 +570,18 @@ summary => __("FTP support module for mod_proxy"), packages => [], default => 0, - required => 0, - suggested => 0, position => 410 }, 'proxy_http' => { summary => __("HTTP support module for mod_proxy"), packages => [], default => 0, - required => 0, - suggested => 0, position => 420 }, 'rewrite' => { summary => __("Provides a rule-based rewriting engine to rewrite requested URLs on the fly"), packages => [], default => 0, - required => 0, - suggested => 0, position => 430, module => { RewriteBase => 'mod_rewrite', @@ -701,26 +604,20 @@ { option =>"RewriteOptions", "context" => [ "Server", "Virtual", "Directory" ] }, { option =>"RewriteRule", "context" => [ "Server", "Virtual", "Directory" ] } ] - }, 'speling' => { summary => __("Attempts to correct mistaken URLs that users might have entered"), packages => [], default => 0, - required => 0, - suggested => 0, position => 440, module => { CheckSpelling => 'mod_speling' }, directives=> [ { option =>"CheckSpelling", "context" => [ "Server", "Virtual", "Directory" ], "values" => [ "On", "Off" ] }, ] - }, 'ssl' => { summary => __("Strong cryptography using the Secure Sockets Layer (SSL) and Transport Layer Security (TLS) protocols"), packages => [], default => 0, - required => 0, - suggested => 0, position => 450, directives=> [ { option =>"SSLCACertificateFile", "context" => [ "SSL", "Server", "Virtual" ] }, { option =>"SSLCACertificatePath", "context" => [ "SSL", "Server", "Virtual" ] }, @@ -761,16 +658,12 @@ summary => __("Provides an environment variable with a unique identifier for each request"), packages => [], default => 0, - required => 0, - suggested => 0, position => 460 }, 'usertrack' => { summary => __("Clickstream logging of user activity on a site"), packages => [], default => 0, - required => 0, - suggested => 0, position => 470, module => { CookieDomain => 'mod_usertrack', @@ -791,8 +684,6 @@ summary => __("Provides support for dynamically configured mass virtual hosting"), packages => [], default => 0, - required => 0, - suggested => 0, position => 480, module => { VirtualDocumentRoot => 'mod_vhost_alias', @@ -806,54 +697,45 @@ { option =>"VirtualScriptAliasIP", "context" => [ "Server", "Virtual", "Directory" ] } ] }, - -# 'php4' => { -# summary => 'Provides support for PHP4 dynamically generated pages', -# packages => ["apache2-mod_php4"], -# default => 0, -# required => 0, -# suggested => 0, -# position => 490, -# exclude => [ "php5" ] -# }, - 'php5' => { summary => __("Provides support for PHP5 dynamically generated pages"), packages => ["apache2-mod_php5"], default => 0, - required => 0, - suggested => 0, - position => 490, - exclude => [ "php4" ] + position => 490 }, 'perl' => { summary => __("Provides support for Perl dynamically generated pages"), packages => ["apache2-mod_perl"], default => 0, - required => 0, - suggested => 0, position => 500 }, 'python' => { summary => __("Provides support for Python dynamically generated pages"), packages => ["apache2-mod_python"], default => 0, - required => 0, - suggested => 0, position => 510 }, 'apparmor' => { summary => __("Provides support for AppArmor subprocess confinement within apache"), packages => ["mod-apparmor"], default => 0, - required => 0, - suggested => 0, position => 530 + }, + 'dav_svn' => { + summary => __("Provides support for subversion"), + packages => ["subversion-server"], + requires => "dav", + default => 0, + position => 540 + }, + 'authz_svn' => { + summary => __("Provides support for subversion"), + packages => ["subversion-server"], + requires => "dav_svn", + default => 0, + position => 550 } - ); - - %selection = ( TestSel => { summary => 'A test selection', @@ -861,4 +743,3 @@ default => 0 } ); - 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/yast2-http-server-2.18.0/src/YaPI/HTTPD.pm new/yast2-http-server-2.18.2/src/YaPI/HTTPD.pm --- old/yast2-http-server-2.18.0/src/YaPI/HTTPD.pm 2008-11-19 16:37:35.000000000 +0100 +++ new/yast2-http-server-2.18.2/src/YaPI/HTTPD.pm 2009-03-06 11:12:30.000000000 +0100 @@ -528,16 +528,6 @@ } else { $vhost_files->{$ip} = [{HOSTID => "$ip/$servername", HostIP => $ip, DATA => \@newdata}]; } - - - -#$vhost_files->{$ip} = \@newdata; -# deleteVH() if (@{$self->GetHost($hostid)} ne 0); - -# if ($type eq "0"){ -# $vhost_files->{$ip} = @newdata; -# } - } @@ -579,17 +569,7 @@ my $data = shift; -# my @newdata = (); -# foreach my $row (@{$data}){ -# if ($row->{KEY} eq 'HostIP' ) { -# $ip = $row->{VALUE}; -# } elsif ($row->{KEY} eq 'VirtualByName' ) { -# $type = $row->{VALUE}; -# }else { -# push(@newdata, $row); -# } -# } -my $params = $self->getVhType($hostid); + my $params = $self->getVhType($hostid); $self->deleteVH($hostid); $self->createVH($hostid, $data, $params); @@ -781,17 +761,6 @@ if( $key->{KEY} eq 'VirtualByName' ) { $VirtualByName = $key->{VALUE}; } -#elsif( $key->{KEY} eq 'SSL' and $key->{VALUE} == 1 ) { -# $sslHash->{'VALUE'} = 'on'; -# } elsif( $key->{KEY} eq 'SSL' and $key->{VALUE} == 2 ) { -# $sslHash->{'VALUE'} = 'on'; -# push( @tmp, { KEY => 'SSLRequireSSL', VALUE => '' } ); -# } elsif( $key->{KEY} eq 'SSL' ) { -# # already set to "off" above. So ignore. -# } elsif( $key->{KEY} eq 'DocumentRoot' ) { -# $docRoot = $key->{VALUE}; -# push( @tmp, $key ); -# } els if( $key->{KEY} =~ /ServerTokens|TimeOut|ExtendedStatus/ ) { # illegal keys in vhost return $self->SetError( summary => sprintf(__("Illegal key in vhost '%s'."), $key->{KEY}), @@ -955,7 +924,9 @@ BEGIN { $TYPEINFO{GetModuleList} = ["function", [ "list", "string" ] ]; } sub GetModuleList { my $self = shift; - my $data = SCR->Read('.sysconfig.apache2.APACHE_MODULES'); # FIXME: Error handling +# my $data = SCR->Read('.sysconfig.apache2.APACHE_MODULES'); # FIXME: Error handling + my $data = SCR->Execute('.target.bash_output', 'a2enmod -l')->{'stdout'}; # FIXME: Error handling + $data =~ s/mod_//g; return [ split(/\s+/, $data) ]; @@ -1070,8 +1041,12 @@ } @newList = (@known, @unknown); - SCR->Write('.sysconfig.apache2.APACHE_MODULES', join(' ',@newList)); - SCR->Write('.sysconfig.apache2', undef); + SCR->Execute('.target.bash', 'for module in $(a2enmod -l);do a2enmod -d $module; done'); + foreach my $module (@newList){ + SCR->Execute('.target.bash', "a2enmod $module"); + } +# SCR->Write('.sysconfig.apache2.APACHE_MODULES', join(' ',@newList)); +# SCR->Write('.sysconfig.apache2', undef); return 1; } @@ -1622,15 +1597,11 @@ $file .= '-cert.pem'; if( not $pemData ) { -# SCR->Execute( '.target.remove', $file ); -# $self->ModifyHostKey( $host, 'SSLCertificateFile' ); } elsif( $pemData !~ /BEGIN CERTIFICATE/ ) { return $self->SetError( summary => __("Corrupt PEM data."), code => 'CERT_ERROR' ); } else { SCR->Write( '.target.string', $file, $pemData ); SCR->Execute( '.target.bash', "chmod 0400 $file" ); -# $self->ModifyHostKey( $host, 'SSLCertificateFile', $file ); -# $self->ModifyHostKey( $host, 'SSLCertificateKeyFile', $file ) if( $key ); } return $self->ModifyHost( $hostid, $host ); } @@ -1673,16 +1644,12 @@ $file .= '-key.pem'; if( not $pemData ) { -# SCR->Execute( '.target.remove', $file ); -# $self->ModifyHostKey( $host, 'SSLCertificateKeyFile' ); } elsif( $pemData !~ /PRIVATE KEY/ ) { return $self->SetError( summary => __("Corrupt PEM data."), code => 'CERT_ERROR' ); } else { my $cert = ($pemData =~ /BEGIN CERTIFICATE/)?(1):(0); SCR->Write( '.target.string', $file, $pemData ); SCR->Execute( '.target.bash', "chmod 0400 $file" ); -# $self->ModifyHostKey( $host, 'SSLCertificateKeyFile', $file ); -# $self->ModifyHostKey( $host, 'SSLCertificateFile', $file ) if( $cert ); } return $self->ModifyHost( $hostid, $host ); } 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/yast2-http-server-2.18.0/src/YaST/HTTPDData.pm new/yast2-http-server-2.18.2/src/YaST/HTTPDData.pm --- old/yast2-http-server-2.18.0/src/YaST/HTTPDData.pm 2008-11-19 16:37:35.000000000 +0100 +++ new/yast2-http-server-2.18.2/src/YaST/HTTPDData.pm 2009-03-05 14:58:04.000000000 +0100 @@ -97,8 +97,6 @@ } ] }; -# push( @{$hosts{'default'}}, $dirEntry ); -# $dirty{MODIFIED}->{'default'} = 1; return $dirEntry; } @@ -208,53 +206,10 @@ my $hostdata = shift; return undef if( ! $self->checkHostmap( $hostdata ) ); - -# my $dr; -# my $vbn; -# foreach my $h ( @{$hosts{$hostid}} ) { -# if( $h->{KEY} eq 'DocumentRoot' ) { -# $dr = $h->{VALUE}; -# } elsif( $h->{KEY} eq 'VirtualByName' ) { -# $vbn = $h->{VALUE}; -# } -# } -# $hosts{$hostid} = $hostdata; if ($hostid ne 'main') { YaPI::HTTPD->modifyVH($hostid, $hostdata); - - -# foreach my $h ( @{$hosts{$hostid}} ) { -# if( $h->{KEY} eq 'DocumentRoot' ) { -# if( $dr ne $h->{VALUE} ) { -# $self->delDir( $dr ); -# $self->addDir( $h->{VALUE} ); -# } -# } els -# if( $h->{KEY} eq 'VirtualByName' ) { -# if( $vbn ne $h->{VALUE} ) { -# $hostid =~ /^([^\/]+)/; -# my $vhost = $1; -# if( $h->{VALUE} == 1 and $self->getNVH( $vhost ) == 0 ) { -# push( @{$hosts{'main'}}, { KEY => 'NameVirtualHost', VALUE => $1 } ); -# } elsif( $h->{VALUE} == 0 and $self->getNVH( $vhost ) == 1 ) { -# my @newData = (); -# while( my $e = shift(@{$hosts{'main'}}) ) { -# if( $e->{KEY} eq 'NameVirtualHost' and -# $e->{VALUE} eq $vhost ) { -# push( @newData, @{$hosts{'main'}} ); -# last; -# } -# push( @newData, $e ); -# } -# $hosts{'main'} = \@newData; -# } -# $dirty{MODIFIED}->{'main'} = 1; -# } -# } -# } - $dirty{MODIFIED}->{$hostid} = 1 unless( exists($dirty{NEW}->{$hostid}) ); } else { YaPI::HTTPD->modifyMain($hostdata); @@ -272,19 +227,6 @@ if( ! $self->checkHostmap( $hostdata ) ) { return undef; } -# foreach my $h ( @$hostdata ) { -# if( $h->{KEY} eq 'DocumentRoot' ) { -# $dir=$self->addDir($h->{VALUE}); -# } elsif( $h->{KEY} eq 'VirtualByName' and $h->{VALUE} ) { -# $hostid =~ /^([^\/]+)/; -# my $v = $1; -# if( $self->getNVH( $v ) == 0 ) { -# push( @{$hosts{'main'}}, { KEY => 'NameVirtualHost', VALUE => $v } ); -# $dirty{MODIFIED}->{'main'} = 1; -# } -# } -# } - # don't create Directory for DocumentRoot, if already exists if ($dir ne ""){ foreach my $row (@$hostdata) { @@ -566,11 +508,8 @@ sub GetCurrentListen { my $self = shift; my @new; -#y2internal("BEGIN - newListen ", Dumper(\%newListen), "oldListen", Dumper(@oldListen), "delListen ", Dumper(\%delListen)); -#y2internal("new ", Dumper(\@new)); foreach my $new ( keys(%newListen) ) { my ($ip, $fp, $tp, $port) = ('', '', '', ''); -# if ( $new =~ m/\[([\w\W]*)\]/; #) { $ip=$1; if ($new =~ m/\[$ip\]:([\d\:]*)/){ @@ -580,10 +519,7 @@ } $tp=$fp if ($tp eq ''); $port = ($fp eq $tp)?($fp):($fp.'-'.$tp); -# } push( @new, { ADDRESS => $ip, PORT => $port } ); -#y2internal("MIDDLE newListen ", Dumper(\%newListen), "oldListen", Dumper(@oldListen), "delListen ", Dumper(\%delListen)); -#y2internal("new ", Dumper(\@new)); } foreach my $old ( @oldListen ) { if( $old->{PORT} =~ /-/ ) { @@ -596,8 +532,6 @@ } push( @new, $old ); } -#y2internal("END - newListen ", Dumper(\%newListen), "oldListen", Dumper(@oldListen), "delListen ", Dumper(\%delListen)); -#y2internal("new ", Dumper(\@new)); return \@new; } 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/yast2-http-server-2.18.0/src/YaST/httpdUtils.pm new/yast2-http-server-2.18.2/src/YaST/httpdUtils.pm --- old/yast2-http-server-2.18.0/src/YaST/httpdUtils.pm 2008-04-10 08:47:09.000000000 +0200 +++ new/yast2-http-server-2.18.2/src/YaST/httpdUtils.pm 2009-03-05 15:00:12.000000000 +0100 @@ -48,14 +48,9 @@ my %checkMap = ( ServerAdmin => qr/^[^@]+@[^@]+$/, ServerName => qr/^[\w\d.-]+$/, -# SSL => qr/^[012]$/, # more to go ); -# my $ssl = 0; -# my $nb_vh = 0; -# my $dr = 0; -# my $sn = 0; foreach my $entry ( @$host ) { next unless( exists($checkMap{$entry->{KEY}}) ); my $re = $checkMap{$entry->{KEY}}; @@ -63,10 +58,6 @@ return $self->SetError( summary => sprintf( __("Illegal '%s' parameter"), $entry->{KEY} ), code => "PARAM_CHECK_FAILED" ); } -# $ssl = $entry->{VALUE} if( $entry->{KEY} eq 'SSL' ); -# $nb_vh = $entry->{VALUE} if( $entry->{KEY} eq 'VirtualByName' ); -# $dr = 1 if( $entry->{KEY} eq 'DocumentRoot' ); -# $sn = 1 if( $entry->{KEY} eq 'ServerName' ); } return $self->SetError( summary => __('ssl together with "virtual by name" is not possible'), code => 'PARAM_CHECK_FAILED' ) if( $ssl and $nb_vh ); @@ -79,24 +70,6 @@ my $self = shift; my @data = SCR->Read('.http_server.vhosts'); - # this is a hack. - # yast will put some directives in define sections - # automatically and here we remove them - -# if( ref($data[0]) eq 'HASH' ) { -# foreach my $file ( keys %{$data[0]} ) { -# foreach my $host ( @{$data[0]->{$file}} ) { -# foreach my $data ( @{$host->{DATA}} ) { -# if( exists($data->{OVERHEAD}) and -# $data->{OVERHEAD} =~ /# YaST auto define section/ ) { -# $data = $data->{VALUE}->[0]; # delete the "auto define" section -# } -# } -# } -# } -# } - - return @data; } 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/yast2-http-server-2.18.0/VERSION new/yast2-http-server-2.18.2/VERSION --- old/yast2-http-server-2.18.0/VERSION 2009-02-23 12:15:11.000000000 +0100 +++ new/yast2-http-server-2.18.2/VERSION 2009-03-06 16:49:02.000000000 +0100 @@ -1 +1 @@ -2.18.0 +2.18.2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... -- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org
participants (1)
-
root@Hilbert.suse.de