openSUSE Commits
Threads by month
- ----- 2024 -----
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
September 2014
- 1 participants
- 1675 discussions
Hello community,
here is the log from the commit of package vlgothic-fonts for openSUSE:Factory checked in at 2014-09-03 18:22:54
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/vlgothic-fonts (Old)
and /work/SRC/openSUSE:Factory/.vlgothic-fonts.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "vlgothic-fonts"
Changes:
--------
--- /work/SRC/openSUSE:Factory/vlgothic-fonts/vlgothic-fonts.changes 2012-09-14 12:41:45.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.vlgothic-fonts.new/vlgothic-fonts.changes 2014-09-03 21:17:30.000000000 +0200
@@ -1,0 +2,7 @@
+Mon Sep 1 14:19:08 UTC 2014 - ftake(a)geeko.jp
+
+- updated to version 20140801
+ * new glyphs including Unicode emoji
+ * update M+ part to the latest CVS HEAD
+
+-------------------------------------------------------------------
Old:
----
VLGothic-20120325.tar.bz2
New:
----
VLGothic-20140801.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ vlgothic-fonts.spec ++++++
--- /var/tmp/diff_new_pack.bbWVeq/_old 2014-09-03 21:17:32.000000000 +0200
+++ /var/tmp/diff_new_pack.bbWVeq/_new 2014-09-03 21:17:32.000000000 +0200
@@ -1,7 +1,7 @@
#
# spec file for package vlgothic-fonts
#
-# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2014 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
@@ -17,13 +17,13 @@
Name: vlgothic-fonts
-Version: 20120325
+Version: 20140801
Release: 0
Summary: VL-Gothic TrueType font family
License: BSD-3-Clause and SUSE-mplus
Group: System/X11/Fonts
Url: http://dicey.org/vlgothic/
-Source0: VLGothic-%{version}.tar.bz2
+Source0: VLGothic-%{version}.tar.xz
BuildRequires: fontpackages-devel
Provides: scalable-font-ja
Provides: vlgothic = %{version}
@@ -41,11 +41,6 @@
%setup -q -n VLGothic
%build
-for i in README_J.mplus LICENSE_J.mplus
-do
- iconv -feucjp -tutf-8 < $i > $i.tmp
- mv $i.tmp $i
-done
%install
mkdir -p %{buildroot}%{_ttfontsdir}
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package texmaker for openSUSE:Factory checked in at 2014-09-03 18:23:04
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/texmaker (Old)
and /work/SRC/openSUSE:Factory/.texmaker.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "texmaker"
Changes:
--------
--- /work/SRC/openSUSE:Factory/texmaker/texmaker.changes 2014-05-05 21:14:19.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.texmaker.new/texmaker.changes 2014-09-03 21:14:00.000000000 +0200
@@ -1,0 +2,21 @@
+Mon Sep 1 13:56:01 UTC 2014 - badshah400(a)gmail.com
+
+- Update to version 4.3:
+ + A visual diff view has been added to the "source viewer"
+ (differences between the current files loaded in the editor
+ and in the "source viewer") based on jsdifflib from Chas
+ Emerick (BSD license)
+ + When a command fails, the command is now displayed with the
+ error message "Could not start the command"
+ + An "reload all documents from file" option has been added to
+ the "File" menu
+ + If a "completion.txt" file is found in the same directory than
+ texmaker.exe on windows, in the "/usr/share/texmaker/" folder
+ on linux and in the "Resources" subdirectory of the .app
+ on macosx, all items from this file will be added
+ automatically for the autocompletion
+ + An option to launch the "Clean" tool when exiting the program
+ has been added
+ + The cs, el, es, hu and se translations have been updated.
+
+-------------------------------------------------------------------
Old:
----
texmaker-4.2.tar.bz2
New:
----
texmaker-4.3.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ texmaker.spec ++++++
--- /var/tmp/diff_new_pack.LXYxPU/_old 2014-09-03 21:14:02.000000000 +0200
+++ /var/tmp/diff_new_pack.LXYxPU/_new 2014-09-03 21:14:02.000000000 +0200
@@ -17,10 +17,10 @@
Name: texmaker
-Version: 4.2
+Version: 4.3
Release: 0
Summary: Free cross-platform LaTeX editor
-License: GPL-2.0
+License: GPL-2.0 and BSD-3-Clause
Group: Productivity/Publishing/TeX/Frontends
Url: http://www.xm1math.net/texmaker/
Source: http://www.xm1math.net/texmaker/texmaker-%{version}.tar.bz2
++++++ texmaker-4.2.tar.bz2 -> texmaker-4.3.tar.bz2 ++++++
/work/SRC/openSUSE:Factory/texmaker/texmaker-4.2.tar.bz2 /work/SRC/openSUSE:Factory/.texmaker.new/texmaker-4.3.tar.bz2 differ: char 11, line 1
++++++ texmaker-correct-doc-location.patch ++++++
--- /var/tmp/diff_new_pack.LXYxPU/_old 2014-09-03 21:14:02.000000000 +0200
+++ /var/tmp/diff_new_pack.LXYxPU/_new 2014-09-03 21:14:02.000000000 +0200
@@ -1,7 +1,7 @@
-Index: texmaker-4.2/texmaker.pro
+Index: texmaker-4.3/texmaker.pro
===================================================================
---- texmaker-4.2.orig/texmaker.pro
-+++ texmaker-4.2/texmaker.pro
+--- texmaker-4.3.orig/texmaker.pro
++++ texmaker-4.3/texmaker.pro
@@ -387,9 +387,6 @@ utilities.files = doc/doc1.png \
atd/atd.css \
atd/csshttprequest.js \
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package tcl-tktray for openSUSE:Factory checked in at 2014-09-03 18:22:50
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/tcl-tktray (Old)
and /work/SRC/openSUSE:Factory/.tcl-tktray.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "tcl-tktray"
Changes:
--------
--- /work/SRC/openSUSE:Factory/tcl-tktray/tcl-tktray.changes 2012-06-25 12:06:31.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.tcl-tktray.new/tcl-tktray.changes 2014-09-03 21:12:49.000000000 +0200
@@ -1,0 +2,5 @@
+Mon Sep 1 10:52:53 UTC 2014 - gber(a)opensuse.org
+
+- change license name to TCL again
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ tcl-tktray.spec ++++++
--- /var/tmp/diff_new_pack.laRAFY/_old 2014-09-03 21:12:50.000000000 +0200
+++ /var/tmp/diff_new_pack.laRAFY/_new 2014-09-03 21:12:50.000000000 +0200
@@ -1,7 +1,7 @@
#
# spec file for package tcl-tktray
#
-# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany.
# Copyright (c) 2011 open-slx GmbH <Sascha.Manns(a)open-slx.de>
#
# All modifications and additions to the file contributed by third parties
@@ -21,7 +21,7 @@
Version: 1.3.9
Release: 0
Summary: System Tray Icon Support for Tk on X11
-License: SUSE-TCL
+License: TCL
Group: Development/Languages/Tcl
Url: http://sw4me.com/wiki/Tktray
Source: http://tktray.googlecode.com/files/tktray%{version}.tar.gz
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package systemd for openSUSE:Factory checked in at 2014-09-03 18:21:43
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/systemd (Old)
and /work/SRC/openSUSE:Factory/.systemd.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "systemd"
Changes:
--------
--- /work/SRC/openSUSE:Factory/systemd/systemd-mini.changes 2014-08-29 17:43:05.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.systemd.new/systemd-mini.changes 2014-09-03 21:12:19.000000000 +0200
@@ -1,0 +2,29 @@
+Tue Sep 2 12:56:47 UTC 2014 - rmilasan(a)suse.com
+
+- udev: add option to generate old 'buggy' serials (bnc#886852)
+ Add 1066-udev-add-compatibility-links-for-truncated-by-id-links.patch
+
+-------------------------------------------------------------------
+Tue Sep 2 09:14:03 UTC 2014 - werner(a)suse.de
+
+- Add upstream patch
+ 0001-login-simplify-controller-handling.patch
+
+-------------------------------------------------------------------
+Mon Sep 1 13:00:29 UTC 2014 - werner(a)suse.de
+
+- Add upstream patches
+ 0001-completion-filter-templates-from-restartable-units.patch
+ 0002-systemd-fix-error-message.patch
+ 0003-Quote-unit-names-in-suggested-systemctl-commandlines.patch
+ 0004-config-parser-fix-mem-leak.patch
+ 0005-login-fix-mem-leak.patch
+ 1065-udev-bump-event-timeout-to-60-seconds.patch
+
+-------------------------------------------------------------------
+Fri Aug 29 14:14:06 UTC 2014 - werner(a)suse.de
+
+- Add upstream patch 0001-nspawn-fix-network-interface.patch to
+ make option network-interface of systemd-nspawn work
+
+-------------------------------------------------------------------
systemd.changes: same change
New:
----
0001-completion-filter-templates-from-restartable-units.patch
0001-login-simplify-controller-handling.patch
0001-nspawn-fix-network-interface.patch
0002-systemd-fix-error-message.patch
0003-Quote-unit-names-in-suggested-systemctl-commandlines.patch
0004-config-parser-fix-mem-leak.patch
0005-login-fix-mem-leak.patch
1065-udev-bump-event-timeout-to-60-seconds.patch
1066-udev-add-compatibility-links-for-truncated-by-id-links.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ systemd-mini.spec ++++++
--- /var/tmp/diff_new_pack.ndIGBV/_old 2014-09-03 21:12:23.000000000 +0200
+++ /var/tmp/diff_new_pack.ndIGBV/_new 2014-09-03 21:12:23.000000000 +0200
@@ -814,6 +814,20 @@
Patch392: 0003-sd-journal-properly-convert-object-size-on-big-endia.patch
# PATCH-FIX-UPSTREAM added at 2014/08/28
Patch393: 0004-sd-journal-verify-that-object-start-with-the-field-n.patch
+# PATCH-FIX-UPSTREAM added at 2014/08/29
+Patch394: 0001-nspawn-fix-network-interface.patch
+# PATCH-FIX-UPSTREAM added at 2014/09/01
+Patch395: 0001-completion-filter-templates-from-restartable-units.patch
+# PATCH-FIX-UPSTREAM added at 2014/09/01
+Patch396: 0002-systemd-fix-error-message.patch
+# PATCH-FIX-UPSTREAM added at 2014/09/01
+Patch397: 0003-Quote-unit-names-in-suggested-systemctl-commandlines.patch
+# PATCH-FIX-UPSTREAM added at 2014/09/01
+Patch398: 0004-config-parser-fix-mem-leak.patch
+# PATCH-FIX-UPSTREAM added at 2014/09/01
+Patch399: 0005-login-fix-mem-leak.patch
+# PATCH-FIX-UPSTREAM added at 2014/09/02
+Patch400: 0001-login-simplify-controller-handling.patch
# UDEV PATCHES
# ============
@@ -949,6 +963,10 @@
Patch1063: 1063-udev-path_id-suppress-ID_PATH-for-devices-with-an-un.patch
# PATCH-FIX-UPSTREAM 1064-udev-hwdb-do-not-look-at-usb_device-parents.patch
Patch1064: 1064-udev-hwdb-do-not-look-at-usb_device-parents.patch
+# PATCH-FIX-UPSTREAM 1065-udev-bump-event-timeout-to-60-seconds.patch
+Patch1065: 1065-udev-bump-event-timeout-to-60-seconds.patch
+# PATCH-FIX-SUSE 1066-udev-add-compatibility-links-for-truncated-by-id-links.patch (bnc#886852)
+Patch1066: 1066-udev-add-compatibility-links-for-truncated-by-id-links.patch
%description
Systemd is a system and service manager, compatible with SysV and LSB
@@ -1501,6 +1519,13 @@
%patch391 -p0
%patch392 -p0
%patch393 -p0
+%patch394 -p0
+%patch395 -p0
+%patch396 -p0
+%patch397 -p0
+%patch398 -p0
+%patch399 -p0
+%patch400 -p0
# udev patches
%patch1001 -p1
@@ -1588,6 +1613,8 @@
%patch1062 -p1
%patch1063 -p0
%patch1064 -p0
+%patch1065 -p0
+%patch1066 -p1
# remove patch backups
find -name '*.orig' -exec rm -f '{}' \+
++++++ systemd.spec ++++++
--- /var/tmp/diff_new_pack.ndIGBV/_old 2014-09-03 21:12:23.000000000 +0200
+++ /var/tmp/diff_new_pack.ndIGBV/_new 2014-09-03 21:12:23.000000000 +0200
@@ -809,6 +809,20 @@
Patch392: 0003-sd-journal-properly-convert-object-size-on-big-endia.patch
# PATCH-FIX-UPSTREAM added at 2014/08/28
Patch393: 0004-sd-journal-verify-that-object-start-with-the-field-n.patch
+# PATCH-FIX-UPSTREAM added at 2014/08/29
+Patch394: 0001-nspawn-fix-network-interface.patch
+# PATCH-FIX-UPSTREAM added at 2014/09/01
+Patch395: 0001-completion-filter-templates-from-restartable-units.patch
+# PATCH-FIX-UPSTREAM added at 2014/09/01
+Patch396: 0002-systemd-fix-error-message.patch
+# PATCH-FIX-UPSTREAM added at 2014/09/01
+Patch397: 0003-Quote-unit-names-in-suggested-systemctl-commandlines.patch
+# PATCH-FIX-UPSTREAM added at 2014/09/01
+Patch398: 0004-config-parser-fix-mem-leak.patch
+# PATCH-FIX-UPSTREAM added at 2014/09/01
+Patch399: 0005-login-fix-mem-leak.patch
+# PATCH-FIX-UPSTREAM added at 2014/09/02
+Patch400: 0001-login-simplify-controller-handling.patch
# UDEV PATCHES
# ============
@@ -944,6 +958,10 @@
Patch1063: 1063-udev-path_id-suppress-ID_PATH-for-devices-with-an-un.patch
# PATCH-FIX-UPSTREAM 1064-udev-hwdb-do-not-look-at-usb_device-parents.patch
Patch1064: 1064-udev-hwdb-do-not-look-at-usb_device-parents.patch
+# PATCH-FIX-UPSTREAM 1065-udev-bump-event-timeout-to-60-seconds.patch
+Patch1065: 1065-udev-bump-event-timeout-to-60-seconds.patch
+# PATCH-FIX-SUSE 1066-udev-add-compatibility-links-for-truncated-by-id-links.patch (bnc#886852)
+Patch1066: 1066-udev-add-compatibility-links-for-truncated-by-id-links.patch
%description
Systemd is a system and service manager, compatible with SysV and LSB
@@ -1496,6 +1514,13 @@
%patch391 -p0
%patch392 -p0
%patch393 -p0
+%patch394 -p0
+%patch395 -p0
+%patch396 -p0
+%patch397 -p0
+%patch398 -p0
+%patch399 -p0
+%patch400 -p0
# udev patches
%patch1001 -p1
@@ -1583,6 +1608,8 @@
%patch1062 -p1
%patch1063 -p0
%patch1064 -p0
+%patch1065 -p0
+%patch1066 -p1
# remove patch backups
find -name '*.orig' -exec rm -f '{}' \+
++++++ 0001-completion-filter-templates-from-restartable-units.patch ++++++
Based on ec15977a3cd82eff6c94bb13db72195f7cd512e8 Mon Sep 17 00:00:00 2001
From: Dave Reisner <dreisner(a)archlinux.org>
Date: Fri, 29 Aug 2014 20:35:15 -0400
Subject: [PATCH] completion: filter templates from restartable units
Since c6a373a2634854, we might encounter unit templates via the
'list-units' verb. These aren't restartable (and we throw errors), so
make sure they're filtered out of the completion options.
fixes downstream bug: https://bugs.archlinux.org/task/41719
---
shell-completion/bash/systemctl.in | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git shell-completion/bash/systemctl.in shell-completion/bash/systemctl.in
index 64b15df..0150018 100644
--- shell-completion/bash/systemctl
+++ shell-completion/bash/systemctl
@@ -182,7 +182,7 @@ _systemctl () {
comps=$( __filter_units_by_property $mode CanStart yes \
$( __get_all_units $mode \
| while read -r line; do \
- [[ "$line" =~ \.(device|snapshot|socket|timer)$ ]] || echo " $line"; \
+ [[ "$line" =~ @\.|\.(device|snapshot|socket|timer)$ ]] || echo " $line"; \
done ))
compopt -o filenames
--
1.7.9.2
++++++ 0001-login-simplify-controller-handling.patch ++++++
Based on b12e56156e5f363ebb8dc4ea5c10f5fd0665dc9d Mon Sep 17 00:00:00 2001
From: David Herrmann <dh.herrmann(a)gmail.com>
Date: Mon, 1 Sep 2014 14:04:44 +0200
Subject: [PATCH] login: simplify controller handling
Simplify the way we handler session-controllers and fix several
shortcomings:
* send ReleaseDevice() signals on forced session takeover
* fix mem-leaks for busnames in case VT preparation fails (non-critical)
* avoid passing pre-allocated names to helpers
---
src/login/logind-session.c | 55 ++++++++++++++++++++++----------------------
1 file changed, 28 insertions(+), 27 deletions(-)
diff --git src/login/logind-session.c src/login/logind-session.c
index 58453b5..10a43a4 100644
--- src/login/logind-session.c
+++ src/login/logind-session.c
@@ -1059,32 +1059,30 @@ bool session_is_controller(Session *s, const char *sender) {
return streq_ptr(s->controller, sender);
}
-static void session_swap_controller(Session *s, char *name) {
+static void session_release_controller(Session *s, bool notify) {
+ _cleanup_free_ char *name = NULL;
SessionDevice *sd;
- char *c;
- if (s->controller) {
- c = s->controller;
- s->controller = NULL;
- manager_drop_busname(s->manager, c);
- free(c);
+ if (!s->controller)
+ return;
- /* Drop all devices as they're now unused. Do that after the
- * controller is released to avoid sending out useles
- * dbus signals. */
- while ((sd = hashmap_first(s->devices)))
- session_device_free(sd);
+ name = s->controller;
- if (!name)
- session_restore_vt(s);
- }
+ /* By resetting the controller before releasing the devices, we won't
+ * send notification signals. This avoids sending useless notifications
+ * if the controller is released on disconnects. */
+ if (!notify)
+ s->controller = NULL;
- s->controller = name;
- session_save(s);
+ while ((sd = hashmap_first(s->devices)))
+ session_device_free(sd);
+
+ s->controller = NULL;
+ manager_drop_busname(s->manager, name);
}
int session_set_controller(Session *s, const char *sender, bool force) {
- char *t;
+ _cleanup_free_ char *name = NULL;
int r;
assert(s);
@@ -1095,15 +1093,13 @@ int session_set_controller(Session *s, const char *sender, bool force) {
if (s->controller && !force)
return -EBUSY;
- t = strdup(sender);
- if (!t)
+ name = strdup(sender);
+ if (!name)
return -ENOMEM;
- r = manager_watch_busname(s->manager, sender);
- if (r) {
- free(t);
+ r = manager_watch_busname(s->manager, name);
+ if (r)
return r;
- }
/* When setting a session controller, we forcibly mute the VT and set
* it into graphics-mode. Applications can override that by changing
@@ -1115,11 +1111,14 @@ int session_set_controller(Session *s, const char *sender, bool force) {
* or reset the VT in case it crashed/exited, too. */
r = session_mute_vt(s);
if (r < 0) {
- free(t);
+ manager_drop_busname(s->manager, name);
return r;
}
- session_swap_controller(s, t);
+ session_release_controller(s, true);
+ s->controller = name;
+ name = NULL;
+ session_save(s);
return 0;
}
@@ -1130,7 +1129,9 @@ void session_drop_controller(Session *s) {
if (!s->controller)
return;
- session_swap_controller(s, NULL);
+ session_release_controller(s, false);
+ session_save(s);
+ session_restore_vt(s);
}
static const char* const session_state_table[_SESSION_STATE_MAX] = {
--
1.7.9.2
++++++ 0001-nspawn-fix-network-interface.patch ++++++
Based on 3125b3ef5db70d45882c7d6f617705802c5f939e Mon Sep 17 00:00:00 2001
From: Tom Gundersen <teg(a)jklm.no>
Date: Thu, 28 Aug 2014 12:15:51 +0200
Subject: [PATCH] nspawn: fix --network-interface
Use SETLINK when modifying an existing link.
---
src/nspawn/nspawn.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- src/nspawn/nspawn.c
+++ src/nspawn/nspawn.c 2014-08-29 14:11:25.866235309 +0000
@@ -1568,7 +1568,7 @@ static int move_network_interfaces(pid_t
return -EBUSY;
}
- r = sd_rtnl_message_new_link(rtnl, &m, RTM_NEWLINK, ifi);
+ r = sd_rtnl_message_new_link(rtnl, &m, RTM_SETLINK, ifi);
if (r < 0) {
log_error("Failed to allocate netlink message: %s", strerror(-r));
return r;
++++++ 0002-systemd-fix-error-message.patch ++++++
Based on 6ad3b2b62cbe34cc02ee98deb5f48047f5e42d26 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek(a)in.waw.pl>
Date: Sat, 30 Aug 2014 17:22:42 -0400
Subject: [PATCH] systemd: fix error message
---
src/core/dbus-manager.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
--- src/core/dbus-manager.c
+++ src/core/dbus-manager.c 2014-09-01 12:51:33.266735961 +0000
@@ -1114,7 +1114,7 @@ static int method_switch_root(sd_bus *bu
return r;
if (m->running_as != SYSTEMD_SYSTEM)
- return sd_bus_error_setf(error, SD_BUS_ERROR_NOT_SUPPORTED, "KExec is only supported for system managers.");
+ return sd_bus_error_setf(error, SD_BUS_ERROR_NOT_SUPPORTED, "Root switching is only supported by system manager.");
r = sd_bus_message_read(message, "ss", &root, &init);
if (r < 0)
@@ -1125,7 +1125,7 @@ static int method_switch_root(sd_bus *bu
/* Safety check */
if (isempty(init)) {
- if (! path_is_os_tree(root))
+ if (!path_is_os_tree(root))
return sd_bus_error_setf(error, SD_BUS_ERROR_INVALID_ARGS, "Specified switch root path %s does not seem to be an OS tree. /etc/os-release is missing.", root);
} else {
_cleanup_free_ char *p = NULL;
++++++ 0003-Quote-unit-names-in-suggested-systemctl-commandlines.patch ++++++
>From 8e07fc41f86d41e68c5663b2a3c620a0adedcc11 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek(a)in.waw.pl>
Date: Sun, 31 Aug 2014 00:42:27 -0400
Subject: [PATCH] Quote unit names in suggested systemctl commandlines
The fact that unit names have to be quoted can be a bit surprising.
Show quotes in the hint commandline, but only after checking that this
is necessary, since quotes are visually heavy and usually not needed.
https://bugs.freedesktop.org/show_bug.cgi?id=82832
---
src/core/job.c | 11 +++++++++--
src/systemctl/systemctl.c | 14 ++++++++++++--
2 files changed, 21 insertions(+), 4 deletions(-)
diff --git src/core/job.c src/core/job.c
index 5e4987f..ef5dbce 100644
--- src/core/job.c
+++ src/core/job.c
@@ -632,11 +632,18 @@ static void job_print_status_message(Unit *u, JobType t, JobResult result) {
unit_status_printf(u, ANSI_GREEN_ON " OK " ANSI_HIGHLIGHT_OFF, format);
break;
- case JOB_FAILED:
+ case JOB_FAILED: {
+ bool quotes;
+
+ quotes = chars_intersect(u->id, SHELL_NEED_QUOTES);
+
manager_flip_auto_status(u->manager, true);
unit_status_printf(u, ANSI_HIGHLIGHT_RED_ON "FAILED" ANSI_HIGHLIGHT_OFF, format);
- manager_status_printf(u->manager, false, NULL, "See 'systemctl status %s' for details.", u->id);
+ manager_status_printf(u->manager, false, NULL,
+ "See \"systemctl status %s%s%s\" for details.",
+ quotes ? "'" : "", u->id, quotes ? "'" : "");
break;
+ }
case JOB_DEPENDENCY:
manager_flip_auto_status(u->manager, true);
diff --git src/systemctl/systemctl.c src/systemctl/systemctl.c
index 6534819..de43c87 100644
--- src/systemctl/systemctl.c
+++ src/systemctl/systemctl.c
@@ -2351,8 +2351,18 @@ static int check_wait_response(WaitData *d) {
log_error("Job for %s canceled.", strna(d->name));
else if (streq(d->result, "dependency"))
log_error("A dependency job for %s failed. See 'journalctl -xn' for details.", strna(d->name));
- else if (!streq(d->result, "done") && !streq(d->result, "skipped"))
- log_error("Job for %s failed. See 'systemctl status %s' and 'journalctl -xn' for details.", strna(d->name), strna(d->name));
+ else if (!streq(d->result, "done") && !streq(d->result, "skipped")) {
+ if (d->name) {
+ bool quotes;
+
+ quotes = chars_intersect(d->name, SHELL_NEED_QUOTES);
+
+ log_error("Job for %s failed. See \"systemctl status %s%s%s\" and \"journalctl -xn\" for details.",
+ d->name,
+ quotes ? "'" : "", d->name, quotes ? "'" : "");
+ } else
+ log_error("Job failed. See \"journalctl -xn\" for details.");
+ }
}
if (streq(d->result, "timeout"))
--
1.7.9.2
++++++ 0004-config-parser-fix-mem-leak.patch ++++++
>From 9e60277835e61597011358afcdbfb3dd712ce128 Mon Sep 17 00:00:00 2001
From: Thomas Hindoe Paaboel Andersen <phomes(a)gmail.com>
Date: Sun, 31 Aug 2014 23:13:12 +0200
Subject: [PATCH] config-parser: fix mem leak
---
src/shared/conf-parser.c | 1 +
1 file changed, 1 insertion(+)
diff --git src/shared/conf-parser.c src/shared/conf-parser.c
index 439cfc5..ee6de65 100644
--- src/shared/conf-parser.c
+++ src/shared/conf-parser.c
@@ -710,6 +710,7 @@ int config_parse_strv(const char *unit,
if (!utf8_is_valid(n)) {
log_invalid_utf8(unit, LOG_ERR, filename, line, EINVAL, rvalue);
+ free(n);
continue;
}
--
1.7.9.2
++++++ 0005-login-fix-mem-leak.patch ++++++
Based on 13f493dc9ace9861c1f27c4d37e8cd6d52fe6a32 Mon Sep 17 00:00:00 2001
From: Thomas Hindoe Paaboel Andersen <phomes(a)gmail.com>
Date: Sun, 31 Aug 2014 23:34:01 +0200
Subject: [PATCH] login: fix mem leak
---
src/login/logind-session.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
--- src/login/logind-session.c
+++ src/login/logind-session.c 2014-09-01 12:59:27.870235647 +0000
@@ -1101,8 +1101,10 @@ int session_set_controller(Session *s, c
* If logind crashes/restarts, we restore the controller during restart
* or reset the VT in case it crashed/exited, too. */
r = session_mute_vt(s);
- if (r < 0)
+ if (r < 0) {
+ free(t);
return r;
+ }
session_swap_controller(s, t);
++++++ 1065-udev-bump-event-timeout-to-60-seconds.patch ++++++
>From 2e92633dbae52f5ac9b7b2e068935990d475d2cd Mon Sep 17 00:00:00 2001
From: Kay Sievers <kay(a)vrfy.org>
Date: Sat, 30 Aug 2014 11:36:32 +0200
Subject: [PATCH] udev: bump event timeout to 60 seconds
---
src/udev/udevadm-test.c | 2 +-
src/udev/udevd.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git src/udev/udevadm-test.c src/udev/udevadm-test.c
index 8486049..809adb6 100644
--- src/udev/udevadm-test.c
+++ src/udev/udevadm-test.c
@@ -136,7 +136,7 @@ static int adm_test(struct udev *udev, int argc, char *argv[]) {
goto out;
}
- udev_event_execute_rules(event, 30 * USEC_PER_SEC, rules, &sigmask_orig);
+ udev_event_execute_rules(event, 60 * USEC_PER_SEC, rules, &sigmask_orig);
udev_list_entry_foreach(entry, udev_device_get_properties_list_entry(dev))
printf("%s=%s\n", udev_list_entry_get_name(entry), udev_list_entry_get_value(entry));
diff --git src/udev/udevd.c src/udev/udevd.c
index 9c2b0d5..e72c5b2 100644
--- src/udev/udevd.c
+++ src/udev/udevd.c
@@ -73,7 +73,7 @@ static bool reload;
static int children;
static int children_max;
static int exec_delay;
-static usec_t event_timeout_usec = 30 * USEC_PER_SEC;
+static usec_t event_timeout_usec = 60 * USEC_PER_SEC;
static sigset_t sigmask_orig;
static UDEV_LIST(event_list);
static UDEV_LIST(worker_list);
--
1.7.9.2
++++++ 1066-udev-add-compatibility-links-for-truncated-by-id-links.patch ++++++
From: Jeff Mahoney <jeffm(a)suse.com>
Subject: udev: add option to generate old 'buggy' serials
References: bnc#886852
Prior to udev 184, scsi_id would truncate the last character of the model
string when generating the ID_SERIAL value. If a system was installed
prior to that fix being available in udev, there may be configuration
information that refers to the truncated link.
This patch adds a --truncated-serial option and a udev rule will created
the old truncated links.
Signed-off-by: Jeff Mahoney <jeffm(a)suse.com>
---
rules/60-persistent-storage.rules | 4 ++++
src/udev/scsi_id/scsi_id.c | 15 ++++++++++++++-
src/udev/scsi_id/scsi_id.h | 1 +
src/udev/scsi_id/scsi_serial.c | 19 +++++++++++++------
4 files changed, 32 insertions(+), 7 deletions(-)
--- a/rules/60-persistent-storage.rules
+++ b/rules/60-persistent-storage.rules
@@ -46,6 +46,10 @@ KERNEL=="sd*|cciss*", ENV{DEVTYPE}=="par
KERNEL=="sd*[!0-9]", ENV{ID_BUS}=="ata", PROGRAM="scsi_id --whitelisted --replace-whitespace -p0x80 -d $devnode", RESULT=="?*", ENV{ID_SCSI_COMPAT}="$result", SYMLINK+="disk/by-id/scsi-$env{ID_SCSI_COMPAT}"
KERNEL=="sd*[0-9]", ENV{ID_SCSI_COMPAT}=="?*", SYMLINK+="disk/by-id/scsi-$env{ID_SCSI_COMPAT}-part%n"
+# scsi compat links for ATA devices (for compatibility with udev < 184)
+KERNEL=="sd*[!0-9]", ENV{ID_BUS}=="ata", PROGRAM="scsi_id --truncated-serial --whitelisted --replace-whitespace -p0x80 -d$tempnode", RESULT=="?*", ENV{ID_SCSI_COMPAT_TRUNCATED}="$result", SYMLINK+="disk/by-id/scsi-$env{ID_SCSI_COMPAT_TRUNCATED}"
+KERNEL=="sd*[0-9]", ENV{ID_SCSI_COMPAT_TRUNCATED}=="?*", SYMLINK+="disk/by-id/scsi-$env{ID_SCSI_COMPAT_TRUNCATED}-part%n"
+
# firewire
KERNEL=="sd*[!0-9]|sr*", ATTRS{ieee1394_id}=="?*", SYMLINK+="disk/by-id/ieee1394-$attr{ieee1394_id}"
KERNEL=="sd*[0-9]", ATTRS{ieee1394_id}=="?*", SYMLINK+="disk/by-id/ieee1394-$attr{ieee1394_id}-part%n"
--- a/src/udev/scsi_id/scsi_id.c
+++ b/src/udev/scsi_id/scsi_id.c
@@ -44,6 +44,7 @@ static const struct option options[] = {
{ "replace-whitespace", no_argument, NULL, 'u' },
{ "sg-version", required_argument, NULL, 's' },
{ "verbose", no_argument, NULL, 'v' },
+ { "truncated-serial", no_argument, NULL, '9' },
{ "version", no_argument, NULL, 'V' }, /* don't advertise -V */
{ "export", no_argument, NULL, 'x' },
{ "help", no_argument, NULL, 'h' },
@@ -56,6 +57,7 @@ static char config_file[MAX_PATH_LEN] =
static enum page_code default_page_code = PAGE_UNSPECIFIED;
static int sg_version = 4;
static int debug = 0;
+static bool compat_truncated = false;
static bool reformat_serial = false;
static bool export = false;
static char vendor_str[64];
@@ -323,6 +325,7 @@ static void help(void) {
" -g,--whitelisted threat device as whitelisted\n"
" -u,--replace-whitespace replace all whitespace by underscores\n"
" -v,--verbose verbose logging\n"
+ " --truncated-serial truncated serial for compatibility with systems configured with by-id links created by udev < 184\n"
" --version print version\n"
" -x,--export print values as environment keys\n"
" -h,--help print this help text\n\n");
@@ -393,6 +396,10 @@ static int set_options(struct udev *udev
debug++;
break;
+ case '9':
+ compat_truncated = true;
+ break;
+
case 'V':
printf("%s\n", VERSION);
exit(0);
@@ -535,6 +542,9 @@ static int scsi_id(struct udev *udev, ch
util_replace_whitespace(dev_scsi.serial, serial_str, sizeof(serial_str));
util_replace_chars(serial_str, NULL);
printf("ID_SERIAL=%s\n", serial_str);
+ util_replace_whitespace(dev_scsi.serial_compat, serial_str, sizeof(serial_str));
+ util_replace_chars(serial_str, NULL);
+ printf("ID_SERIAL_COMPAT=%s\n", serial_str);
util_replace_whitespace(dev_scsi.serial_short, serial_str, sizeof(serial_str));
util_replace_chars(serial_str, NULL);
printf("ID_SERIAL_SHORT=%s\n", serial_str);
@@ -565,7 +575,10 @@ static int scsi_id(struct udev *udev, ch
if (reformat_serial) {
char serial_str[MAX_SERIAL_LEN];
- util_replace_whitespace(dev_scsi.serial, serial_str, sizeof(serial_str));
+ if (compat_truncated)
+ util_replace_whitespace(dev_scsi.serial_compat, serial_str, sizeof(serial_str));
+ else
+ util_replace_whitespace(dev_scsi.serial, serial_str, sizeof(serial_str));
util_replace_chars(serial_str, NULL);
printf("%s\n", serial_str);
goto out;
--- a/src/udev/scsi_id/scsi_id.h
+++ b/src/udev/scsi_id/scsi_id.h
@@ -43,6 +43,7 @@ struct scsi_id_device {
char kernel[64];
char serial[MAX_SERIAL_LEN];
char serial_short[MAX_SERIAL_LEN];
+ char serial_compat[MAX_SERIAL_LEN];
int use_sg;
/* Always from page 0x80 e.g. 'B3G1P8500RWT' - may not be unique */
--- a/src/udev/scsi_id/scsi_serial.c
+++ b/src/udev/scsi_id/scsi_serial.c
@@ -97,7 +97,8 @@ static const char hex_str[]="0123456789a
static int do_scsi_page80_inquiry(struct udev *udev,
struct scsi_id_device *dev_scsi, int fd,
- char *serial, char *serial_short, int max_len);
+ char *serial, char *serial_short,
+ char *serial_compat, int max_len);
static int sg_err_category_new(struct udev *udev,
int scsi_status, int msg_status, int
@@ -620,7 +621,7 @@ static int do_scsi_page83_inquiry(struct
unsigned char page_83[SCSI_INQ_BUFF_LEN];
/* also pick up the page 80 serial number */
- do_scsi_page80_inquiry(udev, dev_scsi, fd, NULL, unit_serial_number, MAX_SERIAL_LEN);
+ do_scsi_page80_inquiry(udev, dev_scsi, fd, NULL, unit_serial_number, NULL, MAX_SERIAL_LEN);
memzero(page_83, SCSI_INQ_BUFF_LEN);
retval = scsi_inquiry(udev, dev_scsi, fd, 1, PAGE_83, page_83,
@@ -765,7 +766,8 @@ static int do_scsi_page83_prespc3_inquir
/* Get unit serial number VPD page */
static int do_scsi_page80_inquiry(struct udev *udev,
struct scsi_id_device *dev_scsi, int fd,
- char *serial, char *serial_short, int max_len)
+ char *serial, char *serial_short,
+ char *serial_compat, int max_len)
{
int retval;
int ser_ind;
@@ -799,9 +801,14 @@ static int do_scsi_page80_inquiry(struct
ser_ind = prepend_vendor_model(udev, dev_scsi, &serial[1]);
if (ser_ind < 0)
return 1;
+ if (serial_compat)
+ strcpy(serial_compat, serial);
ser_ind++; /* for the leading 'S' */
- for (i = 4; i < len + 4; i++, ser_ind++)
+ for (i = 4; i < len + 4; i++, ser_ind++) {
serial[ser_ind] = buf[i];
+ if (serial_compat)
+ serial_compat[ser_ind - 1] = buf[i];
+ }
}
if (serial_short != NULL) {
memcpy(serial_short, &buf[4], len);
@@ -877,7 +884,7 @@ int scsi_get_serial(struct udev *udev,
return 1;
if (page_code == PAGE_80) {
- if (do_scsi_page80_inquiry(udev, dev_scsi, fd, dev_scsi->serial, dev_scsi->serial_short, len)) {
+ if (do_scsi_page80_inquiry(udev, dev_scsi, fd, dev_scsi->serial, dev_scsi->serial_short, dev_scsi->serial_compat, len)) {
retval = 1;
goto completed;
} else {
@@ -951,7 +958,7 @@ int scsi_get_serial(struct udev *udev,
for (ind = 4; ind <= page0[3] + 3; ind++)
if (page0[ind] == PAGE_80)
if (!do_scsi_page80_inquiry(udev, dev_scsi, fd,
- dev_scsi->serial, dev_scsi->serial_short, len)) {
+ dev_scsi->serial, dev_scsi->serial_short, dev_scsi->serial_compat, len)) {
/*
* Success
*/
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package suse-build-key for openSUSE:Factory checked in at 2014-09-03 18:23:10
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/suse-build-key (Old)
and /work/SRC/openSUSE:Factory/.suse-build-key.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "suse-build-key"
Changes:
--------
--- /work/SRC/openSUSE:Factory/suse-build-key/suse-build-key.changes 2014-01-14 13:55:20.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.suse-build-key.new/suse-build-key.changes 2014-09-03 21:11:58.000000000 +0200
@@ -1,0 +2,7 @@
+Fri Aug 29 08:28:03 UTC 2014 - meissner(a)suse.com
+
+- Went to new method again.
+ - suse-build-key.gpg blob dropped
+ - ship seperate files
+
+-------------------------------------------------------------------
Old:
----
suse-build-key.gpg
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ suse-build-key.spec ++++++
--- /var/tmp/diff_new_pack.8jnina/_old 2014-09-03 21:12:00.000000000 +0200
+++ /var/tmp/diff_new_pack.8jnina/_new 2014-09-03 21:12:00.000000000 +0200
@@ -26,20 +26,16 @@
Group: System/Packages
Version: 12.0
Release: 0
-Source0: suse-build-key.gpg
-Source1: dumpsigs
-
# pub 2048R/39DB7C82 2013-01-31 SuSE Package Signing Key <build(a)suse.de>
# The main package signing key.
-Source2: gpg-pubkey-39db7c82-510a966b.asc
+Source0: gpg-pubkey-39db7c82-510a966b.asc
# pub 2048R/50A3DD1C 2013-01-14 SuSE Package Signing Key (reserve key) <build(a)suse.de>
# Fallback key if main key gets lost.
-Source3: gpg-pubkey-50a3dd1c-50f35137.asc
+Source1: gpg-pubkey-50a3dd1c-50f35137.asc
# pub 1024R/307E3D54 2006-03-21 SuSE Package Signing Key <build(a)suse.de>
-# SLE11 build(a)suse.de key, 1024 bit
-Source4: gpg-pubkey-307e3d54-4be01a65.asc
-
+# SLES 10 key.
+Source2: gpg-pubkey-307e3d54-4be01a65.asc
# pub 1024D/B37B98A9 2005-05-11 SUSE PTF Signing Key <support(a)suse.com>
# SUSE supplied PTF (program temporary fixes) are signed by this key.
# supplied to be not imported by default
@@ -50,13 +46,10 @@
# Only used for E-Mail encryption and signing to/from security(a)suse.de.
Source99: security_at_suse_de.asc
+Source100: dumpsigs
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildArch: noarch
%define keydir %{_prefix}/lib/rpm/gnupg/keys
-
-%define pubring usr/lib/rpm/gnupg/pubring.gpg
-%define susering usr/lib/rpm/gnupg/suse-build-key.gpg
-
PreReq: sh-utils gpg fileutils mktemp
%description
@@ -75,76 +68,24 @@
%install
rm -rf $RPM_BUILD_ROOT
-mkdir -p $RPM_BUILD_ROOT/usr/lib/rpm/gnupg
-install %{SOURCE0} $RPM_BUILD_ROOT/%{susering}
-install -m 755 %{SOURCE1} $RPM_BUILD_ROOT/usr/lib/rpm/gnupg
-mkdir keys
-cd keys
-$RPM_BUILD_ROOT/usr/lib/rpm/gnupg/dumpsigs $RPM_BUILD_ROOT/%{susering}
-cd ..
-cp -a keys $RPM_BUILD_ROOT/usr/lib/rpm/gnupg
-
-touch $RPM_BUILD_ROOT/%{pubring}
-touch $RPM_BUILD_ROOT/%{pubring}~
+mkdir -p $RPM_BUILD_ROOT%{keydir}
+for i in %sources; do
+ case "$i" in
+ */gpg-pubkey-*.asc)
+ install -m 644 "$i" $RPM_BUILD_ROOT%{keydir}
+ ;;
+ esac
+done
+install -m 755 %{SOURCE100} $RPM_BUILD_ROOT/usr/lib/rpm/gnupg
%files
%defattr(644,root,root)
-%attr(755,root,root) %dir /usr/lib/rpm/gnupg
-%attr(755,root,root) /usr/lib/rpm/gnupg/dumpsigs
-/usr/lib/rpm/gnupg/keys
-%config /%{susering}
-%ghost /%{pubring}
-%ghost /%{pubring}~
-
-%post
-if [ ! -f %{pubring} ]; then
- touch %{pubring}
-fi
-echo -n "importing SuSE build key to rpm keyring... "
-TF=`mktemp /tmp/gpg.XXXXXX`
-if [ -z "$TF" ]; then
- echo "suse-build-key::post: cannot make temporary file. Fatal error."
- exit 20
-fi
-if [ -z "$HOME" ]; then
- HOME=/root
- export HOME
-fi
-if [ ! -d "$HOME" ]; then
- mkdir "$HOME"
-fi
-gpg -q --batch --no-options < /dev/null > /dev/null 2>&1 || true
-# no kidding... gpg won't initialize correctly without being called twice.
-gpg < /dev/null > /dev/null 2>&1 || true
-gpg < /dev/null > /dev/null 2>&1 || true
-gpg -q --batch --no-options --no-default-keyring --no-permission-warning \
- --keyring %{susering} --export -a > $TF
-a="$?"
-gpg -q --batch --no-options --no-default-keyring --no-permission-warning \
- --keyring %{pubring} --import < $TF
-b="$?"
-rm -f "$TF"
-if [ "$a" = 0 -a "$b" = 0 ]; then
- echo "done."
-else
- echo "importing the key from the file %{susering}"
- echo "returned an error. This should not happen. It may not be possible"
- echo "to properly verify the authenticity of rpm packages from SuSE sources."
- echo "The keyring containing the SuSE rpm package signing key can be found"
- echo "in the root directory of the first CD (DVD) of your SuSE product."
- exit -1
-fi
-### import suse package build key to roots gpg keyring
-if test -f root/.gnupg/pubring.gpg ; then
- chroot . usr/bin/gpg --export --armor --no-default-keyring \
- --keyring %{susering} build(a)suse.de \
- | chroot . usr/bin/gpg --import || true
- if ! chroot . usr/bin/gpg --list-keys build(a)suse.de >/dev/null 2>&1 ; then
- echo "gpg import for build(a)suse.de failed, please import manually" >&2
- fi
-else
- cp %{susering} root/.gnupg/pubring.gpg
-fi
-chmod 600 root/.gnupg/pubring.gpg
+%doc security_at_suse_de.asc suse_ptf_key.asc
+%attr(755,root,root) %dir %{_prefix}/lib/rpm/gnupg
+%attr(755,root,root) %dir %{keydir}
+%attr(755,root,root) %{_prefix}/lib/rpm/gnupg/dumpsigs
+%{keydir}/gpg-pubkey-50a3dd1c-50f35137.asc
+%{keydir}/gpg-pubkey-39db7c82-510a966b.asc
+%{keydir}/gpg-pubkey-307e3d54-4be01a65.asc
%changelog
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package splix for openSUSE:Factory checked in at 2014-09-03 18:22:43
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/splix (Old)
and /work/SRC/openSUSE:Factory/.splix.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "splix"
Changes:
--------
--- /work/SRC/openSUSE:Factory/splix/splix.changes 2014-06-25 10:49:15.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.splix.new/splix.changes 2014-09-03 21:11:06.000000000 +0200
@@ -1,0 +2,6 @@
+Mon Aug 25 11:03:47 CEST 2014 - jsmeix(a)suse.de
+
+- splix-add-debuginfo.patch (from lpechacek(a)suse.cz) lets build
+ make also the missing debuginfo packages (bnc#890843).
+
+-------------------------------------------------------------------
New:
----
splix-add-debuginfo.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ splix.spec ++++++
--- /var/tmp/diff_new_pack.2pbxj7/_old 2014-09-03 21:11:07.000000000 +0200
+++ /var/tmp/diff_new_pack.2pbxj7/_new 2014-09-03 21:11:07.000000000 +0200
@@ -1,7 +1,7 @@
#
-# spec file for package splix (Version 2.0.0)
+# spec file for package splix
#
-# Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2014 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
@@ -15,22 +15,22 @@
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
-# norootforbuild
%bcond_with jbigkit
Name: splix
Summary: Driver for Samsung Printer Language printers
-Version: 2.0.0
-Release: 4
License: GPL-2.0
Group: Hardware/Printing
+Version: 2.0.0
+Release: 0
Url: http://splix.ap2c.org/
Source0: http://downloads.sourceforge.net/project/splix/splix/%{version}/%{name}-%{v…
Source1: http://splix.ap2c.org/samsung_cms.tar.bz2
Source2: README.SUSE
Patch0: %name-2.0.0-gcc45.patch
Patch1: %name-libs.patch
+Patch2: %name-add-debuginfo.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: cups-devel
BuildRequires: fdupes
@@ -70,6 +70,7 @@
%setup -q
%patch0 -p1
%patch1 -p1
+%patch2 -p1
%__cp %SOURCE2 .
%build
++++++ splix-add-debuginfo.patch ++++++
SLE needs debugging information even for optimized binaries.
Signed-off-by: Libor Pechacek <lpechacek(a)suse.cz>
Index: splix-2.0.0/Makefile
===================================================================
--- splix-2.0.0.orig/Makefile
+++ splix-2.0.0/Makefile
@@ -74,8 +74,8 @@ comma := ,
DEBUG_CFLAGS := -O0 -g
DEBUG_CXXFLAGS := -O0 -g
-OPTIM_CFLAGS := -O2
-OPTIM_CXXFLAGS := -O2
+OPTIM_CFLAGS := -O2 -g
+OPTIM_CXXFLAGS := -O2 -g
ARCHI := $(shell uname -s)
Index: splix-2.0.0/rules.mk
===================================================================
--- splix-2.0.0.orig/rules.mk
+++ splix-2.0.0/rules.mk
@@ -21,9 +21,9 @@ cmd_install_cms = INSTALL col
install: $(rastertoqpdl_TARGET) $(pstoqpdl_TARGET)
$(Q)mkdir -p $(DESTDIR)${CUPSFILTER}
$(call printCmd, $(cmd_install_raster))
- $(Q)install -m 755 -s $(rastertoqpdl_TARGET) $(DESTDIR)${CUPSFILTER}
+ $(Q)install -m 755 $(rastertoqpdl_TARGET) $(DESTDIR)${CUPSFILTER}
$(call printCmd, $(cmd_install_ps))
- $(Q)install -m 755 -s $(pstoqpdl_TARGET) $(DESTDIR)${CUPSFILTER}
+ $(Q)install -m 755 $(pstoqpdl_TARGET) $(DESTDIR)${CUPSFILTER}
$(Q)$(MAKE) --no-print-directory -C ppd install Q=$(Q) \
DESTDIR=$(abspath $(DESTDIR)) DISABLE_JBIG=$(DISABLE_JBIG)
@echo ""
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package spec-cleaner for openSUSE:Factory checked in at 2014-09-03 18:22:18
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/spec-cleaner (Old)
and /work/SRC/openSUSE:Factory/.spec-cleaner.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "spec-cleaner"
Changes:
--------
--- /work/SRC/openSUSE:Factory/spec-cleaner/spec-cleaner.changes 2014-07-08 16:59:10.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.spec-cleaner.new/spec-cleaner.changes 2014-09-03 21:10:55.000000000 +0200
@@ -1,0 +2,18 @@
+Fri Aug 29 10:46:17 UTC 2014 - tchvatal(a)suse.com
+
+- py3 include arpgarse itself.
+
+-------------------------------------------------------------------
+Wed Aug 13 12:28:45 UTC 2014 - tchvatal(a)suse.com
+
+- Version bump to 0.6.1:
+ * Fixup release with working spec-cleaner script executable
+
+-------------------------------------------------------------------
+Wed Aug 13 12:09:35 UTC 2014 - tchvatal(a)suse.com
+
+- Version bump to 0.6.0:
+ * Use setuptools and nosetests for building&testing
+ * Various bugfixes as found by java icedtea cleaning
+
+-------------------------------------------------------------------
Old:
----
spec-cleaner-0.5.9.tar.gz
New:
----
spec-cleaner-0.6.1.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ spec-cleaner.spec ++++++
--- /var/tmp/diff_new_pack.F19LTI/_old 2014-09-03 21:10:57.000000000 +0200
+++ /var/tmp/diff_new_pack.F19LTI/_new 2014-09-03 21:10:57.000000000 +0200
@@ -18,23 +18,18 @@
Name: spec-cleaner
-Version: 0.5.9
+Version: 0.6.1
Release: 0
Summary: .spec file cleaner
License: BSD-3-Clause
Group: Development/Tools/Other
Url: http://github.com/openSUSE/spec-cleaner
Source0: https://github.com/openSUSE/%{name}/archive/%{name}-%{version}.tar.gz
-BuildRequires: python
-Requires: python-argparse
+BuildRequires: python3-mock
+BuildRequires: python3-nose
+BuildRequires: python3-setuptools
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildArch: noarch
-# This is just for tests
-# It is conditional so we built on older distros too
-# Drop after 12.2 and older are not targeted here
-%if 0%{?suse_version} > 01220
-BuildRequires: python3
-%endif
%description
This script cleans spec file according to some arbitrary style guide. The
@@ -45,15 +40,13 @@
%setup -q -n %{name}-%{name}-%{version}
%build
+python3 setup.py build
%check
-make check -j1
+python3 setup.py test
%install
-make DESTDIR=%{buildroot} install %{?_smp_mflags} \
- LIBEXECDIR=%{_libexecdir} \
- LIBDIR=%{_libdir} \
- SITEDIR=%{python_sitelib}
+python3 setup.py install --root="%{buildroot}"
%files
%defattr(-, root, root)
@@ -62,23 +55,25 @@
%dir %{_libexecdir}/obs/service/
%{_libexecdir}/obs/service/clean_spec_file
%{_libexecdir}/obs/service/clean_spec_file.service
-%dir %{python_sitelib}/spec_cleaner/
-%{python_sitelib}/spec_cleaner/__init__.py*
-%{python_sitelib}/spec_cleaner/fileutils.py*
-%{python_sitelib}/spec_cleaner/rpmbuild.py*
-%{python_sitelib}/spec_cleaner/rpmcheck.py*
-%{python_sitelib}/spec_cleaner/rpmcleaner.py*
-%{python_sitelib}/spec_cleaner/rpmcopyright.py*
-%{python_sitelib}/spec_cleaner/rpmdescription.py*
-%{python_sitelib}/spec_cleaner/rpmexception.py*
-%{python_sitelib}/spec_cleaner/rpmfiles.py*
-%{python_sitelib}/spec_cleaner/rpminstall.py*
-%{python_sitelib}/spec_cleaner/rpmpreamble.py*
-%{python_sitelib}/spec_cleaner/rpmprep.py*
-%{python_sitelib}/spec_cleaner/rpmprune.py*
-%{python_sitelib}/spec_cleaner/rpmregexp.py*
-%{python_sitelib}/spec_cleaner/rpmscriplets.py*
-%{python_sitelib}/spec_cleaner/rpmsection.py*
+%dir %{python3_sitelib}/spec_cleaner/
+%{python3_sitelib}/spec_cleaner/__init__.py
+%{python3_sitelib}/spec_cleaner/fileutils.py
+%{python3_sitelib}/spec_cleaner/rpmbuild.py
+%{python3_sitelib}/spec_cleaner/rpmcheck.py
+%{python3_sitelib}/spec_cleaner/rpmcleaner.py
+%{python3_sitelib}/spec_cleaner/rpmcopyright.py
+%{python3_sitelib}/spec_cleaner/rpmdescription.py
+%{python3_sitelib}/spec_cleaner/rpmexception.py
+%{python3_sitelib}/spec_cleaner/rpmfiles.py
+%{python3_sitelib}/spec_cleaner/rpminstall.py
+%{python3_sitelib}/spec_cleaner/rpmpreamble.py
+%{python3_sitelib}/spec_cleaner/rpmprep.py
+%{python3_sitelib}/spec_cleaner/rpmprune.py
+%{python3_sitelib}/spec_cleaner/rpmregexp.py
+%{python3_sitelib}/spec_cleaner/rpmscriplets.py
+%{python3_sitelib}/spec_cleaner/rpmsection.py
+%{python3_sitelib}/spec_cleaner/__pycache__
+%{python3_sitelib}/spec_cleaner-%{version}-py%{py3_ver}.egg-info
%dir %{_datadir}/%{name}/
%{_datadir}/%{name}/excludes-bracketing.txt
%{_datadir}/%{name}/licenses_changes.txt
++++++ spec-cleaner-0.5.9.tar.gz -> spec-cleaner-0.6.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.5.9/.gitignore new/spec-cleaner-spec-cleaner-0.6.1/.gitignore
--- old/spec-cleaner-spec-cleaner-0.5.9/.gitignore 2014-07-08 13:17:58.000000000 +0200
+++ new/spec-cleaner-spec-cleaner-0.6.1/.gitignore 2014-08-13 14:23:57.000000000 +0200
@@ -1 +1,6 @@
+build/
+dist/
+*.egg-info/
*.pyc
+.coverage
+.coveralls.yml
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.5.9/.travis.yml new/spec-cleaner-spec-cleaner-0.6.1/.travis.yml
--- old/spec-cleaner-spec-cleaner-0.5.9/.travis.yml 1970-01-01 01:00:00.000000000 +0100
+++ new/spec-cleaner-spec-cleaner-0.6.1/.travis.yml 2014-08-13 14:23:57.000000000 +0200
@@ -0,0 +1,11 @@
+language: python
+python:
+ - "2.7"
+ - "3.3"
+install:
+ - pip install python-coveralls mock
+ - sudo apt-get install -y rpm
+script:
+ - nosetests --with-coverage --cover-package=spec_cleaner --cover-inclusive
+after_success:
+ - coveralls
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.5.9/MANIFEST.in new/spec-cleaner-spec-cleaner-0.6.1/MANIFEST.in
--- old/spec-cleaner-spec-cleaner-0.5.9/MANIFEST.in 1970-01-01 01:00:00.000000000 +0100
+++ new/spec-cleaner-spec-cleaner-0.6.1/MANIFEST.in 2014-08-13 14:23:57.000000000 +0200
@@ -0,0 +1,5 @@
+include AUTHORS COPYING README.rst
+include obs/*
+include data/*.txt
+recursive-include tests *
+include pkgconfig-update.* license-update.sh Makefile
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.5.9/Makefile new/spec-cleaner-spec-cleaner-0.6.1/Makefile
--- old/spec-cleaner-spec-cleaner-0.5.9/Makefile 2014-07-08 13:17:58.000000000 +0200
+++ new/spec-cleaner-spec-cleaner-0.6.1/Makefile 2014-08-13 14:23:57.000000000 +0200
@@ -1,10 +1,3 @@
-PREFIX ?= /usr
-BINDIR ?= $(PREFIX)/bin
-DATADIR ?= $(PREFIX)/share
-LIBEXECDIR ?= $(PREFIX)/libexec
-LIBDIR ?= $(PREFIX)/lib
-SITEDIR ?= $(LIBDIR)/python2.7/site-packages
-
all: data/pkgconfig_conversions.txt data/licenses_changes.txt
data/pkgconfig_conversions.txt: pkgconfig-update.sed pkgconfig-update.sh
@@ -12,87 +5,3 @@
data/licenses_changes.txt: license-update.sh
@sh license-update.sh > $@
-
-install: bin/spec-cleaner
- @echo "Installing package to $(DESTDIR)" ; \
- install -d $(DESTDIR)$(BINDIR) ; \
- install -m 755 bin/spec-cleaner $(DESTDIR)/$(BINDIR)
- @install -d $(DESTDIR)$(DATADIR)/spec-cleaner/ ; \
- install -m 644 data/licenses_changes.txt $(DESTDIR)$(DATADIR)/spec-cleaner/ ; \
- install -m 644 data/pkgconfig_conversions.txt $(DESTDIR)$(DATADIR)/spec-cleaner/ ; \
- install -m 644 data/excludes-bracketing.txt $(DESTDIR)$(DATADIR)/spec-cleaner/
- @install -d $(DESTDIR)$(LIBEXECDIR)/obs/service/ ; \
- install -m 755 obs/clean_spec_file $(DESTDIR)$(LIBEXECDIR)/obs/service/ ; \
- install -m 644 obs/clean_spec_file.service $(DESTDIR)$(LIBEXECDIR)/obs/service/
- @install -d $(DESTDIR)$(SITEDIR)/spec_cleaner ; \
- install -m 755 spec_cleaner/__init__.py $(DESTDIR)$(SITEDIR)/spec_cleaner/ ; \
- install -m 644 spec_cleaner/rpmcleaner.py $(DESTDIR)$(SITEDIR)/spec_cleaner/ ; \
- install -m 644 spec_cleaner/rpmcopyright.py $(DESTDIR)$(SITEDIR)/spec_cleaner/ ; \
- install -m 644 spec_cleaner/rpmexception.py $(DESTDIR)$(SITEDIR)/spec_cleaner/ ; \
- install -m 644 spec_cleaner/rpmsection.py $(DESTDIR)$(SITEDIR)/spec_cleaner/ ; \
- install -m 644 spec_cleaner/fileutils.py $(DESTDIR)$(SITEDIR)/spec_cleaner/ ; \
- install -m 644 spec_cleaner/rpmbuild.py $(DESTDIR)$(SITEDIR)/spec_cleaner/ ; \
- install -m 644 spec_cleaner/rpmdescription.py $(DESTDIR)$(SITEDIR)/spec_cleaner/ ; \
- install -m 644 spec_cleaner/rpmfiles.py $(DESTDIR)$(SITEDIR)/spec_cleaner/ ; \
- install -m 644 spec_cleaner/rpminstall.py $(DESTDIR)$(SITEDIR)/spec_cleaner/ ; \
- install -m 644 spec_cleaner/rpmpreamble.py $(DESTDIR)$(SITEDIR)/spec_cleaner/ ; \
- install -m 644 spec_cleaner/rpmprep.py $(DESTDIR)$(SITEDIR)/spec_cleaner/ ; \
- install -m 644 spec_cleaner/rpmprune.py $(DESTDIR)$(SITEDIR)/spec_cleaner/ ; \
- install -m 644 spec_cleaner/rpmscriplets.py $(DESTDIR)$(SITEDIR)/spec_cleaner/ ; \
- install -m 644 spec_cleaner/rpmregexp.py $(DESTDIR)$(SITEDIR)/spec_cleaner/ ; \
- install -m 644 spec_cleaner/rpmcheck.py $(DESTDIR)$(SITEDIR)/spec_cleaner/
-
-test: check
-
-check: spec_cleaner/__init__.py
- @if [ -x /usr/bin/python2 ]; then \
- echo "Running tests in python2:" ; \
- for i in tests/in/*.spec; do \
- CORRECT="`echo $$i | sed 's|^tests/in|tests/out|'`" ; \
- NEW="` echo $$i | sed 's|^tests/in|tests/tmp|'`" ; \
- TEST="` echo $$i | sed 's|^tests/in/\(.*\).spec|\1|'`" ; \
- python2 spec_cleaner/__init__.py -p -f $$i | sed "s|`date +%Y`|2013|" > "$$NEW" ; \
- echo -n " * test '$$TEST': " ; \
- if [ "`diff "$$CORRECT" "$$NEW" 2>&1`" ]; then \
- echo "failed" ; \
- FAILED="$$FAILED $$TEST" ; \
- else \
- echo "passed" ; \
- fi ; \
- done ; \
- fi ; \
- if [ -x /usr/bin/python3 ]; then \
- echo "Running tests in python3:" ; \
- for i in tests/in/*.spec; do \
- CORRECT="`echo $$i | sed 's|^tests/in|tests/out|'`" ; \
- NEW="` echo $$i | sed 's|^tests/in|tests/tmp|'`" ; \
- TEST="` echo $$i | sed 's|^tests/in/\(.*\).spec|\1|'`" ; \
- python3 spec_cleaner/__init__.py -p -f $$i | sed "s|`date +%Y`|2013|" > "$$NEW" ; \
- echo -n " * test '$$TEST': " ; \
- if [ "`diff "$$CORRECT" "$$NEW" 2>&1`" ]; then \
- echo "failed" ; \
- FAILED="$$FAILED $$TEST" ; \
- else \
- echo "passed" ; \
- fi ; \
- done ; \
- fi ; \
- echo ; \
- if [ "$$FAILED" ]; then \
- echo "`echo $$FAILED | wc -w` tests out of `echo tests/in/*.spec | wc -w` failed:" ; \
- echo " $$FAILED" ; \
- echo ; \
- echo "Check errors by running:"; \
- for i in $$FAILED; do echo " diff -Naru tests/out/$$i.spec tests/tmp/$$i.spec"; done; \
- echo ; \
- exit 1 ; \
- else \
- echo "All tests passed!" ; \
- echo ; \
- fi
-
-clean:
- rm -rf tests/tmp/* \
- rm -rf spec_cleaner/*.pyc
-
-.PHONY: install check test clean
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.5.9/README.md new/spec-cleaner-spec-cleaner-0.6.1/README.md
--- old/spec-cleaner-spec-cleaner-0.5.9/README.md 2014-07-08 13:17:58.000000000 +0200
+++ new/spec-cleaner-spec-cleaner-0.6.1/README.md 1970-01-01 01:00:00.000000000 +0100
@@ -1,5 +0,0 @@
-spec-cleaner
-============
-
-spec-cleaner is a tool that is planned to be replacement for "osc service localrun format_spec_file".
-It is intended to provide same or better features in order for us to be able to unify all the spec files in obs.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.5.9/README.rst new/spec-cleaner-spec-cleaner-0.6.1/README.rst
--- old/spec-cleaner-spec-cleaner-0.5.9/README.rst 1970-01-01 01:00:00.000000000 +0100
+++ new/spec-cleaner-spec-cleaner-0.6.1/README.rst 2014-08-13 14:23:57.000000000 +0200
@@ -0,0 +1,11 @@
+============
+spec-cleaner
+============
+
+.. image:: https://travis-ci.org/openSUSE/spec-cleaner.svg?branch=master
+ :target: https://travis-ci.org/openSUSE/spec-cleaner
+.. image:: https://coveralls.io/repos/openSUSE/spec-cleaner/badge.png
+ :target: https://coveralls.io/r/openSUSE/spec-cleaner
+
+spec-cleaner is a tool that is planned to be replacement for "osc service localrun format_spec_file".
+It is intended to provide same or better features in order for us to be able to unify all the spec files in obs.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.5.9/bin/spec-cleaner new/spec-cleaner-spec-cleaner-0.6.1/bin/spec-cleaner
--- old/spec-cleaner-spec-cleaner-0.5.9/bin/spec-cleaner 2014-07-08 13:17:58.000000000 +0200
+++ new/spec-cleaner-spec-cleaner-0.6.1/bin/spec-cleaner 1970-01-01 01:00:00.000000000 +0100
@@ -1,15 +0,0 @@
-#!/usr/bin/env python
-# vim: set ts=4 sw=4 et: coding=UTF-8
-#
-# Copyright (c) 2013, SUSE LINUX Products GmbH, Nuernberg, Germany
-# All rights reserved.
-# See COPYING for details.
-
-import sys
-
-from spec_cleaner import main
-
-try:
- sys.exit(main(sys.argv[1:]))
-except KeyboardInterrupt:
- pass
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.5.9/data/excludes-bracketing.txt new/spec-cleaner-spec-cleaner-0.6.1/data/excludes-bracketing.txt
--- old/spec-cleaner-spec-cleaner-0.5.9/data/excludes-bracketing.txt 2014-07-08 13:17:58.000000000 +0200
+++ new/spec-cleaner-spec-cleaner-0.6.1/data/excludes-bracketing.txt 2014-08-13 14:23:57.000000000 +0200
@@ -8,6 +8,7 @@
config
defattr
define
+defined
description
desktop_database_post[^\s]*
dir
@@ -55,8 +56,9 @@
py_compile
requires_eq
restart_on_update
-setup
service_(add|del)_[^\s]*
+setup
+set_permissions
stop_on_removal
suse_update_desktop_file
systemd_requires
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.5.9/data/licenses_changes.txt new/spec-cleaner-spec-cleaner-0.6.1/data/licenses_changes.txt
--- old/spec-cleaner-spec-cleaner-0.5.9/data/licenses_changes.txt 2014-07-08 13:17:58.000000000 +0200
+++ new/spec-cleaner-spec-cleaner-0.6.1/data/licenses_changes.txt 2014-08-13 14:23:57.000000000 +0200
@@ -167,6 +167,7 @@
CC-BY-SA-3.0 CC BY-SA V3.0
CC-BY-SA-3.0 CC-BY-SA-3.0
CC-BY-SA-3.0+ CC-BY-SA-3.0+
+CC-BY-SA-4.0 http://creativecommons.org/licenses/by-sa/4.0/legalcode
CC0-1.0 CC0-1.0
CC0-1.0+ CC0-1.0+
CDDL-1.0 CDDL
@@ -514,6 +515,7 @@
OLDAP-2.8 openldap 2.8
OLDAP-2.8+ OLDAP-2.8+
OPL-1.0 OPL-1.0
+OPL-1.0 Open Publication License 1.0
OPL-1.0+ OPL-1.0+
OSL-1.0 OSL-1.0
OSL-1.0+ OSL-1.0+
@@ -561,6 +563,7 @@
Ruby GPL-2.0+ or Ruby
Ruby GPLv2+ or Ruby
Ruby Ruby
+Ruby same as ruby's
Ruby+ Ruby+
SAX-PD SAX-PD
SAX-PD+ SAX-PD+
@@ -598,6 +601,8 @@
SUSE-DMTF+ SUSE-DMTF+
SUSE-Docbook-XSL Copyright (C) 1999-2007 Norman Walsh
SUSE-Docbook-XSL+ SUSE-Docbook-XSL+
+SUSE-EULA SUSE End User License Agreement
+SUSE-EULA+ SUSE-EULA+
SUSE-Egenix-1.1.0 Egenix Public License Agreement 1.1.0 (e.g. python-egenix-mx-base) http://www.egenix.com/products/python/mxBase/eGenix.com-Public-License-1.1.…
SUSE-Egenix-1.1.0+ SUSE-Egenix-1.1.0+
SUSE-FHS See for example, the "FHS" license here: https://launchpad.net/ubuntu/precise/+source/debian-policy/+copyright
@@ -623,6 +628,8 @@
SUSE-GPL-2.0-with-FLOSS-exception+ SUSE-GPL-2.0-with-FLOSS-exception+
SUSE-GPL-2.0-with-OSI-exception GPL-2.0 with linking exception for OSI licenses (see elfutils e.g.)
SUSE-GPL-2.0-with-OSI-exception+ SUSE-GPL-2.0-with-OSI-exception+
+SUSE-GPL-2.0-with-linking-exception Copyright holder expressly allows GPL-2.0 component to be linked with components which are not GPL compatible
+SUSE-GPL-2.0-with-linking-exception+ SUSE-GPL-2.0-with-linking-exception+
SUSE-GPL-2.0-with-openssl-exception SPDX does not have this exception
SUSE-GPL-2.0-with-openssl-exception+ SUSE-GPL-2.0-with-openssl-exception+
SUSE-GPL-2.0-with-plugin-exception Many GPL-2.0 licensed applications grant an exception that permits non-free plugins (e.g. from gstreamer) to be linked against them
@@ -671,12 +678,16 @@
SUSE-LGPL-2.1-with-digia-exception-1.1+ SUSE-LGPL-2.1-with-digia-exception-1.1+
SUSE-LGPL-2.1-with-nokia-exception-1.1 Part of the license choice in libqt4
SUSE-LGPL-2.1-with-nokia-exception-1.1+ SUSE-LGPL-2.1-with-nokia-exception-1.1+
+SUSE-LGPL-3.0-with-openssl-exception e.g python-psycopg2
+SUSE-LGPL-3.0-with-openssl-exception+ SUSE-LGPL-3.0-with-openssl-exception+
SUSE-Liberation LiberationFontsLicense (Fedora calls this the Liberation license - it will be easier to get it upstream if we adopt that)
SUSE-Liberation+ SUSE-Liberation+
SUSE-MakeIndex http://pastebin.com/CYB22gju (the license used in csindex)
SUSE-MakeIndex+ SUSE-MakeIndex+
SUSE-Manpages Manpages licenses (linux man pages e.g.)
SUSE-Manpages+ SUSE-Manpages+
+SUSE-Matplotlib E.g. python -matplotlib -> LICENSE/LICENSE
+SUSE-Matplotlib+ SUSE-Matplotlib+
SUSE-MgOpen MgOpen Fonts license (similar to Bitstream Vera but with additional language)
SUSE-MgOpen+ SUSE-MgOpen+
SUSE-NetCDF SUSE-NetCDF
@@ -733,10 +744,10 @@
SUSE-TGPPL-1.0+ SUSE-TGPPL-1.0+
SUSE-TeX http://en.wikipedia.org/wiki/TeX#License
SUSE-TeX+ SUSE-TeX+
+SUSE-Ubuntu-Font-License-1.0 http://font.ubuntu.com/licence/
+SUSE-Ubuntu-Font-License-1.0+ SUSE-Ubuntu-Font-License-1.0+
SUSE-Vim SUSE-Vim
SUSE-Vim+ SUSE-Vim+
-SUSE-WTFPL-2.0 http://sam.zoy.org/wtfpl/
-SUSE-WTFPL-2.0+ SUSE-WTFPL-2.0+
SUSE-XFree86-with-font-exception XFree86 with exception to clarify that a document embedding such fonts does not need to be licensed under the XFree86 license
SUSE-XFree86-with-font-exception+ SUSE-XFree86-with-font-exception+
SUSE-XSL-Lint http://pastebin.com/cFxX3zCb (probably deprecated but found in docbook-dsssl-stylesheets)
@@ -757,6 +768,7 @@
Sleepycat+ Sleepycat+
SugarCRM-1.1.3 SugarCRM-1.1.3
SugarCRM-1.1.3+ SugarCRM-1.1.3+
+Unicode http://www.unicode.org/copyright.html
Unlicense Unlicense
Unlicense+ Unlicense+
VSL-1.0 VSL-1.0
@@ -764,6 +776,7 @@
W3C W3C
W3C W3C Software License
W3C+ W3C+
+WTFPL SUSE-WTFPL-2.0
WTFPL WTFPL
WTFPL+ WTFPL+
WXwindows WXwindows
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.5.9/setup.py new/spec-cleaner-spec-cleaner-0.6.1/setup.py
--- old/spec-cleaner-spec-cleaner-0.5.9/setup.py 1970-01-01 01:00:00.000000000 +0100
+++ new/spec-cleaner-spec-cleaner-0.6.1/setup.py 2014-08-13 14:23:57.000000000 +0200
@@ -0,0 +1,45 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+
+from setuptools import setup
+import glob
+from spec_cleaner import __version__
+
+test_requires = [
+ 'mock',
+ 'nose',
+]
+
+setup(
+ name='spec_cleaner',
+ description = 'RPM .spec files cleaner',
+ long_description = 'Command-line tool for cleaning various formatting' +
+ 'errors in RPM .spec files',
+ url = 'https://github.com/openSUSE/spec-cleaner',
+ download_url = 'https://github.com/openSUSE/spec-cleaner',
+
+ version = __version__,
+
+ author = 'Tomáš Chvátal',
+ author_email = 'tchvatal(a)suse.cz',
+
+ maintainer = 'Tomáš Chvátal',
+ maintainer_email = 'tchvatal(a)suse.cz',
+
+ license = 'License :: OSI Approved :: BSD License',
+ platforms = ['Linux'],
+ keywords = ['SUSE', 'RPM', '.spec', 'cleaner'],
+
+ tests_require=test_requires,
+ test_suite="nose.collector",
+
+ packages = ['spec_cleaner'],
+
+ data_files=[('/usr/lib/obs/service/', glob.glob('obs/*')),
+ ('/usr/share/spec-cleaner/', glob.glob('data/*')),
+ ],
+
+ entry_points = {
+ 'console_scripts': ['spec-cleaner = spec_cleaner:main']},
+)
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.5.9/spec_cleaner/__init__.py new/spec-cleaner-spec-cleaner-0.6.1/spec_cleaner/__init__.py
--- old/spec-cleaner-spec-cleaner-0.5.9/spec_cleaner/__init__.py 2014-07-08 13:17:58.000000000 +0200
+++ new/spec-cleaner-spec-cleaner-0.6.1/spec_cleaner/__init__.py 2014-08-13 14:23:57.000000000 +0200
@@ -1,18 +1,17 @@
-#!/usr/bin/env python
# vim: set ts=4 sw=4 et: coding=UTF-8
# Copyright (c) 2013, SUSE LINUX Products GmbH, Nuernberg, Germany
# All rights reserved.
# See COPYING for details.
-__version__ = '0.5.9'
+__version__ = '0.6.1'
import os
import sys
import argparse
-from rpmexception import RpmWrongArgs, RpmException
-from rpmcleaner import RpmSpecCleaner
+from .rpmexception import RpmWrongArgs, RpmException
+from .rpmcleaner import RpmSpecCleaner
def process_args(argv):
@@ -66,15 +65,14 @@
return options
-def main(argv):
+def main():
"""
Main function that calls argument parsing ensures their sanity
and then creates RpmSpecCleaner object that works with passed spec file.
- :param argv: passed arguments
"""
try:
- options = process_args(argv)
+ options = process_args(sys.argv[1:])
except RpmWrongArgs as e:
sys.stderr.write('ERROR: {0}\n'.format(e))
return 1
@@ -92,9 +90,3 @@
return 1
return 0
-
-if __name__ == '__main__':
- try:
- sys.exit(main(sys.argv[1:]))
- except KeyboardInterrupt:
- pass
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.5.9/spec_cleaner/fileutils.py new/spec-cleaner-spec-cleaner-0.6.1/spec_cleaner/fileutils.py
--- old/spec-cleaner-spec-cleaner-0.5.9/spec_cleaner/fileutils.py 2014-07-08 13:17:58.000000000 +0200
+++ new/spec-cleaner-spec-cleaner-0.6.1/spec_cleaner/fileutils.py 2014-08-13 14:23:57.000000000 +0200
@@ -2,7 +2,7 @@
import os
-from rpmexception import RpmException
+from .rpmexception import RpmException
class FileUtils:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.5.9/spec_cleaner/rpmbuild.py new/spec-cleaner-spec-cleaner-0.6.1/spec_cleaner/rpmbuild.py
--- old/spec-cleaner-spec-cleaner-0.5.9/spec_cleaner/rpmbuild.py 2014-07-08 13:17:58.000000000 +0200
+++ new/spec-cleaner-spec-cleaner-0.6.1/spec_cleaner/rpmbuild.py 2014-08-13 14:23:57.000000000 +0200
@@ -1,7 +1,7 @@
# vim: set ts=4 sw=4 et: coding=UTF-8
# We basically extend rpmcheck
-from rpmcheck import RpmCheck
+from .rpmcheck import RpmCheck
class RpmBuild(RpmCheck):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.5.9/spec_cleaner/rpmcheck.py new/spec-cleaner-spec-cleaner-0.6.1/spec_cleaner/rpmcheck.py
--- old/spec-cleaner-spec-cleaner-0.5.9/spec_cleaner/rpmcheck.py 2014-07-08 13:17:58.000000000 +0200
+++ new/spec-cleaner-spec-cleaner-0.6.1/spec_cleaner/rpmcheck.py 2014-08-13 14:23:57.000000000 +0200
@@ -1,6 +1,6 @@
# vim: set ts=4 sw=4 et: coding=UTF-8
-from rpmsection import Section
+from .rpmsection import Section
class RpmCheck(Section):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.5.9/spec_cleaner/rpmcleaner.py new/spec-cleaner-spec-cleaner-0.6.1/spec_cleaner/rpmcleaner.py
--- old/spec-cleaner-spec-cleaner-0.5.9/spec_cleaner/rpmcleaner.py 2014-07-08 13:17:58.000000000 +0200
+++ new/spec-cleaner-spec-cleaner-0.6.1/spec_cleaner/rpmcleaner.py 2014-08-13 14:23:57.000000000 +0200
@@ -7,21 +7,21 @@
import shlex
import os.path
-from rpmsection import Section
-from rpmexception import RpmException
-from rpmcopyright import RpmCopyright
-from rpmdescription import RpmDescription
-from rpmprune import RpmClean
-from rpmprune import RpmChangelog
-from rpmpreamble import RpmPreamble
-from rpmpreamble import RpmPackage
-from rpmprep import RpmPrep
-from rpmbuild import RpmBuild
-from rpmcheck import RpmCheck
-from rpminstall import RpmInstall
-from rpmscriplets import RpmScriptlets
-from rpmfiles import RpmFiles
-from rpmregexp import RegexpSingle
+from .rpmsection import Section
+from .rpmexception import RpmException
+from .rpmcopyright import RpmCopyright
+from .rpmdescription import RpmDescription
+from .rpmprune import RpmClean
+from .rpmprune import RpmChangelog
+from .rpmpreamble import RpmPreamble
+from .rpmpreamble import RpmPackage
+from .rpmprep import RpmPrep
+from .rpmbuild import RpmBuild
+from .rpmcheck import RpmCheck
+from .rpminstall import RpmInstall
+from .rpmscriplets import RpmScriptlets
+from .rpmfiles import RpmFiles
+from .rpmregexp import RegexpSingle
class RpmSpecCleaner:
@@ -97,8 +97,10 @@
# check if the current line is starting new section, and if so
# if previous non-empty-uncommented line was starting the condition
# we end up the condition section in preamble (if applicable) and proceed to output
- if self.reg.re_else.match(line) or self.reg.re_endif.match(line):
- if hasattr(self.current_section, 'condition') and not self.current_section.condition:
+ if self.reg.re_else.match(line) or self.reg.re_endif.match(line) or \
+ (type(self.current_section) is Section and self.reg.re_if.match(line)):
+ if not hasattr(self.current_section, 'condition') or \
+ (hasattr(self.current_section, 'condition') and not self.current_section.condition):
# If we have to break out we go ahead with small class
# which just print the one evil line
return Section
@@ -107,10 +109,9 @@
for (regexp, newclass) in self.section_starts:
if regexp.match(line):
# check if we are in if conditional and act accordingly if we change sections
- if self._previous_nonempty_line and self.reg.re_if.match(self._previous_nonempty_line):
- if hasattr(self.current_section, 'condition'):
- self.current_section.condition = False
- self.current_section._end_subparagraph(True)
+ if hasattr(self.current_section, 'condition') and self.current_section.condition:
+ self.current_section.condition = False
+ self.current_section._end_subparagraph(True)
return newclass
# if we still are here and we are just doing copyright
@@ -127,8 +128,8 @@
# This avoids deleting %if before %files section that could
# be deleted otherwise
if isinstance(self.current_section, RpmClean):
- if line == '':
- return RpmPreamble
+ if line.strip() == '':
+ return Section
# we are staying in the section
return None
@@ -150,13 +151,28 @@
line = line.rstrip('\r')
new_class = self._detect_new_section(line)
+ # Following line is debug output with class info
+ # USE: 'spec-cleaner file > /dev/null' to see the stderr output
+ #sys.stderr.write("class: '{0}' line: '{1}'\n".format(new_class, line))
if new_class:
- self.current_section.output(self.fout)
+ # We don't want to print newlines before %else and %endif
+ if new_class == Section and self.reg.re_else.match(line) or self.reg.re_endif.match(line):
+ newline = False
+ else:
+ newline = True
+ self.current_section.output(self.fout, newline)
# we need to sent pkgconfig option to preamble and package
if new_class == RpmPreamble or new_class == RpmPackage:
self.current_section = new_class(self.specfile, self.pkgconfig)
else:
self.current_section = new_class(self.specfile)
+ # skip empty line adding if we are switching sections
+ if self._previous_line == '' and line == '':
+ continue
+
+ # Do not store data from clean and skip out here
+ if isinstance(self.current_section, RpmClean):
+ continue
self.current_section.add(line)
self._previous_line = line
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.5.9/spec_cleaner/rpmcopyright.py new/spec-cleaner-spec-cleaner-0.6.1/spec_cleaner/rpmcopyright.py
--- old/spec-cleaner-spec-cleaner-0.5.9/spec_cleaner/rpmcopyright.py 2014-07-08 13:17:58.000000000 +0200
+++ new/spec-cleaner-spec-cleaner-0.6.1/spec_cleaner/rpmcopyright.py 2014-08-13 14:23:57.000000000 +0200
@@ -1,9 +1,9 @@
# vim: set ts=4 sw=4 et: coding=UTF-8
import os
-import time
+import datetime
-from rpmsection import Section
+from .rpmsection import Section
class RpmCopyright(Section):
@@ -13,8 +13,10 @@
that are still relevant. Everything else is ignored.
"""
- copyrights = []
- buildrules = []
+ def __init__(self, specfile):
+ Section.__init__(self, specfile)
+ self.copyrights = []
+ self.buildrules = []
def _add_pkg_header(self):
specname = os.path.splitext(os.path.basename(self.spec))[0]
@@ -24,7 +26,7 @@
def _create_default_copyright(self):
- year = time.strftime('%Y', time.localtime(time.time()))
+ year = datetime.datetime.now().year
return '# Copyright (c) {0} SUSE LINUX Products GmbH, Nuernberg, Germany.'.format(year)
@@ -77,7 +79,7 @@
return
- def output(self, fout):
+ def output(self, fout, newline = True):
self._add_pkg_header()
self._add_copyright()
self._add_default_license()
@@ -85,4 +87,4 @@
# trailing enters # prep_spec does two so do the same
self.lines.append('')
self.lines.append('')
- Section.output(self, fout)
+ Section.output(self, fout, newline)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.5.9/spec_cleaner/rpmdescription.py new/spec-cleaner-spec-cleaner-0.6.1/spec_cleaner/rpmdescription.py
--- old/spec-cleaner-spec-cleaner-0.5.9/spec_cleaner/rpmdescription.py 2014-07-08 13:17:58.000000000 +0200
+++ new/spec-cleaner-spec-cleaner-0.6.1/spec_cleaner/rpmdescription.py 2014-08-13 14:23:57.000000000 +0200
@@ -1,6 +1,6 @@
# vim: set ts=4 sw=4 et: coding=UTF-8
-from rpmsection import Section
+from .rpmsection import Section
class RpmDescription(Section):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.5.9/spec_cleaner/rpmfiles.py new/spec-cleaner-spec-cleaner-0.6.1/spec_cleaner/rpmfiles.py
--- old/spec-cleaner-spec-cleaner-0.5.9/spec_cleaner/rpmfiles.py 2014-07-08 13:17:58.000000000 +0200
+++ new/spec-cleaner-spec-cleaner-0.6.1/spec_cleaner/rpmfiles.py 2014-08-13 14:23:57.000000000 +0200
@@ -1,6 +1,6 @@
# vim: set ts=4 sw=4 et: coding=UTF-8
-from rpmsection import Section
+from .rpmsection import Section
class RpmFiles(Section):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.5.9/spec_cleaner/rpminstall.py new/spec-cleaner-spec-cleaner-0.6.1/spec_cleaner/rpminstall.py
--- old/spec-cleaner-spec-cleaner-0.5.9/spec_cleaner/rpminstall.py 2014-07-08 13:17:58.000000000 +0200
+++ new/spec-cleaner-spec-cleaner-0.6.1/spec_cleaner/rpminstall.py 2014-08-13 14:23:57.000000000 +0200
@@ -1,6 +1,6 @@
# vim: set ts=4 sw=4 et: coding=UTF-8
-from rpmsection import Section
+from .rpmsection import Section
class RpmInstall(Section):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.5.9/spec_cleaner/rpmpreamble.py new/spec-cleaner-spec-cleaner-0.6.1/spec_cleaner/rpmpreamble.py
--- old/spec-cleaner-spec-cleaner-0.5.9/spec_cleaner/rpmpreamble.py 2014-07-08 13:17:58.000000000 +0200
+++ new/spec-cleaner-spec-cleaner-0.6.1/spec_cleaner/rpmpreamble.py 2014-08-13 14:23:57.000000000 +0200
@@ -2,9 +2,9 @@
import re
-from rpmsection import Section
-from fileutils import FileUtils
-from rpmexception import RpmException
+from .rpmsection import Section
+from .fileutils import FileUtils
+from .rpmexception import RpmException
LICENSES_CHANGES = 'licenses_changes.txt'
@@ -33,18 +33,6 @@
line, even if we reorder the lines.
"""
- # Old storage
- _oldstore = []
-
- # Is the parsed variable multiline (ending with \)
- multiline = False
-
- # Are we inside of conditional or not
- condition = False
-
- # Is the condition with define or just regular one
- _condition_define = False
-
category_to_key = {
'name': 'Name',
'version': 'Version',
@@ -74,6 +62,8 @@
categories_order = [
'define',
'define_conditions',
+ 'bconds',
+ 'bcond_conditions',
'name',
'version',
'release',
@@ -122,6 +112,16 @@
def __init__(self, specfile, pkgconfig):
Section.__init__(self, specfile)
+ # Old storage
+ self._oldstore = []
+ # Is the parsed variable multiline (ending with \)
+ self.multiline = False
+ # Are we inside of conditional or not
+ self.condition = False
+ # Is the condition with define/global variables
+ self._condition_define = False
+ # Is the condition based probably on bcond evaluation
+ self._condition_bcond = False
# do we want pkgconfig
self.pkgconfig = pkgconfig
# dict of license replacement options
@@ -278,15 +278,26 @@
# If we are on endif we check the condition content
# and if we find the defines we put it on top.
- if endif:
+ if endif or not self.condition:
if self._condition_define:
+ # If we have define conditions and possible bcond start
+ # we need to put it bellow bcond definitions as otherwise
+ # the switches do not have any effect
+ if self._condition_bcond:
+ self.paragraph['bcond_conditions'] += self.paragraph['conditions']
+ else:
+ self.paragraph['define_conditions'] += self.paragraph['conditions']
# in case the nested condition contains define we consider all parents
- # to require to be on top too
+ # to require to be on top too;
if len(self._oldstore) == 0:
self._condition_define = False
- self.paragraph['define_conditions'] += self.paragraph['conditions']
else:
self.paragraph['build_conditions'] += self.paragraph['conditions']
+
+ # bcond must be reseted when on top and can be set even outside of the
+ # define scope. So reset it here always
+ if len(self._oldstore) == 0:
+ self._condition_bcond = False
self.paragraph['conditions'] = []
@@ -303,12 +314,11 @@
self.paragraph[i].sort(key=self._sort_helper_key)
for group in self.paragraph[i]:
lines += self._add_group(group)
-
if self.current_group:
# the current group was not added to any category. It's just some
# random stuff that should be at the end anyway.
lines += self._add_group(self.current_group)
-
+ self.current_group = ''
return lines
@@ -357,6 +367,10 @@
if not self.previous_line.startswith('#'):
self.current_group.append('# FIXME: Use %requires_eq macro instead')
return [ value ]
+ # we also skip all various rpm-macroed content as it is usually not easy
+ # to determine how that should be split
+ if value.startswith('%'):
+ return [ value ]
tokens = [ item[1] for item in self.reg.re_requires_token.findall(value) ]
# Split based on ',' here as it breaks up pattern matching later on
@@ -487,6 +501,9 @@
elif self.reg.re_if.match(line):
self._add_line_to('conditions', line)
self.condition = True
+ # check for possibility of the bcond conditional
+ if "%{with" in line or "%{without" in line:
+ self._condition_bcond = True
self._start_subparagraph()
self.previous_line = line
return
@@ -529,7 +546,11 @@
self._add_line_value_to('patch', match.group(3), key = '%sPatch%s%s' % (match.group(1), zero, match.group(2)))
return
- elif self.reg.re_define.match(line) or self.reg.re_global.match(line) or self.reg.re_bcond_with.match(line):
+ elif self.reg.re_bcond_with.match(line):
+ self._add_line_to('bconds', line)
+ return
+
+ elif self.reg.re_define.match(line) or self.reg.re_global.match(line) or self.reg.re_onelinecond.match(line):
self._add_line_to('define', line)
if line.endswith('\\'):
self.multiline = True
@@ -543,7 +564,7 @@
elif self.reg.re_prereq.match(line):
match = self.reg.re_prereq.match(line)
# add the comment about using proper macro which needs investingaton
- if not self.previous_line.startswith('#'):
+ if not self.previous_line.startswith('#') and not self.previous_line.startswith('PreReq'):
self.current_group.append('# FIXME: use proper Requires(pre/post/preun/...)')
self._add_line_value_to('prereq', match.group(1))
return
@@ -615,12 +636,10 @@
self._add_line_to('misc', line)
- def output(self, fout):
+ def output(self, fout, newline = True):
lines = self._end_paragraph()
self.lines += lines
- # append empty line to the end of the section
- self.lines.append('')
- Section.output(self, fout)
+ Section.output(self, fout, newline)
class RpmPackage(RpmPreamble):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.5.9/spec_cleaner/rpmprep.py new/spec-cleaner-spec-cleaner-0.6.1/spec_cleaner/rpmprep.py
--- old/spec-cleaner-spec-cleaner-0.5.9/spec_cleaner/rpmprep.py 2014-07-08 13:17:58.000000000 +0200
+++ new/spec-cleaner-spec-cleaner-0.6.1/spec_cleaner/rpmprep.py 2014-08-13 14:23:57.000000000 +0200
@@ -1,6 +1,6 @@
# vim: set ts=4 sw=4 et: coding=UTF-8
-from rpmsection import Section
+from .rpmsection import Section
class RpmPrep(Section):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.5.9/spec_cleaner/rpmprune.py new/spec-cleaner-spec-cleaner-0.6.1/spec_cleaner/rpmprune.py
--- old/spec-cleaner-spec-cleaner-0.5.9/spec_cleaner/rpmprune.py 2014-07-08 13:17:58.000000000 +0200
+++ new/spec-cleaner-spec-cleaner-0.6.1/spec_cleaner/rpmprune.py 2014-08-13 14:23:57.000000000 +0200
@@ -1,6 +1,6 @@
# vim: set ts=4 sw=4 et: coding=UTF-8
-from rpmsection import Section
+from .rpmsection import Section
class RpmClean(Section):
@@ -9,7 +9,7 @@
"""
- def output(self, fout):
+ def output(self, fout, newline = True):
pass
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.5.9/spec_cleaner/rpmregexp.py new/spec-cleaner-spec-cleaner-0.6.1/spec_cleaner/rpmregexp.py
--- old/spec-cleaner-spec-cleaner-0.5.9/spec_cleaner/rpmregexp.py 2014-07-08 13:17:58.000000000 +0200
+++ new/spec-cleaner-spec-cleaner-0.6.1/spec_cleaner/rpmregexp.py 2014-08-13 14:23:57.000000000 +0200
@@ -3,7 +3,7 @@
import re
import os
-from fileutils import FileUtils
+from .fileutils import FileUtils
class Singleton:
def __init__(self, klass):
@@ -29,7 +29,7 @@
re_spec_install = re.compile('^%install\s*$', re.IGNORECASE)
re_spec_clean = re.compile('^%clean\s*$', re.IGNORECASE)
re_spec_check = re.compile('^%check\s*$', re.IGNORECASE)
- re_spec_scriptlets = re.compile('(?:^%pretrans\s*)|(?:^%pre\s*)|(?:^%post\s*)|(?:^%preun\s*)|(?:^%postun\s*)|(?:^%posttrans\s*)', re.IGNORECASE)
+ re_spec_scriptlets = re.compile('(?:^%pretrans\s*)|(?:^%pre\s*)|(?:^%post\s*)|(?:^%verifyscript\s*)|(?:^%preun\s*)|(?:^%postun\s*)|(?:^%posttrans\s*)', re.IGNORECASE)
re_spec_files = re.compile('^%files\s*', re.IGNORECASE)
re_spec_changelog = re.compile('^%changelog\s*$', re.IGNORECASE)
@@ -63,12 +63,13 @@
re_epoch = re.compile('^\s*Epoch:\s*(.*)', re.IGNORECASE)
re_define = re.compile('^\s*%define\s*(.*)', re.IGNORECASE)
re_global = re.compile('^\s*%global\s*(.*)', re.IGNORECASE)
- re_bcond_with = re.compile('^\s*%bcond_with\s*(.*)', re.IGNORECASE)
+ re_bcond_with = re.compile('^\s*%bcond_with(out)?\s*(.*)', re.IGNORECASE)
re_requires_token = re.compile('(\s*([^<>=\s]+(\s*[<>=]+\s*[^<>=\s]+)?)\s*)')
re_autoreqprov = re.compile('^\s*AutoReqProv:.*$', re.IGNORECASE)
# here we need to grab all submacros with rpm calls so just match almost everything
re_rpm_command = re.compile('%\(.*\)')
re_requires_eq = re.compile('^\s*%requires_eq\s*(.*)')
+ re_onelinecond = re.compile('^\s*%{!?[^?]*\?[^:]+:[^}]+}')
# rpmbuild
re_jobs = re.compile('%{(_smp_mflags|\?_smp_flags|\?jobs:\s*-j\s*%(jobs|{jobs}))}')
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.5.9/spec_cleaner/rpmscriplets.py new/spec-cleaner-spec-cleaner-0.6.1/spec_cleaner/rpmscriplets.py
--- old/spec-cleaner-spec-cleaner-0.5.9/spec_cleaner/rpmscriplets.py 2014-07-08 13:17:58.000000000 +0200
+++ new/spec-cleaner-spec-cleaner-0.6.1/spec_cleaner/rpmscriplets.py 2014-08-13 14:23:57.000000000 +0200
@@ -1,6 +1,6 @@
# vim: set ts=4 sw=4 et: coding=UTF-8
-from rpmsection import Section
+from .rpmsection import Section
class RpmScriptlets(Section):
@@ -8,7 +8,7 @@
Do %post -p /sbin/ldconfig when only scriplet command is /sbin/ldconfig
'''
- def output(self, fout):
+ def output(self, fout, newline = True):
# if we have 2 or 3 lines where last one is empty
nolines = len(self.lines)
if nolines == 2 or ( nolines == 3 and self.lines[2] == ''):
@@ -17,4 +17,4 @@
self.lines = []
self.lines.append('{0} -p /sbin/ldconfig'.format(pkg))
self.lines.append('')
- Section.output(self, fout)
+ Section.output(self, fout, newline)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.5.9/spec_cleaner/rpmsection.py new/spec-cleaner-spec-cleaner-0.6.1/spec_cleaner/rpmsection.py
--- old/spec-cleaner-spec-cleaner-0.5.9/spec_cleaner/rpmsection.py 2014-07-08 13:17:58.000000000 +0200
+++ new/spec-cleaner-spec-cleaner-0.6.1/spec_cleaner/rpmsection.py 2014-08-13 14:23:57.000000000 +0200
@@ -2,7 +2,7 @@
import re
-from rpmregexp import RegexpSingle
+from .rpmregexp import RegexpSingle
class Section(object):
"""
@@ -56,12 +56,23 @@
self.previous_line = line
- def output(self, fout):
- # always append one empty line at the end if it is not present
+ def output(self, fout, newline = True):
+ # Always append one empty line at the end if it is not present
# and changelog is trailing part of our spec so do not put nothing
# bellow
- if self.lines[-1] != '' and self.lines[-1] != '%changelog':
- self.lines.append('')
+ # Also if we are jumping away just after writing one macroed line
+ # we don't want to create new line
+ if len(self.lines) >= 1:
+ if self.lines[-1] != '' and \
+ self.lines[-1] != '%changelog' and not \
+ self.lines[-1].startswith('%if') and \
+ newline:
+ self.lines.append('')
+ # remove the newlines around ifs if they are not wanted
+ if self.lines[-1] == '' and \
+ (self.lines[-2].startswith('%if') or
+ self.lines[-2].startswith('%else')):
+ self.lines.pop()
for line in self.lines:
fout.write(line + '\n')
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.5.9/tests/README new/spec-cleaner-spec-cleaner-0.6.1/tests/README
--- old/spec-cleaner-spec-cleaner-0.5.9/tests/README 2014-07-08 13:17:58.000000000 +0200
+++ new/spec-cleaner-spec-cleaner-0.6.1/tests/README 1970-01-01 01:00:00.000000000 +0100
@@ -1,10 +0,0 @@
-This is test folder for spec-cleaner repository.
-
-There are 3 folders in, out and tmp.
-
-For each spec in the in folder there should be respective
-spec in out folder with desired formatting.
-
-The tmp folder is used for holding the generated spec file
-which if differ from out content will fail the testsuite.
-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.5.9/tests/acceptance-tests.py new/spec-cleaner-spec-cleaner-0.6.1/tests/acceptance-tests.py
--- old/spec-cleaner-spec-cleaner-0.5.9/tests/acceptance-tests.py 1970-01-01 01:00:00.000000000 +0100
+++ new/spec-cleaner-spec-cleaner-0.6.1/tests/acceptance-tests.py 2014-08-13 14:23:57.000000000 +0200
@@ -0,0 +1,107 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+#
+
+import unittest
+import os
+import shutil
+import tempfile
+import difflib
+import datetime
+from mock import patch
+
+from spec_cleaner import RpmSpecCleaner
+
+class TestCompare(unittest.TestCase):
+ """
+ We run individual tests to verify the content compared to expected results
+ """
+
+ def setUp(self):
+ """
+ Declare global scope variables for further use.
+ """
+
+ self.input_dir = self._get_input_dir()
+ self.fixtures_dir = self._get_fixtures_dir()
+ self.tmp_dir = tempfile.mkdtemp()
+ self.tmp_file_rerun = tempfile.NamedTemporaryFile()
+
+ def tearDown(self):
+ """
+ Remove the tmp directory
+ """
+ shutil.rmtree(self.tmp_dir)
+
+ def _difftext(self, lines1, lines2, junk=None):
+ junk = junk or (' ', '\t')
+ # result is a generator
+ result = difflib.ndiff(lines1, lines2, charjunk=lambda x: x in junk)
+ read = []
+ for line in result:
+ read.append(line)
+ # lines that don't start with a ' ' are diff ones
+ if not line.startswith(' '):
+ self.fail(''.join(read + list(result)))
+
+ def assertStreamEqual(self, stream1, stream2, junk=None):
+ """compare two streams (using difflib and readlines())"""
+ # if stream2 is stream2, readlines() on stream1 will also read lines
+ # in stream2, so they'll appear different, although they're not
+ if stream1 is stream2:
+ return
+ # make sure we compare from the beginning of the stream
+ stream1.seek(0)
+ stream2.seek(0)
+ # ocmpare
+ self._difftext(stream1.readlines(), stream2.readlines(), junk)
+
+ def _get_input_dir(self):
+ """
+ Return path for input files used by tests
+ """
+ return os.path.join(os.getcwd(), 'tests/in/')
+
+ def _get_fixtures_dir(self):
+ """
+ Return path for representative output specs
+ """
+ return os.path.join(os.getcwd(), 'tests/out/')
+
+ def _obtain_list_of_tests(self):
+ """
+ Generate list of tests we are going to use according to what is on hdd
+ """
+
+ test_files = list()
+
+ for spec in os.listdir(self.fixtures_dir):
+ if spec.endswith(".spec"):
+ test_files.append(spec)
+
+ return test_files
+
+ def _run_individual_test(self, infile, outfile):
+ """
+ Run the cleaner as specified and store the output for further comparison.
+ """
+ cleaner = RpmSpecCleaner(infile, outfile, True, False, False, 'vimdiff')
+ cleaner.run()
+
+ @patch('spec_cleaner.rpmcopyright.datetime')
+ def test_input_files(self, datetime_mock):
+ datetime_mock.datetime.now.return_value = (datetime.datetime(2013, 1, 1))
+ for test in self._obtain_list_of_tests():
+ infile = os.path.join(self.input_dir, test)
+ compare = os.path.join(self.fixtures_dir, test)
+ tmp_file = os.path.join(self.tmp_dir, test)
+
+ # first try to generate cleaned content from messed up
+ self._run_individual_test(infile, tmp_file)
+ with open(compare) as ref, open(tmp_file) as test:
+ self.assertStreamEqual(ref, test)
+
+ # second run it again while ensuring it didn't change
+ self._run_individual_test(tmp_file, self.tmp_file_rerun.name)
+ with open(compare) as ref, open(self.tmp_file_rerun.name) as test:
+ self.assertStreamEqual(ref, test)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.5.9/tests/in/bconds.spec new/spec-cleaner-spec-cleaner-0.6.1/tests/in/bconds.spec
--- old/spec-cleaner-spec-cleaner-0.5.9/tests/in/bconds.spec 1970-01-01 01:00:00.000000000 +0100
+++ new/spec-cleaner-spec-cleaner-0.6.1/tests/in/bconds.spec 2014-08-13 14:23:57.000000000 +0200
@@ -0,0 +1,46 @@
+%{!?aarch64:%global aarch64 aarch64 arm64 armv8}
+%global jit_arches %ix86 x86_64 %{aarch64} ppc64 ppc64le
+%global test_arches %ix86 x86_64 ppc64 ppc64le
+%global icedtea_version 2.5.1
+%global icedtea_sound_version 1.0.1
+%global mauvedate 2008-10-22
+%global buildoutputdir openjdk.build/
+# Convert an absolute path to a relative path. Each symbolic link is
+# specified relative to the directory in which it is installed so that
+# it will resolve properly within chrooted installations.
+%global script 'use File::Spec; print File::Spec->abs2rel($ARGV[0], $ARGV[1])'
+%global abs2rel perl -e %{script}
+# Standard JPackage naming and versioning defines.
+%global priority 17147
+%global javaver 1.7.0
+%global buildver 65
+# Standard JPackage directories and symbolic links.
+%global sdklnk java-%{javaver}-openjdk
+%global archname %{sdklnk}
+%global jrelnk jre-%{javaver}-openjdk
+%global sdkdir %{sdklnk}-%{javaver}
+%global jredir %{sdkdir}/jre
+%global sdkbindir %{_jvmdir}/%{sdklnk}/bin
+%global jrebindir %{_jvmdir}/%{jrelnk}/bin
+%global jvmjardir %{_jvmjardir}/%{sdkdir}
+%global jvmjarlink %{_jvmjardir}/%{sdklnk}
+# Prevent brp-java-repack-jars from being run.
+%global __jar_repack 0
+# cacert symlink
+%global cacerts %{_jvmdir}/%{jredir}/lib/security/cacerts
+# real file made by update-ca-certificates
+%global javacacerts %{_var}/lib/ca-certificates/java-cacerts
+%global with_default_hotspot_tarball 1
+%ifarch %{aarch64}
+%global _with_bootstrap 1
+%global _with_zero 1
+%endif
+# turn zero on non jit arches by default
+%ifnarch %{jit_arches}
+%global _with_zero 1
+%endif
+%bcond_with zero
+%bcond_without bootstrap
+%if %{with zero}
+%define something 1
+%endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.5.9/tests/in/cleansectionbig.spec new/spec-cleaner-spec-cleaner-0.6.1/tests/in/cleansectionbig.spec
--- old/spec-cleaner-spec-cleaner-0.5.9/tests/in/cleansectionbig.spec 1970-01-01 01:00:00.000000000 +0100
+++ new/spec-cleaner-spec-cleaner-0.6.1/tests/in/cleansectionbig.spec 2014-08-13 14:23:57.000000000 +0200
@@ -0,0 +1,29 @@
+
+%clean
+rm -rf %{buildroot}
+
+%if 0%{?suse_version}
+# TODO(must): Determine sensible non-SUSE versions of these,
+# in particular restart_on_update and stop_on_removal.
+
+%verifyscript
+%verify_permissions -e %{_sbindir}/hawk_chkpwd
+%verify_permissions -e %{_sbindir}/hawk_invoke
+
+%pre
+%service_add_pre hawk.service
+
+%post
+%set_permissions %{_sbindir}/hawk_chkpwd
+%set_permissions %{_sbindir}/hawk_invoke
+%service_add_post hawk.service
+
+%preun
+%service_del_preun hawk.service
+
+%postun
+%service_del_postun hawk.service
+
+%triggerin -- lighttpd
+%restart_on_update hawk
+%endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.5.9/tests/in/requires.spec new/spec-cleaner-spec-cleaner-0.6.1/tests/in/requires.spec
--- old/spec-cleaner-spec-cleaner-0.5.9/tests/in/requires.spec 2014-07-08 13:17:58.000000000 +0200
+++ new/spec-cleaner-spec-cleaner-0.6.1/tests/in/requires.spec 2014-08-13 14:23:57.000000000 +0200
@@ -6,6 +6,9 @@
Requires: aaa<3.2.1 zzz pkgconfig(glib-2.0) perl(DBD::SQLite)
Requires: rrr >= %{version} kkk
-PreReq: iii <= 4.2.1 jjj> %{version} eee=%{version}-%{release} bbb
+PreReq: iii <= 4.2.1 jjj> %{version} eee=%{version}-%{release} aaa
PreReq: aaa<3.2.1 zzz
PreReq: rrr >= %{version} kkk
+
+BuildRequires: %{rubygem fast_gettext}
+BuildRequires: %{rubygem rails >= 3.2}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.5.9/tests/out/bconds.spec new/spec-cleaner-spec-cleaner-0.6.1/tests/out/bconds.spec
--- old/spec-cleaner-spec-cleaner-0.5.9/tests/out/bconds.spec 1970-01-01 01:00:00.000000000 +0100
+++ new/spec-cleaner-spec-cleaner-0.6.1/tests/out/bconds.spec 2014-08-13 14:23:57.000000000 +0200
@@ -0,0 +1,65 @@
+#
+# spec file for package bconds
+#
+# Copyright (c) 2013 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
+# upon. The license for this file, and modifications and additions to the
+# file, is the same license as for the pristine package itself (unless the
+# license for the pristine package is not an Open Source License, in which
+# case the license is the MIT License). An "Open Source License" is a
+# license that conforms to the Open Source Definition (Version 1.9)
+# published by the Open Source Initiative.
+
+# Please submit bugfixes or comments via http://bugs.opensuse.org/
+#
+
+
+%{!?aarch64:%global aarch64 aarch64 arm64 armv8}
+%global jit_arches %ix86 x86_64 %{aarch64} ppc64 ppc64le
+%global test_arches %ix86 x86_64 ppc64 ppc64le
+%global icedtea_version 2.5.1
+%global icedtea_sound_version 1.0.1
+%global mauvedate 2008-10-22
+%global buildoutputdir openjdk.build/
+# Convert an absolute path to a relative path. Each symbolic link is
+# specified relative to the directory in which it is installed so that
+# it will resolve properly within chrooted installations.
+%global script 'use File::Spec; print File::Spec->abs2rel($ARGV[0], $ARGV[1])'
+%global abs2rel perl -e %{script}
+# Standard JPackage naming and versioning defines.
+%global priority 17147
+%global javaver 1.7.0
+%global buildver 65
+# Standard JPackage directories and symbolic links.
+%global sdklnk java-%{javaver}-openjdk
+%global archname %{sdklnk}
+%global jrelnk jre-%{javaver}-openjdk
+%global sdkdir %{sdklnk}-%{javaver}
+%global jredir %{sdkdir}/jre
+%global sdkbindir %{_jvmdir}/%{sdklnk}/bin
+%global jrebindir %{_jvmdir}/%{jrelnk}/bin
+%global jvmjardir %{_jvmjardir}/%{sdkdir}
+%global jvmjarlink %{_jvmjardir}/%{sdklnk}
+# Prevent brp-java-repack-jars from being run.
+%global __jar_repack 0
+# cacert symlink
+%global cacerts %{_jvmdir}/%{jredir}/lib/security/cacerts
+# real file made by update-ca-certificates
+%global javacacerts %{_var}/lib/ca-certificates/java-cacerts
+%global with_default_hotspot_tarball 1
+%ifarch %{aarch64}
+%global _with_bootstrap 1
+%global _with_zero 1
+%endif
+# turn zero on non jit arches by default
+%ifnarch %{jit_arches}
+%global _with_zero 1
+%endif
+%bcond_with zero
+%bcond_without bootstrap
+%if %{with zero}
+%define something 1
+%endif
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.5.9/tests/out/cleansection.spec new/spec-cleaner-spec-cleaner-0.6.1/tests/out/cleansection.spec
--- old/spec-cleaner-spec-cleaner-0.5.9/tests/out/cleansection.spec 2014-07-08 13:17:58.000000000 +0200
+++ new/spec-cleaner-spec-cleaner-0.6.1/tests/out/cleansection.spec 2014-08-13 14:23:57.000000000 +0200
@@ -20,7 +20,6 @@
install bla
%ifarch x86
-
%files -n something
%defattr(-,root,root)
/bin/bla
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.5.9/tests/out/cleansectionbig.spec new/spec-cleaner-spec-cleaner-0.6.1/tests/out/cleansectionbig.spec
--- old/spec-cleaner-spec-cleaner-0.5.9/tests/out/cleansectionbig.spec 1970-01-01 01:00:00.000000000 +0100
+++ new/spec-cleaner-spec-cleaner-0.6.1/tests/out/cleansectionbig.spec 2014-08-13 14:23:57.000000000 +0200
@@ -0,0 +1,44 @@
+#
+# spec file for package cleansectionbig
+#
+# Copyright (c) 2013 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
+# upon. The license for this file, and modifications and additions to the
+# file, is the same license as for the pristine package itself (unless the
+# license for the pristine package is not an Open Source License, in which
+# case the license is the MIT License). An "Open Source License" is a
+# license that conforms to the Open Source Definition (Version 1.9)
+# published by the Open Source Initiative.
+
+# Please submit bugfixes or comments via http://bugs.opensuse.org/
+#
+
+
+%if 0%{?suse_version}
+# TODO(must): Determine sensible non-SUSE versions of these,
+# in particular restart_on_update and stop_on_removal.
+
+%verifyscript
+%verify_permissions -e %{_sbindir}/hawk_chkpwd
+%verify_permissions -e %{_sbindir}/hawk_invoke
+
+%pre
+%service_add_pre hawk.service
+
+%post
+%set_permissions %{_sbindir}/hawk_chkpwd
+%set_permissions %{_sbindir}/hawk_invoke
+%service_add_post hawk.service
+
+%preun
+%service_del_preun hawk.service
+
+%postun
+%service_del_postun hawk.service
+
+%triggerin -- lighttpd
+%restart_on_update hawk
+%endif
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.5.9/tests/out/conditionalpkgs.spec new/spec-cleaner-spec-cleaner-0.6.1/tests/out/conditionalpkgs.spec
--- old/spec-cleaner-spec-cleaner-0.5.9/tests/out/conditionalpkgs.spec 2014-07-08 13:17:58.000000000 +0200
+++ new/spec-cleaner-spec-cleaner-0.6.1/tests/out/conditionalpkgs.spec 2014-08-13 14:23:57.000000000 +0200
@@ -49,16 +49,14 @@
http://httpd.apache.org/docs-2.2/upgrading.html.
%if %{worker}
-
%package worker
Summary: Apache 2 worker MPM (Multi-Processing Module)
Group: Productivity/Networking/Web/Servers
Requires: %{name} = %{version}
Provides: %{pname}-MPM
-
%endif
-%if %{prefork}
+%if %{prefork}
%package prefork
Summary: Apache 2 "prefork" MPM (Multi-Processing Module)
Group: Productivity/Networking/Web/Servers
@@ -67,24 +65,21 @@
%if 0%{?suse_version} >= 901 && 0%{?sles_version} != 9
Provides: apache:%{_sbindir}/httpd
%endif
-
%endif
-%if %{event}
+%if %{event}
%package event
Summary: Apache 2 event MPM (Multi-Processing Module)
Group: Productivity/Networking/Web/Servers
Requires: %{name} = %{version}
Provides: %{pname}-MPM
-
%endif
-%if %{itk}
+%if %{itk}
%package itk
Summary: Apache 2 "ITK" MPM (Multi-Processing Module)
Group: Productivity/Networking/Web/Servers
Requires: %{name} = %{version}
Provides: %{pname}-MPM
-
%endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.5.9/tests/out/conditions.spec new/spec-cleaner-spec-cleaner-0.6.1/tests/out/conditions.spec
--- old/spec-cleaner-spec-cleaner-0.5.9/tests/out/conditions.spec 2014-07-08 13:17:58.000000000 +0200
+++ new/spec-cleaner-spec-cleaner-0.6.1/tests/out/conditions.spec 2014-08-13 14:23:57.000000000 +0200
@@ -32,7 +32,6 @@
%if %{distro} == "suse"
# FIXME: use proper Requires(pre/post/preun/...)
PreReq: %insserv_prereq
-# FIXME: use proper Requires(pre/post/preun/...)
PreReq: aaa_base
%endif
%if %{with editor}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.5.9/tests/out/requires.spec new/spec-cleaner-spec-cleaner-0.6.1/tests/out/requires.spec
--- old/spec-cleaner-spec-cleaner-0.5.9/tests/out/requires.spec 2014-07-08 13:17:58.000000000 +0200
+++ new/spec-cleaner-spec-cleaner-0.6.1/tests/out/requires.spec 2014-08-13 14:23:57.000000000 +0200
@@ -16,6 +16,8 @@
#
+BuildRequires: %{rubygem fast_gettext}
+BuildRequires: %{rubygem rails >= 3.2}
BuildRequires: aaa < 3.2.1
BuildRequires: bbb
BuildRequires: eee = %{version}-%{release}
@@ -35,13 +37,11 @@
Requires: zzz
Requires: pkgconfig(glib-2.0)
# FIXME: use proper Requires(pre/post/preun/...)
+PreReq: aaa
PreReq: aaa < 3.2.1
-# FIXME: use proper Requires(pre/post/preun/...)
-PreReq: bbb
PreReq: eee = %{version}-%{release}
PreReq: iii <= 4.2.1
PreReq: jjj > %{version}
-# FIXME: use proper Requires(pre/post/preun/...)
PreReq: kkk
PreReq: rrr >= %{version}
PreReq: zzz
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.5.9/tests/out/rpmcallpkg.spec new/spec-cleaner-spec-cleaner-0.6.1/tests/out/rpmcallpkg.spec
--- old/spec-cleaner-spec-cleaner-0.5.9/tests/out/rpmcallpkg.spec 2014-07-08 13:17:58.000000000 +0200
+++ new/spec-cleaner-spec-cleaner-0.6.1/tests/out/rpmcallpkg.spec 2014-08-13 14:23:57.000000000 +0200
@@ -17,7 +17,6 @@
%if %{with kde4}
-
%package -n %{name}-client-kde4
Summary: KDE 4 Backend for sflphone
Group: Productivity/Telephony/SIP/Clients
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.5.9/tests/out/sourcespatches.spec new/spec-cleaner-spec-cleaner-0.6.1/tests/out/sourcespatches.spec
--- old/spec-cleaner-spec-cleaner-0.5.9/tests/out/sourcespatches.spec 2014-07-08 13:17:58.000000000 +0200
+++ new/spec-cleaner-spec-cleaner-0.6.1/tests/out/sourcespatches.spec 2014-08-13 14:23:57.000000000 +0200
@@ -16,10 +16,10 @@
#
-%bcond_with self_hosting
# this is crazy define
%define root %{version}
%global test somethingelse
+%bcond_with self_hosting
Source: testfile.tar.bz2
Source2: testfile2.tar.bz2
Source15: anothersource.tar.xz
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec-cleaner-spec-cleaner-0.5.9/tests/tmp/.gitignore new/spec-cleaner-spec-cleaner-0.6.1/tests/tmp/.gitignore
--- old/spec-cleaner-spec-cleaner-0.5.9/tests/tmp/.gitignore 2014-07-08 13:17:58.000000000 +0200
+++ new/spec-cleaner-spec-cleaner-0.6.1/tests/tmp/.gitignore 1970-01-01 01:00:00.000000000 +0100
@@ -1 +0,0 @@
-*.spec
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package shorewall for openSUSE:Factory checked in at 2014-09-03 18:22:34
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/shorewall (Old)
and /work/SRC/openSUSE:Factory/.shorewall.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "shorewall"
Changes:
--------
--- /work/SRC/openSUSE:Factory/shorewall/shorewall.changes 2014-08-15 09:56:20.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.shorewall.new/shorewall.changes 2014-09-03 21:09:38.000000000 +0200
@@ -1,0 +2,23 @@
+Sun Aug 31 17:24:13 UTC 2014 - toganm(a)opensuse.org
+
+- Update to version 4.6.3.1 For more details see changelog.txt and
+ releasenotes.tx
+ * The DNSAmp action released in 4.6.3 matched more packets than it
+ should have. That has now been corrected.
+ * The handling of REJECT in IP[6]TABLES rules has been clarified
+ inthe shorewall-rules(5) and shorewall6-rules(5) manpages.
+ * The following misleading error message has now been corrected:
+
+ ERROR: The xxx TARGET is now allowed in the filter table
+
+ The message now reads:
+
+ ERROR: The xxx TARGET is not allowed in the filter table
+
+- Spec fixes
+
+ * Fixed shorewall-init requires so it needs shoreline-firewall
+ which is an alias for shorewall shorewall6 shorewall-lite and
+ shorewall6-lite packages
+ * shorewall-init package was missing a rc link
+-------------------------------------------------------------------
Old:
----
shorewall-4.6.2.5.tar.bz2
shorewall-core-4.6.2.5.tar.bz2
shorewall-docs-html-4.6.2.5.tar.bz2
shorewall-init-4.6.2.5.tar.bz2
shorewall-lite-4.6.2.5.tar.bz2
shorewall6-4.6.2.5.tar.bz2
shorewall6-lite-4.6.2.5.tar.bz2
New:
----
shorewall-4.6.3.1.tar.bz2
shorewall-core-4.6.3.1.tar.bz2
shorewall-docs-html-4.6.3.1.tar.bz2
shorewall-init-4.6.3.1.tar.bz2
shorewall-lite-4.6.3.1.tar.bz2
shorewall6-4.6.3.1.tar.bz2
shorewall6-lite-4.6.3.1.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ shorewall.spec ++++++
--- /var/tmp/diff_new_pack.YNKUe7/_old 2014-09-03 21:09:40.000000000 +0200
+++ /var/tmp/diff_new_pack.YNKUe7/_new 2014-09-03 21:09:40.000000000 +0200
@@ -20,19 +20,19 @@
%define have_systemd 1
Name: shorewall
-Version: 4.6.2.5
+Version: 4.6.3.1
Release: 0
Summary: Shoreline Firewall is an iptables-based firewall for Linux systems
License: GPL-2.0
Group: Productivity/Networking/Security
Url: http://www.shorewall.net/
-Source: http://www.shorewall.net/pub/shorewall/4.6/shorewall-4.6.2/%name-%version.t…
-Source1: http://www.shorewall.net/pub/shorewall/4.6/shorewall-4.6.2/%name-core-%vers…
-Source2: http://www.shorewall.net/pub/shorewall/4.6/shorewall-4.6.2/%name-lite-%vers…
-Source3: http://www.shorewall.net/pub/shorewall/4.6/shorewall-4.6.2/%name-init-%vers…
-Source4: http://www.shorewall.net/pub/shorewall/4.6/shorewall-4.6.2/%{name}6-lite-%v…
-Source5: http://www.shorewall.net/pub/shorewall/4.6/shorewall-4.6.2/%{name}6-%versio…
-Source6: http://www.shorewall.net/pub/shorewall/4.6/shorewall-4.6.2/%name-docs-html-…
+Source: http://www.shorewall.net/pub/shorewall/4.6/shorewall-4.6.3/%name-%version.t…
+Source1: http://www.shorewall.net/pub/shorewall/4.6/shorewall-4.6.3/%name-core-%vers…
+Source2: http://www.shorewall.net/pub/shorewall/4.6/shorewall-4.6.3/%name-lite-%vers…
+Source3: http://www.shorewall.net/pub/shorewall/4.6/shorewall-4.6.3/%name-init-%vers…
+Source4: http://www.shorewall.net/pub/shorewall/4.6/shorewall-4.6.3/%{name}6-lite-%v…
+Source5: http://www.shorewall.net/pub/shorewall/4.6/shorewall-4.6.3/%{name}6-%versio…
+Source6: http://www.shorewall.net/pub/shorewall/4.6/shorewall-4.6.3/%name-docs-html-…
Source7: %name-4.4.22.rpmlintrc
Source8: README.openSUSE
# PATCH-FIX-UPSTREAM toganm(a)opensuse.org Shorewall-lite init.suse.sh Required Stop
@@ -61,6 +61,8 @@
Requires: iptables
Requires: logrotate
Requires: xtables-addons
+Provides: shoreline_firewall = %{version}-%{release}
+
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildArch: noarch
BuildRequires: bash >= 4
@@ -135,6 +137,7 @@
Requires: iproute2
Requires: iptables
Requires: logrotate
+Provides: shoreline_firewall = %{version}-%{release}
%if 0%{?suse_version}
Conflicts: SuSEfirewall2
%endif
@@ -175,7 +178,7 @@
Requires(preun): systemd-units
Requires(postun): systemd-units
%endif
-
+Provides: shoreline_firewall = %{version}-%{release}
Requires: %name > 4.5.0-0
Requires: logrotate
%if 0%{?suse_version}
@@ -217,6 +220,7 @@
%endif
Requires: %name-core
Requires: logrotate
+Provides: shoreline_firewall = %{version}-%{release}
%if 0%{?suse_version}
Conflicts: SuSEfirewall2
%endif
@@ -257,8 +261,9 @@
Requires(preun): systemd-units
Requires(postun): systemd-units
%endif
-Requires: %name > 4.4.9
-Requires: %{name}6 > 4.4.9
+
+Requires: shoreline_firewall >= 4.5.0
+
Requires: logrotate
%if 0%{?suse_version}
Conflicts: SuSEfirewall2
@@ -391,7 +396,7 @@
done
# FIXME linkto /usr/sbin/service should follow usr_move thing
-rctargets="shorewall shorewall-lite shorewall6 shorewall6-lite"
+rctargets="shorewall shorewall-lite shorewall6 shorewall6-lite shorewall-init"
mkdir -p %buildroot/%_sbindir
for i in $rctargets; do
%if 0%{?suse_version} > 1220
@@ -811,6 +816,8 @@
# FIXME
%if 0%{?suse_version}
+%{_sbindir}/rc%{name}-init
+
%_localstatedir/adm/fillup-templates/sysconfig.%name-init
%if 0%{?suse_version} <= 1220
%attr(0544,root,root) %_initddir/%name-init
++++++ shorewall-4.6.2.5.tar.bz2 -> shorewall-4.6.3.1.tar.bz2 ++++++
++++ 1866 lines of diff (skipped)
++++++ shorewall-core-4.6.2.5.tar.bz2 -> shorewall-core-4.6.3.1.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/shorewall-core-4.6.2.5/changelog.txt new/shorewall-core-4.6.3.1/changelog.txt
--- old/shorewall-core-4.6.2.5/changelog.txt 2014-08-13 01:53:52.000000000 +0200
+++ new/shorewall-core-4.6.3.1/changelog.txt 2014-08-27 16:54:44.000000000 +0200
@@ -1,23 +1,45 @@
-Changes in 4.6.2.5
+Changes in 4.6.3.1
+
+1) Update release documents
+
+2) Correct the u32 match string in action.DNSAmp.
+
+3) Clarify REJECT handling in IP[6]TABLES rules.
+
+Changes in 4.6.3 Final
+
+1) Update release documents.
+
+2) Apply Thomas D's fix for SAVE_IPSETS on Debian.
+
+Changes in 4.6.3 RC 1
1) Update release documents.
-2) Allow a physical interface name in the INTERFACE column of the
- providers files.
+2) Minor code and documentation cleanup.
-3) Apply Louis Lagendijk's patch for shorewall-init.
+3) Defect repair from 4.6.2.5.
-Changes in 4.6.2.4
+hanges in 4.6.3 Beta 2
1) Update release documents.
-2) Allow inline matches in the body of an action.
+2) Add DNSAmp action
+
+3) Allow inline matches in action bodies (from 4.6.2.4)
-Changes in 4.6.2.3
+4) Allow physical names to be used in the INTERFACE column of the
+ providers file.
+
+Changes in 4.6.3 Beta 1
1) Update release documents.
-2) Correct handling of optimize level 8 with Perl 5.20.
+2) Describe new helper assignment in the FTP article.
+
+3) Merge defect repair from 4.6.2.3.
+
+4) Implement the 'run' command.
Changes in 4.6.2.2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/shorewall-core-4.6.2.5/configure new/shorewall-core-4.6.3.1/configure
--- old/shorewall-core-4.6.2.5/configure 2014-08-13 01:53:51.000000000 +0200
+++ new/shorewall-core-4.6.3.1/configure 2014-08-27 16:54:43.000000000 +0200
@@ -28,7 +28,7 @@
#
# Build updates this
#
-VERSION=4.6.2.5
+VERSION=4.6.3.1
case "$BASH_VERSION" in
[4-9].*)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/shorewall-core-4.6.2.5/configure.pl new/shorewall-core-4.6.3.1/configure.pl
--- old/shorewall-core-4.6.2.5/configure.pl 2014-08-13 01:53:51.000000000 +0200
+++ new/shorewall-core-4.6.3.1/configure.pl 2014-08-27 16:54:43.000000000 +0200
@@ -31,7 +31,7 @@
# Build updates this
#
use constant {
- VERSION => '4.6.2.5'
+ VERSION => '4.6.3.1'
};
my %params;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/shorewall-core-4.6.2.5/install.sh new/shorewall-core-4.6.3.1/install.sh
--- old/shorewall-core-4.6.2.5/install.sh 2014-08-13 01:53:51.000000000 +0200
+++ new/shorewall-core-4.6.3.1/install.sh 2014-08-27 16:54:43.000000000 +0200
@@ -22,7 +22,7 @@
# along with this program; if not, see <http://www.gnu.org/licenses/>.
#
-VERSION=4.6.2.5
+VERSION=4.6.3.1
usage() # $1 = exit status
{
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/shorewall-core-4.6.2.5/known_problems.txt new/shorewall-core-4.6.3.1/known_problems.txt
--- old/shorewall-core-4.6.2.5/known_problems.txt 2014-08-13 01:53:52.000000000 +0200
+++ new/shorewall-core-4.6.3.1/known_problems.txt 2014-08-27 16:54:44.000000000 +0200
@@ -1,87 +1,22 @@
1) On systems running Upstart, shorewall-init cannot reliably secure
the firewall before interfaces are brought up.
-2) In the tcrules file:
+2) The DNSAmp action released in 4.6.3 matches more packets than it
+ should.
- - SAVE and RESTORE generate fatal compilation errors.
- - '|' and '&' are ignored.
+ Workaround: Change the single rule in
+ /usr/share/shorewall/action.DNSAmp to:
- Corrected in 4.6.2.1.
+ IPTABLES(@1) - - udp 53 ; -m u32 --u32 "0>>22&0x3C\@8&0xffff=0x0100 && 0>>22&0x3C\@12&0xffff0000=0x00010000"
-3) In the mangle file:
+ Corrected in 4.6.3.1.
- - '|' and '&' are ignored in MARK ACTIONS.
+3) A typo results in the following misleading error message:
- Corrected in 4.6.2.1.
+ ERROR: The xxx TARGET is now allowed in the filter table
-4) The compiler fails to detect the IPv6 Header Match capability when
- LOAD_MODULES_ONLY=No.
+ The message should read:
- Workaround: Use a capabilities file or set LOAD_MODULES_ONLY=Yes.
+ ERROR: The xxx TARGET is not allowed in the filter table
- Corrected in 4.6.2.2.
-
-5) The compiler fails to detect Ipset Match support when the system is
- running a 3.14 Linux Kernel.
-
- Workaround: Use a capabilities file.
-
- Corrected in 4.6.2.2.
-
-6) The compiler fails to detect the Arptables JF capability when
- LOAD_MODULES_ONLY=No.
-
- Workaround: Use a capabilities file or set LOAD_MODULES_ONLY=Yes.
-
- Corrected in 4.6.2.2.
-
-7) The tcfilter manpages fail to mention that BASIC_FILTERS=Yes is
- required to use ipsets in the tcfilters files.
-
- Corrected in 4.6.2.2.
-
-8) The compiler fails with a Perl diagnostic if:
-
- - Optimize Level 8 is enabled.
- - Perl 5.20 is being used
-
- The diagnostic is:
-
- Can't use string ("nat") as a HASH ref while "strict refs" in use
- at /usr/share/shorewall/Shorewall/Chains.pm line 3486.
-
- Workaround: Disable optimize level 8 by subtracting 8 from the
- current setting. If 'all' is the current value,
- change the setting to OPTIMIZE=23
-
- Corrected in 4.6.2.3.
-
-9) Inline matches are incorrectly disallowed in action files.
-
- Corrected in 4.6.2.4.
-
-10) If the following entry appears in /etc/shorewall/interfaces:
-
- prov2 VPNIF physical=tun1,optional
-
- then this entry in /etc/shorewall/provider
-
- prov2 2 2 - tun1 192.168.1.1 track,fallback
-
- results in the following:
-
- Use of uninitialized value $physical in pattern match
- (m//) at /usr/lib/perl5/vendor_perl/5.18.1/
- Shorewall/Providers.pm line 463, <$currentfile> line 2.
- ERROR: A provider interface must have at least one
- associated zone /opt/etc/shorewall/providers (line 2)
-
- Workaround: Change the provider entry to
-
- prov2 2 2 - VPNIF 192.168.1.1 track,fallback
-
- Corrected in 4.6.2.5.
-
-11) Shorewall-init fails when installed on a system with systemd.
-
- Corrected in 4.6.2.5.
+ Corrected in 4.6.3.1.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/shorewall-core-4.6.2.5/lib.cli new/shorewall-core-4.6.3.1/lib.cli
--- old/shorewall-core-4.6.2.5/lib.cli 2014-08-13 01:39:52.000000000 +0200
+++ new/shorewall-core-4.6.3.1/lib.cli 2014-08-24 20:59:51.000000000 +0200
@@ -1470,22 +1470,10 @@
$g_tool -t rawpost -L $g_ipt_options
fi
- local count
- local max
+ local count=$(cat /proc/sys/net/netfilter/nf_conntrack_count)
+ local max=$(cat /proc/sys/net/netfilter/nf_conntrack_max)
- if [ -f /proc/sys/net/netfilter/nf_conntrack_count ]; then
- count=$(cat /proc/sys/net/netfilter/nf_conntrack_count)
- max=$(cat /proc/sys/net/netfilter/nf_conntrack_max)
-
- heading "Conntrack Table ($count out of $max)"
- elif [ -f /proc/sys/net/ipv4/netfilter/ip_conntrack_count ]; then
- count=$(cat /proc/sys/net/ipv4/netfilter/ip_conntrack_count)
- max=$(cat /proc/sys/net/ipv4/netfilter/ip_conntrack_max)
-
- heading "Conntrack Table ($count out of $max)"
- else
- heading "Conntrack Table"
- fi
+ heading "Conntrack Table ($count out of $max)"
if [ $g_family -eq 4 ]; then
[ -f /proc/net/ip_conntrack ] && cat /proc/net/ip_conntrack || grep -v '^ipv6' /proc/net/nf_conntrack
@@ -3527,6 +3515,14 @@
return $rc
}
+run_command() {
+ if [ -x ${VARDIR}/firewall ] ; then
+ run_it ${VARDIR}/firewall $g_debugging $@
+ else
+ fatal_error "${VARDIR}/firewall does not exist or is not executable"
+ fi
+}
+
#
# Give Usage Information
#
@@ -3558,6 +3554,7 @@
echo " reset [ <chain> ... ]"
echo " restart [ -n ] [ -p ] [ -f ] [ <directory> ]"
echo " restore [ -n ] [ <file name> ]"
+ echo " run <command> [ <parameter> ... ]"
echo " save [ <file name> ]"
echo " [ show | list | ls ] [ -b ] [ -x ] [ -t {filter|mangle|nat} ] [ {chain [<chain> [ <chain> ... ]"
echo " [ show | list | ls ] [ -f ] capabilities"
@@ -3586,6 +3583,7 @@
echo " start [ -f ] [ -p ] [ <directory> ]"
echo " stop"
echo " status [ -i ]"
+ echo " run <function> [ function ... ]"
echo " version [ -a ]"
echo
exit $1
@@ -3830,6 +3828,11 @@
fatal_error "$g_product is not running"
fi
;;
+ run)
+ [ $# -gt 1 ] || fatal_error "Missing function name"
+ get_config Yes
+ run_command $@
+ ;;
show|list|ls)
get_config Yes No Yes
shift
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/shorewall-core-4.6.2.5/lib.common new/shorewall-core-4.6.3.1/lib.common
--- old/shorewall-core-4.6.2.5/lib.common 2014-08-13 01:39:52.000000000 +0200
+++ new/shorewall-core-4.6.3.1/lib.common 2014-08-24 20:59:51.000000000 +0200
@@ -172,6 +172,7 @@
error_message() # $* = Error Message
{
echo " $@" >&2
+ return 1
}
#
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/shorewall-core-4.6.2.5/releasenotes.txt new/shorewall-core-4.6.3.1/releasenotes.txt
--- old/shorewall-core-4.6.2.5/releasenotes.txt 2014-08-13 01:53:52.000000000 +0200
+++ new/shorewall-core-4.6.3.1/releasenotes.txt 2014-08-27 16:54:44.000000000 +0200
@@ -1,7 +1,7 @@
----------------------------------------------------------------------------
- S H O R E W A L L 4 . 6 . 2 . 5
+ S H O R E W A L L 4 . 6 . 3 . 1
------------------------------------
- A u g u s t 1 4 , 2 0 1 4
+ A u g u s t 2 6 , 2 0 1 4
----------------------------------------------------------------------------
I. PROBLEMS CORRECTED IN THIS RELEASE
@@ -14,80 +14,28 @@
I. P R O B L E M S C O R R E C T E D I N T H I S R E L E A S E
----------------------------------------------------------------------------
-4.6.2.5
+4.6.3
-1) Previously, when an interface specified the 'physical=' option and
- the physical interface name was specified in the INTERFACES column
- of the providers file, compilation would fail with diagnostics
- similar to the following:
+1) The DNSAmp action released in 4.6.3 matched more packets than it
+ should have. That has now been corrected.
- Use of uninitialized value $physical in pattern match
- (m//) at /usr/lib/perl5/vendor_perl/5.18.1/
- Shorewall/Providers.pm line 463, <$currentfile> line 2.
- ERROR: A provider interface must have at least one
- associated zone /opt/etc/shorewall/providers (line 2)
+2) The handling of REJECT in IP[6]TABLES rules has been clarified in
+ the shorewall-rules(5) and shorewall6-rules(5) manpages.
-2) Shorewall-init now works correctly on systems with systemd.
- By Louis Lagendijk.
+3) The following misleading error message has now been corrected:
-4.6.2.4
+ ERROR: The xxx TARGET is now allowed in the filter table
-1) Previously, inline matches were incorrectly disallowed in action
- files. These matches are now allowed.
+ The message now reads:
-4.6.2.3
-
-1) Previously, the compiler would fail with a Perl diagnostic if:
-
- - Optimize Level 8 was enabled.
- - Perl 5.20 was being used. This is the current Perl version on
- Arch Linux.
+ ERROR: The xxx TARGET is not allowed in the filter table
- The diagnostic was:
+4.6.3
- Can't use string ("nat") as a HASH ref while "strict refs" in use
- at /usr/share/shorewall/Shorewall/Chains.pm line 3486.
+1) This release contains defect repair up through release 4.6.2.5.
-4.6.2.2
-
-1) The compiler now correctly detects the IPv6 "Header Match"
- capability when LOAD_MODULES_ONLY=No.
-
-2) The compiler now correctly detects the IPv6 "Ipset Match"
- capability on systems running a 3.14 or later kernel.
-
-3) The compiler now correctly detects "Arptables JF" capability when
- LOAD_MODULES_ONLY=No.
-
-3) The tcfilter manpages previously failed to mention that
- BASIC_FILTERS=Yes is required to use ipsets in the tcfilters files.
-
-4.6.2.1
-
-1) Two issues with tcrules processing have been corrected:
-
- - SAVE and RESTORE generated fatal compilation errors.
- - '|' and '&' were ignored.
-
-4.6.2
-
-1) The DSCP match in the mangle and tcrules files didn't work with
- service class names such as EF, BE, CS1, ... (Thibaut Chèze)
-
-2) The SAVE and RESTORE actions were disallowed in the OUTPUT chain in
- tcrules and mangle; this was a regression from 4.5.21.
-
-3) Additional ports required by Asus, Supermicro and Dell have been
- added to the IPMI macro (Tuomo Soini).
-
-4) Some issues regarding install under Cygwin64 have been addressed.
-
- - configure.pl did not understand CYGWIN returned from `uname`
- - Shorewall-core install.sh did not understand CYGWIN returned from
- `uname`.
- - The Shorewall and Shorewall6 installers tried to run the command
- 'mkdir -p //etc/shorewall[6]' which is broken in the current
- Cygwin64.
+2) The SAVE_IPSETS option in the Debian version of Shorewall-init now
+ works correctly. Thomas D.
----------------------------------------------------------------------------
I I. K N O W N P R O B L E M S R E M A I N I N G
@@ -100,45 +48,19 @@
I I I. N E W F E A T U R E S I N T H I S R E L E A S E
----------------------------------------------------------------------------
-1) The 'status' command now allows a -i option which causes the state
- of all optional and provider interfaces to be displayed.
-
- Example:
-
- root@gateway:/etc/shorewall# shorewall status -i
- Shorewall-4.6.1 Status at gateway - Wed Jun 18 14:27:19 PDT 2014
-
- Shorewall is running
- State:Started (Wed Jun 18 09:50:01 PDT 2014) from /etc/shorewall/
- (/var/lib/shorewall/firewall compiled by Shorewall version 4.6.1)
-
- Interface eth0 is Enabled
- Interface eth1 is Enabled
- Interface lo is Enabled
-
-2) A 'shorewall show blacklists' command has been
- implemented. The abbreviation 'bl' may be used in place of
- 'blacklists'.
-
- The command displays the output of the 'dynamic' chain together
- with the chains created by entries in the blrules file.
-
-3) A TIME column has been added to the mangle file. It has the same
- use in that file as the corresponding column in the rules file.
-
-4) A stateful port knocking example has been added to the Events
- article (http://www.shorewall.net/Events.html) This example allows
- a sequence of knocking ports to be defined (Gerhard Weisinger).
-
-5) A macro supporting HP's Integrated Lights Out (ILO) has been added
- (Tuomo Soini).
-
-6) It is now possible to specify the MAC address of a provider
- GATEWAY. This is useful when there are multiple providers serviced
- by a single interface as it avoids the need for the generated
- script to detect the MAC during start/restart.
-
-7) The copyrights in the sample configuration files have been updated.
+1) A new 'run' command has been implemented. This command allows you
+ to run an arbitrary command in the context of the generated
+ script.
+
+ shorewall[6][-lite] run <command> [ <parameter> ... ]
+
+ Normally, <command> will be a function declared in lib.private.
+
+2) A DNSAmp action has been added. This action matches recursive UDP
+ DNS queries. The default disposition is DROP which can be
+ overridden by the single action parameter (e.g, 'DNSAmp(REJECT)'
+ will reject these queries). Recursive DNS queries are the basis for
+ 'DNS Amplification' attacks; hence the action name.
----------------------------------------------------------------------------
I V. M I G R A T I O N I S S U E S
@@ -412,7 +334,130 @@
----------------------------------------------------------------------------
V. N O T E S F R O M O T H E R 4 . 6 R E L E A S E S
----------------------------------------------------------------------------
- P R O B L E M S C O R R E C T E D I N 4 . 6 . 0
+ P R O B L E M S C O R R E C T E D I N 4 . 6 . 2
+----------------------------------------------------------------------------
+
+4.6.2.5
+
+1) Previously, when an interface specified the 'physical=' option and
+ the physical interface name was specified in the INTERFACES column
+ of the providers file, compilation would fail with diagnostics
+ similar to the following:
+
+ Use of uninitialized value $physical in pattern match
+ (m//) at /usr/lib/perl5/vendor_perl/5.18.1/
+ Shorewall/Providers.pm line 463, <$currentfile> line 2.
+ ERROR: A provider interface must have at least one
+ associated zone /opt/etc/shorewall/providers (line 2)
+
+2) Shorewall-init now works correctly on systems with systemd.
+ By Louis Lagendijk.
+
+4.6.2.4
+
+1) Previously, inline matches were incorrectly disallowed in action
+ files. These matches are now allowed.
+
+4.6.2.3
+
+1) Previously, the compiler would fail with a Perl diagnostic if:
+
+ - Optimize Level 8 was enabled.
+ - Perl 5.20 was being used. This is the current Perl version on
+ Arch Linux.
+
+ The diagnostic was:
+
+ Can't use string ("nat") as a HASH ref while "strict refs" in use
+ at /usr/share/shorewall/Shorewall/Chains.pm line 3486.
+
+4.6.2.2
+
+1) The compiler now correctly detects the IPv6 "Header Match"
+ capability when LOAD_MODULES_ONLY=No.
+
+2) The compiler now correctly detects the IPv6 "Ipset Match"
+ capability on systems running a 3.14 or later kernel.
+
+3) The compiler now correctly detects "Arptables JF" capability when
+ LOAD_MODULES_ONLY=No.
+
+3) The tcfilter manpages previously failed to mention that
+ BASIC_FILTERS=Yes is required to use ipsets in the tcfilters files.
+
+4.6.2.1
+
+1) Two issues with tcrules processing have been corrected:
+
+ - SAVE and RESTORE generated fatal compilation errors.
+ - '|' and '&' were ignored.
+
+4.6.2
+
+1) The DSCP match in the mangle and tcrules files didn't work with
+ service class names such as EF, BE, CS1, ... (Thibaut Chèze)
+
+2) The SAVE and RESTORE actions were disallowed in the OUTPUT chain in
+ tcrules and mangle; this was a regression from 4.5.21.
+
+3) Additional ports required by Asus, Supermicro and Dell have been
+ added to the IPMI macro (Tuomo Soini).
+
+4) Some issues regarding install under Cygwin64 have been addressed.
+
+ - configure.pl did not understand CYGWIN returned from `uname`
+ - Shorewall-core install.sh did not understand CYGWIN returned from
+ `uname`.
+ - The Shorewall and Shorewall6 installers tried to run the command
+ 'mkdir -p //etc/shorewall[6]' which is broken in the current
+ Cygwin64.
+
+----------------------------------------------------------------------------
+ N E W F E A T U R E S I N 4 . 6 . 2
+----------------------------------------------------------------------------
+
+1) The 'status' command now allows a -i option which causes the state
+ of all optional and provider interfaces to be displayed.
+
+ Example:
+
+ root@gateway:/etc/shorewall# shorewall status -i
+ Shorewall-4.6.1 Status at gateway - Wed Jun 18 14:27:19 PDT 2014
+
+ Shorewall is running
+ State:Started (Wed Jun 18 09:50:01 PDT 2014) from /etc/shorewall/
+ (/var/lib/shorewall/firewall compiled by Shorewall version 4.6.1)
+
+ Interface eth0 is Enabled
+ Interface eth1 is Enabled
+ Interface lo is Enabled
+
+2) A 'shorewall show blacklists' command has been
+ implemented. The abbreviation 'bl' may be used in place of
+ 'blacklists'.
+
+ The command displays the output of the 'dynamic' chain together
+ with the chains created by entries in the blrules file.
+
+3) A TIME column has been added to the mangle file. It has the same
+ use in that file as the corresponding column in the rules file.
+
+4) A stateful port knocking example has been added to the Events
+ article (http://www.shorewall.net/Events.html) This example allows
+ a sequence of knocking ports to be defined (Gerhard Weisinger).
+
+5) A macro supporting HP's Integrated Lights Out (ILO) has been added
+ (Tuomo Soini).
+
+6) It is now possible to specify the MAC address of a provider
+ GATEWAY. This is useful when there are multiple providers serviced
+ by a single interface as it avoids the need for the generated
+ script to detect the MAC during start/restart.
+
+7) The copyrights in the sample configuration files have been updated.
+
+----------------------------------------------------------------------------
+ P R O B L E M S C O R R E C T E D I N 4 . 6 . 1
----------------------------------------------------------------------------
4.6.1.4
@@ -487,7 +532,7 @@
optimized away.
----------------------------------------------------------------------------
- N E W F E A T U R E S I N 4 . 6 . 0
+ N E W F E A T U R E S I N 4 . 6 . 1
----------------------------------------------------------------------------
1) Tuomo Soini has provided new macros for AMOP, MongoDB, Redis, Sieve
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/shorewall-core-4.6.2.5/shorewall-core.spec new/shorewall-core-4.6.3.1/shorewall-core.spec
--- old/shorewall-core-4.6.2.5/shorewall-core.spec 2014-08-13 01:53:52.000000000 +0200
+++ new/shorewall-core-4.6.3.1/shorewall-core.spec 2014-08-27 16:54:44.000000000 +0200
@@ -1,6 +1,6 @@
%define name shorewall-core
-%define version 4.6.2
-%define release 5
+%define version 4.6.3
+%define release 1
Summary: Shoreline Firewall is an iptables-based firewall for Linux systems.
Name: %{name}
@@ -62,12 +62,16 @@
%doc COPYING INSTALL changelog.txt releasenotes.txt
%changelog
-* Tue Aug 12 2014 Tom Eastep tom(a)shorewall.net
-- Updated to 4.6.2-5
-* Tue Aug 05 2014 Tom Eastep tom(a)shorewall.net
-- Updated to 4.6.2-4
-* Sat Jul 26 2014 Tom Eastep tom(a)shorewall.net
-- Updated to 4.6.2-3
+* Thu Aug 21 2014 Tom Eastep tom(a)shorewall.net
+- Updated to 4.6.3-1
+* Thu Aug 14 2014 Tom Eastep tom(a)shorewall.net
+- Updated to 4.6.3-0base
+* Sun Aug 10 2014 Tom Eastep tom(a)shorewall.net
+- Updated to 4.6.3-0RC1
+* Sun Aug 03 2014 Tom Eastep tom(a)shorewall.net
+- Updated to 4.6.3-0Beta2
+* Fri Jul 25 2014 Tom Eastep tom(a)shorewall.net
+- Updated to 4.6.3-0Beta1
* Fri Jul 18 2014 Tom Eastep tom(a)shorewall.net
- Updated to 4.6.2-2
* Fri Jul 18 2014 Tom Eastep tom(a)shorewall.net
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/shorewall-core-4.6.2.5/uninstall.sh new/shorewall-core-4.6.3.1/uninstall.sh
--- old/shorewall-core-4.6.2.5/uninstall.sh 2014-08-13 01:53:51.000000000 +0200
+++ new/shorewall-core-4.6.3.1/uninstall.sh 2014-08-27 16:54:43.000000000 +0200
@@ -26,7 +26,7 @@
# You may only use this script to uninstall the version
# shown below. Simply run this script to remove Shorewall Firewall
-VERSION=4.6.2.5
+VERSION=4.6.3.1
usage() # $1 = exit status
{
++++++ shorewall-docs-html-4.6.2.5.tar.bz2 -> shorewall-docs-html-4.6.3.1.tar.bz2 ++++++
++++ 7168 lines of diff (skipped)
++++++ shorewall-init-4.6.2.5.tar.bz2 -> shorewall-init-4.6.3.1.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/shorewall-init-4.6.2.5/changelog.txt new/shorewall-init-4.6.3.1/changelog.txt
--- old/shorewall-init-4.6.2.5/changelog.txt 2014-08-13 01:53:52.000000000 +0200
+++ new/shorewall-init-4.6.3.1/changelog.txt 2014-08-27 16:54:44.000000000 +0200
@@ -1,23 +1,45 @@
-Changes in 4.6.2.5
+Changes in 4.6.3.1
+
+1) Update release documents
+
+2) Correct the u32 match string in action.DNSAmp.
+
+3) Clarify REJECT handling in IP[6]TABLES rules.
+
+Changes in 4.6.3 Final
+
+1) Update release documents.
+
+2) Apply Thomas D's fix for SAVE_IPSETS on Debian.
+
+Changes in 4.6.3 RC 1
1) Update release documents.
-2) Allow a physical interface name in the INTERFACE column of the
- providers files.
+2) Minor code and documentation cleanup.
-3) Apply Louis Lagendijk's patch for shorewall-init.
+3) Defect repair from 4.6.2.5.
-Changes in 4.6.2.4
+hanges in 4.6.3 Beta 2
1) Update release documents.
-2) Allow inline matches in the body of an action.
+2) Add DNSAmp action
+
+3) Allow inline matches in action bodies (from 4.6.2.4)
-Changes in 4.6.2.3
+4) Allow physical names to be used in the INTERFACE column of the
+ providers file.
+
+Changes in 4.6.3 Beta 1
1) Update release documents.
-2) Correct handling of optimize level 8 with Perl 5.20.
+2) Describe new helper assignment in the FTP article.
+
+3) Merge defect repair from 4.6.2.3.
+
+4) Implement the 'run' command.
Changes in 4.6.2.2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/shorewall-init-4.6.2.5/configure new/shorewall-init-4.6.3.1/configure
--- old/shorewall-init-4.6.2.5/configure 2014-08-13 01:53:52.000000000 +0200
+++ new/shorewall-init-4.6.3.1/configure 2014-08-27 16:54:44.000000000 +0200
@@ -28,7 +28,7 @@
#
# Build updates this
#
-VERSION=4.6.2.5
+VERSION=4.6.3.1
case "$BASH_VERSION" in
[4-9].*)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/shorewall-init-4.6.2.5/configure.pl new/shorewall-init-4.6.3.1/configure.pl
--- old/shorewall-init-4.6.2.5/configure.pl 2014-08-13 01:53:52.000000000 +0200
+++ new/shorewall-init-4.6.3.1/configure.pl 2014-08-27 16:54:44.000000000 +0200
@@ -31,7 +31,7 @@
# Build updates this
#
use constant {
- VERSION => '4.6.2.5'
+ VERSION => '4.6.3.1'
};
my %params;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/shorewall-init-4.6.2.5/init.debian.sh new/shorewall-init-4.6.3.1/init.debian.sh
--- old/shorewall-init-4.6.2.5/init.debian.sh 2014-08-13 01:39:52.000000000 +0200
+++ new/shorewall-init-4.6.3.1/init.debian.sh 2014-08-24 20:59:51.000000000 +0200
@@ -123,6 +123,17 @@
echo "done."
+ if [ -n "$SAVE_IPSETS" -a -f "$SAVE_IPSETS" ]; then
+
+ echo -n "Restoring ipsets: "
+
+ if ! ipset -R < "$SAVE_IPSETS"; then
+ echo_notdone
+ fi
+
+ echo "done."
+ fi
+
return 0
}
@@ -142,6 +153,20 @@
echo "done."
+ if [ -n "$SAVE_IPSETS" ]; then
+
+ echo "Saving ipsets: "
+
+ mkdir -p $(dirname "$SAVE_IPSETS")
+ if ipset -S > "${SAVE_IPSETS}.tmp"; then
+ grep -qE -- '^(-N|create )' "${SAVE_IPSETS}.tmp" && mv -f "${SAVE_IPSETS}.tmp" "$SAVE_IPSETS"
+ else
+ echo_notdone
+ fi
+
+ echo "done."
+ fi
+
return 0
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/shorewall-init-4.6.2.5/install.sh new/shorewall-init-4.6.3.1/install.sh
--- old/shorewall-init-4.6.2.5/install.sh 2014-08-13 01:53:52.000000000 +0200
+++ new/shorewall-init-4.6.3.1/install.sh 2014-08-27 16:54:44.000000000 +0200
@@ -27,7 +27,7 @@
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
#
-VERSION=4.6.2.5
+VERSION=4.6.3.1
usage() # $1 = exit status
{
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/shorewall-init-4.6.2.5/releasenotes.txt new/shorewall-init-4.6.3.1/releasenotes.txt
--- old/shorewall-init-4.6.2.5/releasenotes.txt 2014-08-13 01:53:52.000000000 +0200
+++ new/shorewall-init-4.6.3.1/releasenotes.txt 2014-08-27 16:54:44.000000000 +0200
@@ -1,7 +1,7 @@
----------------------------------------------------------------------------
- S H O R E W A L L 4 . 6 . 2 . 5
+ S H O R E W A L L 4 . 6 . 3 . 1
------------------------------------
- A u g u s t 1 4 , 2 0 1 4
+ A u g u s t 2 6 , 2 0 1 4
----------------------------------------------------------------------------
I. PROBLEMS CORRECTED IN THIS RELEASE
@@ -14,80 +14,28 @@
I. P R O B L E M S C O R R E C T E D I N T H I S R E L E A S E
----------------------------------------------------------------------------
-4.6.2.5
+4.6.3
-1) Previously, when an interface specified the 'physical=' option and
- the physical interface name was specified in the INTERFACES column
- of the providers file, compilation would fail with diagnostics
- similar to the following:
+1) The DNSAmp action released in 4.6.3 matched more packets than it
+ should have. That has now been corrected.
- Use of uninitialized value $physical in pattern match
- (m//) at /usr/lib/perl5/vendor_perl/5.18.1/
- Shorewall/Providers.pm line 463, <$currentfile> line 2.
- ERROR: A provider interface must have at least one
- associated zone /opt/etc/shorewall/providers (line 2)
+2) The handling of REJECT in IP[6]TABLES rules has been clarified in
+ the shorewall-rules(5) and shorewall6-rules(5) manpages.
-2) Shorewall-init now works correctly on systems with systemd.
- By Louis Lagendijk.
+3) The following misleading error message has now been corrected:
-4.6.2.4
+ ERROR: The xxx TARGET is now allowed in the filter table
-1) Previously, inline matches were incorrectly disallowed in action
- files. These matches are now allowed.
+ The message now reads:
-4.6.2.3
-
-1) Previously, the compiler would fail with a Perl diagnostic if:
-
- - Optimize Level 8 was enabled.
- - Perl 5.20 was being used. This is the current Perl version on
- Arch Linux.
+ ERROR: The xxx TARGET is not allowed in the filter table
- The diagnostic was:
+4.6.3
- Can't use string ("nat") as a HASH ref while "strict refs" in use
- at /usr/share/shorewall/Shorewall/Chains.pm line 3486.
+1) This release contains defect repair up through release 4.6.2.5.
-4.6.2.2
-
-1) The compiler now correctly detects the IPv6 "Header Match"
- capability when LOAD_MODULES_ONLY=No.
-
-2) The compiler now correctly detects the IPv6 "Ipset Match"
- capability on systems running a 3.14 or later kernel.
-
-3) The compiler now correctly detects "Arptables JF" capability when
- LOAD_MODULES_ONLY=No.
-
-3) The tcfilter manpages previously failed to mention that
- BASIC_FILTERS=Yes is required to use ipsets in the tcfilters files.
-
-4.6.2.1
-
-1) Two issues with tcrules processing have been corrected:
-
- - SAVE and RESTORE generated fatal compilation errors.
- - '|' and '&' were ignored.
-
-4.6.2
-
-1) The DSCP match in the mangle and tcrules files didn't work with
- service class names such as EF, BE, CS1, ... (Thibaut Chèze)
-
-2) The SAVE and RESTORE actions were disallowed in the OUTPUT chain in
- tcrules and mangle; this was a regression from 4.5.21.
-
-3) Additional ports required by Asus, Supermicro and Dell have been
- added to the IPMI macro (Tuomo Soini).
-
-4) Some issues regarding install under Cygwin64 have been addressed.
-
- - configure.pl did not understand CYGWIN returned from `uname`
- - Shorewall-core install.sh did not understand CYGWIN returned from
- `uname`.
- - The Shorewall and Shorewall6 installers tried to run the command
- 'mkdir -p //etc/shorewall[6]' which is broken in the current
- Cygwin64.
+2) The SAVE_IPSETS option in the Debian version of Shorewall-init now
+ works correctly. Thomas D.
----------------------------------------------------------------------------
I I. K N O W N P R O B L E M S R E M A I N I N G
@@ -100,45 +48,19 @@
I I I. N E W F E A T U R E S I N T H I S R E L E A S E
----------------------------------------------------------------------------
-1) The 'status' command now allows a -i option which causes the state
- of all optional and provider interfaces to be displayed.
-
- Example:
-
- root@gateway:/etc/shorewall# shorewall status -i
- Shorewall-4.6.1 Status at gateway - Wed Jun 18 14:27:19 PDT 2014
-
- Shorewall is running
- State:Started (Wed Jun 18 09:50:01 PDT 2014) from /etc/shorewall/
- (/var/lib/shorewall/firewall compiled by Shorewall version 4.6.1)
-
- Interface eth0 is Enabled
- Interface eth1 is Enabled
- Interface lo is Enabled
-
-2) A 'shorewall show blacklists' command has been
- implemented. The abbreviation 'bl' may be used in place of
- 'blacklists'.
-
- The command displays the output of the 'dynamic' chain together
- with the chains created by entries in the blrules file.
-
-3) A TIME column has been added to the mangle file. It has the same
- use in that file as the corresponding column in the rules file.
-
-4) A stateful port knocking example has been added to the Events
- article (http://www.shorewall.net/Events.html) This example allows
- a sequence of knocking ports to be defined (Gerhard Weisinger).
-
-5) A macro supporting HP's Integrated Lights Out (ILO) has been added
- (Tuomo Soini).
-
-6) It is now possible to specify the MAC address of a provider
- GATEWAY. This is useful when there are multiple providers serviced
- by a single interface as it avoids the need for the generated
- script to detect the MAC during start/restart.
-
-7) The copyrights in the sample configuration files have been updated.
+1) A new 'run' command has been implemented. This command allows you
+ to run an arbitrary command in the context of the generated
+ script.
+
+ shorewall[6][-lite] run <command> [ <parameter> ... ]
+
+ Normally, <command> will be a function declared in lib.private.
+
+2) A DNSAmp action has been added. This action matches recursive UDP
+ DNS queries. The default disposition is DROP which can be
+ overridden by the single action parameter (e.g, 'DNSAmp(REJECT)'
+ will reject these queries). Recursive DNS queries are the basis for
+ 'DNS Amplification' attacks; hence the action name.
----------------------------------------------------------------------------
I V. M I G R A T I O N I S S U E S
@@ -412,7 +334,130 @@
----------------------------------------------------------------------------
V. N O T E S F R O M O T H E R 4 . 6 R E L E A S E S
----------------------------------------------------------------------------
- P R O B L E M S C O R R E C T E D I N 4 . 6 . 0
+ P R O B L E M S C O R R E C T E D I N 4 . 6 . 2
+----------------------------------------------------------------------------
+
+4.6.2.5
+
+1) Previously, when an interface specified the 'physical=' option and
+ the physical interface name was specified in the INTERFACES column
+ of the providers file, compilation would fail with diagnostics
+ similar to the following:
+
+ Use of uninitialized value $physical in pattern match
+ (m//) at /usr/lib/perl5/vendor_perl/5.18.1/
+ Shorewall/Providers.pm line 463, <$currentfile> line 2.
+ ERROR: A provider interface must have at least one
+ associated zone /opt/etc/shorewall/providers (line 2)
+
+2) Shorewall-init now works correctly on systems with systemd.
+ By Louis Lagendijk.
+
+4.6.2.4
+
+1) Previously, inline matches were incorrectly disallowed in action
+ files. These matches are now allowed.
+
+4.6.2.3
+
+1) Previously, the compiler would fail with a Perl diagnostic if:
+
+ - Optimize Level 8 was enabled.
+ - Perl 5.20 was being used. This is the current Perl version on
+ Arch Linux.
+
+ The diagnostic was:
+
+ Can't use string ("nat") as a HASH ref while "strict refs" in use
+ at /usr/share/shorewall/Shorewall/Chains.pm line 3486.
+
+4.6.2.2
+
+1) The compiler now correctly detects the IPv6 "Header Match"
+ capability when LOAD_MODULES_ONLY=No.
+
+2) The compiler now correctly detects the IPv6 "Ipset Match"
+ capability on systems running a 3.14 or later kernel.
+
+3) The compiler now correctly detects "Arptables JF" capability when
+ LOAD_MODULES_ONLY=No.
+
+3) The tcfilter manpages previously failed to mention that
+ BASIC_FILTERS=Yes is required to use ipsets in the tcfilters files.
+
+4.6.2.1
+
+1) Two issues with tcrules processing have been corrected:
+
+ - SAVE and RESTORE generated fatal compilation errors.
+ - '|' and '&' were ignored.
+
+4.6.2
+
+1) The DSCP match in the mangle and tcrules files didn't work with
+ service class names such as EF, BE, CS1, ... (Thibaut Chèze)
+
+2) The SAVE and RESTORE actions were disallowed in the OUTPUT chain in
+ tcrules and mangle; this was a regression from 4.5.21.
+
+3) Additional ports required by Asus, Supermicro and Dell have been
+ added to the IPMI macro (Tuomo Soini).
+
+4) Some issues regarding install under Cygwin64 have been addressed.
+
+ - configure.pl did not understand CYGWIN returned from `uname`
+ - Shorewall-core install.sh did not understand CYGWIN returned from
+ `uname`.
+ - The Shorewall and Shorewall6 installers tried to run the command
+ 'mkdir -p //etc/shorewall[6]' which is broken in the current
+ Cygwin64.
+
+----------------------------------------------------------------------------
+ N E W F E A T U R E S I N 4 . 6 . 2
+----------------------------------------------------------------------------
+
+1) The 'status' command now allows a -i option which causes the state
+ of all optional and provider interfaces to be displayed.
+
+ Example:
+
+ root@gateway:/etc/shorewall# shorewall status -i
+ Shorewall-4.6.1 Status at gateway - Wed Jun 18 14:27:19 PDT 2014
+
+ Shorewall is running
+ State:Started (Wed Jun 18 09:50:01 PDT 2014) from /etc/shorewall/
+ (/var/lib/shorewall/firewall compiled by Shorewall version 4.6.1)
+
+ Interface eth0 is Enabled
+ Interface eth1 is Enabled
+ Interface lo is Enabled
+
+2) A 'shorewall show blacklists' command has been
+ implemented. The abbreviation 'bl' may be used in place of
+ 'blacklists'.
+
+ The command displays the output of the 'dynamic' chain together
+ with the chains created by entries in the blrules file.
+
+3) A TIME column has been added to the mangle file. It has the same
+ use in that file as the corresponding column in the rules file.
+
+4) A stateful port knocking example has been added to the Events
+ article (http://www.shorewall.net/Events.html) This example allows
+ a sequence of knocking ports to be defined (Gerhard Weisinger).
+
+5) A macro supporting HP's Integrated Lights Out (ILO) has been added
+ (Tuomo Soini).
+
+6) It is now possible to specify the MAC address of a provider
+ GATEWAY. This is useful when there are multiple providers serviced
+ by a single interface as it avoids the need for the generated
+ script to detect the MAC during start/restart.
+
+7) The copyrights in the sample configuration files have been updated.
+
+----------------------------------------------------------------------------
+ P R O B L E M S C O R R E C T E D I N 4 . 6 . 1
----------------------------------------------------------------------------
4.6.1.4
@@ -487,7 +532,7 @@
optimized away.
----------------------------------------------------------------------------
- N E W F E A T U R E S I N 4 . 6 . 0
+ N E W F E A T U R E S I N 4 . 6 . 1
----------------------------------------------------------------------------
1) Tuomo Soini has provided new macros for AMOP, MongoDB, Redis, Sieve
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/shorewall-init-4.6.2.5/shorewall-init new/shorewall-init-4.6.3.1/shorewall-init
--- old/shorewall-init-4.6.2.5/shorewall-init 2014-08-13 01:39:52.000000000 +0200
+++ new/shorewall-init-4.6.3.1/shorewall-init 2014-08-24 20:59:51.000000000 +0200
@@ -63,19 +63,18 @@
for PRODUCT in $PRODUCTS; do
setstatedir
- if [ -x ${STATEDIR}/firewall ]; then
+ if [ -x ${STATEDIR}/$PRODUCT/firewall ]; then
#
# Run in a sub-shell to avoid name collisions
#
(
- if ! ${STATEDIR}/firewall status > /dev/null 2>&1; then
- ${STATEDIR}/firewall ${OPTIONS} stop || exit 1
+ if ! ${STATEDIR}/$PRODUCT/firewall status > /dev/null 2>&1; then
+ ${STATEDIR}/$PRODUCT/firewall ${OPTIONS} stop || exit 1
else
exit 1
fi
)
else
- echo ERROR: ${STATEDIR}/firewall does not exist or is not executable!
exit 1
fi
done
@@ -96,8 +95,8 @@
for PRODUCT in $PRODUCTS; do
setstatedir
- if [ -x ${STATEDIR}/firewall ]; then
- ${STATEDIR}/firewall ${OPTIONS} clear || exit 1
+ if [ -x ${STATEDIR}/$PRODUCT/firewall ]; then
+ ${STATEDIR}/$PRODUCT/firewall ${OPTIONS} clear || exit 1
fi
done
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/shorewall-init-4.6.2.5/shorewall-init.spec new/shorewall-init-4.6.3.1/shorewall-init.spec
--- old/shorewall-init-4.6.2.5/shorewall-init.spec 2014-08-13 01:53:52.000000000 +0200
+++ new/shorewall-init-4.6.3.1/shorewall-init.spec 2014-08-27 16:54:44.000000000 +0200
@@ -1,6 +1,6 @@
%define name shorewall-init
-%define version 4.6.2
-%define release 5
+%define version 4.6.3
+%define release 1
Summary: Shorewall-init adds functionality to Shoreline Firewall (Shorewall).
Name: %{name}
@@ -125,12 +125,16 @@
%doc COPYING changelog.txt releasenotes.txt
%changelog
-* Tue Aug 12 2014 Tom Eastep tom(a)shorewall.net
-- Updated to 4.6.2-5
-* Tue Aug 05 2014 Tom Eastep tom(a)shorewall.net
-- Updated to 4.6.2-4
-* Sat Jul 26 2014 Tom Eastep tom(a)shorewall.net
-- Updated to 4.6.2-3
+* Thu Aug 21 2014 Tom Eastep tom(a)shorewall.net
+- Updated to 4.6.3-1
+* Thu Aug 14 2014 Tom Eastep tom(a)shorewall.net
+- Updated to 4.6.3-0base
+* Sun Aug 10 2014 Tom Eastep tom(a)shorewall.net
+- Updated to 4.6.3-0RC1
+* Sun Aug 03 2014 Tom Eastep tom(a)shorewall.net
+- Updated to 4.6.3-0Beta2
+* Fri Jul 25 2014 Tom Eastep tom(a)shorewall.net
+- Updated to 4.6.3-0Beta1
* Fri Jul 18 2014 Tom Eastep tom(a)shorewall.net
- Updated to 4.6.2-2
* Fri Jul 18 2014 Tom Eastep tom(a)shorewall.net
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/shorewall-init-4.6.2.5/uninstall.sh new/shorewall-init-4.6.3.1/uninstall.sh
--- old/shorewall-init-4.6.2.5/uninstall.sh 2014-08-13 01:53:52.000000000 +0200
+++ new/shorewall-init-4.6.3.1/uninstall.sh 2014-08-27 16:54:44.000000000 +0200
@@ -26,7 +26,7 @@
# You may only use this script to uninstall the version
# shown below. Simply run this script to remove Shorewall Firewall
-VERSION=4.6.2.5
+VERSION=4.6.3.1
usage() # $1 = exit status
{
++++++ shorewall-lite-4.6.2.5.tar.bz2 -> shorewall-lite-4.6.3.1.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/shorewall-lite-4.6.2.5/changelog.txt new/shorewall-lite-4.6.3.1/changelog.txt
--- old/shorewall-lite-4.6.2.5/changelog.txt 2014-08-13 01:53:52.000000000 +0200
+++ new/shorewall-lite-4.6.3.1/changelog.txt 2014-08-27 16:54:44.000000000 +0200
@@ -1,23 +1,45 @@
-Changes in 4.6.2.5
+Changes in 4.6.3.1
+
+1) Update release documents
+
+2) Correct the u32 match string in action.DNSAmp.
+
+3) Clarify REJECT handling in IP[6]TABLES rules.
+
+Changes in 4.6.3 Final
+
+1) Update release documents.
+
+2) Apply Thomas D's fix for SAVE_IPSETS on Debian.
+
+Changes in 4.6.3 RC 1
1) Update release documents.
-2) Allow a physical interface name in the INTERFACE column of the
- providers files.
+2) Minor code and documentation cleanup.
-3) Apply Louis Lagendijk's patch for shorewall-init.
+3) Defect repair from 4.6.2.5.
-Changes in 4.6.2.4
+hanges in 4.6.3 Beta 2
1) Update release documents.
-2) Allow inline matches in the body of an action.
+2) Add DNSAmp action
+
+3) Allow inline matches in action bodies (from 4.6.2.4)
-Changes in 4.6.2.3
+4) Allow physical names to be used in the INTERFACE column of the
+ providers file.
+
+Changes in 4.6.3 Beta 1
1) Update release documents.
-2) Correct handling of optimize level 8 with Perl 5.20.
+2) Describe new helper assignment in the FTP article.
+
+3) Merge defect repair from 4.6.2.3.
+
+4) Implement the 'run' command.
Changes in 4.6.2.2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/shorewall-lite-4.6.2.5/configure new/shorewall-lite-4.6.3.1/configure
--- old/shorewall-lite-4.6.2.5/configure 2014-08-13 01:53:52.000000000 +0200
+++ new/shorewall-lite-4.6.3.1/configure 2014-08-27 16:54:44.000000000 +0200
@@ -28,7 +28,7 @@
#
# Build updates this
#
-VERSION=4.6.2.5
+VERSION=4.6.3.1
case "$BASH_VERSION" in
[4-9].*)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/shorewall-lite-4.6.2.5/configure.pl new/shorewall-lite-4.6.3.1/configure.pl
--- old/shorewall-lite-4.6.2.5/configure.pl 2014-08-13 01:53:52.000000000 +0200
+++ new/shorewall-lite-4.6.3.1/configure.pl 2014-08-27 16:54:44.000000000 +0200
@@ -31,7 +31,7 @@
# Build updates this
#
use constant {
- VERSION => '4.6.2.5'
+ VERSION => '4.6.3.1'
};
my %params;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/shorewall-lite-4.6.2.5/install.sh new/shorewall-lite-4.6.3.1/install.sh
--- old/shorewall-lite-4.6.2.5/install.sh 2014-08-13 01:53:52.000000000 +0200
+++ new/shorewall-lite-4.6.3.1/install.sh 2014-08-27 16:54:44.000000000 +0200
@@ -22,7 +22,7 @@
# along with this program; if not, see <http://www.gnu.org/licenses/>.
#
-VERSION=4.6.2.5
+VERSION=4.6.3.1
usage() # $1 = exit status
{
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/shorewall-lite-4.6.2.5/manpages/shorewall-lite-vardir.5 new/shorewall-lite-4.6.3.1/manpages/shorewall-lite-vardir.5
--- old/shorewall-lite-4.6.2.5/manpages/shorewall-lite-vardir.5 2014-08-13 01:57:10.000000000 +0200
+++ new/shorewall-lite-4.6.3.1/manpages/shorewall-lite-vardir.5 2014-08-27 16:58:10.000000000 +0200
@@ -2,12 +2,12 @@
.\" Title: shorewall-lite-vardir
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.76.1 <http://docbook.sf.net/>
-.\" Date: 08/12/2014
+.\" Date: 08/27/2014
.\" Manual: Configuration Files
.\" Source: Configuration Files
.\" Language: English
.\"
-.TH "SHOREWALL\-LITE\-VAR" "5" "08/12/2014" "Configuration Files" "Configuration Files"
+.TH "SHOREWALL\-LITE\-VAR" "5" "08/27/2014" "Configuration Files" "Configuration Files"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/shorewall-lite-4.6.2.5/manpages/shorewall-lite.8 new/shorewall-lite-4.6.3.1/manpages/shorewall-lite.8
--- old/shorewall-lite-4.6.2.5/manpages/shorewall-lite.8 2014-08-13 01:57:12.000000000 +0200
+++ new/shorewall-lite-4.6.3.1/manpages/shorewall-lite.8 2014-08-27 16:58:12.000000000 +0200
@@ -2,12 +2,12 @@
.\" Title: shorewall-lite
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.76.1 <http://docbook.sf.net/>
-.\" Date: 08/12/2014
+.\" Date: 08/27/2014
.\" Manual: Administrative Commands
.\" Source: Administrative Commands
.\" Language: English
.\"
-.TH "SHOREWALL\-LITE" "8" "08/12/2014" "Administrative Commands" "Administrative Commands"
+.TH "SHOREWALL\-LITE" "8" "08/27/2014" "Administrative Commands" "Administrative Commands"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@@ -75,6 +75,8 @@
.HP \w'\fBshorewall\-lite\fR\ 'u
\fBshorewall\-lite\fR [\fBtrace\fR|\fBdebug\fR\ [\fBnolock\fR]] [\-\fIoptions\fR] \fBrestore\fR [\fIfilename\fR]
.HP \w'\fBshorewall\-lite\fR\ 'u
+\fBshorewall\-lite\fR [\fBtrace\fR|\fBdebug\fR\ [\fBnolock\fR]] [\-\fIoptions\fR] \fBrun\fR function [\fIparameter\ \&.\&.\&.\fR]
+.HP \w'\fBshorewall\-lite\fR\ 'u
\fBshorewall\-lite\fR [\fBtrace\fR|\fBdebug\fR\ [\fBnolock\fR]] [\-\fIoptions\fR] \fBsave\fR [\fIfilename\fR]
.HP \w'\fBshorewall\-lite\fR\ 'u
\fBshorewall\-lite\fR [\fBtrace\fR|\fBdebug\fR] [\-\fIoptions\fR] [\fBshow\ |\ list\ |\ ls\ \fR] [\fB\-b\fR] [\fB\-x\fR] [\fB\-l\fR] [\fB\-t\fR\ {\fBfilter\fR|\fBmangle\fR|\fBnat\fR|\fBraw|rawpost\fR}] [[\fBchain\fR]\ \fIchain\fR...]
@@ -376,6 +378,22 @@
\m[blue]\fBshorewall\&.conf\fR\m[]\&\s-2\u[1]\d\s+2(5)\&.
.RE
.PP
+\fBrun\fR
+.RS 4
+Added in Shorewall 4\&.6\&.3\&. Executes
+\fIcommand\fR
+in the context of the generated script passing the supplied
+\fIparameter\fRs\&. Normally, the
+\fIcommand\fR
+will be a function declared in
+lib\&.private\&.
+.sp
+Before executing the
+\fIcommand\fR, the script will detect the configuration, setting all SW_* variables and will run your
+init
+extension script with $COMMAND = \*(Aqrun\*(Aq\&.
+.RE
+.PP
\fBsave\fR
.RS 4
The dynamic blacklist is stored in /var/lib/shorewall\-lite/save\&. The state of the firewall is stored in /var/lib/shorewall\-lite/\fIfilename\fR
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/shorewall-lite-4.6.2.5/manpages/shorewall-lite.conf.5 new/shorewall-lite-4.6.3.1/manpages/shorewall-lite.conf.5
--- old/shorewall-lite-4.6.2.5/manpages/shorewall-lite.conf.5 2014-08-13 01:57:09.000000000 +0200
+++ new/shorewall-lite-4.6.3.1/manpages/shorewall-lite.conf.5 2014-08-27 16:58:09.000000000 +0200
@@ -2,12 +2,12 @@
.\" Title: shorewall-lite.conf
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.76.1 <http://docbook.sf.net/>
-.\" Date: 08/12/2014
+.\" Date: 08/27/2014
.\" Manual: Configuration Files
.\" Source: Configuration Files
.\" Language: English
.\"
-.TH "SHOREWALL\-LITE\&.CO" "5" "08/12/2014" "Configuration Files" "Configuration Files"
+.TH "SHOREWALL\-LITE\&.CO" "5" "08/27/2014" "Configuration Files" "Configuration Files"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/shorewall-lite-4.6.2.5/manpages/shorewall-lite.xml new/shorewall-lite-4.6.3.1/manpages/shorewall-lite.xml
--- old/shorewall-lite-4.6.2.5/manpages/shorewall-lite.xml 2014-08-13 01:57:12.000000000 +0200
+++ new/shorewall-lite-4.6.3.1/manpages/shorewall-lite.xml 2014-08-27 16:58:12.000000000 +0200
@@ -325,6 +325,21 @@
<arg>-<replaceable>options</replaceable></arg>
+ <arg choice="plain"><option>run</option></arg>
+
+ <arg choice="plain">function</arg>
+
+ <arg><replaceable>parameter ...</replaceable></arg>
+ </cmdsynopsis>
+
+ <cmdsynopsis>
+ <command>shorewall-lite</command>
+
+ <arg
+ choice="opt"><option>trace</option>|<option>debug</option><arg><option>nolock</option></arg></arg>
+
+ <arg>-<replaceable>options</replaceable></arg>
+
<arg choice="plain"><option>save</option></arg>
<arg choice="opt"><replaceable>filename</replaceable></arg>
@@ -822,6 +837,23 @@
</listitem>
</varlistentry>
+ <varlistentry>
+ <term><emphasis role="bold">run</emphasis></term>
+
+ <listitem>
+ <para>Added in Shorewall 4.6.3. Executes
+ <replaceable>command</replaceable> in the context of the generated
+ script passing the supplied <replaceable>parameter</replaceable>s.
+ Normally, the <replaceable>command</replaceable> will be a function
+ declared in <filename>lib.private</filename>.</para>
+
+ <para>Before executing the <replaceable>command</replaceable>, the
+ script will detect the configuration, setting all SW_* variables and
+ will run your <filename>init</filename> extension script with
+ $COMMAND = 'run'.</para>
+ </listitem>
+ </varlistentry>
+
<varlistentry>
<term><emphasis role="bold">save</emphasis></term>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/shorewall-lite-4.6.2.5/releasenotes.txt new/shorewall-lite-4.6.3.1/releasenotes.txt
--- old/shorewall-lite-4.6.2.5/releasenotes.txt 2014-08-13 01:53:52.000000000 +0200
+++ new/shorewall-lite-4.6.3.1/releasenotes.txt 2014-08-27 16:54:44.000000000 +0200
@@ -1,7 +1,7 @@
----------------------------------------------------------------------------
- S H O R E W A L L 4 . 6 . 2 . 5
+ S H O R E W A L L 4 . 6 . 3 . 1
------------------------------------
- A u g u s t 1 4 , 2 0 1 4
+ A u g u s t 2 6 , 2 0 1 4
----------------------------------------------------------------------------
I. PROBLEMS CORRECTED IN THIS RELEASE
@@ -14,80 +14,28 @@
I. P R O B L E M S C O R R E C T E D I N T H I S R E L E A S E
----------------------------------------------------------------------------
-4.6.2.5
+4.6.3
-1) Previously, when an interface specified the 'physical=' option and
- the physical interface name was specified in the INTERFACES column
- of the providers file, compilation would fail with diagnostics
- similar to the following:
+1) The DNSAmp action released in 4.6.3 matched more packets than it
+ should have. That has now been corrected.
- Use of uninitialized value $physical in pattern match
- (m//) at /usr/lib/perl5/vendor_perl/5.18.1/
- Shorewall/Providers.pm line 463, <$currentfile> line 2.
- ERROR: A provider interface must have at least one
- associated zone /opt/etc/shorewall/providers (line 2)
+2) The handling of REJECT in IP[6]TABLES rules has been clarified in
+ the shorewall-rules(5) and shorewall6-rules(5) manpages.
-2) Shorewall-init now works correctly on systems with systemd.
- By Louis Lagendijk.
+3) The following misleading error message has now been corrected:
-4.6.2.4
+ ERROR: The xxx TARGET is now allowed in the filter table
-1) Previously, inline matches were incorrectly disallowed in action
- files. These matches are now allowed.
+ The message now reads:
-4.6.2.3
-
-1) Previously, the compiler would fail with a Perl diagnostic if:
-
- - Optimize Level 8 was enabled.
- - Perl 5.20 was being used. This is the current Perl version on
- Arch Linux.
+ ERROR: The xxx TARGET is not allowed in the filter table
- The diagnostic was:
+4.6.3
- Can't use string ("nat") as a HASH ref while "strict refs" in use
- at /usr/share/shorewall/Shorewall/Chains.pm line 3486.
+1) This release contains defect repair up through release 4.6.2.5.
-4.6.2.2
-
-1) The compiler now correctly detects the IPv6 "Header Match"
- capability when LOAD_MODULES_ONLY=No.
-
-2) The compiler now correctly detects the IPv6 "Ipset Match"
- capability on systems running a 3.14 or later kernel.
-
-3) The compiler now correctly detects "Arptables JF" capability when
- LOAD_MODULES_ONLY=No.
-
-3) The tcfilter manpages previously failed to mention that
- BASIC_FILTERS=Yes is required to use ipsets in the tcfilters files.
-
-4.6.2.1
-
-1) Two issues with tcrules processing have been corrected:
-
- - SAVE and RESTORE generated fatal compilation errors.
- - '|' and '&' were ignored.
-
-4.6.2
-
-1) The DSCP match in the mangle and tcrules files didn't work with
- service class names such as EF, BE, CS1, ... (Thibaut Chèze)
-
-2) The SAVE and RESTORE actions were disallowed in the OUTPUT chain in
- tcrules and mangle; this was a regression from 4.5.21.
-
-3) Additional ports required by Asus, Supermicro and Dell have been
- added to the IPMI macro (Tuomo Soini).
-
-4) Some issues regarding install under Cygwin64 have been addressed.
-
- - configure.pl did not understand CYGWIN returned from `uname`
- - Shorewall-core install.sh did not understand CYGWIN returned from
- `uname`.
- - The Shorewall and Shorewall6 installers tried to run the command
- 'mkdir -p //etc/shorewall[6]' which is broken in the current
- Cygwin64.
+2) The SAVE_IPSETS option in the Debian version of Shorewall-init now
+ works correctly. Thomas D.
----------------------------------------------------------------------------
I I. K N O W N P R O B L E M S R E M A I N I N G
@@ -100,45 +48,19 @@
I I I. N E W F E A T U R E S I N T H I S R E L E A S E
----------------------------------------------------------------------------
-1) The 'status' command now allows a -i option which causes the state
- of all optional and provider interfaces to be displayed.
-
- Example:
-
- root@gateway:/etc/shorewall# shorewall status -i
- Shorewall-4.6.1 Status at gateway - Wed Jun 18 14:27:19 PDT 2014
-
- Shorewall is running
- State:Started (Wed Jun 18 09:50:01 PDT 2014) from /etc/shorewall/
- (/var/lib/shorewall/firewall compiled by Shorewall version 4.6.1)
-
- Interface eth0 is Enabled
- Interface eth1 is Enabled
- Interface lo is Enabled
-
-2) A 'shorewall show blacklists' command has been
- implemented. The abbreviation 'bl' may be used in place of
- 'blacklists'.
-
- The command displays the output of the 'dynamic' chain together
- with the chains created by entries in the blrules file.
-
-3) A TIME column has been added to the mangle file. It has the same
- use in that file as the corresponding column in the rules file.
-
-4) A stateful port knocking example has been added to the Events
- article (http://www.shorewall.net/Events.html) This example allows
- a sequence of knocking ports to be defined (Gerhard Weisinger).
-
-5) A macro supporting HP's Integrated Lights Out (ILO) has been added
- (Tuomo Soini).
-
-6) It is now possible to specify the MAC address of a provider
- GATEWAY. This is useful when there are multiple providers serviced
- by a single interface as it avoids the need for the generated
- script to detect the MAC during start/restart.
-
-7) The copyrights in the sample configuration files have been updated.
+1) A new 'run' command has been implemented. This command allows you
+ to run an arbitrary command in the context of the generated
+ script.
+
+ shorewall[6][-lite] run <command> [ <parameter> ... ]
+
+ Normally, <command> will be a function declared in lib.private.
+
+2) A DNSAmp action has been added. This action matches recursive UDP
+ DNS queries. The default disposition is DROP which can be
+ overridden by the single action parameter (e.g, 'DNSAmp(REJECT)'
+ will reject these queries). Recursive DNS queries are the basis for
+ 'DNS Amplification' attacks; hence the action name.
----------------------------------------------------------------------------
I V. M I G R A T I O N I S S U E S
@@ -412,7 +334,130 @@
----------------------------------------------------------------------------
V. N O T E S F R O M O T H E R 4 . 6 R E L E A S E S
----------------------------------------------------------------------------
- P R O B L E M S C O R R E C T E D I N 4 . 6 . 0
+ P R O B L E M S C O R R E C T E D I N 4 . 6 . 2
+----------------------------------------------------------------------------
+
+4.6.2.5
+
+1) Previously, when an interface specified the 'physical=' option and
+ the physical interface name was specified in the INTERFACES column
+ of the providers file, compilation would fail with diagnostics
+ similar to the following:
+
+ Use of uninitialized value $physical in pattern match
+ (m//) at /usr/lib/perl5/vendor_perl/5.18.1/
+ Shorewall/Providers.pm line 463, <$currentfile> line 2.
+ ERROR: A provider interface must have at least one
+ associated zone /opt/etc/shorewall/providers (line 2)
+
+2) Shorewall-init now works correctly on systems with systemd.
+ By Louis Lagendijk.
+
+4.6.2.4
+
+1) Previously, inline matches were incorrectly disallowed in action
+ files. These matches are now allowed.
+
+4.6.2.3
+
+1) Previously, the compiler would fail with a Perl diagnostic if:
+
+ - Optimize Level 8 was enabled.
+ - Perl 5.20 was being used. This is the current Perl version on
+ Arch Linux.
+
+ The diagnostic was:
+
+ Can't use string ("nat") as a HASH ref while "strict refs" in use
+ at /usr/share/shorewall/Shorewall/Chains.pm line 3486.
+
+4.6.2.2
+
+1) The compiler now correctly detects the IPv6 "Header Match"
+ capability when LOAD_MODULES_ONLY=No.
+
+2) The compiler now correctly detects the IPv6 "Ipset Match"
+ capability on systems running a 3.14 or later kernel.
+
+3) The compiler now correctly detects "Arptables JF" capability when
+ LOAD_MODULES_ONLY=No.
+
+3) The tcfilter manpages previously failed to mention that
+ BASIC_FILTERS=Yes is required to use ipsets in the tcfilters files.
+
+4.6.2.1
+
+1) Two issues with tcrules processing have been corrected:
+
+ - SAVE and RESTORE generated fatal compilation errors.
+ - '|' and '&' were ignored.
+
+4.6.2
+
+1) The DSCP match in the mangle and tcrules files didn't work with
+ service class names such as EF, BE, CS1, ... (Thibaut Chèze)
+
+2) The SAVE and RESTORE actions were disallowed in the OUTPUT chain in
+ tcrules and mangle; this was a regression from 4.5.21.
+
+3) Additional ports required by Asus, Supermicro and Dell have been
+ added to the IPMI macro (Tuomo Soini).
+
+4) Some issues regarding install under Cygwin64 have been addressed.
+
+ - configure.pl did not understand CYGWIN returned from `uname`
+ - Shorewall-core install.sh did not understand CYGWIN returned from
+ `uname`.
+ - The Shorewall and Shorewall6 installers tried to run the command
+ 'mkdir -p //etc/shorewall[6]' which is broken in the current
+ Cygwin64.
+
+----------------------------------------------------------------------------
+ N E W F E A T U R E S I N 4 . 6 . 2
+----------------------------------------------------------------------------
+
+1) The 'status' command now allows a -i option which causes the state
+ of all optional and provider interfaces to be displayed.
+
+ Example:
+
+ root@gateway:/etc/shorewall# shorewall status -i
+ Shorewall-4.6.1 Status at gateway - Wed Jun 18 14:27:19 PDT 2014
+
+ Shorewall is running
+ State:Started (Wed Jun 18 09:50:01 PDT 2014) from /etc/shorewall/
+ (/var/lib/shorewall/firewall compiled by Shorewall version 4.6.1)
+
+ Interface eth0 is Enabled
+ Interface eth1 is Enabled
+ Interface lo is Enabled
+
+2) A 'shorewall show blacklists' command has been
+ implemented. The abbreviation 'bl' may be used in place of
+ 'blacklists'.
+
+ The command displays the output of the 'dynamic' chain together
+ with the chains created by entries in the blrules file.
+
+3) A TIME column has been added to the mangle file. It has the same
+ use in that file as the corresponding column in the rules file.
+
+4) A stateful port knocking example has been added to the Events
+ article (http://www.shorewall.net/Events.html) This example allows
+ a sequence of knocking ports to be defined (Gerhard Weisinger).
+
+5) A macro supporting HP's Integrated Lights Out (ILO) has been added
+ (Tuomo Soini).
+
+6) It is now possible to specify the MAC address of a provider
+ GATEWAY. This is useful when there are multiple providers serviced
+ by a single interface as it avoids the need for the generated
+ script to detect the MAC during start/restart.
+
+7) The copyrights in the sample configuration files have been updated.
+
+----------------------------------------------------------------------------
+ P R O B L E M S C O R R E C T E D I N 4 . 6 . 1
----------------------------------------------------------------------------
4.6.1.4
@@ -487,7 +532,7 @@
optimized away.
----------------------------------------------------------------------------
- N E W F E A T U R E S I N 4 . 6 . 0
+ N E W F E A T U R E S I N 4 . 6 . 1
----------------------------------------------------------------------------
1) Tuomo Soini has provided new macros for AMOP, MongoDB, Redis, Sieve
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/shorewall-lite-4.6.2.5/shorewall-lite.spec new/shorewall-lite-4.6.3.1/shorewall-lite.spec
--- old/shorewall-lite-4.6.2.5/shorewall-lite.spec 2014-08-13 01:53:52.000000000 +0200
+++ new/shorewall-lite-4.6.3.1/shorewall-lite.spec 2014-08-27 16:54:44.000000000 +0200
@@ -1,6 +1,6 @@
%define name shorewall-lite
-%define version 4.6.2
-%define release 5
+%define version 4.6.3
+%define release 1
%define initdir /etc/init.d
Summary: Shoreline Firewall Lite is an iptables-based firewall for Linux systems.
@@ -105,12 +105,16 @@
%doc COPYING changelog.txt releasenotes.txt
%changelog
-* Tue Aug 12 2014 Tom Eastep tom(a)shorewall.net
-- Updated to 4.6.2-5
-* Tue Aug 05 2014 Tom Eastep tom(a)shorewall.net
-- Updated to 4.6.2-4
-* Sat Jul 26 2014 Tom Eastep tom(a)shorewall.net
-- Updated to 4.6.2-3
+* Thu Aug 21 2014 Tom Eastep tom(a)shorewall.net
+- Updated to 4.6.3-1
+* Thu Aug 14 2014 Tom Eastep tom(a)shorewall.net
+- Updated to 4.6.3-0base
+* Sun Aug 10 2014 Tom Eastep tom(a)shorewall.net
+- Updated to 4.6.3-0RC1
+* Sun Aug 03 2014 Tom Eastep tom(a)shorewall.net
+- Updated to 4.6.3-0Beta2
+* Fri Jul 25 2014 Tom Eastep tom(a)shorewall.net
+- Updated to 4.6.3-0Beta1
* Fri Jul 18 2014 Tom Eastep tom(a)shorewall.net
- Updated to 4.6.2-2
* Fri Jul 18 2014 Tom Eastep tom(a)shorewall.net
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/shorewall-lite-4.6.2.5/uninstall.sh new/shorewall-lite-4.6.3.1/uninstall.sh
--- old/shorewall-lite-4.6.2.5/uninstall.sh 2014-08-13 01:53:52.000000000 +0200
+++ new/shorewall-lite-4.6.3.1/uninstall.sh 2014-08-27 16:54:44.000000000 +0200
@@ -26,7 +26,7 @@
# You may only use this script to uninstall the version
# shown below. Simply run this script to remove Shorewall Firewall
-VERSION=4.6.2.5
+VERSION=4.6.3.1
usage() # $1 = exit status
{
++++++ shorewall-4.6.2.5.tar.bz2 -> shorewall6-4.6.3.1.tar.bz2 ++++++
++++ 125451 lines of diff (skipped)
++++++ shorewall-lite-4.6.2.5.tar.bz2 -> shorewall6-lite-4.6.3.1.tar.bz2 ++++++
++++ 7782 lines of diff (skipped)
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package sbcl for openSUSE:Factory checked in at 2014-09-03 18:22:36
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/sbcl (Old)
and /work/SRC/openSUSE:Factory/.sbcl.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "sbcl"
Changes:
--------
--- /work/SRC/openSUSE:Factory/sbcl/sbcl.changes 2014-08-13 17:08:20.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.sbcl.new/sbcl.changes 2014-09-03 21:08:10.000000000 +0200
@@ -1,0 +2,29 @@
+Sun Aug 31 18:24:15 UTC 2014 - toganm(a)opensuse.org
+
+- Update to version 1.2.3
+
+ * Enhancement:
+ + DOCUMENTATION works on instances of FUNCALLABLE-STANDARD-CLASS
+ + ASSERT reports arguments of calls to lexical functions in
+ additional to global functions.
+ + ASDF updated to 3.1.3
+ + UIOP can be loaded without ASDF.
+ * Bug Fix:
+ + Some methods on CHANGE-CLASS did not finalize the new class
+ before accessing its class-precedence list.
+ + CHANGE-CLASS no longer fails on unbound slots in the source
+ object.
+ + CHANGE-CLASS signals an appropriate error when the destination
+ class is a FORWARD-REFERENCED-CLASS.
+ + CHANGE-CLASS no longer signals bogus TYPE-ERRORs for slots for
+ which initargs have been supplied.
+ + saving cores on ARM was broken since the introduction of GENCGC.
+ (lp#1349795)
+ + macroexpanding a backquoted expression involving ",." outside
+ of the compiler failed. (lp#1354623)
+
+- Backported from git for arm builds
+ 0002-Fix-array-bound-checking-with-negative-indexes-on-AR.patch
+
+
+-------------------------------------------------------------------
Old:
----
sbcl-1.2.2-source.tar.bz2
New:
----
0002-Fix-array-bound-checking-with-negative-indexes-on-AR.patch
sbcl-1.2.3-source.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ sbcl.spec ++++++
--- /var/tmp/diff_new_pack.qh4RSZ/_old 2014-09-03 21:08:12.000000000 +0200
+++ /var/tmp/diff_new_pack.qh4RSZ/_new 2014-09-03 21:08:12.000000000 +0200
@@ -17,7 +17,7 @@
Name: sbcl
-Version: 1.2.2
+Version: 1.2.3
Release: 0
Summary: Steel Bank Common Lisp
License: SUSE-Public-Domain and BSD-3-Clause
@@ -65,6 +65,8 @@
Patch6: sbcl-cast.patch
# PATCH-FIX-OPENSUSE disable localport bsd sockets tests broken in kvm builds for some toganm(a)opensuse.org
Patch7: disable-localport-bsd-sockets-test.patch
+#PATCH-FIX-UPSTREAM backported from git
+Patch8: 0002-Fix-array-bound-checking-with-negative-indexes-on-AR.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
@@ -88,6 +90,10 @@
%patch7 -p1 -b sockets
%endif
+%ifarch %arm
+%patch8 -p1 -b arm
+%endif
+
cp %{S:1} .
cp %{S:2} .
cp %{S:3} .
++++++ 0002-Fix-array-bound-checking-with-negative-indexes-on-AR.patch ++++++
>From 5e7d58ea89324d9c9d852fba2fb168b58b215f1a Mon Sep 17 00:00:00 2001
From: Stas Boukarev <stassats(a)gmail.com>
Date: Sat, 30 Aug 2014 20:51:10 +0400
Subject: [PATCH 2/6] Fix array bound checking with negative indexes on ARM.
Need to use an unsigned comparison, not a signed one, to weed out the
negative numbers.
Patch by Wendall Marvel.
Signed-off-by: Togan Muftuoglu <toganm(a)opensuse.org>
---
src/compiler/arm/array.lisp | 2 +-
tests/vector.pure.lisp | 10 ++++++++++
2 files changed, 11 insertions(+), 1 deletion(-)
diff --git a/src/compiler/arm/array.lisp b/src/compiler/arm/array.lisp
index 6d652b4..7fc6622 100644
--- a/src/compiler/arm/array.lisp
+++ b/src/compiler/arm/array.lisp
@@ -73,7 +73,7 @@
(:generator 5
(let ((error (generate-error-code vop 'invalid-array-index-error array bound index)))
(inst cmp index bound)
- (inst b :ge error)
+ (inst b :hs error)
(move result index))))
;;;; Accessors/Setters
diff --git a/tests/vector.pure.lisp b/tests/vector.pure.lisp
index 30c349e..004a3b1 100644
--- a/tests/vector.pure.lisp
+++ b/tests/vector.pure.lisp
@@ -54,3 +54,13 @@
(compile nil `(lambda (a)
(declare ((vector undefined-type) a))
(setf (svref a 0) 10))))
+
+(with-test (:name :svref-negative-index)
+ (let ((vector #(1)))
+ (flet ((test (index)
+ (funcall (compile nil `(lambda (vector index)
+ (svref vector index)))
+ vector index)))
+ (assert-error (test -1))
+ (assert (= (test 0) 1))
+ (assert-error (test 1)))))
--
2.1.0
++++++ sbcl-1.2.2-source.tar.bz2 -> sbcl-1.2.3-source.tar.bz2 ++++++
++++ 31263 lines of diff (skipped)
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package sawfish-pager for openSUSE:Factory checked in at 2014-09-03 18:23:09
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/sawfish-pager (Old)
and /work/SRC/openSUSE:Factory/.sawfish-pager.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "sawfish-pager"
Changes:
--------
--- /work/SRC/openSUSE:Factory/sawfish-pager/sawfish-pager.changes 2013-09-29 19:28:41.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.sawfish-pager.new/sawfish-pager.changes 2014-09-03 21:08:00.000000000 +0200
@@ -1,0 +2,14 @@
+Tue Sep 2 07:23:03 UTC 2014 - toganm(a)opensuse.org
+
+- Updated to version 0.90.4
+ * Accept clicks on workspaces borders
+- Removed the following from BuildRequires
+ * obsoleted sawfish-lisp
+ * autoconf automake libtool
+
+- Remove 0001-Fix-Makefile.patch and replace it with
+ Makefile-Overrides.patch
+
+
+
+-------------------------------------------------------------------
Old:
----
0001-Fix-Makefile.patch
sawfish-pager-0.90.3.tar.xz
New:
----
Makefile-Overrides.patch
sawfish-pager_0.90.4.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ sawfish-pager.spec ++++++
--- /var/tmp/diff_new_pack.MxzVWG/_old 2014-09-03 21:08:02.000000000 +0200
+++ /var/tmp/diff_new_pack.MxzVWG/_new 2014-09-03 21:08:02.000000000 +0200
@@ -17,7 +17,7 @@
Name: sawfish-pager
-Version: 0.90.3
+Version: 0.90.4
Release: 0
Summary: Pager for Sawfish window manager
License: GPL-2.0
@@ -26,23 +26,20 @@
%else
Group: System/GUI/Other
%endif
-Source0: http://download.tuxfamily.org/sawfishpager/%name-%version.tar.xz
+Source0: http://download.tuxfamily.org/sawfishpager/%{name}_%{version}.tar.xz
# PATCH-FIX-UPSTREAM sawfish-pager-makefilefix --toganm(a)opensuse.org
-Patch0: 0001-Fix-Makefile.patch
+Patch0: Makefile-Overrides.patch
Url: http://sawfish.wikia.com/
BuildRoot: %{_tmppath}/%{name}-%{version}-build
-BuildRequires: autoconf
-BuildRequires: automake
BuildRequires: bc
BuildRequires: gmp-devel
-BuildRequires: libtool
BuildRequires: pkg-config
BuildRequires: pkgconfig(gdk-pixbuf-2.0) >= 2.12.0
BuildRequires: pkgconfig(gtk+-2.0) >= 2.12.0
BuildRequires: pkgconfig(librep)
BuildRequires: pkgconfig(rep-gtk)
BuildRequires: pkgconfig(sawfish) >= 1.9.1
-BuildRequires: sawfish-lisp >= 1.9.1
+#BuildRequires: sawfish-lisp >= 1.9.1
%if 0%{?suse_version} == 1210
BuildRequires: xz
@@ -65,11 +62,11 @@
Check README from this package documentation how to activate.
%prep
-%setup -q
+%setup -q -n %{name}_%{version}
%patch0 -p1
%build
-autoreconf -fi
+#autoreconf -fi
%configure
make %{?_smp_mflags}
++++++ Makefile-Overrides.patch ++++++
---
Makefile.in | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
--- a/Makefile.in
+++ b/Makefile.in
@@ -23,10 +23,12 @@
# along with sawfish-pager; see the file COPYING. If not, write to
# the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
-override CFLAGS += @GTK_CFLAGS@ @IMAGE_LOADER_CFLAGS@ @SAWFISH_CFLAGS@ -DG_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED -DGTK_DISABLE_DEPRECATED
+override CFLAGS += @GTK_CFLAGS@ @IMAGE_LOADER_CFLAGS@ @SAWFISH_CFLAGS@
LDFLAGS = -Wl,-rpath @SAWFISH_CLIENT_LIB_DIR@
LDLIBS = @SAWFISH_CLIENT_LIB_DIR@/client.so @GTK_LIBS@ @SAWFISH_LIBS@ @IMAGE_LOADER_LIBS@
+
+
all: sawfishpager pager.jlc
%.jlc: %.jl
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0