Script 'mail_helper' called by bg
Hello packager,
This is just FYI. Your package was checked in in distribution "sle12"
by autobuild-member: bg.
Here comes the log...
---------------------------%<------------------------------
Hi,
here is the log from ci_new_pac /mounts/work_src_done/SLE12/yast2-ftp-server -> sle12
## BNC# 888287 : "yast2 ftp-server sets syslog_enable=NO by default" (ASSIGNED/)
Changes:
--------
--- /work/SRC/SUSE:SLE-12:GA/yast2-ftp-server/yast2-ftp-server.changes 2014-07-30 14:48:57.000000000 +0200
+++ /mounts/work_src_done/SLE12/yast2-ftp-server/yast2-ftp-server.changes 2014-08-22 16:34:53.000000000 +0200
@@ -1,0 +2,12 @@
+Wed Aug 20 09:25:51 UTC 2014 - cwh@suse.com
+
+- Using different defaults about logging for vsftpd/pure-ftpd (bnc#888287)
+- Setting xferlog_enable = YES instead of syslog_enable
+- 3.1.3
+
+-------------------------------------------------------------------
+Fri Aug 1 12:51:37 UTC 2014 - mvidner@suse.com
+
+- Enabled YARD docs, documented the basics of FtpServer.
+
+-------------------------------------------------------------------
calling whatdependson for sle12-i586
Packages directly triggered for rebuild:
- yast2-ftp-server
- yast2-schema
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/SUSE:SLE-12:GA/yast2-ftp-server (Old)
and /mounts/work_src_done/SLE12/yast2-ftp-server (BS:build ID:43062 MAIL:yast-commit@opensuse.org) (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "yast2-ftp-server", Maintainer is "yast-commit@opensuse.org"
Old:
----
yast2-ftp-server-3.1.2.tar.bz2
New:
----
yast2-ftp-server-3.1.3.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ yast2-ftp-server.spec ++++++
--- /var/tmp/diff_new_pack.M86W4x/_old 2014-08-25 15:36:32.000000000 +0200
+++ /var/tmp/diff_new_pack.M86W4x/_new 2014-08-25 15:36:32.000000000 +0200
@@ -17,7 +17,7 @@
Name: yast2-ftp-server
-Version: 3.1.2
+Version: 3.1.3
Release: 0
BuildRoot: %{_tmppath}/%{name}-%{version}-build
++++++ yast2-ftp-server-3.1.2.tar.bz2 -> yast2-ftp-server-3.1.3.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-ftp-server-3.1.2/package/yast2-ftp-server.changes new/yast2-ftp-server-3.1.3/package/yast2-ftp-server.changes
--- old/yast2-ftp-server-3.1.2/package/yast2-ftp-server.changes 2014-07-30 11:24:53.000000000 +0200
+++ new/yast2-ftp-server-3.1.3/package/yast2-ftp-server.changes 2014-08-22 16:31:01.000000000 +0200
@@ -1,4 +1,16 @@
-------------------------------------------------------------------
+Wed Aug 20 09:25:51 UTC 2014 - cwh@suse.com
+
+- Using different defaults about logging for vsftpd/pure-ftpd (bnc#888287)
+- Setting xferlog_enable = YES instead of syslog_enable
+- 3.1.3
+
+-------------------------------------------------------------------
+Fri Aug 1 12:51:37 UTC 2014 - mvidner@suse.com
+
+- Enabled YARD docs, documented the basics of FtpServer.
+
+-------------------------------------------------------------------
Wed Jul 30 09:35:28 CEST 2014 - schubi@suse.de
- Taking vsftpd ftp-server default in autoyast configuration module
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-ftp-server-3.1.2/package/yast2-ftp-server.spec new/yast2-ftp-server-3.1.3/package/yast2-ftp-server.spec
--- old/yast2-ftp-server-3.1.2/package/yast2-ftp-server.spec 2014-07-30 11:24:53.000000000 +0200
+++ new/yast2-ftp-server-3.1.3/package/yast2-ftp-server.spec 2014-08-22 16:31:01.000000000 +0200
@@ -17,7 +17,7 @@
Name: yast2-ftp-server
-Version: 3.1.2
+Version: 3.1.3
Release: 0
BuildRoot: %{_tmppath}/%{name}-%{version}-build
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-ftp-server-3.1.2/src/include/ftp-server/complex.rb new/yast2-ftp-server-3.1.3/src/include/ftp-server/complex.rb
--- old/yast2-ftp-server-3.1.2/src/include/ftp-server/complex.rb 2014-07-30 11:24:53.000000000 +0200
+++ new/yast2-ftp-server-3.1.3/src/include/ftp-server/complex.rb 2014-08-22 16:31:01.000000000 +0200
@@ -254,7 +254,6 @@
# @return `abort if aborted and `next otherwise
def ReadDialog
Wizard.RestoreHelp(Ops.get_string(@HELPS, "read", ""))
- # FtpServer::AbortFunction = PollAbort;
result = ReadFTPService()
return :abort if !result
return :abort if !Confirm.MustBeRoot
@@ -272,7 +271,6 @@
# @return `abort if aborted and `next otherwise
def WriteDialog
Wizard.RestoreHelp(Ops.get_string(@HELPS, "write", ""))
- # FtpServer::AbortFunction = PollAbort;
ret = FtpServer.Write
ret ? :next : :abort
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-ftp-server-3.1.2/src/include/ftp-server/write_load.rb new/yast2-ftp-server-3.1.3/src/include/ftp-server/write_load.rb
--- old/yast2-ftp-server-3.1.2/src/include/ftp-server/write_load.rb 2014-07-30 11:24:53.000000000 +0200
+++ new/yast2-ftp-server-3.1.3/src/include/ftp-server/write_load.rb 2014-08-22 16:31:01.000000000 +0200
@@ -471,11 +471,20 @@
port_range != nil ? Builtins.splitstring(port_range, ":") : nil
end
- # Function return init value for UI widgets
- # and prepare internal data structure for writing
- # to config file
- # Example: ValueUI("ChrootEnabled") => "yes"/"no"
-
+ # Convert between the UI (yast), and system (vsftpd, pure_ftpd) settings.
+ #
+ # The system settings are multiplexed by
+ # {FtpServerClass#vsftpd_edit vsftpd_edit}:
+ # {FtpServerClass#VS_SETTINGS VS_SETTINGS} (for vsftpd_edit == true) or
+ # {FtpServerClass#PURE_SETTINGS PURE_SETTINGS} (for vsftpd_edit == false).
+ #
+ # @param [String] key
+ # in the {FtpServerClass#EDIT_SETTINGS EDIT_SETTINGS} vocabulary
+ # @param write
+ # - true: write to system settings from UI settings
+ # ({FtpServerClass#EDIT_SETTINGS EDIT_SETTINGS})
+ # - false: read the UI settings from the system settings
+ # @return [String] the UI value (for read) or nil (for write)
def ValueUI(key, write)
ports = []
authentic = 0
@@ -510,32 +519,16 @@
when "VerboseLogging"
if @vsftpd_edit
if write
- Ops.set(
- @VS_SETTINGS,
- "log_ftp_protocol",
- Ops.get(@EDIT_SETTINGS, "VerboseLogging")
- )
- Ops.set(
- @VS_SETTINGS,
- "syslog_enable",
- Ops.get(@EDIT_SETTINGS, "VerboseLogging")
- )
+ @VS_SETTINGS["log_ftp_protocol"] = @EDIT_SETTINGS["VerboseLogging"]
+ @VS_SETTINGS["xferlog_enable"] = @EDIT_SETTINGS["VerboseLogging"]
else
- return Builtins.haskey(@VS_SETTINGS, "log_ftp_protocol") ?
- Builtins.toupper(Ops.get(@VS_SETTINGS, "log_ftp_protocol")) :
- Ops.get(@DEFAULT_CONFIG, "VerboseLogging")
+ return (@VS_SETTINGS["log_ftp_protocol"] || @DEFAULT_CONFIG["log_ftp_protocol"]).upcase
end
else
if write
- Ops.set(
- @PURE_SETTINGS,
- "VerboseLog",
- Ops.get(@EDIT_SETTINGS, "VerboseLogging")
- )
+ @PURE_SETTINGS["VerboseLog"] = @EDIT_SETTINGS["VerboseLogging"]
else
- return Builtins.haskey(@PURE_SETTINGS, "VerboseLog") ?
- Builtins.toupper(Ops.get(@PURE_SETTINGS, "VerboseLog")) :
- Ops.get(@DEFAULT_CONFIG, "VerboseLogging")
+ return (@PURE_SETTINGS["VerboseLog"] || @DEFAULT_CONFIG["VerboseLogging"]).upcase
end
end
when "FtpDirLocal"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-ftp-server-3.1.2/src/modules/FtpServer.rb new/yast2-ftp-server-3.1.3/src/modules/FtpServer.rb
--- old/yast2-ftp-server-3.1.2/src/modules/FtpServer.rb 2014-07-30 11:24:53.000000000 +0200
+++ new/yast2-ftp-server-3.1.3/src/modules/FtpServer.rb 2014-08-22 16:31:01.000000000 +0200
@@ -1,17 +1,20 @@
# encoding: utf-8
-# File: modules/FtpServer.ycp
-# Package: Configuration of FtpServer
-# Summary: FtpServer settings, input and output functions
-# Authors: Jozef Uhliarik
-#
-# $Id: FtpServer.ycp 27914 2006-02-13 14:32:08Z juhliarik $
-#
-# Representation of the configuration of FtpServer.
-# Input and output routines.
require "yast"
module Yast
+ # Configure **both** [vsftpd][v] and [pure-ftpd][p] in a single class.
+ #
+ # [v]: https://security.appspot.com/vsftpd.html
+ # [p]: http://www.pureftpd.org/
+ #
+ # For the configuration we have 3 vocabularies,
+ # mapped by {FtpServerWriteLoadInclude#ValueUI}.
+ #
+ # - pure-ftpd uses CamelCase keys
+ # - vsftpd uses snake_case keys
+ # - yast uses CamelCase keys which are almost(!!1!)
+ # the same as for pure-ftpd.
class FtpServerClass < Module
def main
Yast.import "UI"
@@ -155,11 +158,6 @@
@pure_ftpd_xinet_conf = []
-
- # list of keys from map DEFAULT_CONFIG
- #
- # global list <string>
-
@UI_keys = [
"ChrootEnable",
"VerboseLogging",
@@ -194,13 +192,10 @@
"EnableUpload"
]
- # map of deafult values for options in UI
- #
- # global map
-
@DEFAULT_CONFIG = {
"ChrootEnable" => "NO",
- "VerboseLogging" => "NO",
+ "VerboseLogging" => "NO", # Default value for pure-ftpd.
+ "log_ftp_protocol" => "YES", # Default value for vsftp (bnc#888287).
"FtpDirLocal" => "", #if empty doesn't write this options via SCR
"FtpDirAnon" => "", #if empty doesn't write this options via SCR
"Umask" => "",
@@ -233,35 +228,17 @@
"EnableUpload" => "NO"
}
- # map of pure-ftpd settings
- #
@PURE_SETTINGS = {}
-
-
- # map of vsftpd settings
- #
@VS_SETTINGS = {}
-
- # map of vsftpd settings
- #
@EDIT_SETTINGS = {}
-
-
Yast.include self, "ftp-server/write_load.rb"
-
-
-
@ftps = true
# Write only, used during autoinstallation.
# Don't run services and SuSEconfig, it's all done at one place.
@write_only = false
-
- # Abort function
- # return boolean return true if abort
- @AbortFunction = fun_ref(method(:Modified), "boolean ()")
end
# Read current pure-ftpd configuration
@@ -270,7 +247,6 @@
def ReadPUREFTPDSettings
Builtins.foreach(SCR.Dir(path(".pure-ftpd"))) do |key|
val = Convert.to_string(SCR.Read(Builtins.add(path(".pure-ftpd"), key)))
- #string val = (string) select((list <string>) SCR::Read(add(.pure-ftpd, key)), 0, "");
Ops.set(@PURE_SETTINGS, key, val) if val != nil
end
@@ -281,18 +257,15 @@
)
Builtins.y2milestone("---------------------------------------------")
-
true
end
# Read current vsftpd configuration
#
# @return [Boolean] successfull
-
def ReadVSFTPDSettings
Builtins.foreach(SCR.Dir(path(".vsftpd"))) do |key|
val = Convert.to_string(SCR.Read(Builtins.add(path(".vsftpd"), key)))
- #string val = (string) select((list <string>) SCR::Read(add(.pure-ftpd, key)), 0, "");
Ops.set(@VS_SETTINGS, key, val) if val != nil
end
Builtins.y2milestone("-------------VS_SETTINGS-------------------")
@@ -302,7 +275,6 @@
)
Builtins.y2milestone("---------------------------------------------")
-
true
end
@@ -311,8 +283,6 @@
# existing upload file and permissions
#
# @return [Boolean] successfull
-
-
def ReadVSFTPDUpload
result = false
command = ""
@@ -334,7 +304,6 @@
result = false
end
if result
- #Popup::Message("Work ReadVSFTPDUpload");
@create_upload_dir = true
permissions = Builtins.substring(
Builtins.tostring(Ops.get(options, "stdout")),
@@ -346,10 +315,8 @@
if Ops.less_than(Builtins.size(w), 3) ||
Ops.less_than(Builtins.size(r), 3)
@upload_good_permission = false
- #Popup::Message("good permissions");
else
@upload_good_permission = true
- #Popup::Message("wrong permissions");
end
end
end
@@ -362,8 +329,6 @@
# checking permissions for upload
#
# @return [Boolean] successfull
-
-
def ReadPermisionUplaod
result = false
command = ""
@@ -388,7 +353,6 @@
Ops.subtract(Builtins.size(directories), 1),
""
)
- #Popup::Message(upload_dir);
directory = Ops.add(
"/",
Builtins.mergestring(
@@ -399,7 +363,6 @@
"/"
)
)
- #Popup::Message(directory);
else
@pure_ftp_allowed_permissios_upload = -1
end
@@ -435,13 +398,10 @@
if Ops.less_than(Builtins.size(w), 3) ||
Ops.less_than(Builtins.size(r), 3)
@pure_ftp_allowed_permissios_upload = 0
- #Popup::Message("good permissions");
else
@pure_ftp_allowed_permissios_upload = 1
- #Popup::Message("wrong permissions");
end
end
- #Popup::Message(tostring(pure_ftp_allowed_permissios_upload));
end
result
end
@@ -450,11 +410,10 @@
# to temporary structure
#
# @return [Boolean] successfull
-
def InitEDIT_SETTINGS
Builtins.foreach(@UI_keys) do |key|
val = ValueUI(key, false)
- Ops.set(@EDIT_SETTINGS, key, val) if val != nil #if (val == nil) Popup::Message(key);;
+ Ops.set(@EDIT_SETTINGS, key, val) if val != nil
end
Builtins.y2milestone("-------------EDIT_SETTINGS-------------------")
@@ -553,12 +512,10 @@
end
-
# Remap UI pure-ftpd or vsftpd configuration
# to write structure for SCR
#
# @return [Boolean] successfull
-
def WriteToSETTINGS
Builtins.foreach(@UI_keys) { |key| ValueUI(key, true) }
@@ -575,23 +532,9 @@
true
end
-
- # Restart daemon apply changes
- # only if daemon running...
- #
- # @return [Boolean] successfull
- #boolean ApplyChanges () {
-
-
-
-
- #}
-
-
# Write firewall configuration
#
# @return [Boolean] successfull
-
def WriteFirewallSettings
port_range = ""
active_port = ""
@@ -635,7 +578,6 @@
# @param [String] key of EDIT_SETTINGS map
# @param [String] value of "key" EDIT_SETTINGS map
# @return [Boolean] successfull
-
def WriteToEditMap(key, value)
Ops.set(@EDIT_SETTINGS, key, value)
true
@@ -782,8 +724,6 @@
else
result = false
end
-
- #Popup::Message(command);
else
result = true
end
@@ -819,26 +759,15 @@
result
end
+
# read value from PURE_EDIT_SETTINGS
#
# @param [String] key for edit map (ID of option)
# @return [String] value of key from edit map
-
def ValueUIEdit(key)
Ops.get(@EDIT_SETTINGS, key)
end
- # * Abort function
- # * @return boolean return true if abort
- # *
- # global define boolean Abort() ``{
- # if(AbortFunction != nil)
- # {
- # return AbortFunction () == true;
- # }
- # return false;
- # }
-
# Returns whether the configuration has been modified.
#
# @return [Boolean] modified
@@ -846,17 +775,15 @@
@modified
end
- # Function set modified variable.
+ # Function set {#modified} variable.
#
- # @param boolean modified
+ # @param [Boolean] set_modified
def SetModified(set_modified)
@modified = set_modified
nil
end
-
-
# Returns a confirmation popup dialog whether user wants to really abort.
#
# @return [Boolean] result of Popup::ReallyAbort(GetModified()
@@ -875,8 +802,6 @@
false
end
-
-
# Data was modified?
# @return true if modified
def Modified
@@ -884,8 +809,6 @@
@modified
end
-
-
# Read all FtpServer settings
# @return true on success
def Read
@@ -1096,8 +1019,6 @@
result
end
-
-
# Dump the FtpServer settings to a single map
# (For use by autoinstallation.)
# @return [Hash] Dumped settings (later acceptable by Import ())
@@ -1151,8 +1072,6 @@
_S
end
-
-
# Create a textual summary and a list of unconfigured cards
# @return summary of the current configuration
def Summary
@@ -1174,12 +1093,6 @@
_S
end
- # Create an overview table with all configured cards
- # @return table items
- def Overview
- []
- end
-
#zzz
# Return packages needed to be installed and removed during
# Autoinstallation to insure module has all needed software
@@ -1193,42 +1106,79 @@
end
end
+ # This helper allows YARD to extract DSL-defined attributes.
+ # Unfortunately YARD has problems with the Capitalized ones,
+ # so those must be done manually.
+ # @!macro [attach] publish_variable
+ # @!attribute $1
+ # @return [$2]
+ def self.publish_variable(name, type)
+ publish :variable => name, :type => type
+ end
+
publish :function => :SetModified, :type => "void (boolean)"
publish :function => :Modified, :type => "boolean ()"
publish :function => :WriteToEditMap, :type => "boolean (string, string)"
publish :function => :WriteSettings, :type => "boolean ()"
publish :function => :WriteUpload, :type => "boolean ()"
publish :function => :WriteXinetd, :type => "boolean ()"
- publish :variable => :modified, :type => "boolean"
- publish :variable => :proposal_valid, :type => "boolean"
- publish :variable => :vsftpd_edit, :type => "boolean"
- publish :variable => :vsftpd_installed, :type => "boolean"
- publish :variable => :pureftpd_installed, :type => "boolean"
- publish :variable => :vsftpd_xined_id, :type => "integer"
- publish :variable => :pureftpd_xined_id, :type => "integer"
- publish :variable => :start_xinetd, :type => "boolean"
- publish :variable => :pure_ftp_xinetd_running, :type => "boolean"
- publish :variable => :vsftp_xinetd_running, :type => "boolean"
- publish :variable => :stop_daemon_xinetd, :type => "boolean"
- publish :variable => :create_upload_dir, :type => "boolean"
- publish :variable => :upload_good_permission, :type => "boolean"
- publish :variable => :pure_ftp_allowed_permissios_upload, :type => "integer"
- publish :variable => :change_permissions, :type => "boolean"
- publish :variable => :anon_homedir, :type => "string"
- publish :variable => :anon_uid, :type => "integer"
- publish :variable => :pure_ftpd_xinet_conf, :type => "list <string>"
+ publish_variable :modified, "boolean"
+ publish_variable :proposal_valid, "boolean"
+ publish_variable :vsftpd_edit, "boolean"
+ publish_variable :vsftpd_installed, "boolean"
+ publish_variable :pureftpd_installed, "boolean"
+ publish_variable :vsftpd_xined_id, "integer"
+ publish_variable :pureftpd_xined_id, "integer"
+ publish_variable :start_xinetd, "boolean"
+ publish_variable :pure_ftp_xinetd_running, "boolean"
+ publish_variable :vsftp_xinetd_running, "boolean"
+ publish_variable :stop_daemon_xinetd, "boolean"
+ publish_variable :create_upload_dir, "boolean"
+ publish_variable :upload_good_permission, "boolean"
+ publish_variable :pure_ftp_allowed_permissios_upload, "integer"
+ publish_variable :change_permissions, "boolean"
+ publish_variable :anon_homedir, "string"
+ publish_variable :anon_uid, "integer"
+ publish_variable :pure_ftpd_xinet_conf, "list <string>"
+
+ # @attribute [r] UI_keys
+ # @return [Array<String>]
+ # A list of setting keys yast cares about,
+ # in the {#EDIT_SETTINGS} vocabulary.
+ # It should be made a constant.
publish :variable => :UI_keys, :type => "list <string>"
+
+ # @attribute DEFAULT_CONFIG
+ # @return [Hash]
+ # Defaults for {#EDIT_SETTINGS} in case the value is not found
+ # in the system settings.
publish :variable => :DEFAULT_CONFIG, :type => "map "
+
+ # @attribute PURE_SETTINGS
+ # @return [Hash]
+ # Uses CamelCase, {FtpServerWriteLoadInclude#ValueUI ValueUI} maps it
+ # to {#EDIT_SETTINGS} and {#DEFAULT_CONFIG}.
publish :variable => :PURE_SETTINGS, :type => "map "
+
+ # @attribute VS_SETTINGS
+ # @return [Hash]
+ # Uses snake_case, {FtpServerWriteLoadInclude#ValueUI ValueUI} maps it
+ # to {#EDIT_SETTINGS} and {#DEFAULT_CONFIG}.
publish :variable => :VS_SETTINGS, :type => "map "
+
+ # @attribute EDIT_SETTINGS
+ # @return [Hash]
+ # Uses CamelCase with similar but not the same keys as {#PURE_SETTINGS}.
+ # {FtpServerWriteLoadInclude#ValueUI ValueUI} maps it to {#PURE_SETTINGS}
+ # and {#VS_SETTINGS}.
publish :variable => :EDIT_SETTINGS, :type => "map "
+
publish :function => :PureSettingsForXinetd, :type => "string ()"
publish :function => :WriteStartViaXinetd, :type => "boolean (boolean, boolean)"
publish :function => :ValueUI, :type => "string (string, boolean)"
publish :function => :ValueUIEdit, :type => "string (string)"
- publish :variable => :ftps, :type => "boolean"
- publish :variable => :write_only, :type => "boolean"
- publish :variable => :AbortFunction, :type => "boolean ()"
+ publish_variable :ftps, "boolean"
+ publish_variable :write_only, "boolean"
publish :function => :GetModified, :type => "boolean ()"
publish :function => :Abort, :type => "boolean ()"
publish :function => :PollAbort, :type => "boolean ()"
@@ -1239,7 +1189,6 @@
publish :function => :Export, :type => "map ()"
publish :function => :OptionsSummary, :type => "string ()"
publish :function => :Summary, :type => "string ()"
- publish :function => :Overview, :type => "list ()"
publish :function => :AutoPackages, :type => "map ()"
end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-ftp-server-3.1.2/test/verbose_logging_test.rb new/yast2-ftp-server-3.1.3/test/verbose_logging_test.rb
--- old/yast2-ftp-server-3.1.2/test/verbose_logging_test.rb 1970-01-01 01:00:00.000000000 +0100
+++ new/yast2-ftp-server-3.1.3/test/verbose_logging_test.rb 2014-08-22 16:31:01.000000000 +0200
@@ -0,0 +1,126 @@
+#! /usr/bin/env rspec
+
+ENV["Y2DIR"] = File.expand_path("../../src", __FILE__)
+
+require "yast"
+
+Yast.import "FtpServer"
+
+VS_CONFIG_PATH = Yast::Path.new(".vsftpd")
+PURE_CONFIG_PATH = Yast::Path.new(".pure-ftpd")
+
+def mock_config(config_path, map)
+ allow(Yast::SCR).to receive(:Dir).with(config_path).and_return(map.keys)
+ map.each_pair do |key, value|
+ allow(Yast::SCR).to receive(:Read).with(config_path + key).and_return(value)
+ end
+end
+
+VS_SETTINGS = {
+ "write_enable" => "NO",
+ "dirmessage_enable" => "YES",
+ "nopriv_user" => "ftpsecure",
+ "local_enable" => "YES",
+ "anonymous_enable" => "YES",
+ "anon_world_readable_only" => "YES",
+ "syslog_enable" => "YES",
+ "connect_from_port_20" => "YES",
+ "ascii_upload_enable" => "YES",
+ "pam_service_name" => "vsftpd",
+ "listen" => "NO",
+ "listen_ipv6" => "YES",
+ "ssl_enable" => "NO",
+ "pasv_min_port" => "30000",
+ "pasv_max_port" => "30100"
+}
+
+PURE_SETTINGS = {
+ "AllowAnonymousFXP" => "no",
+ "AllowDotFiles" => "yes",
+ "AllowUserFXP" => "no",
+ "AnonymousCanCreateDirs" => "no",
+ "AnonymousCantUpload" => "yes",
+ "AnonymousOnly" => "yes",
+ "AntiWarez" => "yes",
+ "AutoRename" => "yes",
+ "BrokenClientsCompatibility" => "no",
+ "ChrootEveryone" => "yes",
+ "CustomerProof" => "yes",
+ "Daemonize" => "no",
+ "DisplayDotFiles" => "yes",
+ "DontResolve" => "yes",
+ "LimitRecursion" => "10000 8",
+ "MaxClientsNumber" => "10",
+ "MaxClientsPerIP" => "3",
+ "MaxDiskUsage" => "99",
+ "MaxIdleTime" => "15",
+ "MaxLoad" => "4",
+ "MinUID" => "40",
+ "NoAnonymous" => "no",
+ "NoRename" => "yes",
+ "PAMAuthentication" => "yes",
+ "PassivePortRange" => "30000 30100",
+ "ProhibitDotFilesRead" => "no",
+ "ProhibitDotFilesWrite" => "yes",
+ "SyslogFacility" => "ftp",
+ "VerboseLog" => "no"
+}
+
+describe "Yast::FtpServer" do
+ describe "#ValueUI" do
+ context "'VerboseLogging' when getting vsftpd settings" do
+ before do
+ Yast::FtpServer.vsftpd_edit = true
+ end
+
+ it "returns default value 'YES' if 'log_ftp_protocol' missing in config file" do
+ mock_config(VS_CONFIG_PATH, VS_SETTINGS)
+ Yast::FtpServer.ReadVSFTPDSettings()
+
+ expect(Yast::FtpServer.ValueUI("VerboseLogging", false)).to eql "YES"
+ end
+
+ it "returns value from config file 'NO' if 'log_ftp_protocol = NO' in config file" do
+ mock_config(VS_CONFIG_PATH, VS_SETTINGS.merge("log_ftp_protocol" => "NO"))
+ Yast::FtpServer.ReadVSFTPDSettings()
+
+ expect(Yast::FtpServer.ValueUI("VerboseLogging", false)).to eql "NO"
+ end
+
+ it "returns value from config file 'YES' if 'log_ftp_protocol = YES' in config file" do
+ mock_config(VS_CONFIG_PATH, VS_SETTINGS.merge("log_ftp_protocol" => "YES"))
+ Yast::FtpServer.ReadVSFTPDSettings()
+
+ expect(Yast::FtpServer.ValueUI("VerboseLogging", false)).to eql "YES"
+ end
+ end
+
+ context "'VerboseLogging' when getting pure-ftpd settings" do
+ before do
+ Yast::FtpServer.vsftpd_edit = false
+ end
+
+ it "returns default value 'NO' if config file empty" do
+ mock_config(PURE_CONFIG_PATH, {})
+ Yast::FtpServer.ReadPUREFTPDSettings()
+
+ expect(Yast::FtpServer.ValueUI("VerboseLogging", false)).to eql "NO"
+ end
+
+ it "returns value from config file 'NO' if 'VerboseLog = no' in config file" do
+ mock_config(PURE_CONFIG_PATH, PURE_SETTINGS)
+ Yast::FtpServer.ReadPUREFTPDSettings()
+
+ expect(Yast::FtpServer.ValueUI("VerboseLogging", false)).to eql "NO"
+ end
+
+ it "returns value from config file 'YES' if 'VerboseLog = yes' in config file" do
+ mock_config(PURE_CONFIG_PATH, PURE_SETTINGS.merge("VerboseLog" => "YES"))
+ Yast::FtpServer.ReadPUREFTPDSettings()
+
+ expect(Yast::FtpServer.ValueUI("VerboseLogging", false)).to eql "YES"
+ end
+ end
+
+ end
+end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-ftp-server-3.1.2/.yardopts new/yast2-ftp-server-3.1.3/.yardopts
--- old/yast2-ftp-server-3.1.2/.yardopts 1970-01-01 01:00:00.000000000 +0100
+++ new/yast2-ftp-server-3.1.3/.yardopts 2014-08-22 16:31:01.000000000 +0200
@@ -0,0 +1,6 @@
+--no-private
+--protected
+--markup markdown
+--output-dir doc/autodocs
+--readme README.md
+src/**/*.rb
continue with "q"...
Checked in at Mon Aug 25 15:37:23 CEST 2014 by bg
Remember to have fun...
--
To unsubscribe, e-mail: yast-commit+unsubscribe@opensuse.org
For additional commands, e-mail: yast-commit+help@opensuse.org