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
February 2013
- 1 participants
- 1989 discussions
Hello community,
here is the log from the commit of package systemd for openSUSE:12.3 checked in at 2013-02-22 17:23:19
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:12.3/systemd (Old)
and /work/SRC/openSUSE:12.3/.systemd.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "systemd", Maintainer is ""
Changes:
--------
--- /work/SRC/openSUSE:12.3/systemd/systemd-mini.changes 2013-02-20 17:46:39.000000000 +0100
+++ /work/SRC/openSUSE:12.3/.systemd.new/systemd-mini.changes 2013-02-22 17:23:27.000000000 +0100
@@ -1,0 +2,6 @@
+Thu Feb 21 14:45:12 UTC 2013 - fcrozat(a)suse.com
+
+- Add rbind-mount.patch: handle rbind mount points correctly
+ (bnc#804575).
+
+-------------------------------------------------------------------
systemd.changes: same change
New:
----
rbind-mount.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ systemd-mini.spec ++++++
--- /var/tmp/diff_new_pack.b32Zeb/_old 2013-02-22 17:23:29.000000000 +0100
+++ /var/tmp/diff_new_pack.b32Zeb/_new 2013-02-22 17:23:29.000000000 +0100
@@ -280,6 +280,8 @@
Patch133: support-hybrid-suspend.patch
# PATCH-FIX-OPENSUSE forward-to-pmutils.patch fcrozat(a)suse.com bnc#790157 -- forward to pm-utils
Patch134: forward-to-pmutils.patch
+# PATCH-FIX-UPSTREAM rbind-mount.patch fcrozat(a)suse.com bnc#804575 -- Handle rbind mount point correctly
+Patch135: rbind-mount.patch
# udev patches
# PATCH-FIX-OPENSUSE 1001-Reinstate-TIMEOUT-handling.patch
@@ -615,6 +617,7 @@
%patch132 -p1
%patch133 -p1
%patch134 -p1
+%patch135 -p1
%build
autoreconf -fiv
systemd.spec: same change
++++++ rbind-mount.patch ++++++
>From df77b11852d6b3495848c4123e7cbd9f099910f9 Mon Sep 17 00:00:00 2001
From: Frederic Crozat <fcrozat(a)suse.com>
Date: Thu, 21 Feb 2013 15:40:52 +0100
Subject: [PATCH] detect rbind as bind mount
Correctly detect rbind mount option as bind mount.
Fixes https://bugzilla.novell.com/show_bug.cgi?id=804575.
---
src/core/mount.c | 6 ++++++
src/fstab-generator/fstab-generator.c | 4 +++-
2 files changed, 9 insertions(+), 1 deletion(-)
diff --git a/src/core/mount.c b/src/core/mount.c
index e3d298e..419cf27 100644
--- a/src/core/mount.c
+++ b/src/core/mount.c
@@ -329,6 +329,12 @@ static bool mount_is_bind(MountParameters *p) {
if (p->fstype && streq(p->fstype, "bind"))
return true;
+ if (mount_test_option(p->options, "rbind"))
+ return true;
+
+ if (p->fstype && streq(p->fstype, "rbind"))
+ return true;
+
return false;
}
diff --git a/src/fstab-generator/fstab-generator.c b/src/fstab-generator/fstab-generator.c
index bfedded..9db4123 100644
--- a/src/fstab-generator/fstab-generator.c
+++ b/src/fstab-generator/fstab-generator.c
@@ -178,7 +178,9 @@ static bool mount_is_bind(struct mntent *me) {
return
hasmntopt(me, "bind") ||
- streq(me->mnt_type, "bind");
+ streq(me->mnt_type, "bind") ||
+ hasmntopt(me, "rbind") ||
+ streq(me->mnt_type, "rbind");
}
static bool mount_is_network(struct mntent *me) {
--
1.8.1.1
--
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 2013-02-22 17:23:15
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/systemd (Old)
and /work/SRC/openSUSE:Factory/.systemd.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "systemd", Maintainer is ""
Changes:
--------
--- /work/SRC/openSUSE:Factory/systemd/systemd-mini.changes 2013-02-20 17:46:35.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.systemd.new/systemd-mini.changes 2013-02-22 17:23:19.000000000 +0100
@@ -1,0 +2,6 @@
+Thu Feb 21 14:45:12 UTC 2013 - fcrozat(a)suse.com
+
+- Add rbind-mount.patch: handle rbind mount points correctly
+ (bnc#804575).
+
+-------------------------------------------------------------------
systemd.changes: same change
New:
----
rbind-mount.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ systemd-mini.spec ++++++
--- /var/tmp/diff_new_pack.M1bPL5/_old 2013-02-22 17:23:26.000000000 +0100
+++ /var/tmp/diff_new_pack.M1bPL5/_new 2013-02-22 17:23:26.000000000 +0100
@@ -280,6 +280,8 @@
Patch133: support-hybrid-suspend.patch
# PATCH-FIX-OPENSUSE forward-to-pmutils.patch fcrozat(a)suse.com bnc#790157 -- forward to pm-utils
Patch134: forward-to-pmutils.patch
+# PATCH-FIX-UPSTREAM rbind-mount.patch fcrozat(a)suse.com bnc#804575 -- Handle rbind mount point correctly
+Patch135: rbind-mount.patch
# udev patches
# PATCH-FIX-OPENSUSE 1001-Reinstate-TIMEOUT-handling.patch
@@ -615,6 +617,7 @@
%patch132 -p1
%patch133 -p1
%patch134 -p1
+%patch135 -p1
%build
autoreconf -fiv
systemd.spec: same change
++++++ rbind-mount.patch ++++++
>From df77b11852d6b3495848c4123e7cbd9f099910f9 Mon Sep 17 00:00:00 2001
From: Frederic Crozat <fcrozat(a)suse.com>
Date: Thu, 21 Feb 2013 15:40:52 +0100
Subject: [PATCH] detect rbind as bind mount
Correctly detect rbind mount option as bind mount.
Fixes https://bugzilla.novell.com/show_bug.cgi?id=804575.
---
src/core/mount.c | 6 ++++++
src/fstab-generator/fstab-generator.c | 4 +++-
2 files changed, 9 insertions(+), 1 deletion(-)
diff --git a/src/core/mount.c b/src/core/mount.c
index e3d298e..419cf27 100644
--- a/src/core/mount.c
+++ b/src/core/mount.c
@@ -329,6 +329,12 @@ static bool mount_is_bind(MountParameters *p) {
if (p->fstype && streq(p->fstype, "bind"))
return true;
+ if (mount_test_option(p->options, "rbind"))
+ return true;
+
+ if (p->fstype && streq(p->fstype, "rbind"))
+ return true;
+
return false;
}
diff --git a/src/fstab-generator/fstab-generator.c b/src/fstab-generator/fstab-generator.c
index bfedded..9db4123 100644
--- a/src/fstab-generator/fstab-generator.c
+++ b/src/fstab-generator/fstab-generator.c
@@ -178,7 +178,9 @@ static bool mount_is_bind(struct mntent *me) {
return
hasmntopt(me, "bind") ||
- streq(me->mnt_type, "bind");
+ streq(me->mnt_type, "bind") ||
+ hasmntopt(me, "rbind") ||
+ streq(me->mnt_type, "rbind");
}
static bool mount_is_network(struct mntent *me) {
--
1.8.1.1
--
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 sysconfig for openSUSE:12.3 checked in at 2013-02-22 17:03:16
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:12.3/sysconfig (Old)
and /work/SRC/openSUSE:12.3/.sysconfig.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "sysconfig", Maintainer is "mt(a)suse.com"
Changes:
--------
--- /work/SRC/openSUSE:12.3/sysconfig/sysconfig.changes 2013-01-31 14:54:58.000000000 +0100
+++ /work/SRC/openSUSE:12.3/.sysconfig.new/sysconfig.changes 2013-02-22 17:03:17.000000000 +0100
@@ -1,0 +2,10 @@
+Thu Feb 22 08:20:23 UTC 2013 - mt(a)suse.com
+
+- version 0.80.5
+- Fixed to use a guarded migration hook from openSUSE < 12.3, that
+ disabes the (always enabled before) NetworkManager.service on
+ NETWORKMANAGER=no and mask the network.service (provided by the
+ /etc/init.d/network script) on NETWORKMANAGER=yes until NM has
+ been installed and enabled as network.service (bnc#803058).
+
+-------------------------------------------------------------------
Old:
----
sysconfig-0.80.4.tar.bz2
New:
----
sysconfig-0.80.5.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ sysconfig.spec ++++++
--- /var/tmp/diff_new_pack.QrQN5N/_old 2013-02-22 17:03:18.000000000 +0100
+++ /var/tmp/diff_new_pack.QrQN5N/_new 2013-02-22 17:03:18.000000000 +0100
@@ -17,7 +17,7 @@
Name: sysconfig
-Version: 0.80.4
+Version: 0.80.5
Release: 0
Summary: The sysconfig scheme and traditional network scripts
License: GPL-2.0+
@@ -35,6 +35,7 @@
BuildRequires: libtool
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%if 0%{?suse_version} >= 1230
+BuildRequires: pkgconfig(systemd)
%define udevdir /usr/lib/udev
%else
%define udevdir /lib/udev
@@ -123,6 +124,15 @@
if [ ! -f etc/sysconfig/network/scripts/move_shm_sysconfig.sh ] ; then
touch etc/sysconfig/network/__move_shm_sysconfig__
fi
+ # trigger update from < 0.80.x only (-> openSUSE 12.3),
+ # (guard for variable added to network/config later...)
+ if [ -x /usr/sbin/NetworkManager ] && grep -qs "^NETWORKMANAGER=" \
+ var/adm/fillup-templates/sysconfig.config-network ; then
+ grep -s "^NETWORKMANAGER=" etc/sysconfig/network/config \
+ > /dev/.sysconfig/network/migrate_nm_variable
+ elif [ -f /dev/.sysconfig/network/migrate_nm_variable ] ; then
+ rm -f /dev/.sysconfig/network/migrate_nm_variable
+ fi
fi
%post
@@ -170,12 +180,31 @@
DHCLIENT_SCRIPT_EXE
umask $_umask
done
-# erroneous move from network/dhcp to network/config while 11.1 beta
-sysconfig_remove_and_set network/config WRITE_HOSTNAME_TO_HOSTS
-# remove NETWORKMANAGER variable; 12.3 is using network.service alias
-sysconfig_remove_and_set network/config NETWORKMANAGER
# be a little bit paranoid and set the correct mode even we set umask
chmod 0600 etc/sysconfig/network/ifcfg-*
+# bnc#803058: migrate from NETWORKMANAGER=yes/no variable to
+# network.service alias link masking rcnetwork.
+if [ -f /dev/.sysconfig/network/migrate_nm_variable -a -x /usr/bin/systemctl ] ; then
+ . /dev/.sysconfig/network/migrate_nm_variable
+ case $NETWORKMANAGER in
+ no)
+ # NetworkManager.service were always started before; stop
+ # and disable it, so /etc/init.d/network isn't masked...
+ /usr/bin/systemctl stop NetworkManager.service || :
+ /usr/bin/systemctl --force disable NetworkManager.service || :
+ rm -f /dev/.sysconfig/network/migrate_nm_variable
+ ;;
+ yes)
+ # Keep the /dev/.sysconfig/network/migrate_nm_variable file,
+ # as hint for migration in NetworkManager post-install ...
+ # Mask /etc/init.d/network service until NM update is done.
+ /usr/bin/systemctl --force mask network.service || :
+ ;;
+ esac
+else
+ # cleanup obsolete NETWORKMANAGER variable
+ sysconfig_remove_and_set network/config NETWORKMANAGER
+fi
%postun
%{insserv_cleanup}
++++++ sysconfig-0.80.4.tar.bz2 -> sysconfig-0.80.5.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sysconfig-0.80.4/ChangeLog new/sysconfig-0.80.5/ChangeLog
--- old/sysconfig-0.80.4/ChangeLog 2013-01-31 11:49:43.000000000 +0100
+++ new/sysconfig-0.80.5/ChangeLog 2013-02-22 09:28:07.000000000 +0100
@@ -1,4 +1,22 @@
-commit d3a88730e9a2675b1c6119a13adb951069fc2508 (HEAD, origin/master, master)
+commit 4b058026fc4ab0709d5fad75200bdc3a638a9499 (HEAD, opensuse-12.3-wip-4, opensuse-12.3, master)
+Author: Marius Tomaschewski <mt(a)suse.com>
+Date: Fri Feb 22 09:20:23 2013 +0100
+
+ version 0.80.5, updated changes file
+
+commit 104ea8d216807366526aecbe1b28e2b8bc6ed196
+Author: Marius Tomaschewski <mt(a)suse.com>
+Date: Fri Feb 22 09:17:33 2013 +0100
+
+ NETWORKMANAGER variable migration to openSUSE-12.3
+
+ Fixed to use a guarded migration hook from openSUSE < 12.3, that
+ disabes the (always enabled before) NetworkManager.service on
+ NETWORKMANAGER=no and mask the network.service (provided by the
+ /etc/init.d/network script) on NETWORKMANAGER=yes until NM has
+ been installed and enabled as network.service (bnc#803058).
+
+commit d3a88730e9a2675b1c6119a13adb951069fc2508 (origin/master, master-12)
Author: Marius Tomaschewski <mt(a)suse.com>
Date: Thu Jan 31 11:47:43 2013 +0100
@@ -114,7 +132,7 @@
The dhcp6_client state variable were set to dhclient while
the config variable DHCLIENT6_BIN is using dhclient6 here.
-commit 5e85eaf907dc16ff75a317591e7ff0172d4b8e44 (tag: version-0.80.0, origin/opensuse-12.3-wip, opensuse-12.3-wip)
+commit 5e85eaf907dc16ff75a317591e7ff0172d4b8e44 (tag: version-0.80.0, origin/opensuse-12.3-wip)
Author: Marius Tomaschewski <mt(a)suse.com>
Date: Tue Jan 15 12:26:53 2013 +0100
@@ -186,7 +204,7 @@
Started new series, version 0.80.0
-commit 69b81a1a3fab45048f39b66eedf98512d38e60cc (opensuse-12.3)
+commit 69b81a1a3fab45048f39b66eedf98512d38e60cc
Author: Marius Tomaschewski <mt(a)suse.com>
Date: Fri Jan 11 23:44:09 2013 +0100
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sysconfig-0.80.4/VERSION new/sysconfig-0.80.5/VERSION
--- old/sysconfig-0.80.4/VERSION 2013-01-31 11:48:29.000000000 +0100
+++ new/sysconfig-0.80.5/VERSION 2013-02-22 09:27:34.000000000 +0100
@@ -1 +1 @@
-0.80.4
+0.80.5
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sysconfig-0.80.4/configure new/sysconfig-0.80.5/configure
--- old/sysconfig-0.80.4/configure 2013-01-31 11:48:38.000000000 +0100
+++ new/sysconfig-0.80.5/configure 2013-02-22 09:27:54.000000000 +0100
@@ -1,7 +1,7 @@
#! /bin/sh
# From configure.in Revision: 1.13 .
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for sysconfig 0.80.4.
+# Generated by GNU Autoconf 2.69 for sysconfig 0.80.5.
#
# Report bugs to <http://www.suse.de/feedback/>.
#
@@ -591,8 +591,8 @@
# Identity of this package.
PACKAGE_NAME='sysconfig'
PACKAGE_TARNAME='sysconfig'
-PACKAGE_VERSION='0.80.4'
-PACKAGE_STRING='sysconfig 0.80.4'
+PACKAGE_VERSION='0.80.5'
+PACKAGE_STRING='sysconfig 0.80.5'
PACKAGE_BUGREPORT='http://www.suse.de/feedback/'
PACKAGE_URL=''
@@ -1322,7 +1322,7 @@
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures sysconfig 0.80.4 to adapt to many kinds of systems.
+\`configure' configures sysconfig 0.80.5 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1392,7 +1392,7 @@
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of sysconfig 0.80.4:";;
+ short | recursive ) echo "Configuration of sysconfig 0.80.5:";;
esac
cat <<\_ACEOF
@@ -1497,7 +1497,7 @@
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-sysconfig configure 0.80.4
+sysconfig configure 0.80.5
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
@@ -1866,7 +1866,7 @@
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by sysconfig $as_me 0.80.4, which was
+It was created by sysconfig $as_me 0.80.5, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
@@ -2694,7 +2694,7 @@
# Define the identity of the package.
PACKAGE='sysconfig'
- VERSION='0.80.4'
+ VERSION='0.80.5'
cat >>confdefs.h <<_ACEOF
@@ -12174,7 +12174,7 @@
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by sysconfig $as_me 0.80.4, which was
+This file was extended by sysconfig $as_me 0.80.5, which was
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -12231,7 +12231,7 @@
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
-sysconfig config.status 0.80.4
+sysconfig config.status 0.80.5
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sysconfig-0.80.4/sysconfig.spec new/sysconfig-0.80.5/sysconfig.spec
--- old/sysconfig-0.80.4/sysconfig.spec 2013-01-31 11:48:42.000000000 +0100
+++ new/sysconfig-0.80.5/sysconfig.spec 2013-02-22 09:27:58.000000000 +0100
@@ -18,7 +18,7 @@
Name: sysconfig
-Version: 0.80.4
+Version: 0.80.5
Release: 0
Summary: The sysconfig scheme and traditional network scripts
License: GPL-2.0+
@@ -36,6 +36,7 @@
BuildRequires: libtool
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%if 0%{?suse_version} >= 1230
+BuildRequires: pkgconfig(systemd)
%define udevdir /usr/lib/udev
%else
%define udevdir /lib/udev
@@ -124,6 +125,15 @@
if [ ! -f etc/sysconfig/network/scripts/move_shm_sysconfig.sh ] ; then
touch etc/sysconfig/network/__move_shm_sysconfig__
fi
+ # trigger update from < 0.80.x only (-> openSUSE 12.3),
+ # (guard for variable added to network/config later...)
+ if [ -x /usr/sbin/NetworkManager ] && grep -qs "^NETWORKMANAGER=" \
+ var/adm/fillup-templates/sysconfig.config-network ; then
+ grep -s "^NETWORKMANAGER=" etc/sysconfig/network/config \
+ > /dev/.sysconfig/network/migrate_nm_variable
+ elif [ -f /dev/.sysconfig/network/migrate_nm_variable ] ; then
+ rm -f /dev/.sysconfig/network/migrate_nm_variable
+ fi
fi
%post
@@ -171,12 +181,31 @@
DHCLIENT_SCRIPT_EXE
umask $_umask
done
-# erroneous move from network/dhcp to network/config while 11.1 beta
-sysconfig_remove_and_set network/config WRITE_HOSTNAME_TO_HOSTS
-# remove NETWORKMANAGER variable; 12.3 is using network.service alias
-sysconfig_remove_and_set network/config NETWORKMANAGER
# be a little bit paranoid and set the correct mode even we set umask
chmod 0600 etc/sysconfig/network/ifcfg-*
+# bnc#803058: migrate from NETWORKMANAGER=yes/no variable to
+# network.service alias link masking rcnetwork.
+if [ -f /dev/.sysconfig/network/migrate_nm_variable -a -x /usr/bin/systemctl ] ; then
+ . /dev/.sysconfig/network/migrate_nm_variable
+ case $NETWORKMANAGER in
+ no)
+ # NetworkManager.service were always started before; stop
+ # and disable it, so /etc/init.d/network isn't masked...
+ /usr/bin/systemctl stop NetworkManager.service || :
+ /usr/bin/systemctl --force disable NetworkManager.service || :
+ rm -f /dev/.sysconfig/network/migrate_nm_variable
+ ;;
+ yes)
+ # Keep the /dev/.sysconfig/network/migrate_nm_variable file,
+ # as hint for migration in NetworkManager post-install ...
+ # Mask /etc/init.d/network service until NM update is done.
+ /usr/bin/systemctl --force mask network.service || :
+ ;;
+ esac
+else
+ # cleanup obsolete NETWORKMANAGER variable
+ sysconfig_remove_and_set network/config NETWORKMANAGER
+fi
%postun
%{insserv_cleanup}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sysconfig-0.80.4/sysconfig.spec.in new/sysconfig-0.80.5/sysconfig.spec.in
--- old/sysconfig-0.80.4/sysconfig.spec.in 2013-01-31 11:48:29.000000000 +0100
+++ new/sysconfig-0.80.5/sysconfig.spec.in 2013-02-22 09:27:34.000000000 +0100
@@ -36,6 +36,7 @@
BuildRequires: libtool
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%if 0%{?suse_version} >= 1230
+BuildRequires: pkgconfig(systemd)
%define udevdir /usr/lib/udev
%else
%define udevdir /lib/udev
@@ -124,6 +125,15 @@
if [ ! -f etc/sysconfig/network/scripts/move_shm_sysconfig.sh ] ; then
touch etc/sysconfig/network/__move_shm_sysconfig__
fi
+ # trigger update from < 0.80.x only (-> openSUSE 12.3),
+ # (guard for variable added to network/config later...)
+ if [ -x /usr/sbin/NetworkManager ] && grep -qs "^NETWORKMANAGER=" \
+ var/adm/fillup-templates/sysconfig.config-network ; then
+ grep -s "^NETWORKMANAGER=" etc/sysconfig/network/config \
+ > /dev/.sysconfig/network/migrate_nm_variable
+ elif [ -f /dev/.sysconfig/network/migrate_nm_variable ] ; then
+ rm -f /dev/.sysconfig/network/migrate_nm_variable
+ fi
fi
%post
@@ -171,12 +181,31 @@
DHCLIENT_SCRIPT_EXE
umask $_umask
done
-# erroneous move from network/dhcp to network/config while 11.1 beta
-sysconfig_remove_and_set network/config WRITE_HOSTNAME_TO_HOSTS
-# remove NETWORKMANAGER variable; 12.3 is using network.service alias
-sysconfig_remove_and_set network/config NETWORKMANAGER
# be a little bit paranoid and set the correct mode even we set umask
chmod 0600 etc/sysconfig/network/ifcfg-*
+# bnc#803058: migrate from NETWORKMANAGER=yes/no variable to
+# network.service alias link masking rcnetwork.
+if [ -f /dev/.sysconfig/network/migrate_nm_variable -a -x /usr/bin/systemctl ] ; then
+ . /dev/.sysconfig/network/migrate_nm_variable
+ case $NETWORKMANAGER in
+ no)
+ # NetworkManager.service were always started before; stop
+ # and disable it, so /etc/init.d/network isn't masked...
+ /usr/bin/systemctl stop NetworkManager.service || :
+ /usr/bin/systemctl --force disable NetworkManager.service || :
+ rm -f /dev/.sysconfig/network/migrate_nm_variable
+ ;;
+ yes)
+ # Keep the /dev/.sysconfig/network/migrate_nm_variable file,
+ # as hint for migration in NetworkManager post-install ...
+ # Mask /etc/init.d/network service until NM update is done.
+ /usr/bin/systemctl --force mask network.service || :
+ ;;
+ esac
+else
+ # cleanup obsolete NETWORKMANAGER variable
+ sysconfig_remove_and_set network/config NETWORKMANAGER
+fi
%postun
%{insserv_cleanup}
--
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 sysconfig for openSUSE:Factory checked in at 2013-02-22 17:03:11
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/sysconfig (Old)
and /work/SRC/openSUSE:Factory/.sysconfig.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "sysconfig", Maintainer is "mt(a)suse.com"
Changes:
--------
--- /work/SRC/openSUSE:Factory/sysconfig/sysconfig.changes 2013-01-31 14:54:52.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.sysconfig.new/sysconfig.changes 2013-02-22 17:03:13.000000000 +0100
@@ -1,0 +2,10 @@
+Thu Feb 22 08:20:23 UTC 2013 - mt(a)suse.com
+
+- version 0.80.5
+- Fixed to use a guarded migration hook from openSUSE < 12.3, that
+ disabes the (always enabled before) NetworkManager.service on
+ NETWORKMANAGER=no and mask the network.service (provided by the
+ /etc/init.d/network script) on NETWORKMANAGER=yes until NM has
+ been installed and enabled as network.service (bnc#803058).
+
+-------------------------------------------------------------------
Old:
----
sysconfig-0.80.4.tar.bz2
New:
----
sysconfig-0.80.5.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ sysconfig.spec ++++++
--- /var/tmp/diff_new_pack.HmSGNV/_old 2013-02-22 17:03:14.000000000 +0100
+++ /var/tmp/diff_new_pack.HmSGNV/_new 2013-02-22 17:03:14.000000000 +0100
@@ -17,7 +17,7 @@
Name: sysconfig
-Version: 0.80.4
+Version: 0.80.5
Release: 0
Summary: The sysconfig scheme and traditional network scripts
License: GPL-2.0+
@@ -35,6 +35,7 @@
BuildRequires: libtool
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%if 0%{?suse_version} >= 1230
+BuildRequires: pkgconfig(systemd)
%define udevdir /usr/lib/udev
%else
%define udevdir /lib/udev
@@ -123,6 +124,15 @@
if [ ! -f etc/sysconfig/network/scripts/move_shm_sysconfig.sh ] ; then
touch etc/sysconfig/network/__move_shm_sysconfig__
fi
+ # trigger update from < 0.80.x only (-> openSUSE 12.3),
+ # (guard for variable added to network/config later...)
+ if [ -x /usr/sbin/NetworkManager ] && grep -qs "^NETWORKMANAGER=" \
+ var/adm/fillup-templates/sysconfig.config-network ; then
+ grep -s "^NETWORKMANAGER=" etc/sysconfig/network/config \
+ > /dev/.sysconfig/network/migrate_nm_variable
+ elif [ -f /dev/.sysconfig/network/migrate_nm_variable ] ; then
+ rm -f /dev/.sysconfig/network/migrate_nm_variable
+ fi
fi
%post
@@ -170,12 +180,31 @@
DHCLIENT_SCRIPT_EXE
umask $_umask
done
-# erroneous move from network/dhcp to network/config while 11.1 beta
-sysconfig_remove_and_set network/config WRITE_HOSTNAME_TO_HOSTS
-# remove NETWORKMANAGER variable; 12.3 is using network.service alias
-sysconfig_remove_and_set network/config NETWORKMANAGER
# be a little bit paranoid and set the correct mode even we set umask
chmod 0600 etc/sysconfig/network/ifcfg-*
+# bnc#803058: migrate from NETWORKMANAGER=yes/no variable to
+# network.service alias link masking rcnetwork.
+if [ -f /dev/.sysconfig/network/migrate_nm_variable -a -x /usr/bin/systemctl ] ; then
+ . /dev/.sysconfig/network/migrate_nm_variable
+ case $NETWORKMANAGER in
+ no)
+ # NetworkManager.service were always started before; stop
+ # and disable it, so /etc/init.d/network isn't masked...
+ /usr/bin/systemctl stop NetworkManager.service || :
+ /usr/bin/systemctl --force disable NetworkManager.service || :
+ rm -f /dev/.sysconfig/network/migrate_nm_variable
+ ;;
+ yes)
+ # Keep the /dev/.sysconfig/network/migrate_nm_variable file,
+ # as hint for migration in NetworkManager post-install ...
+ # Mask /etc/init.d/network service until NM update is done.
+ /usr/bin/systemctl --force mask network.service || :
+ ;;
+ esac
+else
+ # cleanup obsolete NETWORKMANAGER variable
+ sysconfig_remove_and_set network/config NETWORKMANAGER
+fi
%postun
%{insserv_cleanup}
++++++ sysconfig-0.80.4.tar.bz2 -> sysconfig-0.80.5.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sysconfig-0.80.4/ChangeLog new/sysconfig-0.80.5/ChangeLog
--- old/sysconfig-0.80.4/ChangeLog 2013-01-31 11:49:43.000000000 +0100
+++ new/sysconfig-0.80.5/ChangeLog 2013-02-22 09:28:07.000000000 +0100
@@ -1,4 +1,22 @@
-commit d3a88730e9a2675b1c6119a13adb951069fc2508 (HEAD, origin/master, master)
+commit 4b058026fc4ab0709d5fad75200bdc3a638a9499 (HEAD, opensuse-12.3-wip-4, opensuse-12.3, master)
+Author: Marius Tomaschewski <mt(a)suse.com>
+Date: Fri Feb 22 09:20:23 2013 +0100
+
+ version 0.80.5, updated changes file
+
+commit 104ea8d216807366526aecbe1b28e2b8bc6ed196
+Author: Marius Tomaschewski <mt(a)suse.com>
+Date: Fri Feb 22 09:17:33 2013 +0100
+
+ NETWORKMANAGER variable migration to openSUSE-12.3
+
+ Fixed to use a guarded migration hook from openSUSE < 12.3, that
+ disabes the (always enabled before) NetworkManager.service on
+ NETWORKMANAGER=no and mask the network.service (provided by the
+ /etc/init.d/network script) on NETWORKMANAGER=yes until NM has
+ been installed and enabled as network.service (bnc#803058).
+
+commit d3a88730e9a2675b1c6119a13adb951069fc2508 (origin/master, master-12)
Author: Marius Tomaschewski <mt(a)suse.com>
Date: Thu Jan 31 11:47:43 2013 +0100
@@ -114,7 +132,7 @@
The dhcp6_client state variable were set to dhclient while
the config variable DHCLIENT6_BIN is using dhclient6 here.
-commit 5e85eaf907dc16ff75a317591e7ff0172d4b8e44 (tag: version-0.80.0, origin/opensuse-12.3-wip, opensuse-12.3-wip)
+commit 5e85eaf907dc16ff75a317591e7ff0172d4b8e44 (tag: version-0.80.0, origin/opensuse-12.3-wip)
Author: Marius Tomaschewski <mt(a)suse.com>
Date: Tue Jan 15 12:26:53 2013 +0100
@@ -186,7 +204,7 @@
Started new series, version 0.80.0
-commit 69b81a1a3fab45048f39b66eedf98512d38e60cc (opensuse-12.3)
+commit 69b81a1a3fab45048f39b66eedf98512d38e60cc
Author: Marius Tomaschewski <mt(a)suse.com>
Date: Fri Jan 11 23:44:09 2013 +0100
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sysconfig-0.80.4/VERSION new/sysconfig-0.80.5/VERSION
--- old/sysconfig-0.80.4/VERSION 2013-01-31 11:48:29.000000000 +0100
+++ new/sysconfig-0.80.5/VERSION 2013-02-22 09:27:34.000000000 +0100
@@ -1 +1 @@
-0.80.4
+0.80.5
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sysconfig-0.80.4/configure new/sysconfig-0.80.5/configure
--- old/sysconfig-0.80.4/configure 2013-01-31 11:48:38.000000000 +0100
+++ new/sysconfig-0.80.5/configure 2013-02-22 09:27:54.000000000 +0100
@@ -1,7 +1,7 @@
#! /bin/sh
# From configure.in Revision: 1.13 .
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for sysconfig 0.80.4.
+# Generated by GNU Autoconf 2.69 for sysconfig 0.80.5.
#
# Report bugs to <http://www.suse.de/feedback/>.
#
@@ -591,8 +591,8 @@
# Identity of this package.
PACKAGE_NAME='sysconfig'
PACKAGE_TARNAME='sysconfig'
-PACKAGE_VERSION='0.80.4'
-PACKAGE_STRING='sysconfig 0.80.4'
+PACKAGE_VERSION='0.80.5'
+PACKAGE_STRING='sysconfig 0.80.5'
PACKAGE_BUGREPORT='http://www.suse.de/feedback/'
PACKAGE_URL=''
@@ -1322,7 +1322,7 @@
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures sysconfig 0.80.4 to adapt to many kinds of systems.
+\`configure' configures sysconfig 0.80.5 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1392,7 +1392,7 @@
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of sysconfig 0.80.4:";;
+ short | recursive ) echo "Configuration of sysconfig 0.80.5:";;
esac
cat <<\_ACEOF
@@ -1497,7 +1497,7 @@
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-sysconfig configure 0.80.4
+sysconfig configure 0.80.5
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
@@ -1866,7 +1866,7 @@
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by sysconfig $as_me 0.80.4, which was
+It was created by sysconfig $as_me 0.80.5, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
@@ -2694,7 +2694,7 @@
# Define the identity of the package.
PACKAGE='sysconfig'
- VERSION='0.80.4'
+ VERSION='0.80.5'
cat >>confdefs.h <<_ACEOF
@@ -12174,7 +12174,7 @@
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by sysconfig $as_me 0.80.4, which was
+This file was extended by sysconfig $as_me 0.80.5, which was
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -12231,7 +12231,7 @@
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
-sysconfig config.status 0.80.4
+sysconfig config.status 0.80.5
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sysconfig-0.80.4/sysconfig.spec new/sysconfig-0.80.5/sysconfig.spec
--- old/sysconfig-0.80.4/sysconfig.spec 2013-01-31 11:48:42.000000000 +0100
+++ new/sysconfig-0.80.5/sysconfig.spec 2013-02-22 09:27:58.000000000 +0100
@@ -18,7 +18,7 @@
Name: sysconfig
-Version: 0.80.4
+Version: 0.80.5
Release: 0
Summary: The sysconfig scheme and traditional network scripts
License: GPL-2.0+
@@ -36,6 +36,7 @@
BuildRequires: libtool
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%if 0%{?suse_version} >= 1230
+BuildRequires: pkgconfig(systemd)
%define udevdir /usr/lib/udev
%else
%define udevdir /lib/udev
@@ -124,6 +125,15 @@
if [ ! -f etc/sysconfig/network/scripts/move_shm_sysconfig.sh ] ; then
touch etc/sysconfig/network/__move_shm_sysconfig__
fi
+ # trigger update from < 0.80.x only (-> openSUSE 12.3),
+ # (guard for variable added to network/config later...)
+ if [ -x /usr/sbin/NetworkManager ] && grep -qs "^NETWORKMANAGER=" \
+ var/adm/fillup-templates/sysconfig.config-network ; then
+ grep -s "^NETWORKMANAGER=" etc/sysconfig/network/config \
+ > /dev/.sysconfig/network/migrate_nm_variable
+ elif [ -f /dev/.sysconfig/network/migrate_nm_variable ] ; then
+ rm -f /dev/.sysconfig/network/migrate_nm_variable
+ fi
fi
%post
@@ -171,12 +181,31 @@
DHCLIENT_SCRIPT_EXE
umask $_umask
done
-# erroneous move from network/dhcp to network/config while 11.1 beta
-sysconfig_remove_and_set network/config WRITE_HOSTNAME_TO_HOSTS
-# remove NETWORKMANAGER variable; 12.3 is using network.service alias
-sysconfig_remove_and_set network/config NETWORKMANAGER
# be a little bit paranoid and set the correct mode even we set umask
chmod 0600 etc/sysconfig/network/ifcfg-*
+# bnc#803058: migrate from NETWORKMANAGER=yes/no variable to
+# network.service alias link masking rcnetwork.
+if [ -f /dev/.sysconfig/network/migrate_nm_variable -a -x /usr/bin/systemctl ] ; then
+ . /dev/.sysconfig/network/migrate_nm_variable
+ case $NETWORKMANAGER in
+ no)
+ # NetworkManager.service were always started before; stop
+ # and disable it, so /etc/init.d/network isn't masked...
+ /usr/bin/systemctl stop NetworkManager.service || :
+ /usr/bin/systemctl --force disable NetworkManager.service || :
+ rm -f /dev/.sysconfig/network/migrate_nm_variable
+ ;;
+ yes)
+ # Keep the /dev/.sysconfig/network/migrate_nm_variable file,
+ # as hint for migration in NetworkManager post-install ...
+ # Mask /etc/init.d/network service until NM update is done.
+ /usr/bin/systemctl --force mask network.service || :
+ ;;
+ esac
+else
+ # cleanup obsolete NETWORKMANAGER variable
+ sysconfig_remove_and_set network/config NETWORKMANAGER
+fi
%postun
%{insserv_cleanup}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sysconfig-0.80.4/sysconfig.spec.in new/sysconfig-0.80.5/sysconfig.spec.in
--- old/sysconfig-0.80.4/sysconfig.spec.in 2013-01-31 11:48:29.000000000 +0100
+++ new/sysconfig-0.80.5/sysconfig.spec.in 2013-02-22 09:27:34.000000000 +0100
@@ -36,6 +36,7 @@
BuildRequires: libtool
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%if 0%{?suse_version} >= 1230
+BuildRequires: pkgconfig(systemd)
%define udevdir /usr/lib/udev
%else
%define udevdir /lib/udev
@@ -124,6 +125,15 @@
if [ ! -f etc/sysconfig/network/scripts/move_shm_sysconfig.sh ] ; then
touch etc/sysconfig/network/__move_shm_sysconfig__
fi
+ # trigger update from < 0.80.x only (-> openSUSE 12.3),
+ # (guard for variable added to network/config later...)
+ if [ -x /usr/sbin/NetworkManager ] && grep -qs "^NETWORKMANAGER=" \
+ var/adm/fillup-templates/sysconfig.config-network ; then
+ grep -s "^NETWORKMANAGER=" etc/sysconfig/network/config \
+ > /dev/.sysconfig/network/migrate_nm_variable
+ elif [ -f /dev/.sysconfig/network/migrate_nm_variable ] ; then
+ rm -f /dev/.sysconfig/network/migrate_nm_variable
+ fi
fi
%post
@@ -171,12 +181,31 @@
DHCLIENT_SCRIPT_EXE
umask $_umask
done
-# erroneous move from network/dhcp to network/config while 11.1 beta
-sysconfig_remove_and_set network/config WRITE_HOSTNAME_TO_HOSTS
-# remove NETWORKMANAGER variable; 12.3 is using network.service alias
-sysconfig_remove_and_set network/config NETWORKMANAGER
# be a little bit paranoid and set the correct mode even we set umask
chmod 0600 etc/sysconfig/network/ifcfg-*
+# bnc#803058: migrate from NETWORKMANAGER=yes/no variable to
+# network.service alias link masking rcnetwork.
+if [ -f /dev/.sysconfig/network/migrate_nm_variable -a -x /usr/bin/systemctl ] ; then
+ . /dev/.sysconfig/network/migrate_nm_variable
+ case $NETWORKMANAGER in
+ no)
+ # NetworkManager.service were always started before; stop
+ # and disable it, so /etc/init.d/network isn't masked...
+ /usr/bin/systemctl stop NetworkManager.service || :
+ /usr/bin/systemctl --force disable NetworkManager.service || :
+ rm -f /dev/.sysconfig/network/migrate_nm_variable
+ ;;
+ yes)
+ # Keep the /dev/.sysconfig/network/migrate_nm_variable file,
+ # as hint for migration in NetworkManager post-install ...
+ # Mask /etc/init.d/network service until NM update is done.
+ /usr/bin/systemctl --force mask network.service || :
+ ;;
+ esac
+else
+ # cleanup obsolete NETWORKMANAGER variable
+ sysconfig_remove_and_set network/config NETWORKMANAGER
+fi
%postun
%{insserv_cleanup}
--
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 squid for openSUSE:Factory checked in at 2013-02-22 17:02:45
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/squid (Old)
and /work/SRC/openSUSE:Factory/.squid.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "squid", Maintainer is "draht(a)suse.com"
Changes:
--------
--- /work/SRC/openSUSE:Factory/squid/squid.changes 2013-01-14 12:03:43.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.squid.new/squid.changes 2013-02-22 17:02:46.000000000 +0100
@@ -1,0 +2,20 @@
+Wed Feb 20 23:24:06 UTC 2013 - e.istomin(a)edss.ee
+
+- Changes to squid-3.2.7 (01 Feb 2013):
+ - Bug 3736: Floating point exception due to divide by zero
+ - Bug 3735: raw-IPv6 domain URLs crash if IPv6-disabled
+ - Bug 3732: Fix ConnOpener IPv6 awareness
+ - Bug 3729: 32-bit overflow in parsing 64-bit configuration values
+ - Bug 3728: Improve debug for cache_dir
+ - Bug 3687: unhandled exception: c when using interception and peers
+ - Bug 3678: external acl grace period causes acl lookup failures
+ - Bug 3567: Memory leak handling malformed requests
+ - Bug 3111: Mid-term fix for the forward.cc "err" assertion
+ - Support OpenSSL NO_Compression optio
+ - Fix IPv6 enabled pinger on split-stack or IPv6-disabled systems
+ - Fix "address.GetPort() != 0" assertion for helpers
+ - ... and several minor memory leaks
+ - ... and some cache.log message polishing
+
+
+-------------------------------------------------------------------
Old:
----
squid-3.2.6.tar.bz2
squid-3.2.6.tar.bz2.asc
New:
----
squid-3.2.7.tar.bz2
squid-3.2.7.tar.bz2.asc
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ squid.spec ++++++
--- /var/tmp/diff_new_pack.NCGkdI/_old 2013-02-22 17:02:48.000000000 +0100
+++ /var/tmp/diff_new_pack.NCGkdI/_new 2013-02-22 17:02:48.000000000 +0100
@@ -23,7 +23,7 @@
Summary: Squid Version 3.2 WWW Proxy Server
License: GPL-2.0+
Group: Productivity/Networking/Web/Proxy
-Version: 3.2.6
+Version: 3.2.7
Release: 0
Url: http://www.squid-cache.org/Versions/v3/3.2
Source0: http://www.squid-cache.org/Versions/v3/3.2/%{name}-%{version}.tar.bz2
@@ -135,8 +135,8 @@
* Cache Manager access changes
First STABLE release Date: 02 Aug 2010
- Latest Release: 3.2.6
- Latest Release Date: 08 Jan 2013
+ Latest Release: 3.2.7
+ Latest Release Date: 01 Feb 2013
%prep
%gpg_verify %{S:1}
++++++ squid-3.2.6.tar.bz2 -> squid-3.2.7.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/squid-3.2.6/ChangeLog new/squid-3.2.7/ChangeLog
--- old/squid-3.2.6/ChangeLog 2013-01-09 02:41:51.000000000 +0100
+++ new/squid-3.2.7/ChangeLog 2013-02-01 11:55:31.000000000 +0100
@@ -1,3 +1,20 @@
+Changes to squid-3.2.7 (01 Feb 2013):
+
+ - Bug 3736: Floating point exception due to divide by zero
+ - Bug 3735: raw-IPv6 domain URLs crash if IPv6-disabled
+ - Bug 3732: Fix ConnOpener IPv6 awareness
+ - Bug 3729: 32-bit overflow in parsing 64-bit configuration values
+ - Bug 3728: Improve debug for cache_dir
+ - Bug 3687: unhandled exception: c when using interception and peers
+ - Bug 3678: external acl grace period causes acl lookup failures
+ - Bug 3567: Memory leak handling malformed requests
+ - Bug 3111: Mid-term fix for the forward.cc "err" assertion
+ - Support OpenSSL NO_Compression optio
+ - Fix IPv6 enabled pinger on split-stack or IPv6-disabled systems
+ - Fix "address.GetPort() != 0" assertion for helpers
+ - ... and several minor memory leaks
+ - ... and some cache.log message polishing
+
Changes to squid-3.2.6 (09 Jan 2013):
- Regression Bug 3731: TOS setsockopt() requires int value
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/squid-3.2.6/RELEASENOTES.html new/squid-3.2.7/RELEASENOTES.html
--- old/squid-3.2.6/RELEASENOTES.html 2013-01-09 03:06:07.000000000 +0100
+++ new/squid-3.2.7/RELEASENOTES.html 2013-02-01 12:23:34.000000000 +0100
@@ -2,10 +2,10 @@
<HTML>
<HEAD>
<META NAME="GENERATOR" CONTENT="LinuxDoc-Tools 0.9.66">
- <TITLE>Squid 3.2.6 release notes</TITLE>
+ <TITLE>Squid 3.2.7 release notes</TITLE>
</HEAD>
<BODY>
-<H1>Squid 3.2.6 release notes</H1>
+<H1>Squid 3.2.7 release notes</H1>
<H2>Squid Developers</H2>
<HR>
@@ -72,7 +72,7 @@
<HR>
<H2><A NAME="s1">1.</A> <A HREF="#toc1">Notice</A></H2>
-<P>The Squid Team are pleased to announce the release of Squid-3.2.6 for
+<P>The Squid Team are pleased to announce the release of Squid-3.2.7 for
testing.</P>
<P>This new release is available for download from
<A HREF="http://www.squid-cache.org/Versions/v3/3.2/">http://www.squid-cache.org/Versions/v3/3.2/</A> or the
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/squid-3.2.6/configure new/squid-3.2.7/configure
--- old/squid-3.2.6/configure 2013-01-09 02:42:47.000000000 +0100
+++ new/squid-3.2.7/configure 2013-02-01 11:57:00.000000000 +0100
@@ -1,7 +1,7 @@
#! /bin/sh
# From configure.ac Revision.
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.68 for Squid Web Proxy 3.2.6.
+# Generated by GNU Autoconf 2.68 for Squid Web Proxy 3.2.7.
#
# Report bugs to <http://bugs.squid-cache.org/>.
#
@@ -575,8 +575,8 @@
# Identity of this package.
PACKAGE_NAME='Squid Web Proxy'
PACKAGE_TARNAME='squid'
-PACKAGE_VERSION='3.2.6'
-PACKAGE_STRING='Squid Web Proxy 3.2.6'
+PACKAGE_VERSION='3.2.7'
+PACKAGE_STRING='Squid Web Proxy 3.2.7'
PACKAGE_BUGREPORT='http://bugs.squid-cache.org/'
PACKAGE_URL=''
@@ -1571,7 +1571,7 @@
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures Squid Web Proxy 3.2.6 to adapt to many kinds of systems.
+\`configure' configures Squid Web Proxy 3.2.7 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1641,7 +1641,7 @@
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of Squid Web Proxy 3.2.6:";;
+ short | recursive ) echo "Configuration of Squid Web Proxy 3.2.7:";;
esac
cat <<\_ACEOF
@@ -2019,7 +2019,7 @@
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-Squid Web Proxy configure 3.2.6
+Squid Web Proxy configure 3.2.7
generated by GNU Autoconf 2.68
Copyright (C) 2010 Free Software Foundation, Inc.
@@ -3115,7 +3115,7 @@
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by Squid Web Proxy $as_me 3.2.6, which was
+It was created by Squid Web Proxy $as_me 3.2.7, which was
generated by GNU Autoconf 2.68. Invocation command line was
$ $0 $@
@@ -3934,7 +3934,7 @@
# Define the identity of the package.
PACKAGE='squid'
- VERSION='3.2.6'
+ VERSION='3.2.7'
cat >>confdefs.h <<_ACEOF
@@ -30894,7 +30894,7 @@
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by Squid Web Proxy $as_me 3.2.6, which was
+This file was extended by Squid Web Proxy $as_me 3.2.7, which was
generated by GNU Autoconf 2.68. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -30960,7 +30960,7 @@
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
-Squid Web Proxy config.status 3.2.6
+Squid Web Proxy config.status 3.2.7
configured by $0, generated by GNU Autoconf 2.68,
with options \\"\$ac_cs_config\\"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/squid-3.2.6/configure.ac new/squid-3.2.7/configure.ac
--- old/squid-3.2.6/configure.ac 2013-01-09 02:42:47.000000000 +0100
+++ new/squid-3.2.7/configure.ac 2013-02-01 11:56:59.000000000 +0100
@@ -1,4 +1,4 @@
-AC_INIT([Squid Web Proxy],[3.2.6],[http://bugs.squid-cache.org/],[squid]
+AC_INIT([Squid Web Proxy],[3.2.7],[http://bugs.squid-cache.org/],[squid]
AC_PREREQ(2.61)
AC_CONFIG_HEADERS([include/autoconf.h])
AC_CONFIG_AUX_DIR(cfgaux)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/squid-3.2.6/helpers/basic_auth/DB/basic_db_auth.8 new/squid-3.2.7/helpers/basic_auth/DB/basic_db_auth.8
--- old/squid-3.2.6/helpers/basic_auth/DB/basic_db_auth.8 2013-01-09 03:05:47.000000000 +0100
+++ new/squid-3.2.7/helpers/basic_auth/DB/basic_db_auth.8 2013-02-01 12:21:45.000000000 +0100
@@ -124,7 +124,7 @@
.\" ========================================================================
.\"
.IX Title "BASIC_DB_AUTH 1"
-.TH BASIC_DB_AUTH 1 "2013-01-08" "perl v5.10.1" "User Contributed Perl Documentation"
+.TH BASIC_DB_AUTH 1 "2013-02-01" "perl v5.10.1" "User Contributed Perl Documentation"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/squid-3.2.6/helpers/external_acl/wbinfo_group/ext_wbinfo_group_acl.8 new/squid-3.2.7/helpers/external_acl/wbinfo_group/ext_wbinfo_group_acl.8
--- old/squid-3.2.6/helpers/external_acl/wbinfo_group/ext_wbinfo_group_acl.8 2013-01-09 03:05:51.000000000 +0100
+++ new/squid-3.2.7/helpers/external_acl/wbinfo_group/ext_wbinfo_group_acl.8 2013-02-01 12:22:05.000000000 +0100
@@ -124,7 +124,7 @@
.\" ========================================================================
.\"
.IX Title "EXT_WBINFO_GROUP_ACL.PL.IN 1"
-.TH EXT_WBINFO_GROUP_ACL.PL.IN 1 "2013-01-08" "perl v5.10.1" "User Contributed Perl Documentation"
+.TH EXT_WBINFO_GROUP_ACL.PL.IN 1 "2013-02-01" "perl v5.10.1" "User Contributed Perl Documentation"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/squid-3.2.6/include/version.h new/squid-3.2.7/include/version.h
--- old/squid-3.2.6/include/version.h 2013-01-09 02:42:47.000000000 +0100
+++ new/squid-3.2.7/include/version.h 2013-02-01 11:57:00.000000000 +0100
@@ -9,7 +9,7 @@
*/
#ifndef SQUID_RELEASE_TIME
-#define SQUID_RELEASE_TIME 1357695708
+#define SQUID_RELEASE_TIME 1359716114
#endif
#ifndef APP_SHORTNAME
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/squid-3.2.6/lib/smblib/smblib.c new/squid-3.2.7/lib/smblib/smblib.c
--- old/squid-3.2.6/lib/smblib/smblib.c 2013-01-09 02:41:51.000000000 +0100
+++ new/squid-3.2.7/lib/smblib/smblib.c 2013-02-01 11:55:31.000000000 +0100
@@ -122,8 +122,10 @@
strcpy(con -> password, "");
strcpy(con -> sock_options, "");
strcpy(con -> address, "");
- strcpy(con -> desthost, server);
- strcpy(con -> PDomain, NTdomain);
+ strncpy(con -> desthost, server, sizeof(con->desthost));
+ con->desthost[sizeof(con->desthost) - 1] = '\0';
+ strncpy(con -> PDomain, NTdomain, sizeof(con->PDomain));
+ con->PDomain[sizeof(con->PDomain) - 1] = '\0';
strcpy(con -> OSName, SMBLIB_DEFAULT_OSNAME);
strcpy(con -> LMType, SMBLIB_DEFAULT_LMTYPE);
con -> first_tree = con -> last_tree = NULL;
@@ -216,9 +218,12 @@
/* Init some things ... */
- strcpy(con -> service, service);
- strcpy(con -> username, username);
- strcpy(con -> password, password);
+ strncpy(con -> service, service, sizeof(con -> service));
+ con -> service[sizeof(con -> service) - 1] = '\0';
+ strncpy(con -> username, username, sizeof(con -> username));
+ con -> username[sizeof(con -> username) - 1] = '\0';
+ strncpy(con -> password, password, sizeof(con -> password));
+ con -> password[sizeof(con -> password) - 1] = '\0';
strcpy(con -> sock_options, "");
strcpy(con -> address, "");
strcpy(con -> PDomain, SMBLIB_DEFAULT_DOMAIN);
@@ -239,8 +244,17 @@
/* Now figure out the host portion of the service */
- strcpy(temp, service);
+ strncpy(temp, service, sizeof(temp));
+ temp[sizeof(temp) - 1] = '\0';
host = strtok(temp, "/\\"); /* Separate host name portion */
+ if (!host) {
+ if (Con_Handle == NULL) {
+ free(con);
+ Con_Handle = NULL;
+ }
+ SMBlib_errno = -SMBlibE_CallFailed;
+ return NULL;
+ }
strcpy(con -> desthost, host);
/* Now connect to the remote end, but first upper case the name of the
@@ -283,9 +297,10 @@
if (SMB_Negotiate(con, SMB_Prots_Restrict) < 0) {
- /* Hmmm what should we do here ... We have a connection, but could not
- negotiate ... */
-
+ if (Con_Handle == NULL) {
+ free(con);
+ }
+ SMBlib_errno = -SMBlibE_NegNoProt;
return NULL;
}
@@ -294,6 +309,10 @@
if ((*tree = SMB_TreeConnect(con, NULL, service, password, "A:")) == NULL) {
+ if (Con_Handle == NULL) {
+ free(con);
+ }
+ SMBlib_errno = -SMBlibE_BAD;
return NULL;
}
@@ -328,7 +347,8 @@
pass_len = 24;
memcpy(pword, PassWord, 24);
} else {
- strcpy(pword, PassWord);
+ strncpy(pword, PassWord, sizeof(pword));
+ pword[sizeof(pword) - 1] = '\0';
#ifdef PAM_SMB_ENC_PASS
if (Con_Handle->encrypt_passwords) {
pass_len = 24;
@@ -394,7 +414,7 @@
p = p + 1;
- if (NtDomain != NULL) {
+ if (NtDomain == NULL) {
strcpy(p, Con_Handle -> PDomain);
p = p + strlen(Con_Handle -> PDomain);
} else {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/squid-3.2.6/snmplib/parse.c new/squid-3.2.7/snmplib/parse.c
--- old/squid-3.2.6/snmplib/parse.c 2013-01-09 02:41:51.000000000 +0100
+++ new/squid-3.2.7/snmplib/parse.c 2013-02-01 11:55:31.000000000 +0100
@@ -408,7 +408,7 @@
np->enums = NULL; /* so we don't free them later */
if (root->child_list == NULL) {
root->child_list = tp;
- } else {
+ } else if (peer) {
peer->next_peer = tp;
}
peer = tp;
@@ -630,6 +630,16 @@
xfree((char *) np);
}
+static void
+free_node_list(struct node *nl)
+{
+ while (nl) {
+ struct node *t = nl->next;
+ free_node(nl);
+ nl = t;
+ }
+}
+
/*
* Parse an entry of the form:
* label OBJECT IDENTIFIER ::= { parent 2 }
@@ -662,9 +672,9 @@
op++, nop++) {
/* every node must have parent's name and child's name or number */
if (op->label && (nop->label || (nop->subid != -1))) {
- strcpy(np->parent, op->label);
+ strncpy(np->parent, op->label, sizeof(np->parent) - 1);
if (nop->label)
- strcpy(np->label, nop->label);
+ strncpy(np->label, nop->label, sizeof(np->label) - 1);
if (nop->subid != -1)
np->subid = nop->subid;
np->type = 0;
@@ -685,8 +695,8 @@
*/
if (count == (length - 2)) {
if (op->label) {
- strcpy(np->parent, op->label);
- strcpy(np->label, name);
+ strncpy(np->parent, op->label, sizeof(np->parent));
+ strncpy(np->label, name, sizeof(np->label));
if (nop->subid != -1)
np->subid = nop->subid;
else
@@ -695,12 +705,14 @@
free_node(np);
if (oldnp)
oldnp->next = NULL;
- else
+ else {
+ free_node_list(root); // we need to clear the newly allocated list
return NULL;
+ }
}
} else {
print_error("Missing end of oid", (char *) NULL, type);
- free_node(np); /* the last node allocated wasn't used */
+ free_node_list(root); // we need to clear the newly allocated list
if (oldnp)
oldnp->next = NULL;
return NULL;
@@ -950,9 +962,12 @@
length = getoid(fp, SubOid, 32);
if (length > 1 && length <= 32) {
/* just take the last pair in the oid list */
- if (SubOid[length - 2].label)
+ if (SubOid[length - 2].label) {
strncpy(np->parent, SubOid[length - 2].label, 64);
- strcpy(np->label, name);
+ np->parent[63] = '\0';
+ }
+ strncpy(np->label, name, sizeof(np->label));
+ np->label[sizeof(np->label) - 1] = '\0';
if (SubOid[length - 1].subid != -1)
np->subid = SubOid[length - 1].subid;
else
@@ -995,9 +1010,11 @@
return root;
}
print_error(token, "is a reserved word", type);
+ free_node_list(root);
return NULL;
}
strncpy(name, token, 64);
+ name[63] = '\0';
type = get_token(fp, token);
if (type == OBJTYPE) {
if (root == NULL) {
@@ -1011,6 +1028,7 @@
np->next = parse_objecttype(fp, name);
if (np->next == NULL) {
print_error("Bad parse of objecttype", (char *) NULL, type);
+ free_node_list(root);
return NULL;
}
}
@@ -1029,6 +1047,7 @@
np->next = parse_objectid(fp, name);
if (np->next == NULL) {
print_error("Bad parse of object type", (char *) NULL, type);
+ free_node_list(root);
return NULL;
}
}
@@ -1041,6 +1060,7 @@
break;
} else {
print_error("Bad operator", (char *) NULL, type);
+ free_node_list(root);
return NULL;
}
}
@@ -1081,18 +1101,20 @@
strlen("DUMMY")));
if (!p) {
snmplib_debug(0, "Bad MIB version or tag missing, install original!\n");
+ fclose(fp);
return NULL;
}
if (!strcmp(mbuf, "DUMMY")) {
snmplib_debug(0, "You need to update your MIB!\n");
+ fclose(fp);
return NULL;
}
nodes = parse(fp);
+ fclose(fp);
if (!nodes) {
snmplib_debug(0, "Mib table is bad. Exiting\n");
return NULL;
}
tree = build_tree(nodes);
- fclose(fp);
return (tree);
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/squid-3.2.6/snmplib/snmp_vars.c new/squid-3.2.7/snmplib/snmp_vars.c
--- old/squid-3.2.6/snmplib/snmp_vars.c 2013-01-09 02:41:51.000000000 +0100
+++ new/squid-3.2.7/snmplib/snmp_vars.c 2013-02-01 11:55:31.000000000 +0100
@@ -377,6 +377,7 @@
u_char *DataPtr;
int DataLen;
oid TmpBuf[MAX_NAME_LEN];
+ memset(TmpBuf, 0, MAX_NAME_LEN * sizeof(*TmpBuf));
int AllVarLen = *BufLen;
int ThisVarLen = 0;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/squid-3.2.6/src/DiskIO/AIO/AIODiskIOStrategy.cc new/squid-3.2.7/src/DiskIO/AIO/AIODiskIOStrategy.cc
--- old/squid-3.2.6/src/DiskIO/AIO/AIODiskIOStrategy.cc 2013-01-09 02:41:51.000000000 +0100
+++ new/squid-3.2.7/src/DiskIO/AIO/AIODiskIOStrategy.cc 2013-02-01 11:55:31.000000000 +0100
@@ -49,9 +49,12 @@
#include "DiskIO/ReadRequest.h"
#include "DiskIO/WriteRequest.h"
-AIODiskIOStrategy::AIODiskIOStrategy()
+AIODiskIOStrategy::AIODiskIOStrategy() :
+ fd(-1)
{
+ aq.aq_state = AQ_STATE_NONE;
aq.aq_numpending = 0;
+ memset(&aq.aq_queue, 0, sizeof(aq.aq_queue));
}
AIODiskIOStrategy::~AIODiskIOStrategy()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/squid-3.2.6/src/DiskIO/DiskDaemon/DiskdFile.cc new/squid-3.2.7/src/DiskIO/DiskDaemon/DiskdFile.cc
--- old/squid-3.2.6/src/DiskIO/DiskDaemon/DiskdFile.cc 2013-01-09 02:41:51.000000000 +0100
+++ new/squid-3.2.7/src/DiskIO/DiskDaemon/DiskdFile.cc 2013-02-01 11:55:31.000000000 +0100
@@ -69,8 +69,11 @@
cbdataFree(t);
}
-DiskdFile::DiskdFile(char const *aPath, DiskdIOStrategy *anIO) : errorOccured (false), IO(anIO),
- inProgressIOs (0)
+DiskdFile::DiskdFile(char const *aPath, DiskdIOStrategy *anIO) :
+ errorOccured(false),
+ IO(anIO),
+ mode(0),
+ inProgressIOs(0)
{
assert (aPath);
debugs(79, 3, "DiskdFile::DiskdFile: " << aPath);
@@ -382,8 +385,10 @@
debugs(79, 3, "DiskdFile::readDone: status " << M->status);
assert (M->requestor);
ReadRequest::Pointer readRequest = dynamic_cast<ReadRequest *>(M->requestor);
+
/* remove the free protection */
- readRequest->RefCountDereference();
+ if (readRequest != NULL)
+ readRequest->RefCountDereference();
if (M->status < 0) {
++diskd_stats.read.fail;
@@ -407,7 +412,8 @@
assert (M->requestor);
WriteRequest::Pointer writeRequest = dynamic_cast<WriteRequest *>(M->requestor);
/* remove the free protection */
- writeRequest->RefCountDereference();
+ if (writeRequest != NULL)
+ writeRequest->RefCountDereference();
if (M->status < 0) {
errorOccured = true;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/squid-3.2.6/src/DiskIO/DiskDaemon/diskd.cc new/squid-3.2.7/src/DiskIO/DiskDaemon/diskd.cc
--- old/squid-3.2.6/src/DiskIO/DiskDaemon/diskd.cc 2013-01-09 02:41:51.000000000 +0100
+++ new/squid-3.2.7/src/DiskIO/DiskDaemon/diskd.cc 2013-02-01 11:55:31.000000000 +0100
@@ -266,6 +266,10 @@
if (s->shm_offset > -1)
buf = shmbuf + s->shm_offset;
+ else {
+ fprintf(stderr, "%d UNLNK id(%u) Error: no filename in shm buffer\n", (int) mypid, s->id);
+ return;
+ }
switch (r->mtype) {
@@ -370,7 +374,10 @@
hash = hash_create(fsCmp, 1 << 4, fsHash);
assert(hash);
- fcntl(0, F_SETFL, SQUID_NONBLOCK);
+ if (fcntl(0, F_SETFL, SQUID_NONBLOCK) < 0) {
+ perror(xstrerror());
+ return 1;
+ }
memset(&sa, '\0', sizeof(sa));
sa.sa_handler = alarm_handler;
sa.sa_flags = SA_RESTART;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/squid-3.2.6/src/DiskIO/DiskThreads/DiskThreadsIOStrategy.cc new/squid-3.2.7/src/DiskIO/DiskThreads/DiskThreadsIOStrategy.cc
--- old/squid-3.2.6/src/DiskIO/DiskThreads/DiskThreadsIOStrategy.cc 2013-01-09 02:41:51.000000000 +0100
+++ new/squid-3.2.7/src/DiskIO/DiskThreads/DiskThreadsIOStrategy.cc 2013-02-01 11:55:31.000000000 +0100
@@ -190,7 +190,10 @@
debugs(32, 2, "aioSync: done");
}
-DiskThreadsIOStrategy::DiskThreadsIOStrategy() : initialised (false) {}
+DiskThreadsIOStrategy::DiskThreadsIOStrategy() :
+ initialised(false),
+ squidaio_ctrl_pool(NULL)
+{}
void
DiskThreadsIOStrategy::aioStats(StoreEntry * sentry)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/squid-3.2.6/src/DiskIO/DiskThreads/aiops.cc new/squid-3.2.7/src/DiskIO/DiskThreads/aiops.cc
--- old/squid-3.2.6/src/DiskIO/DiskThreads/aiops.cc 2013-01-09 02:41:51.000000000 +0100
+++ new/squid-3.2.7/src/DiskIO/DiskThreads/aiops.cc 2013-02-01 11:55:31.000000000 +0100
@@ -729,8 +729,10 @@
static void
squidaio_do_read(squidaio_request_t * requestp)
{
- lseek(requestp->fd, requestp->offset, requestp->whence);
- requestp->ret = read(requestp->fd, requestp->bufferp, requestp->buflen);
+ if (lseek(requestp->fd, requestp->offset, requestp->whence) >= 0)
+ requestp->ret = read(requestp->fd, requestp->bufferp, requestp->buflen);
+ else
+ requestp->ret = -1;
requestp->err = errno;
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/squid-3.2.6/src/DiskIO/IpcIo/IpcIoFile.cc new/squid-3.2.7/src/DiskIO/IpcIo/IpcIoFile.cc
--- old/squid-3.2.6/src/DiskIO/IpcIo/IpcIoFile.cc 2013-01-09 02:41:51.000000000 +0100
+++ new/squid-3.2.7/src/DiskIO/IpcIo/IpcIoFile.cc 2013-02-01 11:55:31.000000000 +0100
@@ -584,9 +584,14 @@
/* IpcIoMsg */
IpcIoMsg::IpcIoMsg():
- requestId(0), offset(0), len(0), command(IpcIo::cmdNone), xerrno(0)
+ requestId(0),
+ offset(0),
+ len(0),
+ command(IpcIo::cmdNone),
+ xerrno(0)
{
start.tv_sec = 0;
+ start.tv_usec = 0;
}
/* IpcIoPendingRequest */
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/squid-3.2.6/src/Parsing.cc new/squid-3.2.7/src/Parsing.cc
--- old/squid-3.2.6/src/Parsing.cc 2013-01-09 02:41:51.000000000 +0100
+++ new/squid-3.2.7/src/Parsing.cc 2013-02-01 11:55:31.000000000 +0100
@@ -85,7 +85,7 @@
GetInteger64(void)
{
char *token = strtok(NULL, w_space);
- int i;
+ int64_t i;
if (token == NULL)
self_destruct();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/squid-3.2.6/src/auth/digest/auth_digest.cc new/squid-3.2.7/src/auth/digest/auth_digest.cc
--- old/squid-3.2.6/src/auth/digest/auth_digest.cc 2013-01-09 02:41:51.000000000 +0100
+++ new/squid-3.2.7/src/auth/digest/auth_digest.cc 2013-02-01 11:55:31.000000000 +0100
@@ -933,10 +933,14 @@
/* 2069 requirements */
+ // return value.
+ Auth::UserRequest::Pointer rv;
/* do we have a username ? */
if (!username || username[0] == '\0') {
- debugs(29, 2, HERE << "Empty or not present username");
- return authDigestLogUsername(username, digest_request);
+ debugs(29, 2, "Empty or not present username");
+ rv = authDigestLogUsername(username, digest_request);
+ safe_free(username);
+ return rv;
}
/* Sanity check of the username.
@@ -944,33 +948,43 @@
* have been redone
*/
if (strchr(username, '"')) {
- debugs(29, 2, HERE << "Unacceptable username '" << username << "'");
- return authDigestLogUsername(username, digest_request);
+ debugs(29, 2, "Unacceptable username '" << username << "'");
+ rv = authDigestLogUsername(username, digest_request);
+ safe_free(username);
+ return rv;
}
/* do we have a realm ? */
if (!digest_request->realm || digest_request->realm[0] == '\0') {
- debugs(29, 2, HERE << "Empty or not present realm");
- return authDigestLogUsername(username, digest_request);
+ debugs(29, 2, "Empty or not present realm");
+ rv = authDigestLogUsername(username, digest_request);
+ safe_free(username);
+ return rv;
}
/* and a nonce? */
if (!digest_request->nonceb64 || digest_request->nonceb64[0] == '\0') {
- debugs(29, 2, HERE << "Empty or not present nonce");
- return authDigestLogUsername(username, digest_request);
+ debugs(29, 2, "Empty or not present nonce");
+ rv = authDigestLogUsername(username, digest_request);
+ safe_free(username);
+ return rv;
}
/* we can't check the URI just yet. We'll check it in the
* authenticate phase, but needs to be given */
if (!digest_request->uri || digest_request->uri[0] == '\0') {
- debugs(29, 2, HERE << "Missing URI field");
- return authDigestLogUsername(username, digest_request);
+ debugs(29, 2, "Missing URI field");
+ rv = authDigestLogUsername(username, digest_request);
+ safe_free(username);
+ return rv;
}
/* is the response the correct length? */
if (!digest_request->response || strlen(digest_request->response) != 32) {
- debugs(29, 2, HERE << "Response length invalid");
- return authDigestLogUsername(username, digest_request);
+ debugs(29, 2, "Response length invalid");
+ rv = authDigestLogUsername(username, digest_request);
+ safe_free(username);
+ return rv;
}
/* check the algorithm is present and supported */
@@ -978,8 +992,10 @@
digest_request->algorithm = xstrndup("MD5", 4);
else if (strcmp(digest_request->algorithm, "MD5")
&& strcmp(digest_request->algorithm, "MD5-sess")) {
- debugs(29, 2, HERE << "invalid algorithm specified!");
- return authDigestLogUsername(username, digest_request);
+ debugs(29, 2, "invalid algorithm specified!");
+ rv = authDigestLogUsername(username, digest_request);
+ safe_free(username);
+ return rv;
}
/* 2617 requirements, indicated by qop */
@@ -988,26 +1004,34 @@
/* check the qop is what we expected. */
if (strcmp(digest_request->qop, QOP_AUTH) != 0) {
/* we received a qop option we didn't send */
- debugs(29, 2, HERE << "Invalid qop option received");
- return authDigestLogUsername(username, digest_request);
+ debugs(29, 2, "Invalid qop option received");
+ rv = authDigestLogUsername(username, digest_request);
+ safe_free(username);
+ return rv;
}
/* check cnonce */
if (!digest_request->cnonce || digest_request->cnonce[0] == '\0') {
- debugs(29, 2, HERE << "Missing cnonce field");
- return authDigestLogUsername(username, digest_request);
+ debugs(29, 2, "Missing cnonce field");
+ rv = authDigestLogUsername(username, digest_request);
+ safe_free(username);
+ return rv;
}
/* check nc */
if (strlen(digest_request->nc) != 8 || strspn(digest_request->nc, "0123456789abcdefABCDEF") != 8) {
- debugs(29, 2, HERE << "invalid nonce count");
- return authDigestLogUsername(username, digest_request);
+ debugs(29, 2, "invalid nonce count");
+ rv = authDigestLogUsername(username, digest_request);
+ safe_free(username);
+ return rv;
}
} else {
/* cnonce and nc both require qop */
if (digest_request->cnonce || digest_request->nc) {
- debugs(29, 2, HERE << "missing qop!");
- return authDigestLogUsername(username, digest_request);
+ debugs(29, 2, "missing qop!");
+ rv = authDigestLogUsername(username, digest_request);
+ safe_free(username);
+ return rv;
}
}
@@ -1017,10 +1041,12 @@
nonce = authenticateDigestNonceFindNonce(digest_request->nonceb64);
if (!nonce) {
/* we couldn't find a matching nonce! */
- debugs(29, 2, HERE << "Unexpected or invalid nonce received");
+ debugs(29, 2, "Unexpected or invalid nonce received");
if (digest_request->user() != NULL)
digest_request->user()->credentials(Auth::Failed);
- return authDigestLogUsername(username, digest_request);
+ rv = authDigestLogUsername(username, digest_request);
+ safe_free(username);
+ return rv;
}
digest_request->nonce = nonce;
@@ -1028,8 +1054,10 @@
/* check that we're not being hacked / the username hasn't changed */
if (nonce->user && strcmp(username, nonce->user->username())) {
- debugs(29, 2, HERE << "Username for the nonce does not equal the username for the request");
- return authDigestLogUsername(username, digest_request);
+ debugs(29, 2, "Username for the nonce does not equal the username for the request");
+ rv = authDigestLogUsername(username, digest_request);
+ safe_free(username);
+ return rv;
}
/* the method we'll check at the authenticate step as well */
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/squid-3.2.6/src/cache_cf.cc new/squid-3.2.7/src/cache_cf.cc
--- old/squid-3.2.6/src/cache_cf.cc 2013-01-09 02:41:51.000000000 +0100
+++ new/squid-3.2.7/src/cache_cf.cc 2013-02-01 11:55:31.000000000 +0100
@@ -2240,7 +2240,7 @@
p->sslcapath = xstrdup(token + 10);
} else if (strncmp(token, "sslcrlfile=", 11) == 0) {
safe_free(p->sslcrlfile);
- p->sslcapath = xstrdup(token + 10);
+ p->sslcrlfile = xstrdup(token + 11);
} else if (strncmp(token, "sslflags=", 9) == 0) {
safe_free(p->sslflags);
p->sslflags = xstrdup(token + 9);
@@ -4135,7 +4135,7 @@
cpuAffinityMap->processes()[i]);
}
storeAppendPrintf(entry, " cores=");
- for (size_t i = 0; i < cpuAffinityMap->processes().size(); ++i) {
+ for (size_t i = 0; i < cpuAffinityMap->cores().size(); ++i) {
storeAppendPrintf(entry, "%s%i", (i ? "," : ""),
cpuAffinityMap->cores()[i]);
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/squid-3.2.6/src/client_side.cc new/squid-3.2.7/src/client_side.cc
--- old/squid-3.2.6/src/client_side.cc 2013-01-09 02:41:51.000000000 +0100
+++ new/squid-3.2.7/src/client_side.cc 2013-02-01 11:55:31.000000000 +0100
@@ -2447,7 +2447,7 @@
clientProcessRequest(ConnStateData *conn, HttpParser *hp, ClientSocketContext *context, const HttpRequestMethod& method, HttpVersion http_ver)
{
ClientHttpRequest *http = context->http;
- HttpRequest *request = NULL;
+ HttpRequest::Pointer request;
bool notedUseOfBuffer = false;
bool chunked = false;
bool mustReplyToOptions = false;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/squid-3.2.6/src/comm/ConnOpener.cc new/squid-3.2.7/src/comm/ConnOpener.cc
--- old/squid-3.2.6/src/comm/ConnOpener.cc 2013-01-09 02:41:51.000000000 +0100
+++ new/squid-3.2.7/src/comm/ConnOpener.cc 2013-02-01 11:55:31.000000000 +0100
@@ -10,6 +10,7 @@
#include "fde.h"
#include "icmp/net_db.h"
#include "ipcache.h"
+#include "ip/tools.h"
#include "SquidTime.h"
CBDATA_NAMESPACED_CLASS_INIT(Comm, ConnOpener);
@@ -155,12 +156,10 @@
/* get a socket open ready for connecting with */
if (temporaryFd_ < 0) {
-#if USE_IPV6
/* outbound sockets have no need to be protocol agnostic. */
- if (conn_->remote.IsIPv4()) {
+ if (!(Ip::EnableIpv6&IPV6_SPECIAL_V4MAPPING) && conn_->remote.IsIPv4()) {
conn_->local.SetIPv4();
}
-#endif
temporaryFd_ = comm_openex(SOCK_STREAM, IPPROTO_TCP, conn_->local, conn_->flags, conn_->tos, conn_->nfmark, host_);
if (temporaryFd_ < 0) {
doneConnecting(COMM_ERR_CONNECT, 0);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/squid-3.2.6/src/defines.h new/squid-3.2.7/src/defines.h
--- old/squid-3.2.6/src/defines.h 2013-01-09 02:41:51.000000000 +0100
+++ new/squid-3.2.7/src/defines.h 2013-02-01 11:55:31.000000000 +0100
@@ -175,6 +175,11 @@
#define IPC_UNIX_STREAM 4
#define IPC_UNIX_DGRAM 5
+/* required for AF_UNIX below to be defined [on FreeBSD] */
+#if HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+
#if HAVE_SOCKETPAIR && defined (AF_UNIX)
#define IPC_STREAM IPC_UNIX_STREAM
#define IPC_DGRAM IPC_UNIX_DGRAM
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/squid-3.2.6/src/external_acl.cc new/squid-3.2.7/src/external_acl.cc
--- old/squid-3.2.6/src/external_acl.cc 2013-01-09 02:41:51.000000000 +0100
+++ new/squid-3.2.7/src/external_acl.cc 2013-02-01 11:55:31.000000000 +0100
@@ -830,8 +830,13 @@
if (acl->def->theHelper->stats.queue_size <= (int)acl->def->theHelper->childs.n_active) {
debugs(82, 2, "aclMatchExternal: \"" << key << "\": queueing a call.");
ch->changeState(ExternalACLLookup::Instance());
- debugs(82, 2, "aclMatchExternal: \"" << key << "\": return -1.");
- return -1; // to get here we have to have an expired cache entry. MUST not use.
+ if (!entry) {
+ debugs(82, 2, "aclMatchExternal: \"" << key << "\": return -1.");
+ return -1; // to get here we have to have an expired cache entry. MUST not use.
+ }
+ // else we have a usable entry in grace period
+ debugs(82, 2, "aclMatchExternal: \"" << key << "\": grace period active, will use results from entry.");
+ // Fall thru to processing below.
} else {
if (!entry) {
debugs(82, 1, "aclMatchExternal: '" << acl->def->name <<
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/squid-3.2.6/src/forward.cc new/squid-3.2.7/src/forward.cc
--- old/squid-3.2.6/src/forward.cc 2013-01-09 02:41:51.000000000 +0100
+++ new/squid-3.2.7/src/forward.cc 2013-02-01 11:55:31.000000000 +0100
@@ -196,6 +196,8 @@
if (entry->store_status == STORE_PENDING) {
if (entry->isEmpty()) {
+ if (!err) // we quit (e.g., fd closed) before an error or content
+ fail(new ErrorState(ERR_READ_ERROR, HTTP_BAD_GATEWAY, request));
assert(err);
errorAppendEntry(entry, err);
err = NULL;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/squid-3.2.6/src/icmp/Icmp4.cc new/squid-3.2.7/src/icmp/Icmp4.cc
--- old/squid-3.2.6/src/icmp/Icmp4.cc 2013-01-09 02:41:51.000000000 +0100
+++ new/squid-3.2.7/src/icmp/Icmp4.cc 2013-02-01 11:55:31.000000000 +0100
@@ -156,6 +156,7 @@
}
Log(to, ' ', NULL, 0, 0);
+ to.FreeAddrInfo(S);
}
void
@@ -221,11 +222,15 @@
icmp = (struct icmphdr *) (void *) (pkt + iphdrlen);
- if (icmp->icmp_type != ICMP_ECHOREPLY)
+ if (icmp->icmp_type != ICMP_ECHOREPLY) {
+ preply.from.FreeAddrInfo(from);
return;
+ }
- if (icmp->icmp_id != icmp_ident)
+ if (icmp->icmp_id != icmp_ident) {
+ preply.from.FreeAddrInfo(from);
return;
+ }
echo = (icmpEchoData *) (void *) (icmp + 1);
@@ -242,6 +247,7 @@
control.SendResult(preply, (sizeof(pingerReplyData) - MAX_PKT4_SZ + preply.psize) );
Log(preply.from, icmp->icmp_type, icmpPktStr[icmp->icmp_type], preply.rtt, preply.hops);
+ preply.from.FreeAddrInfo(from);
}
#endif /* USE_ICMP */
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/squid-3.2.6/src/icmp/Icmp6.cc new/squid-3.2.7/src/icmp/Icmp6.cc
--- old/squid-3.2.6/src/icmp/Icmp6.cc 2013-01-09 02:41:51.000000000 +0100
+++ new/squid-3.2.7/src/icmp/Icmp6.cc 2013-02-01 11:55:31.000000000 +0100
@@ -202,6 +202,7 @@
debugs(42,9, HERE << "x=" << x);
Log(to, 0, NULL, 0, 0);
+ to.FreeAddrInfo(S);
}
/**
@@ -296,11 +297,13 @@
( icmp6header->icmp6_type&0x80 ? icmp6HighPktStr[(int)(icmp6header->icmp6_type&0x7f)] : icmp6LowPktStr[(int)(icmp6header->icmp6_type&0x7f)] )
);
}
+ preply.from.FreeAddrInfo(from);
return;
}
if (icmp6header->icmp6_id != icmp_ident) {
debugs(42, 8, HERE << "dropping Icmp6 read. IDENT check failed. ident=='" << icmp_ident << "'=='" << icmp6header->icmp6_id << "'");
+ preply.from.FreeAddrInfo(from);
return;
}
@@ -337,6 +340,7 @@
/* send results of the lookup back to squid.*/
control.SendResult(preply, (sizeof(pingerReplyData) - PINGER_PAYLOAD_SZ + preply.psize) );
+ preply.from.FreeAddrInfo(from);
}
#endif /* USE_ICMP */
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/squid-3.2.6/src/icmp/pinger.cc new/squid-3.2.7/src/icmp/pinger.cc
--- old/squid-3.2.6/src/icmp/pinger.cc 2013-01-09 02:41:51.000000000 +0100
+++ new/squid-3.2.7/src/icmp/pinger.cc 2013-02-01 11:55:31.000000000 +0100
@@ -71,6 +71,7 @@
#include "Icmp4.h"
#include "Icmp6.h"
#include "IcmpPinger.h"
+#include "ip/tools.h"
#if _SQUID_MSWIN_
@@ -148,6 +149,9 @@
getCurrentTime();
+ // determine IPv4 or IPv6 capabilities before using sockets.
+ Ip::ProbeTransport();
+
_db_init(NULL, debug_args);
debugs(42, 0, "pinger: Initialising ICMP pinger ...");
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/squid-3.2.6/src/ip/testAddress.cc new/squid-3.2.7/src/ip/testAddress.cc
--- old/squid-3.2.6/src/ip/testAddress.cc 2013-01-09 02:41:51.000000000 +0100
+++ new/squid-3.2.7/src/ip/testAddress.cc 2013-02-01 11:55:31.000000000 +0100
@@ -714,6 +714,7 @@
CPPUNIT_ASSERT( memcmp( expect->ai_addr, ipval->ai_addr, expect->ai_addrlen ) == 0 );
freeaddrinfo(expect);
+ anIP.FreeAddrInfo(ipval);
}
void
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/squid-3.2.6/src/mem_node.cc new/squid-3.2.7/src/mem_node.cc
--- old/squid-3.2.6/src/mem_node.cc 2013-01-09 02:41:51.000000000 +0100
+++ new/squid-3.2.7/src/mem_node.cc 2013-02-01 11:55:31.000000000 +0100
@@ -65,8 +65,12 @@
n->write_pending = 0;
}
-mem_node::mem_node(int64_t offset):nodeBuffer(0,offset,data)
-{}
+mem_node::mem_node(int64_t offset) :
+ nodeBuffer(0,offset,data),
+ write_pending(0)
+{
+ *data = 0;
+}
mem_node::~mem_node()
{}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/squid-3.2.6/src/peer_select.cc new/squid-3.2.7/src/peer_select.cc
--- old/squid-3.2.6/src/peer_select.cc 2013-01-09 02:41:51.000000000 +0100
+++ new/squid-3.2.7/src/peer_select.cc 2013-02-01 11:55:31.000000000 +0100
@@ -47,6 +47,7 @@
#include "SquidTime.h"
#include "icmp/net_db.h"
#include "ipcache.h"
+#include "ip/tools.h"
static struct {
int timeouts;
@@ -242,15 +243,18 @@
const bool useOriginalDst = Config.onoff.client_dst_passthru || !req->flags.hostVerified;
const bool choseDirect = fs && fs->code == HIER_DIRECT;
if (isIntercepted && useOriginalDst && choseDirect) {
- // construct a "result" adding the ORIGINAL_DST to the set instead of DIRECT
- Comm::ConnectionPointer p = new Comm::Connection();
- p->remote = req->clientConnectionManager->clientConnection->local;
- p->peerType = fs->code;
- p->setPeer(fs->_peer);
-
- // check for a configured outgoing address for this destination...
- getOutgoingAddress(psstate->request, p);
- psstate->paths->push_back(p);
+ // check the client is still around before using any of its details
+ if (req->clientConnectionManager.valid()) {
+ // construct a "result" adding the ORIGINAL_DST to the set instead of DIRECT
+ Comm::ConnectionPointer p = new Comm::Connection();
+ p->remote = req->clientConnectionManager->clientConnection->local;
+ p->peerType = fs->code;
+ p->setPeer(fs->_peer);
+
+ // check for a configured outgoing address for this destination...
+ getOutgoingAddress(psstate->request, p);
+ psstate->paths->push_back(p);
+ }
// clear the used fs and continue
psstate->servers = fs->next;
@@ -352,6 +356,14 @@
p = new Comm::Connection();
p->remote = ia->in_addrs[n];
+
+ // when IPv6 is disabled we cannot use it
+ if (!Ip::EnableIpv6 && p->remote.IsIPv6()) {
+ const char *host = (fs->_peer ? fs->_peer->host : psstate->request->GetHost());
+ ipcacheMarkBadAddr(host, p->remote);
+ continue;
+ }
+
if (fs->_peer)
p->remote.SetPort(fs->_peer->http_port);
else
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/squid-3.2.6/src/ssl/support.cc new/squid-3.2.7/src/ssl/support.cc
--- old/squid-3.2.6/src/ssl/support.cc 2013-01-09 02:41:51.000000000 +0100
+++ new/squid-3.2.7/src/ssl/support.cc 2013-02-01 11:55:31.000000000 +0100
@@ -400,6 +400,11 @@
"NO_TLSv1_2", SSL_OP_NO_TLSv1_2
},
#endif
+#if SSL_OP_NO_COMPRESSION
+ {
+ "No_Compression", SSL_OP_NO_COMPRESSION
+ },
+#endif
{
"", 0
},
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/squid-3.2.6/src/store_client.cc new/squid-3.2.7/src/store_client.cc
--- old/squid-3.2.6/src/store_client.cc 2013-01-09 02:41:51.000000000 +0100
+++ new/squid-3.2.7/src/store_client.cc 2013-02-01 11:55:31.000000000 +0100
@@ -61,7 +61,7 @@
static StoreIOState::STRCB storeClientReadHeader;
static void storeClientCopy2(StoreEntry * e, store_client * sc);
static EVH storeClientCopyEvent;
-static int CheckQuickAbort2(StoreEntry * entry);
+static bool CheckQuickAbortIsReasonable(StoreEntry * entry);
static void CheckQuickAbort(StoreEntry * entry);
CBDATA_CLASS_INIT(store_client);
@@ -781,72 +781,72 @@
return npend;
}
-/* return 1 if the request should be aborted */
-static int
-CheckQuickAbort2(StoreEntry * entry)
+/* return true if the request should be aborted */
+static bool
+CheckQuickAbortIsReasonable(StoreEntry * entry)
{
MemObject * const mem = entry->mem_obj;
assert(mem);
- debugs(90, 3, "CheckQuickAbort2: entry=" << entry << ", mem=" << mem);
+ debugs(90, 3, "entry=" << entry << ", mem=" << mem);
if (mem->request && !mem->request->flags.cachable) {
- debugs(90, 3, "CheckQuickAbort2: YES !mem->request->flags.cachable");
- return 1;
+ debugs(90, 3, "quick-abort? YES !mem->request->flags.cachable");
+ return true;
}
if (EBIT_TEST(entry->flags, KEY_PRIVATE)) {
- debugs(90, 3, "CheckQuickAbort2: YES KEY_PRIVATE");
- return 1;
+ debugs(90, 3, "quick-abort? YES KEY_PRIVATE");
+ return true;
}
int64_t expectlen = entry->getReply()->content_length + entry->getReply()->hdr_sz;
- if (expectlen < 0)
+ if (expectlen < 0) {
/* expectlen is < 0 if *no* information about the object has been received */
- return 1;
+ debugs(90, 3, "quick-abort? YES no object data received yet");
+ return true;
+ }
- int64_t curlen = mem->endOffset ();
+ int64_t curlen = mem->endOffset();
if (Config.quickAbort.min < 0) {
- debugs(90, 3, "CheckQuickAbort2: NO disabled");
- return 0;
+ debugs(90, 3, "quick-abort? NO disabled");
+ return false;
}
- int64_t roffLimit = mem->request->getRangeOffsetLimit();
-
- if ( roffLimit < 0 && mem->request && mem->request->range ) {
+ if (mem->request && mem->request->range && mem->request->getRangeOffsetLimit() < 0) {
/* Don't abort if the admin has configured range_ofset -1 to download fully for caching. */
- debugs(90, 3, "CheckQuickAbort2: NO admin configured range replies to full-download");
- return 0;
+ debugs(90, 3, "quick-abort? NO admin configured range replies to full-download");
+ return false;
}
if (curlen > expectlen) {
- debugs(90, 3, "CheckQuickAbort2: YES bad content length");
- return 1;
+ debugs(90, 3, "quick-abort? YES bad content length");
+ return true;
}
if ((expectlen - curlen) < (Config.quickAbort.min << 10)) {
- debugs(90, 3, "CheckQuickAbort2: NO only little more left");
- return 0;
+ debugs(90, 3, "quick-abort? NO only a little more object left to receive");
+ return false;
}
if ((expectlen - curlen) > (Config.quickAbort.max << 10)) {
- debugs(90, 3, "CheckQuickAbort2: YES too much left to go");
- return 1;
+ debugs(90, 3, "quick-abort? YES too much left to go");
+ return true;
}
if (expectlen < 100) {
- debugs(90, 3, "CheckQuickAbort2: NO avoid FPE");
- return 0;
+ debugs(90, 3, "quick-abort? NO avoid FPE");
+ return false;
}
if ((curlen / (expectlen / 100)) > (Config.quickAbort.pct)) {
- debugs(90, 3, "CheckQuickAbort2: NO past point of no return");
- return 0;
+ debugs(90, 3, "quick-abort? NO past point of no return");
+ return false;
}
- debugs(90, 3, "CheckQuickAbort2: YES default, returning 1");
- return 1;
+ debugs(90, 3, "quick-abort? YES default");
+ return true;
}
static void
@@ -863,7 +863,7 @@
if (EBIT_TEST(entry->flags, ENTRY_SPECIAL))
return;
- if (CheckQuickAbort2(entry) == 0)
+ if (!CheckQuickAbortIsReasonable(entry))
return;
entry->abort();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/squid-3.2.6/src/store_dir.cc new/squid-3.2.7/src/store_dir.cc
--- old/squid-3.2.6/src/store_dir.cc 2013-01-09 02:41:51.000000000 +0100
+++ new/squid-3.2.7/src/store_dir.cc 2013-02-01 11:55:31.000000000 +0100
@@ -907,6 +907,10 @@
void
StoreHashIndex::create()
{
+ if (Config.cacheSwap.n_configured == 0) {
+ debugs(0, DBG_PARSE_NOTE(DBG_CRITICAL), "No cache_dir stores are configured.");
+ }
+
for (int i = 0; i < Config.cacheSwap.n_configured; ++i) {
if (dir(i).active())
store(i)->create();
@@ -934,6 +938,12 @@
void
StoreHashIndex::init()
{
+ if (Config.Store.objectsPerBucket <= 0)
+ fatal("'store_objects_per_bucket' should be larger than 0.");
+
+ if (Config.Store.avgObjectSize <= 0)
+ fatal("'store_avg_object_size' should be larger than 0.");
+
/* Calculate size of hash table (maximum currently 64k buckets). */
/* this is very bogus, its specific to the any Store maintaining an
* in-core index, not global */
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/squid-3.2.6/src/wccp.cc new/squid-3.2.7/src/wccp.cc
--- old/squid-3.2.6/src/wccp.cc 2013-01-09 02:41:51.000000000 +0100
+++ new/squid-3.2.7/src/wccp.cc 2013-02-01 11:55:31.000000000 +0100
@@ -302,13 +302,18 @@
debugs(80, 6, "wccpHereIam: Called");
wccp_here_i_am.id = last_id;
- comm_udp_send(theWccpConnection,
- &wccp_here_i_am,
- sizeof(wccp_here_i_am),
- 0);
+ double interval = 10.0; // TODO: make this configurable, possibly negotiate with the router.
+ errno = 0;
+ ssize_t sent = comm_udp_send(theWccpConnection, &wccp_here_i_am, sizeof(wccp_here_i_am), 0);
+
+ // if we failed to send the whole lot, try again at a shorter interval (20%)
+ if (sent != sizeof(wccp_here_i_am)) {
+ debugs(80, 2, "ERROR: failed to send WCCP HERE_I_AM packet: " << xstrerror());
+ interval = 2.0;
+ }
if (!eventFind(wccpHereIam, NULL))
- eventAdd("wccpHereIam", wccpHereIam, NULL, 10.0, 1);
+ eventAdd("wccpHereIam", wccpHereIam, NULL, interval, 1);
}
static void
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/squid-3.2.6/src/wccp2.cc new/squid-3.2.7/src/wccp2.cc
--- old/squid-3.2.6/src/wccp2.cc 2013-01-09 02:41:51.000000000 +0100
+++ new/squid-3.2.7/src/wccp2.cc 2013-02-01 11:55:31.000000000 +0100
@@ -592,6 +592,7 @@
/* The password field, for the MD5 hash, needs to be 8 bytes and NUL padded. */
memset(pwd, 0, sizeof(pwd));
strncpy(pwd, password, sizeof(pwd));
+ pwd[sizeof(pwd) - 1] = '\0';
ws = (struct wccp2_security_md5_t *) ptr;
assert(ntohs(ws->security_type) == WCCP2_SECURITY_INFO);
@@ -660,6 +661,7 @@
/* The password field, for the MD5 hash, needs to be 8 bytes and NUL padded. */
memset(pwd, 0, sizeof(pwd));
strncpy(pwd, srv->wccp_password, sizeof(pwd));
+ pwd[sizeof(pwd) - 1] = '\0';
/* Take a copy of the challenge: we need to NUL it before comparing */
memcpy(md5_challenge, ws->security_implementation, 16);
@@ -1008,7 +1010,8 @@
#if defined(IP_MTU_DISCOVER) && defined(IP_PMTUDISC_DONT)
{
int i = IP_PMTUDISC_DONT;
- setsockopt(theWccp2Connection, SOL_IP, IP_MTU_DISCOVER, &i, sizeof i);
+ if (setsockopt(theWccp2Connection, SOL_IP, IP_MTU_DISCOVER, &i, sizeof i) < 0)
+ debugs(80, 2, "WARNING: Path MTU discovery could not be disabled on FD " << theWccp2Connection << ": " << xstrerror());
}
#endif
@@ -1047,8 +1050,9 @@
/* Disconnect the sending socket. Note: FreeBSD returns error
* but disconnects anyway so we have to just assume it worked
*/
- if (wccp2_numrouters > 1)
- connect(theWccp2Connection, (struct sockaddr *) &null, router_len);
+ if (wccp2_numrouters > 1) {
+ (void)connect(theWccp2Connection, (struct sockaddr *) &null, router_len);
+ }
}
service_list_ptr = service_list_ptr->next;
@@ -1606,10 +1610,9 @@
&service_list_ptr->wccp_packet,
service_list_ptr->wccp_packet_size);
} else {
- send(theWccp2Connection,
- &service_list_ptr->wccp_packet,
- service_list_ptr->wccp_packet_size,
- 0);
+ errno = 0;
+ if (send(theWccp2Connection, &service_list_ptr->wccp_packet, service_list_ptr->wccp_packet_size, 0) < static_cast<int>(service_list_ptr->wccp_packet_size))
+ debugs(80, 2, "ERROR: failed to send WCCPv2 HERE_I_AM packet to " << router << " : " << xstrerror());
}
}
@@ -1983,20 +1986,21 @@
if (ntohl(router_list_ptr->num_caches)) {
/* send packet */
+ /* FIXME INET6 : drop temp conversion */
+ Ip::Address tmp_rtr(router);
+
if (wccp2_numrouters > 1) {
- /* FIXME INET6 : drop temp conversion */
- Ip::Address tmp_rtr(router);
comm_udp_sendto(theWccp2Connection,
tmp_rtr,
&wccp_packet,
offset);
} else {
- send(theWccp2Connection,
- &wccp_packet,
- offset,
- 0);
+ errno = 0;
+ if (send(theWccp2Connection, &wccp_packet, offset, 0) < static_cast<int>(offset))
+ debugs(80, 2, "ERROR: failed to send WCCPv2 HERE_I_AM packet to " << tmp_rtr << " : " << xstrerror());
}
}
+ safe_free(weight);
}
service_list_ptr = service_list_ptr->next;
++++++ squid-3.2.6.tar.bz2.asc -> squid-3.2.7.tar.bz2.asc ++++++
--- /work/SRC/openSUSE:Factory/squid/squid-3.2.6.tar.bz2.asc 2013-01-14 09:49:46.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.squid.new/squid-3.2.7.tar.bz2.asc 2013-02-22 17:02:46.000000000 +0100
@@ -1,8 +1,8 @@
-File: squid-3.2.6.tar.bz2
-Date: Wed Jan 9 02:06:27 UTC 2013
-Size: 2893158
-MD5 : 87915ad83aebafc7af6871c770b23339
-SHA1: 00d6020959bc2ebb5ce1e1037211bb143c6ec1e4
+File: squid-3.2.7.tar.bz2
+Date: Fri Feb 1 11:24:08 UTC 2013
+Size: 2893325
+MD5 : 3e4d21b24c39d5066791017919866a64
+SHA1: 3e22bd64258a4232c51d7bfd0344a6c54522cab5
Key : 0xFF5CF463 <squid3(a)treenet.co.nz>
fingerprint = EA31 CC5E 9488 E516 8D2D CC5E B268 E706 FF5C F463
keyring = http://www.squid-cache.org/pgp.asc
@@ -10,11 +10,11 @@
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)
-iQEcBAABAgAGBQJQ7NRJAAoJELJo5wb/XPRjRe4H/RHn9uno3yFoGdGvUKISB9rK
-q458KYXJpSNi5PgUjykS9p/lfqFYPaDVRjhlcwReLdVepE0TqNSB2c9sAHmjNWDv
-kWT3FORiWcDe69LuYZx1q88MMJ95vBZI/c91zTFDfCMi0tq8lopfDOfU9sFhkeaB
-+8vGVFOx+IF79SZCq8mqdrjGpQPapuRA9Tx0Yj49iYsyVVTkwqJafjTfTyCk0udA
-GivODIFZcjvz4zDRMwsI4z7LkOsQuyfYM7jiUCOc2O9JI6WqVkor5b01CxdPtZdt
-UnGfBaGMOPed6kWy45fiiTx2qLaCcwoIvXv20yFQErSfIukSwx5h5CkuGll5EpU=
-=hlS1
+iQEcBAABAgAGBQJRC6h9AAoJELJo5wb/XPRjuWsH/iX7FNcwSuMihU1Lf4tMjpzF
+XnvpVsfidTTdYXW8YBT6+sSD3ocBfCv+/fnUlYzUCovTxapZmratuLRCcSed9/UM
+7yZIpI05R+WDMBDQMv807JF/MKIIo83aRGcfkY+8n5k0mLIFdyx2KWZLg2q7Ngou
+/5n9vxqr2afak3DODKBHG28BG3McdjJ+oiFaYb7jHuiLkBafRdvhoGm4yVJCP2gY
+Znf0VXqGD0DdlTFWh3uUX8hDSZbTdiyTTl93KJdrnujUbx6zhTNMRZcaSclK8pIO
+veqb4jFMawNgZDn2mXXea5lStYB2h5u4KcnZRIOW0DpCd0Ylud6EbAQMSbRdhF4=
+=j8x/
-----END PGP SIGNATURE-----
--
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 snapper for openSUSE:Factory checked in at 2013-02-22 17:02:09
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/snapper (Old)
and /work/SRC/openSUSE:Factory/.snapper.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "snapper", Maintainer is "ASchnell(a)suse.com"
Changes:
--------
--- /work/SRC/openSUSE:Factory/snapper/snapper.changes 2013-02-21 15:37:26.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.snapper.new/snapper.changes 2013-02-22 17:02:10.000000000 +0100
@@ -1,0 +2,5 @@
+Fri Feb 22 11:49:23 CET 2013 - aschnell(a)suse.de
+
+- use sendfile system-call instead of read/write loop
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ snapper-0.1.2.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/snapper-0.1.2/snapper/AppUtil.cc new/snapper-0.1.2/snapper/AppUtil.cc
--- old/snapper-0.1.2/snapper/AppUtil.cc 2013-02-08 10:51:31.000000000 +0100
+++ new/snapper-0.1.2/snapper/AppUtil.cc 2013-02-22 14:31:31.000000000 +0100
@@ -30,6 +30,7 @@
#include <sys/utsname.h>
#include <sys/ioctl.h>
#include <sys/types.h>
+#include <sys/sendfile.h>
#include <pwd.h>
#include <dirent.h>
#include <mntent.h>
@@ -90,45 +91,19 @@
bool
copyfile(int src_fd, int dest_fd)
{
- struct stat src_stat;
- int r1 = fstat(src_fd, &src_stat);
- if (r1 != 0)
- {
- y2err("fstat failed errno:" << errno << " (" << stringerror(errno) << ")");
- return false;
- }
-
- posix_fadvise(src_fd, 0, src_stat.st_size, POSIX_FADV_SEQUENTIAL);
-
- static_assert(sizeof(off_t) >= 8, "off_t is too small");
-
- const off_t block_size = 4096;
-
- char block[block_size];
-
- off_t length = src_stat.st_size;
- while (length > 0)
+ while (true)
{
- off_t t = min(block_size, length);
+ // use small value for count to make function better interruptible
+ ssize_t r1 = sendfile(dest_fd, src_fd, NULL, 0xffff);
+ if (r1 == 0)
+ return true;
- int r2 = read(src_fd, block, t);
- if (r2 != t)
+ if (r1 < 0)
{
- y2err("read failed errno:" << errno << " (" << stringerror(errno) << ")");
+ y2err("sendfile failed errno:" << errno << " (" << stringerror(errno) << ")");
return false;
}
-
- int r3 = write(dest_fd, block, t);
- if (r3 != t)
- {
- y2err("write failed errno:" << errno << " (" << stringerror(errno) << ")");
- return false;
- }
-
- length -= t;
}
-
- return true;
}
--
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 snapper for openSUSE:12.3 checked in at 2013-02-22 17:02:11
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:12.3/snapper (Old)
and /work/SRC/openSUSE:12.3/.snapper.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "snapper", Maintainer is "ASchnell(a)suse.com"
Changes:
--------
--- /work/SRC/openSUSE:12.3/snapper/snapper.changes 2013-02-21 15:37:31.000000000 +0100
+++ /work/SRC/openSUSE:12.3/.snapper.new/snapper.changes 2013-02-22 17:02:12.000000000 +0100
@@ -1,0 +2,5 @@
+Fri Feb 22 11:49:23 CET 2013 - aschnell(a)suse.de
+
+- use sendfile system-call instead of read/write loop
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ snapper-0.1.2.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/snapper-0.1.2/snapper/AppUtil.cc new/snapper-0.1.2/snapper/AppUtil.cc
--- old/snapper-0.1.2/snapper/AppUtil.cc 2013-02-08 10:51:31.000000000 +0100
+++ new/snapper-0.1.2/snapper/AppUtil.cc 2013-02-22 14:31:31.000000000 +0100
@@ -30,6 +30,7 @@
#include <sys/utsname.h>
#include <sys/ioctl.h>
#include <sys/types.h>
+#include <sys/sendfile.h>
#include <pwd.h>
#include <dirent.h>
#include <mntent.h>
@@ -90,45 +91,19 @@
bool
copyfile(int src_fd, int dest_fd)
{
- struct stat src_stat;
- int r1 = fstat(src_fd, &src_stat);
- if (r1 != 0)
- {
- y2err("fstat failed errno:" << errno << " (" << stringerror(errno) << ")");
- return false;
- }
-
- posix_fadvise(src_fd, 0, src_stat.st_size, POSIX_FADV_SEQUENTIAL);
-
- static_assert(sizeof(off_t) >= 8, "off_t is too small");
-
- const off_t block_size = 4096;
-
- char block[block_size];
-
- off_t length = src_stat.st_size;
- while (length > 0)
+ while (true)
{
- off_t t = min(block_size, length);
+ // use small value for count to make function better interruptible
+ ssize_t r1 = sendfile(dest_fd, src_fd, NULL, 0xffff);
+ if (r1 == 0)
+ return true;
- int r2 = read(src_fd, block, t);
- if (r2 != t)
+ if (r1 < 0)
{
- y2err("read failed errno:" << errno << " (" << stringerror(errno) << ")");
+ y2err("sendfile failed errno:" << errno << " (" << stringerror(errno) << ")");
return false;
}
-
- int r3 = write(dest_fd, block, t);
- if (r3 != t)
- {
- y2err("write failed errno:" << errno << " (" << stringerror(errno) << ")");
- return false;
- }
-
- length -= t;
}
-
- return true;
}
--
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 python-zc_buildout for openSUSE:Factory checked in at 2013-02-22 17:01:55
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-zc_buildout (Old)
and /work/SRC/openSUSE:Factory/.python-zc_buildout.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-zc_buildout", Maintainer is ""
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-zc_buildout/python-zc_buildout.changes 2012-03-16 13:24:08.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.python-zc_buildout.new/python-zc_buildout.changes 2013-02-22 17:01:56.000000000 +0100
@@ -1,0 +2,25 @@
+Thu Feb 21 15:48:40 UTC 2013 - p.drouand(a)gmail.com
+- Update to version 1.7.1:
+ * Fixed: Constraints intended to prevent upgrading to
+ buildout-2-compatible recipes weren't expressed correctly, leading to
+ unintendional use of zc.recipe.egg-2.0.0a3.
+- Update to version 1.7.0:
+ * Unless version requirements are specified, buildout won't upgrade
+ itself past version 1.
+ * Versions in versions sections can now be simple constraints, like <2.0dev
+ in addition to being simple versions.
+ * This is used to prevent upgrading zc.recipe.egg and zc.recipe.testrunner
+ past version 1.
+ * If buildout is bootstrapped with a non-final release, it won't downgrade
+ itself to a final release.
+ * Fix: distribute 0.6.33 broke Python 2.4 compatibility
+ remove data_files from setup.py, which was installing README.txt in
+ current directory during installation [Domen Kožar]
+ Windows fix: use cli-64.exe/cli.exe depending on 64/32 bit and try cli.exe
+ if cli-64.exe is not found, fixing 9c6be7ac6d218f09e33725e07dccc4af74d8cf97
+ * Windows fix: buildout init was broken, re.sub does not like a single backslash
+ * fixed all builds on travis-ci
+ use os._exit insted of sys.exit after ugrade forking
+ Revert cfa0478937d16769c268bf51e60e69cd3ead50f3, it only broke a feature
+
+-------------------------------------------------------------------
Old:
----
zc.buildout-1.5.2.tar.bz2
New:
----
zc.buildout-1.7.1.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-zc_buildout.spec ++++++
--- /var/tmp/diff_new_pack.Gsc5IU/_old 2013-02-22 17:01:58.000000000 +0100
+++ /var/tmp/diff_new_pack.Gsc5IU/_new 2013-02-22 17:01:58.000000000 +0100
@@ -1,7 +1,7 @@
#
# spec file for package python-zc.buildout
#
-# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# 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
@@ -19,7 +19,7 @@
%{!?python_sitearch: %global python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")}
Name: python-zc_buildout
-Version: 1.5.2
+Version: 1.7.1
Release: 0
Url: http://pypi.python.org/pypi/zc.buildout
Summary: System for managing development buildouts
++++++ zc.buildout-1.5.2.tar.bz2 -> zc.buildout-1.7.1.tar.bz2 ++++++
++++ 12412 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 python-simplejson for openSUSE:Factory checked in at 2013-02-22 17:01:01
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-simplejson (Old)
and /work/SRC/openSUSE:Factory/.python-simplejson.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-simplejson", Maintainer is "kkaempf(a)suse.com"
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-simplejson/python-simplejson.changes 2013-01-20 08:18:02.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.python-simplejson.new/python-simplejson.changes 2013-02-22 17:01:03.000000000 +0100
@@ -1,0 +2,20 @@
+Thu Feb 21 15:39:09 UTC 2013 - p.drouand(a)gmail.com
+
+- Update to version 3.0.8:
+ * Fix a Python 2.x compiler warning for narrow unicode builds
+ https://github.com/simplejson/simplejson/issues/56
+
+-------------------------------------------------------------------
+Thu Jan 17 14:19:25 UTC 2013 - toddrme2178(a)gmail.com
+
+- Update to 3.0.7
+ * NOTE: this release only changes the license.
+ * simplejson is now dual-licensed software, MIT or AFL v2.1. It is
+ also made explicit that this code is also licensed to the PSF under
+ a Contributor Agreement.
+- Update to 3.0.7
+ * Fix for major Python 2.x ensure_ascii=False encoding regression
+ introduced in simplejson 3.0.0. If you use this setting, please
+ upgrade immediately.
+
+-------------------------------------------------------------------
--- /work/SRC/openSUSE:Factory/python-simplejson/python3-simplejson.changes 2013-01-20 08:18:02.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.python-simplejson.new/python3-simplejson.changes 2013-02-22 17:01:03.000000000 +0100
@@ -1,0 +2,25 @@
+Thu Feb 21 15:39:09 UTC 2013 - p.drouand(a)gmail.com
+
+- Update to version 3.0.8:
+ * Fix a Python 2.x compiler warning for narrow unicode builds
+ https://github.com/simplejson/simplejson/issues/56
+
+-------------------------------------------------------------------
+Wed Jan 30 12:00:26 UTC 2013 - saschpe(a)suse.de
+
+- Use 2to3 to fix build, disable testsuite for now
+
+-------------------------------------------------------------------
+Thu Jan 17 14:19:25 UTC 2013 - toddrme2178(a)gmail.com
+
+- Update to 3.0.7
+ * NOTE: this release only changes the license.
+ * simplejson is now dual-licensed software, MIT or AFL v2.1. It is
+ also made explicit that this code is also licensed to the PSF under
+ a Contributor Agreement.
+- Update to 3.0.7
+ * Fix for major Python 2.x ensure_ascii=False encoding regression
+ introduced in simplejson 3.0.0. If you use this setting, please
+ upgrade immediately.
+
+-------------------------------------------------------------------
Old:
----
simplejson-3.0.5.tar.gz
New:
----
simplejson-3.0.8.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-simplejson.spec ++++++
--- /var/tmp/diff_new_pack.7rYe9P/_old 2013-02-22 17:01:05.000000000 +0100
+++ /var/tmp/diff_new_pack.7rYe9P/_new 2013-02-22 17:01:05.000000000 +0100
@@ -16,15 +16,14 @@
#
-%define modname simplejson
-Name: python-%{modname}
-Version: 3.0.5
+Name: python-simplejson
+Version: 3.0.8
Release: 0
Url: http://github.com/simplejson/simplejson
Summary: Simple, fast, extensible JSON encoder/decoder for Python
-License: MIT
+License: MIT or AFL-2.1
Group: Development/Languages/Python
-Source: http://pypi.python.org/packages/source/s/%{modname}/%{modname}-%{version}.t…
+Source: http://pypi.python.org/packages/source/s/simplejson/simplejson-%{version}.t…
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: python-devel
BuildRequires: python-distribute
@@ -41,7 +40,7 @@
serious speed boost.
%prep
-%setup -q -n %{modname}-%{version}
+%setup -q -n simplejson-%{version}
%build
CFLAGS="%{optflags} -fno-strict-aliasing" python setup.py build
@@ -55,7 +54,7 @@
%files
%defattr(-,root,root)
%doc CHANGES.txt LICENSE.txt README.rst
-%{python_sitearch}/%{modname}/
-%{python_sitearch}/%{modname}-%{version}-py%{py_ver}.egg-info
+%{python_sitearch}/simplejson/
+%{python_sitearch}/simplejson-%{version}-py%{py_ver}.egg-info
%changelog
++++++ python3-simplejson.spec ++++++
--- /var/tmp/diff_new_pack.7rYe9P/_old 2013-02-22 17:01:05.000000000 +0100
+++ /var/tmp/diff_new_pack.7rYe9P/_new 2013-02-22 17:01:05.000000000 +0100
@@ -16,17 +16,17 @@
#
-%define modname simplejson
-Name: python3-%{modname}
-Version: 3.0.5
+Name: python3-simplejson
+Version: 3.0.8
Release: 0
Url: http://github.com/simplejson/simplejson
Summary: Simple, fast, extensible JSON encoder/decoder for Python
-License: MIT
+License: MIT or AFL-2.1
Group: Development/Languages/Python
-Source: http://pypi.python.org/packages/source/s/%{modname}/%{modname}-%{version}.t…
+Source: http://pypi.python.org/packages/source/s/simplejson/simplejson-%{version}.t…
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: python3
+BuildRequires: python3-2to3
BuildRequires: python3-devel
BuildRequires: python3-distribute
Requires: python3-coverage
@@ -39,23 +39,23 @@
serious speed boost.
%prep
-%setup -q -n %{modname}-%{version}
+%setup -q -n simplejson-%{version}
%build
-python3 setup.py build
+2to3 -w -n ./
+CFLAGS="%{optflags} -fno-strict-aliasing" python3 setup.py build
%install
python3 setup.py install --prefix=%{_prefix} --root=%{buildroot}
-%check
-%if 0%{?suse_version} >= 1230
-python3 setup.py test
-%endif
+#NOTE(saschpe): Recursion error, check back:
+#%%check
+#python3 setup.py test
%files
%defattr(-,root,root)
%doc CHANGES.txt LICENSE.txt README.rst
-%{python3_sitearch}/%{modname}/
-%{python3_sitearch}/%{modname}-%{version}-py%{py3_ver}.egg-info
+%{python3_sitearch}/simplejson/
+%{python3_sitearch}/simplejson-%{version}-py%{py3_ver}.egg-info
%changelog
++++++ simplejson-3.0.5.tar.gz -> simplejson-3.0.8.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/simplejson-3.0.5/CHANGES.txt new/simplejson-3.0.8/CHANGES.txt
--- old/simplejson-3.0.5/CHANGES.txt 2013-01-03 20:30:27.000000000 +0100
+++ new/simplejson-3.0.8/CHANGES.txt 2013-02-19 19:23:19.000000000 +0100
@@ -1,3 +1,22 @@
+Version 3.0.8 released 2013-02-19
+
+* Fix a Python 2.x compiler warning for narrow unicode builds
+ https://github.com/simplejson/simplejson/issues/56
+
+Version 3.0.7 released 2013-01-11
+
+* NOTE: this release only changes the license.
+* simplejson is now dual-licensed software, MIT or AFL v2.1. It is
+ also made explicit that this code is also licensed to the PSF under
+ a Contributor Agreement.
+
+Version 3.0.6 released 2013-01-11
+
+* Fix for major Python 2.x ensure_ascii=False encoding regression
+ introduced in simplejson 3.0.0. If you use this setting, please
+ upgrade immediately.
+ https://github.com/simplejson/simplejson/issues/50
+
Version 3.0.5 released 2013-01-03
* NOTE: this release only changes the tests, it is
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/simplejson-3.0.5/LICENSE.txt new/simplejson-3.0.8/LICENSE.txt
--- old/simplejson-3.0.5/LICENSE.txt 2012-05-11 00:04:51.000000000 +0200
+++ new/simplejson-3.0.8/LICENSE.txt 2013-01-11 19:16:10.000000000 +0100
@@ -1,3 +1,12 @@
+simplejson is dual-licensed software. It is available under the terms
+of the MIT license, or the Academic Free License version 2.1. The full
+text of each license agreement is included below. This code is also
+licensed to the Python Software Foundation (PSF) under a Contributor
+Agreement.
+
+MIT License
+===========
+
Copyright (c) 2006 Bob Ippolito
Permission is hereby granted, free of charge, to any person obtaining a copy of
@@ -17,3 +26,54 @@
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
+
+Academic Free License v. 2.1
+============================
+
+Copyright (c) 2006 Bob Ippolito. All rights reserved.
+
+This Academic Free License (the "License") applies to any original work of authorship (the "Original Work") whose owner (the "Licensor") has placed the following notice immediately following the copyright notice for the Original Work:
+
+Licensed under the Academic Free License version 2.1
+
+1) Grant of Copyright License. Licensor hereby grants You a world-wide, royalty-free, non-exclusive, perpetual, sublicenseable license to do the following:
+
+a) to reproduce the Original Work in copies;
+
+b) to prepare derivative works ("Derivative Works") based upon the Original Work;
+
+c) to distribute copies of the Original Work and Derivative Works to the public;
+
+d) to perform the Original Work publicly; and
+
+e) to display the Original Work publicly.
+
+2) Grant of Patent License. Licensor hereby grants You a world-wide, royalty-free, non-exclusive, perpetual, sublicenseable license, under patent claims owned or controlled by the Licensor that are embodied in the Original Work as furnished by the Licensor, to make, use, sell and offer for sale the Original Work and Derivative Works.
+
+3) Grant of Source Code License. The term "Source Code" means the preferred form of the Original Work for making modifications to it and all available documentation describing how to modify the Original Work. Licensor hereby agrees to provide a machine-readable copy of the Source Code of the Original Work along with each copy of the Original Work that Licensor distributes. Licensor reserves the right to satisfy this obligation by placing a machine-readable copy of the Source Code in an information repository reasonably calculated to permit inexpensive and convenient access by You for as long as Licensor continues to distribute the Original Work, and by publishing the address of that information repository in a notice immediately following the copyright notice that applies to the Original Work.
+
+4) Exclusions From License Grant. Neither the names of Licensor, nor the names of any contributors to the Original Work, nor any of their trademarks or service marks, may be used to endorse or promote products derived from this Original Work without express prior written permission of the Licensor. Nothing in this License shall be deemed to grant any rights to trademarks, copyrights, patents, trade secrets or any other intellectual property of Licensor except as expressly stated herein. No patent license is granted to make, use, sell or offer to sell embodiments of any patent claims other than the licensed claims defined in Section 2. No right is granted to the trademarks of Licensor even if such marks are included in the Original Work. Nothing in this License shall be interpreted to prohibit Licensor from licensing under different terms from this License any Original Work that Licensor otherwise would have a right to license.
+
+5) This section intentionally omitted.
+
+6) Attribution Rights. You must retain, in the Source Code of any Derivative Works that You create, all copyright, patent or trademark notices from the Source Code of the Original Work, as well as any notices of licensing and any descriptive text identified therein as an "Attribution Notice." You must cause the Source Code for any Derivative Works that You create to carry a prominent Attribution Notice reasonably calculated to inform recipients that You have modified the Original Work.
+
+7) Warranty of Provenance and Disclaimer of Warranty. Licensor warrants that the copyright in and to the Original Work and the patent rights granted herein by Licensor are owned by the Licensor or are sublicensed to You under the terms of this License with the permission of the contributor(s) of those copyrights and patent rights. Except as expressly stated in the immediately proceeding sentence, the Original Work is provided under this License on an "AS IS" BASIS and WITHOUT WARRANTY, either express or implied, including, without limitation, the warranties of NON-INFRINGEMENT, MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY OF THE ORIGINAL WORK IS WITH YOU. This DISCLAIMER OF WARRANTY constitutes an essential part of this License. No license to Original Work is granted hereunder except under this disclaimer.
+
+8) Limitation of Liability. Under no circumstances and under no legal theory, whether in tort (including negligence), contract, or otherwise, shall the Licensor be liable to any person for any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or the use of the Original Work including, without limitation, damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses. This limitation of liability shall not apply to liability for death or personal injury resulting from Licensor's negligence to the extent applicable law prohibits such limitation. Some jurisdictions do not allow the exclusion or limitation of incidental or consequential damages, so this exclusion and limitation may not apply to You.
+
+9) Acceptance and Termination. If You distribute copies of the Original Work or a Derivative Work, You must make a reasonable effort under the circumstances to obtain the express assent of recipients to the terms of this License. Nothing else but this License (or another written agreement between Licensor and You) grants You permission to create Derivative Works based upon the Original Work or to exercise any of the rights granted in Section 1 herein, and any attempt to do so except under the terms of this License (or another written agreement between Licensor and You) is expressly prohibited by U.S. copyright law, the equivalent laws of other countries, and by international treaty. Therefore, by exercising any of the rights granted to You in Section 1 herein, You indicate Your acceptance of this License and all of its terms and conditions.
+
+10) Termination for Patent Action. This License shall terminate automatically and You may no longer exercise any of the rights granted to You by this License as of the date You commence an action, including a cross-claim or counterclaim, against Licensor or any licensee alleging that the Original Work infringes a patent. This termination provision shall not apply for an action alleging patent infringement by combinations of the Original Work with other software or hardware.
+
+11) Jurisdiction, Venue and Governing Law. Any action or suit relating to this License may be brought only in the courts of a jurisdiction wherein the Licensor resides or in which Licensor conducts its primary business, and under the laws of that jurisdiction excluding its conflict-of-law provisions. The application of the United Nations Convention on Contracts for the International Sale of Goods is expressly excluded. Any use of the Original Work outside the scope of this License or after its termination shall be subject to the requirements and penalties of the U.S. Copyright Act, 17 U.S.C. § 101 et seq., the equivalent laws of other countries, and international treaty. This section shall survive the termination of this License.
+
+12) Attorneys Fees. In any action to enforce the terms of this License or seeking damages relating thereto, the prevailing party shall be entitled to recover its costs and expenses, including, without limitation, reasonable attorneys' fees and costs incurred in connection with such action, including any appeal of such action. This section shall survive the termination of this License.
+
+13) Miscellaneous. This License represents the complete agreement concerning the subject matter hereof. If any provision of this License is held to be unenforceable, such provision shall be reformed only to the extent necessary to make it enforceable.
+
+14) Definition of "You" in This License. "You" throughout this License, whether in upper or lower case, means an individual or a legal entity exercising rights under, and complying with all of the terms of, this License. For legal entities, "You" includes any entity that controls, is controlled by, or is under common control with you. For purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity.
+
+15) Right to Use. You may use the Original Work in all ways not otherwise restricted or conditioned by this License or by law, and Licensor promises not to interfere with or be responsible for such uses by You.
+
+This license is Copyright (C) 2003-2004 Lawrence E. Rosen. All rights reserved. Permission is hereby granted to copy and distribute this license without modification. This license may not be modified without the express written permission of its copyright owner.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/simplejson-3.0.5/PKG-INFO new/simplejson-3.0.8/PKG-INFO
--- old/simplejson-3.0.5/PKG-INFO 2013-01-03 20:43:09.000000000 +0100
+++ new/simplejson-3.0.8/PKG-INFO 2013-02-19 19:45:33.000000000 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: simplejson
-Version: 3.0.5
+Version: 3.0.8
Summary: Simple, fast, extensible JSON encoder/decoder for Python
Home-page: http://github.com/simplejson/simplejson
Author: Bob Ippolito
@@ -30,6 +30,7 @@
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
+Classifier: License :: OSI Approved :: Academic Free License (AFL)
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.5
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/simplejson-3.0.5/conf.py new/simplejson-3.0.8/conf.py
--- old/simplejson-3.0.5/conf.py 2013-01-03 20:29:03.000000000 +0100
+++ new/simplejson-3.0.8/conf.py 2013-02-19 19:23:19.000000000 +0100
@@ -44,7 +44,7 @@
# The short X.Y version.
version = '3.0'
# The full version, including alpha/beta/rc tags.
-release = '3.0.5'
+release = '3.0.8'
# There are two options for replacing |today|: either, you set today to some
# non-false value, then it is used:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/simplejson-3.0.5/setup.py new/simplejson-3.0.8/setup.py
--- old/simplejson-3.0.5/setup.py 2013-01-03 20:28:57.000000000 +0100
+++ new/simplejson-3.0.8/setup.py 2013-02-19 19:23:19.000000000 +0100
@@ -8,7 +8,7 @@
DistutilsPlatformError
IS_PYPY = hasattr(sys, 'pypy_translation_info')
-VERSION = '3.0.5'
+VERSION = '3.0.8'
DESCRIPTION = "Simple, fast, extensible JSON encoder/decoder for Python"
with open('README.rst', 'r') as f:
@@ -19,6 +19,7 @@
Development Status :: 5 - Production/Stable
Intended Audience :: Developers
License :: OSI Approved :: MIT License
+License :: OSI Approved :: Academic Free License (AFL)
Programming Language :: Python
Programming Language :: Python :: 2
Programming Language :: Python :: 2.5
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/simplejson-3.0.5/simplejson/__init__.py new/simplejson-3.0.8/simplejson/__init__.py
--- old/simplejson-3.0.5/simplejson/__init__.py 2013-01-03 20:29:13.000000000 +0100
+++ new/simplejson-3.0.8/simplejson/__init__.py 2013-02-19 19:23:19.000000000 +0100
@@ -99,7 +99,7 @@
Expecting property name: line 1 column 2 (char 2)
"""
from __future__ import absolute_import
-__version__ = '3.0.5'
+__version__ = '3.0.8'
__all__ = [
'dump', 'dumps', 'load', 'loads',
'JSONDecoder', 'JSONDecodeError', 'JSONEncoder',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/simplejson-3.0.5/simplejson/_speedups.c new/simplejson-3.0.8/simplejson/_speedups.c
--- old/simplejson-3.0.5/simplejson/_speedups.c 2013-01-02 20:23:38.000000000 +0100
+++ new/simplejson-3.0.8/simplejson/_speedups.c 2013-02-19 19:23:19.000000000 +0100
@@ -486,11 +486,13 @@
c == '\t') {
return 2;
}
- else if (c < 0x10000U) {
- return MIN_EXPANSION;
+#if defined(Py_UNICODE_WIDE) || PY_MAJOR_VERSION >= 3
+ else if (c >= 0x10000U) {
+ return 2 * MIN_EXPANSION;
}
+#endif
else {
- return 2 * MIN_EXPANSION;
+ return MIN_EXPANSION;
}
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/simplejson-3.0.5/simplejson/encoder.py new/simplejson-3.0.8/simplejson/encoder.py
--- old/simplejson-3.0.5/simplejson/encoder.py 2012-12-31 04:55:51.000000000 +0100
+++ new/simplejson-3.0.8/simplejson/encoder.py 2013-01-11 18:03:28.000000000 +0100
@@ -15,7 +15,10 @@
from simplejson.decoder import PosInf
-ESCAPE = re.compile(u(r'[\x00-\x1f\\"\b\f\n\r\t\u2028\u2029]'))
+#ESCAPE = re.compile(ur'[\x00-\x1f\\"\b\f\n\r\t\u2028\u2029]')
+# This is required because u() will mangle the string and ur'' isn't valid
+# python3 syntax
+ESCAPE = re.compile(u'[\\x00-\\x1f\\\\"\\b\\f\\n\\r\\t\u2028\u2029]')
ESCAPE_ASCII = re.compile(r'([\\"]|[^\ -~])')
HAS_UTF8 = re.compile(r'[\x80-\xff]')
ESCAPE_DCT = {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/simplejson-3.0.5/simplejson/tests/test_unicode.py new/simplejson-3.0.8/simplejson/tests/test_unicode.py
--- old/simplejson-3.0.5/simplejson/tests/test_unicode.py 2013-01-03 20:20:21.000000000 +0100
+++ new/simplejson-3.0.8/simplejson/tests/test_unicode.py 2013-01-11 18:04:02.000000000 +0100
@@ -142,4 +142,15 @@
self.assertRaises(json.JSONDecodeError, json.loads, '"\\ud800\\ux000"')
# invalid value for low surrogate
self.assertRaises(json.JSONDecodeError, json.loads, '"\\ud800\\u0000"')
- self.assertRaises(json.JSONDecodeError, json.loads, '"\\ud800\\ufc00"')
\ No newline at end of file
+ self.assertRaises(json.JSONDecodeError, json.loads, '"\\ud800\\ufc00"')
+
+ def test_ensure_ascii_still_works(self):
+ # in the ascii range, ensure that everything is the same
+ for c in map(unichr, range(0, 127)):
+ self.assertEqual(
+ json.dumps(c, ensure_ascii=False),
+ json.dumps(c))
+ snowman = u'\N{SNOWMAN}'
+ self.assertEqual(
+ json.dumps(c, ensure_ascii=False),
+ '"' + c + '"')
--
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 python-pep8 for openSUSE:Factory checked in at 2013-02-22 16:58:01
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-pep8 (Old)
and /work/SRC/openSUSE:Factory/.python-pep8.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-pep8", Maintainer is ""
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-pep8/python-pep8.changes 2013-02-11 20:51:51.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.python-pep8.new/python-pep8.changes 2013-02-22 16:58:01.000000000 +0100
@@ -1,0 +2,10 @@
+Fri Feb 22 11:06:27 UTC 2013 - p.drouand(a)gmail.com
+
+- Update to version 1.4.3:
+ * Hide the --doctest and --testsuite options when installed.
+ * Fix crash with AST checkers when the syntax is invalid. (Issue #160)
+ * Read from standard input if no path is specified.
+ * Initiate a graceful shutdown on Control+C.
+ * Allow to change the checker_class for the StyleGuide.
+
+-------------------------------------------------------------------
python3-pep8.changes: same change
Old:
----
pep8-1.4.1.tar.gz
New:
----
pep8-1.4.3.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-pep8.spec ++++++
--- /var/tmp/diff_new_pack.3qOUXM/_old 2013-02-22 16:58:03.000000000 +0100
+++ /var/tmp/diff_new_pack.3qOUXM/_new 2013-02-22 16:58:03.000000000 +0100
@@ -17,7 +17,7 @@
Name: python-pep8
-Version: 1.4.1
+Version: 1.4.3
Release: 0
Url: http://github.com/jcrocholl/pep8
Summary: Python style guide checker
python3-pep8.spec: same change
++++++ pep8-1.4.1.tar.gz -> pep8-1.4.3.tar.gz ++++++
++++ 1658 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