openSUSE Commits
Threads by month
- ----- 2025 -----
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
September 2008
- 1 participants
- 1828 discussions
Hello community,
here is the log from the commit of package policycoreutils
checked in at Tue Sep 2 12:29:56 CEST 2008.
--------
--- policycoreutils/policycoreutils.changes 2008-08-04 01:00:56.000000000 +0200
+++ /mounts/work_src_done/STABLE/policycoreutils/policycoreutils.changes 2008-09-02 12:33:15.000000000 +0200
@@ -1,0 +2,14 @@
+Tue Sep 2 12:25:39 CEST 2008 - prusnak(a)suse.cz
+
+- updated to 2.0.55
+ * Merged semanage node support from Christian Kuester.
+- updated to 2.0.54
+ * Add support for boolean files and group support for seusers from Dan Walsh.
+ * Ensure that setfiles -p output is newline terminated from Russell Coker.
+- updated to 2.0.53
+ * Change setfiles to validate all file_contexts files when using -c from Stephen Smalley.
+- updated sepolgen to 1.0.13
+ * Only append s0 suffix if MLS is enabled from Karl MacMillan.
+- added missing preun/post/postun scriptlets
+
+-------------------------------------------------------------------
Old:
----
policycoreutils-2.0.52.tar.bz2
sepolgen-1.0.12.tar.bz2
New:
----
policycoreutils-2.0.55.tar.bz2
sepolgen-1.0.13.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ policycoreutils.spec ++++++
--- /var/tmp/diff_new_pack.E11949/_old 2008-09-02 12:29:13.000000000 +0200
+++ /var/tmp/diff_new_pack.E11949/_new 2008-09-02 12:29:13.000000000 +0200
@@ -1,10 +1,17 @@
#
-# spec file for package policycoreutils (Version 2.0.52)
+# spec file for package policycoreutils (Version 2.0.55)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
-# This file and all modifications and additions to the pristine
-# package are under the same license as the package itself.
#
+# All modifications and additions to the file contributed by third parties
+# remain the property of their copyright owners, unless otherwise agreed
+# upon. The license for this file, and modifications and additions to the
+# file, is the same license as for the pristine package itself (unless the
+# license for the pristine package is not an Open Source License, in which
+# case the license is the MIT License). An "Open Source License" is a
+# license that conforms to the Open Source Definition (Version 1.9)
+# published by the Open Source Initiative.
+
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
@@ -14,11 +21,11 @@
%define libsepol_ver 2.0.19
%define libsemanage_ver 2.0.5
%define libselinux_ver 2.0.46
-%define sepolgen_ver 1.0.12
+%define sepolgen_ver 1.0.13
Name: policycoreutils
-Version: 2.0.52
-Release: 2
+Version: 2.0.55
+Release: 1
Url: http://www.nsa.gov/selinux/
License: GPL v2 or later
Group: Productivity/Security
@@ -47,14 +54,14 @@
Requires: util-linux gawk rpm checkpolicy python-selinux audit-libs-python
%description
-Security-enhanced Linux is a feature of the Linux� kernel and a number
-of utilities with enhanced security functionality designed to add
-mandatory access controls to Linux. The Security-enhanced Linux kernel
-contains new architectural components originally developed to improve
-the security of the Flask operating system. These architectural
+Security-enhanced Linux is a feature of the Linux(R) kernel and a
+number of utilities with enhanced security functionality designed to
+add mandatory access controls to Linux. The Security-enhanced Linux
+kernel contains new architectural components originally developed to
+improve the security of the Flask operating system. These architectural
components provide general support for the enforcement of many kinds of
mandatory access control policies, including those based on the
-concepts of Type Enforcement�, Role-based Access Control, and
+concepts of Type Enforcement(R), Role-based Access Control, and
Multi-level Security.
policycoreutils contains the policy core utilities that are required
@@ -75,14 +82,14 @@
Requires: setools-console
%description gui
-Security-enhanced Linux is a feature of the Linux� kernel and a number
-of utilities with enhanced security functionality designed to add
-mandatory access controls to Linux. The Security-enhanced Linux kernel
-contains new architectural components originally developed to improve
-the security of the Flask operating system. These architectural
+Security-enhanced Linux is a feature of the Linux(R) kernel and a
+number of utilities with enhanced security functionality designed to
+add mandatory access controls to Linux. The Security-enhanced Linux
+kernel contains new architectural components originally developed to
+improve the security of the Flask operating system. These architectural
components provide general support for the enforcement of many kinds of
mandatory access control policies, including those based on the
-concepts of Type Enforcement�, Role-based Access Control, and
+concepts of Type Enforcement(R), Role-based Access Control, and
Multi-level Security.
policycoreutils contains the policy core utilities that are required
@@ -209,7 +216,34 @@
# %config(noreplace) %{_sysconfdir}/security/console.apps/system-config-selinux
# %config(noreplace) %{_sysconfdir}/security/console.apps/selinux-polgengui
+%preun
+if [ "$1" -eq "0" ]; then
+ %stop_on_removal restorecond
+ %insserv_cleanup
+fi
+
+%post
+%fillup_and_insserv restorecond
+[ -f %{_datadir}/selinux/devel/include/build.conf ] && /usr/bin/sepolgen-ifgen > /dev/null
+exit 0
+
+%postun
+if [ "$1" -ge "1" ]; then
+ %restart_on_update rsyncd
+fi
+
%changelog
+* Tue Sep 02 2008 prusnak(a)suse.cz
+- updated to 2.0.55
+ * Merged semanage node support from Christian Kuester.
+- updated to 2.0.54
+ * Add support for boolean files and group support for seusers from Dan Walsh.
+ * Ensure that setfiles -p output is newline terminated from Russell Coker.
+- updated to 2.0.53
+ * Change setfiles to validate all file_contexts files when using -c from Stephen Smalley.
+- updated sepolgen to 1.0.13
+ * Only append s0 suffix if MLS is enabled from Karl MacMillan.
+- added missing preun/post/postun scriptlets
* Mon Aug 04 2008 ro(a)suse.de
- add directory to filelist to fix build
* Tue Jul 15 2008 prusnak(a)suse.cz
++++++ policycoreutils-2.0.52.tar.bz2 -> policycoreutils-2.0.55.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/policycoreutils-2.0.52/ChangeLog new/policycoreutils-2.0.55/ChangeLog
--- old/policycoreutils-2.0.52/ChangeLog 2008-07-02 23:19:33.000000000 +0200
+++ new/policycoreutils-2.0.55/ChangeLog 2008-08-28 15:35:50.000000000 +0200
@@ -1,3 +1,13 @@
+2.0.55 2008-08-26
+ * Merged semanage node support from Christian Kuester.
+
+2.0.54 2008-08-05
+ * Add support for boolean files and group support for seusers from Dan Walsh.
+ * Ensure that setfiles -p output is newline terminated from Russell Coker.
+
+2.0.53 2008-07-29
+ * Change setfiles to validate all file_contexts files when using -c from Stephen Smalley.
+
2.0.52 2008-07-02
* Add permissive domain capability to semanage from Dan Walsh.
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/policycoreutils-2.0.52/restorecond/restorecond.c new/policycoreutils-2.0.55/restorecond/restorecond.c
--- old/policycoreutils-2.0.52/restorecond/restorecond.c 2008-07-02 23:19:34.000000000 +0200
+++ new/policycoreutils-2.0.55/restorecond/restorecond.c 2008-08-28 15:35:50.000000000 +0200
@@ -210,9 +210,10 @@
}
if (fsetfilecon(fd, scontext) < 0) {
- syslog(LOG_ERR,
- "set context %s->%s failed:'%s'\n",
- filename, scontext, strerror(errno));
+ if (errno != EOPNOTSUPP)
+ syslog(LOG_ERR,
+ "set context %s->%s failed:'%s'\n",
+ filename, scontext, strerror(errno));
if (retcontext >= 0)
free(prev_context);
free(scontext);
@@ -225,8 +226,9 @@
if (retcontext >= 0)
free(prev_context);
} else {
- syslog(LOG_ERR, "get context on %s failed: '%s'\n",
- filename, strerror(errno));
+ if (errno != EOPNOTSUPP)
+ syslog(LOG_ERR, "get context on %s failed: '%s'\n",
+ filename, strerror(errno));
}
free(scontext);
close(fd);
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/policycoreutils-2.0.52/semanage/semanage new/policycoreutils-2.0.55/semanage/semanage
--- old/policycoreutils-2.0.52/semanage/semanage 2008-07-02 23:19:34.000000000 +0200
+++ new/policycoreutils-2.0.55/semanage/semanage 2008-08-28 15:35:50.000000000 +0200
@@ -44,14 +44,15 @@
def usage(message = ""):
print _("""
-semanage {boolean|login|user|port|interface|fcontext|translation} -{l|D} [-n]
-semanage login -{a|d|m} [-sr] login_name
+semanage {boolean|login|user|port|interface|node|fcontext|translation} -{l|D} [-n]
+semanage login -{a|d|m} [-sr] login_name | %groupname
semanage user -{a|d|m} [-LrRP] selinux_name
semanage port -{a|d|m} [-tr] [ -p proto ] port | port_range
semanage interface -{a|d|m} [-tr] interface_spec
+semanage node -{a|d|m} [-tr] [ -p protocol ] [-M netmask] addr
semanage fcontext -{a|d|m} [-frst] file_spec
semanage translation -{a|d|m} [-T] level
-semanage boolean -{d|m} boolean
+semanage boolean -{d|m} [--on|--off|-1|-0] -F boolean | boolean_file
semanage permissive -{d|a} type
Primary Options:
@@ -79,7 +80,9 @@
-l (symbolic link)
-p (named pipe)
- -p, --proto Port protocol (tcp or udp)
+ -F, --file Treat target as an input file for command, change multiple settings
+ -p, --proto Port protocol (tcp or udp) or internet protocol version of node (ipv4 or ipv6)
+ -M, --mask Netmask
-P, --prefix Prefix for home directory labeling
-L, --level Default SELinux Level (MLS/MCS Systems only)
-R, --roles SELinux Roles (ex: "sysadm_r staff_r")
@@ -108,13 +111,15 @@
valid_option["port"] = []
valid_option["port"] += valid_everyone + [ '-t', '--type', '-r', '--range', '-p', '--proto' ]
valid_option["interface"] = []
- valid_option["interface"] += valid_everyone + [ '-t', '--type', '-r', '--range']
+ valid_option["interface"] += valid_everyone + [ '-t', '--type', '-r', '--range']
+ valid_option["node"] = []
+ valid_option["node"] += valid_everyone + [ '-M', '--mask', '-t', '--type', '-r', '--range', '-p', '--protocol']
valid_option["fcontext"] = []
valid_option["fcontext"] += valid_everyone + [ '-f', '--ftype', '-s', '--seuser', '-t', '--type', '-r', '--range']
valid_option["translation"] = []
valid_option["translation"] += valid_everyone + [ '-T', '--trans' ]
valid_option["boolean"] = []
- valid_option["boolean"] += valid_everyone + [ '--on', "--off", "-1", "-0" ]
+ valid_option["boolean"] += valid_everyone + [ '--on', "--off", "-1", "-0", "-F", "--file"]
valid_option["permissive"] = []
valid_option["permissive"] += [ '-a', '--add', '-d', '--delete', '-l', '--list', '-h', '--help', '-n', '--noheading', '-D', '--deleteall' ]
return valid_option
@@ -128,21 +133,23 @@
serange = ""
port = ""
proto = ""
+ mask = ""
selevel = ""
setype = ""
ftype = ""
setrans = ""
roles = ""
seuser = ""
- prefix = ""
- heading=1
- value=0
- add = 0
- modify = 0
- delete = 0
- deleteall = 0
- list = 0
- locallist = 0
+ prefix = "user"
+ heading = True
+ value = None
+ add = False
+ modify = False
+ delete = False
+ deleteall = False
+ list = False
+ locallist = False
+ use_file = False
store = ""
if len(sys.argv) < 3:
usage(_("Requires 2 or more arguments"))
@@ -155,11 +162,12 @@
args = sys.argv[2:]
gopts, cmds = getopt.getopt(args,
- '01adf:lhmnp:s:CDR:L:r:t:T:P:S:',
+ '01adf:lhmnp:s:FCDR:L:r:t:T:P:S:M:',
['add',
'delete',
'deleteall',
'ftype=',
+ 'file',
'help',
'list',
'modify',
@@ -175,7 +183,8 @@
'roles=',
'type=',
'trans=',
- 'prefix='
+ 'prefix=',
+ 'mask='
])
for o, a in gopts:
if o not in option_dict[object]:
@@ -185,31 +194,35 @@
if o == "-a" or o == "--add":
if modify or delete:
usage()
- add = 1
+ add = True
if o == "-d" or o == "--delete":
if modify or add:
usage()
- delete = 1
+ delete = True
if o == "-D" or o == "--deleteall":
if modify:
usage()
- deleteall = 1
+ deleteall = True
if o == "-f" or o == "--ftype":
ftype=a
+
+ if o == "-F" or o == "--file":
+ use_file = True
+
if o == "-h" or o == "--help":
usage()
if o == "-n" or o == "--noheading":
- heading=0
+ heading = False
if o == "-C" or o == "--locallist":
- locallist=1
+ locallist = True
if o == "-m"or o == "--modify":
if delete or add:
usage()
- modify = 1
+ modify = True
if o == "-S" or o == '--store':
store = a
@@ -220,7 +233,7 @@
serange = a
if o == "-l" or o == "--list":
- list = 1
+ list = True
if o == "-L" or o == '--level':
if is_mls_enabled == 0:
@@ -239,6 +252,9 @@
if o == "-s" or o == "--seuser":
seuser = a
+ if o == "-M" or o == '--mask':
+ mask = a
+
if o == "-t" or o == "--type":
setype = a
@@ -246,9 +262,9 @@
setrans = a
if o == "--on" or o == "-1":
- value = 1
- if o == "-off" or o == "-0":
- value = 0
+ value = "on"
+ if o == "--off" or o == "-0":
+ value = "off"
if object == "login":
OBJECT = seobject.loginRecords(store)
@@ -261,6 +277,9 @@
if object == "interface":
OBJECT = seobject.interfaceRecords(store)
+
+ if object == "node":
+ OBJECT = seobject.nodeRecords(store)
if object == "fcontext":
OBJECT = seobject.fcontextRecords(store)
@@ -275,7 +294,10 @@
OBJECT = seobject.permissiveRecords(store)
if list:
- OBJECT.list(heading, locallist)
+ if object == "boolean":
+ OBJECT.list(heading, locallist, use_file)
+ else:
+ OBJECT.list(heading, locallist)
sys.exit(0);
if deleteall:
@@ -295,12 +317,10 @@
OBJECT.add(target, setrans)
if object == "user":
- rlist = roles.split()
- if len(rlist) == 0:
- raise ValueError(_("You must specify a role"))
- if prefix == "":
- raise ValueError(_("You must specify a prefix"))
- OBJECT.add(target, rlist, selevel, serange, prefix)
+ rlist = []
+ if not use_file:
+ rlist = roles.split()
+ OBJECT.add(target, rlist, selevel, serange, prefix)
if object == "port":
OBJECT.add(target, proto, serange, setype)
@@ -308,6 +328,9 @@
if object == "interface":
OBJECT.add(target, serange, setype)
+ if object == "node":
+ OBJECT.add(target, mask, proto, serange, setype)
+
if object == "fcontext":
OBJECT.add(target, setype, ftype, serange, seuser)
if object == "permissive":
@@ -317,7 +340,7 @@
if modify:
if object == "boolean":
- OBJECT.modify(target, value)
+ OBJECT.modify(target, value, use_file)
if object == "login":
OBJECT.modify(target, seuser, serange)
@@ -335,6 +358,9 @@
if object == "interface":
OBJECT.modify(target, serange, setype)
+ if object == "node":
+ OBJECT.modify(target, mask, proto, serange, setype)
+
if object == "fcontext":
OBJECT.modify(target, setype, ftype, serange, seuser)
@@ -347,6 +373,9 @@
elif object == "fcontext":
OBJECT.delete(target, ftype)
+ elif object == "node":
+ OBJECT.delete(target, mask, proto)
+
else:
OBJECT.delete(target)
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/policycoreutils-2.0.52/semanage/semanage.8 new/policycoreutils-2.0.55/semanage/semanage.8
--- old/policycoreutils-2.0.52/semanage/semanage.8 2008-07-02 23:19:34.000000000 +0200
+++ new/policycoreutils-2.0.55/semanage/semanage.8 2008-08-28 15:35:50.000000000 +0200
@@ -3,11 +3,11 @@
semanage \- SELinux Policy Management tool
.SH "SYNOPSIS"
-.B semanage {boolean|login|user|port|interface|fcontext|translation} \-{l|lC|D} [\-n]
+.B semanage {boolean|login|user|port|interface|node|fcontext|translation} \-{l|D} [\-n] [\-S store]
.br
-.B semanage boolean \-{d|m} [\-\-on|\-\-off|\-1|\-0] boolean
+.B semanage boolean \-{d|m} [\-\-on|\-\-off|\-1|\-0] -F boolean | boolean_file
.br
-.B semanage login \-{a|d|m} [\-sr] login_name
+.B semanage login \-{a|d|m} [\-sr] login_name | %groupname
.br
.B semanage user \-{a|d|m} [\-LrRP] selinux_name
.br
@@ -15,6 +15,8 @@
.br
.B semanage interface \-{a|d|m} [\-tr] interface_spec
.br
+.B semanage node -{a|d|m} [-tr] [ -p protocol ] [-M netmask] address
+.br
.B semanage fcontext \-{a|d|m} [\-frst] file_spec
.br
.B semanage permissive \-{a|d} type
@@ -54,6 +56,11 @@
File Type. This is used with fcontext.
Requires a file type as shown in the mode field by ls, e.g. use -d to match only directories or -- to match only regular files.
.TP
+.I \-F, \-\-file
+Set multiple records from the input file. When used with the \-l \-\-list, it will output the current settings to stdout in the proper format.
+
+Currently booleans only.
+.TP
.I \-h, \-\-help
display this message
.TP
@@ -73,7 +80,7 @@
Do not print heading when listing OBJECTS.
.TP
.I \-p, \-\-proto
-Protocol for the specified port (tcp|udp).
+Protocol for the specified port (tcp|udp) or internet protocol version for the specified node (ipv4|ipv6).
.TP
.I \-r, \-\-range
MLS/MCS Security Range (MLS/MCS Systems only)
@@ -87,6 +94,9 @@
.I \-s, \-\-seuser
SELinux user name
.TP
+.I \-S, \-\-store
+Select and alternate SELinux store to manage
+.TP
.I \-t, \-\-type
SELinux Type for the object
.TP
@@ -99,6 +109,8 @@
$ semanage user -l
# Allow joe to login as staff_u
$ semanage login -a -s staff_u joe
+# Allow the group clerks to login as user_u
+$ semanage login -a -s user_u %clerks
# Add file-context for everything under /web (used by restorecon)
$ semanage fcontext -a -t httpd_sys_content_t "/web(/.*)?"
# Allow Apache to listen on port 81
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/policycoreutils-2.0.52/semanage/seobject.py new/policycoreutils-2.0.55/semanage/seobject.py
--- old/policycoreutils-2.0.52/semanage/seobject.py 2008-07-02 23:19:34.000000000 +0200
+++ new/policycoreutils-2.0.55/semanage/seobject.py 2008-08-28 15:35:50.000000000 +0200
@@ -21,7 +21,7 @@
#
#
-import pwd, string, selinux, tempfile, os, re, sys
+import pwd, grp, string, selinux, tempfile, os, re, sys
from semanage import *;
PROGNAME="policycoreutils"
import sepolgen.module as module
@@ -330,20 +330,15 @@
for name in dirs:
os.rmdir(os.path.join(root, name))
- if rc != 0:
- raise ValueError(out)
-
-
def delete(self, name):
for n in name.split():
rc = semanage_module_remove(self.sh, "permissive_%s" % n)
if rc < 0:
raise ValueError(_("Could not remove permissive domain %s (remove failed)") % name)
- rc = semanage_commit(self.sh)
- if rc < 0:
- raise ValueError(_("Could not remove permissive domain %s (commit failed)") % name)
+ rc = semanage_commit(self.sh)
+ if rc < 0:
+ raise ValueError(_("Could not remove permissive domain %s (commit failed)") % name)
-
def deleteall(self):
l = self.get_all()
if len(l) > 0:
@@ -402,10 +397,16 @@
raise ValueError(_("Could not check if login mapping for %s is defined") % name)
if exists:
raise ValueError(_("Login mapping for %s is already defined") % name)
- try:
- pwd.getpwnam(name)
- except:
- raise ValueError(_("Linux User %s does not exist") % name)
+ if name[0] == '%':
+ try:
+ grp.getgrnam(name[1:])
+ except:
+ raise ValueError(_("Linux Group %s does not exist") % name[1:])
+ else:
+ try:
+ pwd.getpwnam(name)
+ except:
+ raise ValueError(_("Linux User %s does not exist") % name)
(rc,u) = semanage_seuser_create(self.sh)
if rc < 0:
@@ -1030,6 +1031,231 @@
rec += ", %s" % p
print rec
+class nodeRecords(semanageRecords):
+ def __init__(self, store = ""):
+ semanageRecords.__init__(self,store)
+
+ def add(self, addr, mask, proto, serange, ctype):
+ if addr == "":
+ raise ValueError(_("Node Address is required"))
+
+ if mask == "":
+ raise ValueError(_("Node Netmask is required"))
+
+ if proto == "ipv4":
+ proto = 0
+ elif proto == "ipv6":
+ proto = 1
+ else:
+ raise ValueError(_("Unknown or missing protocol"))
+
+
+ if is_mls_enabled == 1:
+ if serange == "":
+ serange = "s0"
+ else:
+ serange = untranslate(serange)
+
+ if ctype == "":
+ raise ValueError(_("SELinux Type is required"))
+
+ (rc,k) = semanage_node_key_create(self.sh, addr, mask, proto)
+ if rc < 0:
+ raise ValueError(_("Could not create key for %s") % addr)
+ if rc < 0:
+ raise ValueError(_("Could not check if addr %s is defined") % addr)
+
+ (rc,exists) = semanage_node_exists(self.sh, k)
+ if exists:
+ raise ValueError(_("Addr %s already defined") % addr)
+
+ (rc,node) = semanage_node_create(self.sh)
+ if rc < 0:
+ raise ValueError(_("Could not create addr for %s") % addr)
+
+ rc = semanage_node_set_addr(self.sh, node, proto, addr)
+ (rc, con) = semanage_context_create(self.sh)
+ if rc < 0:
+ raise ValueError(_("Could not create context for %s") % addr)
+
+ rc = semanage_node_set_mask(self.sh, node, proto, mask)
+ if rc < 0:
+ raise ValueError(_("Could not set mask for %s") % addr)
+
+
+ rc = semanage_context_set_user(self.sh, con, "system_u")
+ if rc < 0:
+ raise ValueError(_("Could not set user in addr context for %s") % addr)
+
+ rc = semanage_context_set_role(self.sh, con, "object_r")
+ if rc < 0:
+ raise ValueError(_("Could not set role in addr context for %s") % addr)
+
+ rc = semanage_context_set_type(self.sh, con, ctype)
+ if rc < 0:
+ raise ValueError(_("Could not set type in addr context for %s") % addr)
+
+ if serange != "":
+ rc = semanage_context_set_mls(self.sh, con, serange)
+ if rc < 0:
+ raise ValueError(_("Could not set mls fields in addr context for %s") % addr)
+
+ rc = semanage_node_set_con(self.sh, node, con)
+ if rc < 0:
+ raise ValueError(_("Could not set addr context for %s") % addr)
+
+ rc = semanage_begin_transaction(self.sh)
+ if rc < 0:
+ raise ValueError(_("Could not start semanage transaction"))
+
+ rc = semanage_node_modify_local(self.sh, k, node)
+ if rc < 0:
+ raise ValueError(_("Could not add addr %s") % addr)
+
+ rc = semanage_commit(self.sh)
+ if rc < 0:
+ raise ValueError(_("Could not add addr %s") % addr)
+
+ semanage_context_free(con)
+ semanage_node_key_free(k)
+ semanage_node_free(node)
+
+ def modify(self, addr, mask, proto, serange, setype):
+ if addr == "":
+ raise ValueError(_("Node Address is required"))
+
+ if mask == "":
+ raise ValueError(_("Node Netmask is required"))
+ if proto == "ipv4":
+ proto = 0
+ elif proto == "ipv6":
+ proto = 1
+ else:
+ raise ValueError(_("Unknown or missing protocol"))
+
+
+ if serange == "" and setype == "":
+ raise ValueError(_("Requires setype or serange"))
+
+ (rc,k) = semanage_node_key_create(self.sh, addr, mask, proto)
+ if rc < 0:
+ raise ValueError(_("Could not create key for %s") % addr)
+
+ (rc,exists) = semanage_node_exists(self.sh, k)
+ if rc < 0:
+ raise ValueError(_("Could not check if addr %s is defined") % addr)
+ if not exists:
+ raise ValueError(_("Addr %s is not defined") % addr)
+
+ (rc,node) = semanage_node_query(self.sh, k)
+ if rc < 0:
+ raise ValueError(_("Could not query addr %s") % addr)
+
+ con = semanage_node_get_con(node)
+
+ if serange != "":
+ semanage_context_set_mls(self.sh, con, untranslate(serange))
+ if setype != "":
+ semanage_context_set_type(self.sh, con, setype)
+
+ rc = semanage_begin_transaction(self.sh)
+ if rc < 0:
+ raise ValueError(_("Could not start semanage transaction"))
+
+ rc = semanage_node_modify_local(self.sh, k, node)
+ if rc < 0:
+ raise ValueError(_("Could not modify addr %s") % addr)
+
+ rc = semanage_commit(self.sh)
+ if rc < 0:
+ raise ValueError(_("Could not modify addr %s") % addr)
+
+ semanage_node_key_free(k)
+ semanage_node_free(node)
+
+ def delete(self, addr, mask, proto):
+ if addr == "":
+ raise ValueError(_("Node Address is required"))
+
+ if mask == "":
+ raise ValueError(_("Node Netmask is required"))
+
+ if proto == "ipv4":
+ proto = 0
+ elif proto == "ipv6":
+ proto = 1
+ else:
+ raise ValueError(_("Unknown or missing protocol"))
+
+ (rc,k) = semanage_node_key_create(self.sh, addr, mask, proto)
+ if rc < 0:
+ raise ValueError(_("Could not create key for %s") % addr)
+
+ (rc,exists) = semanage_node_exists(self.sh, k)
+ if rc < 0:
+ raise ValueError(_("Could not check if addr %s is defined") % addr)
+ if not exists:
+ raise ValueError(_("Addr %s is not defined") % addr)
+
+ (rc,exists) = semanage_node_exists_local(self.sh, k)
+ if rc < 0:
+ raise ValueError(_("Could not check if addr %s is defined") % addr)
+ if not exists:
+ raise ValueError(_("Addr %s is defined in policy, cannot be deleted") % addr)
+
+ rc = semanage_begin_transaction(self.sh)
+ if rc < 0:
+ raise ValueError(_("Could not start semanage transaction"))
+
+ rc = semanage_node_del_local(self.sh, k)
+ if rc < 0:
+ raise ValueError(_("Could not delete addr %s") % addr)
+
+ rc = semanage_commit(self.sh)
+ if rc < 0:
+ raise ValueError(_("Could not delete addr %s") % addr)
+
+ semanage_node_key_free(k)
+
+ def get_all(self, locallist = 0):
+ ddict = {}
+ if locallist :
+ (rc, self.ilist) = semanage_node_list_local(self.sh)
+ else:
+ (rc, self.ilist) = semanage_node_list(self.sh)
+ if rc < 0:
+ raise ValueError(_("Could not list addrs"))
+
+ for node in self.ilist:
+ con = semanage_node_get_con(node)
+ addr = semanage_node_get_addr(self.sh, node)
+ mask = semanage_node_get_mask(self.sh, node)
+ proto = semanage_node_get_proto(node)
+ if proto == 0:
+ proto = "ipv4"
+ elif proto == 1:
+ proto = "ipv6"
+ ddict[(addr[1], mask[1], proto)] = (semanage_context_get_user(con), semanage_context_get_role(con), semanage_context_get_type(con), semanage_context_get_mls(con))
+
+ return ddict
+
+ def list(self, heading = 1, locallist = 0):
+ if heading:
+ print "%-18s %-18s %-5s %-5s\n" % ("IP Address", "Netmask", "Protocol", "Context")
+ ddict = self.get_all(locallist)
+ keys = ddict.keys()
+ keys.sort()
+ if is_mls_enabled:
+ for k in keys:
+ val = ''
+ for fields in k:
+ val = val + '\t' + str(fields)
+ print "%-18s %-18s %-5s %s:%s:%s:%s " % (k[0],k[1],k[2],ddict[k][0], ddict[k][1],ddict[k][2], translate(ddict[k][3], False))
+ else:
+ for k in keys:
+ print "%-18s %-18s %-5s %s:%s:%s " % (k[0],k[1],k[2],ddict[k][0], ddict[k][1],ddict[k][2])
+
+
class interfaceRecords(semanageRecords):
def __init__(self, store = ""):
semanageRecords.__init__(self, store)
@@ -1447,54 +1673,72 @@
class booleanRecords(semanageRecords):
def __init__(self, store = ""):
semanageRecords.__init__(self, store)
+ self.dict={}
+ self.dict["TRUE"] = 1
+ self.dict["FALSE"] = 0
+ self.dict["ON"] = 1
+ self.dict["OFF"] = 0
+ self.dict["1"] = 1
+ self.dict["0"] = 0
- def modify(self, name, value = ""):
- if value == "":
- raise ValueError(_("Requires value"))
-
- (rc,k) = semanage_bool_key_create(self.sh, name)
- if rc < 0:
- raise ValueError(_("Could not create a key for %s") % name)
-
- (rc,exists) = semanage_bool_exists(self.sh, k)
- if rc < 0:
- raise ValueError(_("Could not check if boolean %s is defined") % name)
- if not exists:
- raise ValueError(_("Boolean %s is not defined") % name)
-
- (rc,b) = semanage_bool_query(self.sh, k)
- if rc < 0:
- raise ValueError(_("Could not query file context %s") % name)
+ def __mod(self, name, value):
+ (rc,k) = semanage_bool_key_create(self.sh, name)
+ if rc < 0:
+ raise ValueError(_("Could not create a key for %s") % name)
+ (rc,exists) = semanage_bool_exists(self.sh, k)
+ if rc < 0:
+ raise ValueError(_("Could not check if boolean %s is defined") % name)
+ if not exists:
+ raise ValueError(_("Boolean %s is not defined") % name)
+
+ (rc,b) = semanage_bool_query(self.sh, k)
+ if rc < 0:
+ raise ValueError(_("Could not query file context %s") % name)
- if value != "":
- nvalue = int(value)
- semanage_bool_set_value(b, nvalue)
+ if value.upper() in self.dict:
+ semanage_bool_set_value(b, self.dict[value.upper()])
else:
- raise ValueError(_("You must specify a value"))
+ raise ValueError(_("You must specify one of the following values: %s") % ", ".join(self.dict.keys()) )
+
+ rc = semanage_bool_set_active(self.sh, k, b)
+ if rc < 0:
+ raise ValueError(_("Could not set active value of boolean %s") % name)
+ rc = semanage_bool_modify_local(self.sh, k, b)
+ if rc < 0:
+ raise ValueError(_("Could not modify boolean %s") % name)
+ semanage_bool_key_free(k)
+ semanage_bool_free(b)
+ def modify(self, name, value=None, use_file=False):
+
rc = semanage_begin_transaction(self.sh)
if rc < 0:
raise ValueError(_("Could not start semanage transaction"))
-
- rc = semanage_bool_set_active(self.sh, k, b)
- if rc < 0:
- raise ValueError(_("Could not set active value of boolean %s") % name)
- rc = semanage_bool_modify_local(self.sh, k, b)
- if rc < 0:
- raise ValueError(_("Could not modify boolean %s") % name)
+ if use_file:
+ fd = open(name)
+ for b in fd.read().split("\n"):
+ b = b.strip()
+ if len(b) == 0:
+ continue
+
+ try:
+ boolname, val = b.split("=")
+ except ValueError, e:
+ raise ValueError(_("Bad format %s: Record %s" % ( name, b) ))
+ self.__mod(boolname.strip(), val.strip())
+ fd.close()
+ else:
+ self.__mod(name, value)
rc = semanage_commit(self.sh)
if rc < 0:
raise ValueError(_("Could not modify boolean %s") % name)
- semanage_bool_key_free(k)
- semanage_bool_free(b)
-
def delete(self, name):
- (rc,k) = semanage_bool_key_create(self.sh, name)
- if rc < 0:
- raise ValueError(_("Could not create a key for %s") % name)
+ (rc,k) = semanage_bool_key_create(self.sh, name)
+ if rc < 0:
+ raise ValueError(_("Could not create a key for %s") % name)
(rc,exists) = semanage_bool_exists(self.sh, k)
if rc < 0:
raise ValueError(_("Could not check if boolean %s is defined") % name)
@@ -1571,8 +1815,15 @@
else:
return _("unknown")
- def list(self, heading = 1, locallist = 0):
+ def list(self, heading = True, locallist = False, use_file = False):
on_off = (_("off"),_("on"))
+ if use_file:
+ ddict = self.get_all(locallist)
+ keys = ddict.keys()
+ for k in keys:
+ if ddict[k]:
+ print "%s=%s" % (k, ddict[k][2])
+ return
if heading:
print "%-40s %s\n" % (_("SELinux boolean"), _("Description"))
ddict = self.get_all(locallist)
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/policycoreutils-2.0.52/setfiles/setfiles.c new/policycoreutils-2.0.55/setfiles/setfiles.c
--- old/policycoreutils-2.0.52/setfiles/setfiles.c 2008-07-02 23:19:34.000000000 +0200
+++ new/policycoreutils-2.0.55/setfiles/setfiles.c 2008-08-28 15:35:50.000000000 +0200
@@ -72,7 +72,6 @@
static int abort_on_error; /* Abort the file tree walk upon an error. */
static int add_assoc; /* Track inode associations for conflict detection. */
static int nftw_flags; /* Flags to nftw, e.g. follow links, follow mounts */
-static int base_only; /* Don't use local file_contexts customizations */
static int ctx_validate; /* Validate contexts */
static const char *altpath; /* Alternate path to file_contexts */
@@ -748,7 +747,6 @@
char *base;
struct selinux_opt opts[] = {
{ SELABEL_OPT_VALIDATE, NULL },
- { SELABEL_OPT_BASEONLY, NULL },
{ SELABEL_OPT_PATH, NULL }
};
@@ -836,10 +834,6 @@
}
fclose(policystream);
- /* Only process the specified file_contexts file, not
- any .homedirs or .local files, and do not perform
- context translations. */
- base_only = 1;
ctx_validate = 1;
break;
@@ -972,10 +966,9 @@
/* Load the file contexts configuration and check it. */
opts[0].value = (ctx_validate ? (char*)1 : NULL);
- opts[1].value = (base_only ? (char *)1 : NULL);
- opts[2].value = altpath;
+ opts[1].value = altpath;
- hnd = selabel_open(SELABEL_CTX_FILE, opts, 3);
+ hnd = selabel_open(SELABEL_CTX_FILE, opts, 2);
if (!hnd) {
perror(altpath);
exit(1);
@@ -1024,5 +1017,7 @@
free(excludeArray[i].directory);
}
+ if (progress)
+ printf("\n");
exit(errors);
}
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/policycoreutils-2.0.52/VERSION new/policycoreutils-2.0.55/VERSION
--- old/policycoreutils-2.0.52/VERSION 2008-07-02 23:19:34.000000000 +0200
+++ new/policycoreutils-2.0.55/VERSION 2008-08-28 15:35:50.000000000 +0200
@@ -1 +1 @@
-2.0.52
+2.0.55
++++++ policycoreutils-gui.patch.bz2 ++++++
--- /var/tmp/diff_new_pack.E11949/_old 2008-09-02 12:29:15.000000000 +0200
+++ /var/tmp/diff_new_pack.E11949/_new 2008-09-02 12:29:16.000000000 +0200
@@ -1,7 +1,7 @@
-diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/Makefile policycoreutils-2.0.52/gui/Makefile
+diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/Makefile policycoreutils-2.0.54/gui/Makefile
--- nsapolicycoreutils/gui/Makefile 1969-12-31 19:00:00.000000000 -0500
-+++ policycoreutils-2.0.52/gui/Makefile 2008-07-03 16:17:11.000000000 -0400
-@@ -0,0 +1,36 @@
++++ policycoreutils-2.0.54/gui/Makefile 2008-08-11 12:20:26.000000000 -0400
+@@ -0,0 +1,37 @@
+# Installation directories.
+PREFIX ?= ${DESTDIR}/usr
+SHAREDIR ?= $(PREFIX)/share/system-config-selinux
@@ -9,6 +9,7 @@
+TARGETS= \
+booleansPage.py \
+fcontextPage.py \
++html_util.py \
+loginsPage.py \
+mappingsPage.py \
+modulesPage.py \
@@ -38,9 +39,9 @@
+indent:
+
+relabel:
-diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/booleansPage.py policycoreutils-2.0.52/gui/booleansPage.py
+diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/booleansPage.py policycoreutils-2.0.54/gui/booleansPage.py
--- nsapolicycoreutils/gui/booleansPage.py 1969-12-31 19:00:00.000000000 -0500
-+++ policycoreutils-2.0.52/gui/booleansPage.py 2008-07-03 16:17:11.000000000 -0400
++++ policycoreutils-2.0.54/gui/booleansPage.py 2008-08-06 18:05:28.000000000 -0400
@@ -0,0 +1,237 @@
+#
+# booleansPage.py - GUI for Booleans page in system-config-securitylevel
@@ -279,9 +280,9 @@
+ self.load(self.filter)
+ return True
+
-diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/fcontextPage.py policycoreutils-2.0.52/gui/fcontextPage.py
+diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/fcontextPage.py policycoreutils-2.0.54/gui/fcontextPage.py
--- nsapolicycoreutils/gui/fcontextPage.py 1969-12-31 19:00:00.000000000 -0500
-+++ policycoreutils-2.0.52/gui/fcontextPage.py 2008-07-03 16:17:11.000000000 -0400
++++ policycoreutils-2.0.54/gui/fcontextPage.py 2008-08-06 18:05:28.000000000 -0400
@@ -0,0 +1,217 @@
+## fcontextPage.py - show selinux mappings
+## Copyright (C) 2006 Red Hat, Inc.
@@ -500,9 +501,177 @@
+ self.store.set_value(iter, SPEC_COL, fspec)
+ self.store.set_value(iter, FTYPE_COL, ftype)
+ self.store.set_value(iter, TYPE_COL, "%s:%s" % (type, mls))
-diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/lockdown.glade policycoreutils-2.0.52/gui/lockdown.glade
+diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/html_util.py policycoreutils-2.0.54/gui/html_util.py
+--- nsapolicycoreutils/gui/html_util.py 1969-12-31 19:00:00.000000000 -0500
++++ policycoreutils-2.0.54/gui/html_util.py 2008-08-11 11:54:46.000000000 -0400
+@@ -0,0 +1,164 @@
++# Authors: John Dennis <jdennis(a)redhat.com>
++#
++# Copyright (C) 2007 Red Hat, Inc.
++#
++# This program is free software; you can redistribute it and/or modify
++# it under the terms of the GNU General Public License as published by
++# the Free Software Foundation; either version 2 of the License, or
++# (at your option) any later version.
++#
++# This program is distributed in the hope that it will be useful,
++# but WITHOUT ANY WARRANTY; without even the implied warranty of
++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++# GNU General Public License for more details.
++#
++# You should have received a copy of the GNU General Public License
++# along with this program; if not, write to the Free Software
++# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
++#
++
++
++__all__ = [
++ 'escape_html',
++ 'unescape_html',
++ 'html_to_text',
++
++ 'html_document',
++]
++
++import htmllib
++import formatter as Formatter
++import string
++from types import *
++import StringIO
++
++#------------------------------------------------------------------------------
++
++class TextWriter(Formatter.DumbWriter):
++ def __init__(self, file=None, maxcol=80, indent_width=4):
++ Formatter.DumbWriter.__init__(self, file, maxcol)
++ self.indent_level = 0
++ self.indent_width = indent_width
++ self._set_indent()
++
++ def _set_indent(self):
++ self.indent_col = self.indent_level * self.indent_width
++ self.indent = ' ' * self.indent_col
++
++ def new_margin(self, margin, level):
++ self.indent_level = level
++ self._set_indent()
++
++ def send_label_data(self, data):
++ data = data + ' '
++ if len(data) > self.indent_col:
++ self.send_literal_data(data)
++ else:
++ offset = self.indent_col - len(data)
++ self.send_literal_data(' ' * offset + data)
++
++ def send_flowing_data(self, data):
++ if not data: return
++ atbreak = self.atbreak or data[0] in string.whitespace
++ col = self.col
++ maxcol = self.maxcol
++ write = self.file.write
++ col = self.col
++ if col == 0:
++ write(self.indent)
++ col = self.indent_col
++ for word in data.split():
++ if atbreak:
++ if col + len(word) >= maxcol:
++ write('\n' + self.indent)
++ col = self.indent_col
++ else:
++ write(' ')
++ col = col + 1
++ write(word)
++ col = col + len(word)
++ atbreak = 1
++ self.col = col
++ self.atbreak = data[-1] in string.whitespace
++
++class HTMLParserAnchor(htmllib.HTMLParser):
++
++ def __init__(self, formatter, verbose=0):
++ htmllib.HTMLParser.__init__(self, formatter, verbose)
++
++ def anchor_bgn(self, href, name, type):
++ self.anchor = href
++
++ def anchor_end(self):
++ if self.anchor:
++ self.handle_data(' (%s) ' % self.anchor)
++ self.anchor = None
++
++#------------------------------------------------------------------------------
++
++def escape_html(s):
++ if s is None: return None
++ s = s.replace("&", "&") # Must be done first!
++ s = s.replace("<", "<")
++ s = s.replace(">", ">")
++ s = s.replace("'", "'")
++ s = s.replace('"', """)
++ return s
++
++
++def unescape_html(s):
++ if s is None: return None
++ if '&' not in s:
++ return s
++ s = s.replace("<", "<")
++ s = s.replace(">", ">")
++ s = s.replace("'", "'")
++ s = s.replace(""", '"')
++ s = s.replace("&", "&") # Must be last
++ return s
++
++def html_to_text(html, maxcol=80):
++ try:
++ buffer = StringIO.StringIO()
++ formatter = Formatter.AbstractFormatter(TextWriter(buffer, maxcol))
++ parser = HTMLParserAnchor(formatter)
++ parser.feed(html)
++ parser.close()
++ text = buffer.getvalue()
++ buffer.close()
++ return text
++ except Exception, e:
++ log_program.error('cannot convert html to text: %s' % e)
++ return None
++
++def html_document(*body_components):
++ '''Wrap the body components in a HTML document structure with a valid header.
++ Accepts a variable number of arguments of of which canb be:
++ * string
++ * a sequences of strings (tuple or list).
++ * a callable object taking no parameters and returning a string or sequence of strings.
++ '''
++ head = '<html>\n <head>\n <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>\n </head>\n <body>\n'
++ tail = '\n </body>\n</html>'
++
++ doc = head
++
++ for body_component in body_components:
++ if type(body_component) is StringTypes:
++ doc += body_component
++ elif type(body_component) in [TupleType, ListType]:
++ for item in body_component:
++ doc += item
++ elif callable(body_component):
++ result = body_component()
++ if type(result) in [TupleType, ListType]:
++ for item in result:
++ doc += item
++ else:
++ doc += result
++ else:
++ doc += body_component
++
++ doc += tail
++ return doc
++
+diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/lockdown.glade policycoreutils-2.0.54/gui/lockdown.glade
--- nsapolicycoreutils/gui/lockdown.glade 1969-12-31 19:00:00.000000000 -0500
-+++ policycoreutils-2.0.52/gui/lockdown.glade 2008-07-03 16:17:11.000000000 -0400
++++ policycoreutils-2.0.54/gui/lockdown.glade 2008-08-06 18:05:28.000000000 -0400
@@ -0,0 +1,771 @@
+<?xml version="1.0" standalone="no"?> <!--*- mode: xml -*-->
+<!DOCTYPE glade-interface SYSTEM "http://glade.gnome.org/glade-2.0.dtd">
@@ -1275,9 +1444,9 @@
+</widget>
+
+</glade-interface>
-diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/lockdown.gladep policycoreutils-2.0.52/gui/lockdown.gladep
+diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/lockdown.gladep policycoreutils-2.0.54/gui/lockdown.gladep
--- nsapolicycoreutils/gui/lockdown.gladep 1969-12-31 19:00:00.000000000 -0500
-+++ policycoreutils-2.0.52/gui/lockdown.gladep 2008-07-03 16:17:11.000000000 -0400
++++ policycoreutils-2.0.54/gui/lockdown.gladep 2008-08-06 18:05:28.000000000 -0400
@@ -0,0 +1,7 @@
+<?xml version="1.0" standalone="no"?> <!--*- mode: xml -*-->
+<!DOCTYPE glade-project SYSTEM "http://glade.gnome.org/glade-project-2.0.dtd">
@@ -1286,9 +1455,9 @@
+ <name></name>
+ <program_name></program_name>
+</glade-project>
-diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/lockdown.py policycoreutils-2.0.52/gui/lockdown.py
+diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/lockdown.py policycoreutils-2.0.54/gui/lockdown.py
--- nsapolicycoreutils/gui/lockdown.py 1969-12-31 19:00:00.000000000 -0500
-+++ policycoreutils-2.0.52/gui/lockdown.py 2008-07-03 16:17:11.000000000 -0400
++++ policycoreutils-2.0.54/gui/lockdown.py 2008-08-06 18:05:28.000000000 -0400
@@ -0,0 +1,382 @@
+#!/usr/bin/python
+#
@@ -1672,9 +1841,9 @@
+
+ app = booleanWindow()
+ app.stand_alone()
-diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/loginsPage.py policycoreutils-2.0.52/gui/loginsPage.py
+diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/loginsPage.py policycoreutils-2.0.54/gui/loginsPage.py
--- nsapolicycoreutils/gui/loginsPage.py 1969-12-31 19:00:00.000000000 -0500
-+++ policycoreutils-2.0.52/gui/loginsPage.py 2008-07-03 16:17:11.000000000 -0400
++++ policycoreutils-2.0.54/gui/loginsPage.py 2008-08-06 18:05:28.000000000 -0400
@@ -0,0 +1,185 @@
+## loginsPage.py - show selinux mappings
+## Copyright (C) 2006 Red Hat, Inc.
@@ -1861,9 +2030,9 @@
+ self.store.set_value(iter, 1, seuser)
+ self.store.set_value(iter, 2, seobject.translate(serange))
+
-diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/mappingsPage.py policycoreutils-2.0.52/gui/mappingsPage.py
+diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/mappingsPage.py policycoreutils-2.0.54/gui/mappingsPage.py
--- nsapolicycoreutils/gui/mappingsPage.py 1969-12-31 19:00:00.000000000 -0500
-+++ policycoreutils-2.0.52/gui/mappingsPage.py 2008-07-03 16:17:11.000000000 -0400
++++ policycoreutils-2.0.54/gui/mappingsPage.py 2008-08-06 18:05:28.000000000 -0400
@@ -0,0 +1,56 @@
+## mappingsPage.py - show selinux mappings
+## Copyright (C) 2006 Red Hat, Inc.
@@ -1921,9 +2090,9 @@
+ for k in keys:
+ print "%-25s %-25s %-25s" % (k, dict[k][0], translate(dict[k][1]))
+
-diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/modulesPage.py policycoreutils-2.0.52/gui/modulesPage.py
+diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/modulesPage.py policycoreutils-2.0.54/gui/modulesPage.py
--- nsapolicycoreutils/gui/modulesPage.py 1969-12-31 19:00:00.000000000 -0500
-+++ policycoreutils-2.0.52/gui/modulesPage.py 2008-07-03 16:17:11.000000000 -0400
++++ policycoreutils-2.0.54/gui/modulesPage.py 2008-08-06 18:05:28.000000000 -0400
@@ -0,0 +1,195 @@
+## modulesPage.py - show selinux mappings
+## Copyright (C) 2006 Red Hat, Inc.
@@ -2120,9 +2289,9 @@
+
+
+
-diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/polgen.glade policycoreutils-2.0.52/gui/polgen.glade
+diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/polgen.glade policycoreutils-2.0.54/gui/polgen.glade
--- nsapolicycoreutils/gui/polgen.glade 1969-12-31 19:00:00.000000000 -0500
-+++ policycoreutils-2.0.52/gui/polgen.glade 2008-07-03 16:17:11.000000000 -0400
++++ policycoreutils-2.0.54/gui/polgen.glade 2008-08-06 18:05:28.000000000 -0400
@@ -0,0 +1,3284 @@
+<?xml version="1.0" standalone="no"?> <!--*- mode: xml -*-->
+<!DOCTYPE glade-interface SYSTEM "http://glade.gnome.org/glade-2.0.dtd">
@@ -5408,9 +5577,9 @@
+</widget>
+
+</glade-interface>
-diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/polgen.py policycoreutils-2.0.52/gui/polgen.py
+diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/polgen.py policycoreutils-2.0.54/gui/polgen.py
--- nsapolicycoreutils/gui/polgen.py 1969-12-31 19:00:00.000000000 -0500
-+++ policycoreutils-2.0.52/gui/polgen.py 2008-07-03 16:17:11.000000000 -0400
++++ policycoreutils-2.0.54/gui/polgen.py 2008-08-06 18:05:28.000000000 -0400
@@ -0,0 +1,925 @@
+#!/usr/bin/python
+#
@@ -6337,9 +6506,9 @@
+ sys.exit(0)
+
+
-diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/polgengui.py policycoreutils-2.0.52/gui/polgengui.py
+diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/polgengui.py policycoreutils-2.0.54/gui/polgengui.py
--- nsapolicycoreutils/gui/polgengui.py 1969-12-31 19:00:00.000000000 -0500
-+++ policycoreutils-2.0.52/gui/polgengui.py 2008-07-03 16:17:11.000000000 -0400
++++ policycoreutils-2.0.54/gui/polgengui.py 2008-08-06 18:05:28.000000000 -0400
@@ -0,0 +1,623 @@
+#!/usr/bin/python -E
+#
@@ -6964,9 +7133,9 @@
+
+ app = childWindow()
+ app.stand_alone()
-diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/portsPage.py policycoreutils-2.0.52/gui/portsPage.py
+diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/portsPage.py policycoreutils-2.0.54/gui/portsPage.py
--- nsapolicycoreutils/gui/portsPage.py 1969-12-31 19:00:00.000000000 -0500
-+++ policycoreutils-2.0.52/gui/portsPage.py 2008-07-08 15:48:27.000000000 -0400
++++ policycoreutils-2.0.54/gui/portsPage.py 2008-08-06 18:05:28.000000000 -0400
@@ -0,0 +1,259 @@
+## portsPage.py - show selinux mappings
+## Copyright (C) 2006 Red Hat, Inc.
@@ -7227,9 +7396,9 @@
+
+ return True
+
-diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/selinux.tbl policycoreutils-2.0.52/gui/selinux.tbl
+diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/selinux.tbl policycoreutils-2.0.54/gui/selinux.tbl
--- nsapolicycoreutils/gui/selinux.tbl 1969-12-31 19:00:00.000000000 -0500
-+++ policycoreutils-2.0.52/gui/selinux.tbl 2008-07-03 16:17:11.000000000 -0400
++++ policycoreutils-2.0.54/gui/selinux.tbl 2008-08-06 18:05:28.000000000 -0400
@@ -0,0 +1,234 @@
+acct_disable_trans _("SELinux Service Protection") _("Disable SELinux protection for acct daemon")
+allow_daemons_dump_core _("Admin") _("Allow all daemons to write corefiles to /")
@@ -7465,9 +7634,9 @@
+webadm_manage_user_files _("HTTPD Service") _("Allow SELinux webadm user to manage unprivileged users home directories")
+webadm_read_user_files _("HTTPD Service") _("Allow SELinux webadm user to read unprivileged users home directories")
+
-diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/semanagePage.py policycoreutils-2.0.52/gui/semanagePage.py
+diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/semanagePage.py policycoreutils-2.0.54/gui/semanagePage.py
--- nsapolicycoreutils/gui/semanagePage.py 1969-12-31 19:00:00.000000000 -0500
-+++ policycoreutils-2.0.52/gui/semanagePage.py 2008-07-03 16:17:11.000000000 -0400
++++ policycoreutils-2.0.54/gui/semanagePage.py 2008-08-06 18:05:28.000000000 -0400
@@ -0,0 +1,169 @@
+## semanagePage.py - show selinux mappings
+## Copyright (C) 2006 Red Hat, Inc.
@@ -7638,9 +7807,9 @@
+ self.load(self.filter)
+ return True
+
-diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/statusPage.py policycoreutils-2.0.52/gui/statusPage.py
+diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/statusPage.py policycoreutils-2.0.54/gui/statusPage.py
--- nsapolicycoreutils/gui/statusPage.py 1969-12-31 19:00:00.000000000 -0500
-+++ policycoreutils-2.0.52/gui/statusPage.py 2008-07-03 16:17:11.000000000 -0400
++++ policycoreutils-2.0.54/gui/statusPage.py 2008-08-06 18:05:28.000000000 -0400
@@ -0,0 +1,191 @@
+# statusPage.py - show selinux status
+## Copyright (C) 2006 Red Hat, Inc.
@@ -7833,9 +8002,9 @@
+ return self.types[self.selinuxTypeOptionMenu.get_active()]
+
+
-diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/system-config-selinux.glade policycoreutils-2.0.52/gui/system-config-selinux.glade
+diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/system-config-selinux.glade policycoreutils-2.0.54/gui/system-config-selinux.glade
--- nsapolicycoreutils/gui/system-config-selinux.glade 1969-12-31 19:00:00.000000000 -0500
-+++ policycoreutils-2.0.52/gui/system-config-selinux.glade 2008-07-03 16:17:11.000000000 -0400
++++ policycoreutils-2.0.54/gui/system-config-selinux.glade 2008-08-06 18:05:28.000000000 -0400
@@ -0,0 +1,3221 @@
+<?xml version="1.0" standalone="no"?> <!--*- mode: xml -*-->
+<!DOCTYPE glade-interface SYSTEM "http://glade.gnome.org/glade-2.0.dtd">
@@ -11058,9 +11227,9 @@
+</widget>
+
+</glade-interface>
-diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/system-config-selinux.py policycoreutils-2.0.52/gui/system-config-selinux.py
+diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/system-config-selinux.py policycoreutils-2.0.54/gui/system-config-selinux.py
--- nsapolicycoreutils/gui/system-config-selinux.py 1969-12-31 19:00:00.000000000 -0500
-+++ policycoreutils-2.0.52/gui/system-config-selinux.py 2008-07-03 16:17:11.000000000 -0400
++++ policycoreutils-2.0.54/gui/system-config-selinux.py 2008-08-06 18:05:28.000000000 -0400
@@ -0,0 +1,187 @@
+#!/usr/bin/python
+#
@@ -11249,9 +11418,9 @@
+
+ app = childWindow()
+ app.stand_alone()
-diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/templates/__init__.py policycoreutils-2.0.52/gui/templates/__init__.py
+diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/templates/__init__.py policycoreutils-2.0.54/gui/templates/__init__.py
--- nsapolicycoreutils/gui/templates/__init__.py 1969-12-31 19:00:00.000000000 -0500
-+++ policycoreutils-2.0.52/gui/templates/__init__.py 2008-07-03 16:17:11.000000000 -0400
++++ policycoreutils-2.0.54/gui/templates/__init__.py 2008-08-06 18:05:28.000000000 -0400
@@ -0,0 +1,18 @@
+#
+# Copyright (C) 2007 Red Hat, Inc.
@@ -11271,9 +11440,9 @@
+# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+#
+
-diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/templates/boolean.py policycoreutils-2.0.52/gui/templates/boolean.py
+diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/templates/boolean.py policycoreutils-2.0.54/gui/templates/boolean.py
--- nsapolicycoreutils/gui/templates/boolean.py 1969-12-31 19:00:00.000000000 -0500
-+++ policycoreutils-2.0.52/gui/templates/boolean.py 2008-07-03 16:17:11.000000000 -0400
++++ policycoreutils-2.0.54/gui/templates/boolean.py 2008-08-06 18:05:28.000000000 -0400
@@ -0,0 +1,40 @@
+# Copyright (C) 2007 Red Hat
+# see file 'COPYING' for use and warranty information
@@ -11315,9 +11484,9 @@
+')
+"""
+
-diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/templates/etc_rw.py policycoreutils-2.0.52/gui/templates/etc_rw.py
+diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/templates/etc_rw.py policycoreutils-2.0.54/gui/templates/etc_rw.py
--- nsapolicycoreutils/gui/templates/etc_rw.py 1969-12-31 19:00:00.000000000 -0500
-+++ policycoreutils-2.0.52/gui/templates/etc_rw.py 2008-07-03 16:17:11.000000000 -0400
++++ policycoreutils-2.0.54/gui/templates/etc_rw.py 2008-08-06 18:05:28.000000000 -0400
@@ -0,0 +1,129 @@
+# Copyright (C) 2007 Red Hat
+# see file 'COPYING' for use and warranty information
@@ -11448,9 +11617,9 @@
+fc_dir="""\
+FILENAME(/.*)? gen_context(system_u:object_r:TEMPLATETYPE_etc_rw_t,s0)
+"""
-diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/templates/executable.py policycoreutils-2.0.52/gui/templates/executable.py
+diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/templates/executable.py policycoreutils-2.0.54/gui/templates/executable.py
--- nsapolicycoreutils/gui/templates/executable.py 1969-12-31 19:00:00.000000000 -0500
-+++ policycoreutils-2.0.52/gui/templates/executable.py 2008-07-03 16:17:11.000000000 -0400
++++ policycoreutils-2.0.54/gui/templates/executable.py 2008-08-06 18:05:28.000000000 -0400
@@ -0,0 +1,327 @@
+# Copyright (C) 2007 Red Hat
+# see file 'COPYING' for use and warranty information
@@ -11779,9 +11948,9 @@
+EXECUTABLE -- gen_context(system_u:object_r:TEMPLATETYPE_script_exec_t,s0)
+"""
+
-diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/templates/network.py policycoreutils-2.0.52/gui/templates/network.py
+diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/templates/network.py policycoreutils-2.0.54/gui/templates/network.py
--- nsapolicycoreutils/gui/templates/network.py 1969-12-31 19:00:00.000000000 -0500
-+++ policycoreutils-2.0.52/gui/templates/network.py 2008-07-03 16:17:11.000000000 -0400
++++ policycoreutils-2.0.54/gui/templates/network.py 2008-08-06 18:05:28.000000000 -0400
@@ -0,0 +1,80 @@
+te_port_types="""
+type TEMPLATETYPE_port_t;
@@ -11863,9 +12032,9 @@
+corenet_udp_bind_all_unreserved_ports(TEMPLATETYPE_t)
+"""
+
-diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/templates/rw.py policycoreutils-2.0.52/gui/templates/rw.py
+diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/templates/rw.py policycoreutils-2.0.54/gui/templates/rw.py
--- nsapolicycoreutils/gui/templates/rw.py 1969-12-31 19:00:00.000000000 -0500
-+++ policycoreutils-2.0.52/gui/templates/rw.py 2008-07-03 16:17:11.000000000 -0400
++++ policycoreutils-2.0.54/gui/templates/rw.py 2008-08-06 18:05:28.000000000 -0400
@@ -0,0 +1,128 @@
+# Copyright (C) 2007 Red Hat
+# see file 'COPYING' for use and warranty information
@@ -11995,9 +12164,9 @@
+fc_dir="""
+FILENAME(/.*)? gen_context(system_u:object_r:TEMPLATETYPE_rw_t,s0)
+"""
-diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/templates/script.py policycoreutils-2.0.52/gui/templates/script.py
+diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/templates/script.py policycoreutils-2.0.54/gui/templates/script.py
--- nsapolicycoreutils/gui/templates/script.py 1969-12-31 19:00:00.000000000 -0500
-+++ policycoreutils-2.0.52/gui/templates/script.py 2008-07-03 16:17:11.000000000 -0400
++++ policycoreutils-2.0.54/gui/templates/script.py 2008-08-06 18:05:28.000000000 -0400
@@ -0,0 +1,105 @@
+# Copyright (C) 2007 Red Hat
+# see file 'COPYING' for use and warranty information
@@ -12104,9 +12273,9 @@
+# Adding roles to SELinux user USER
+/usr/sbin/semanage user -m -R +TEMPLATETYPE_r USER
+"""
-diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/templates/semodule.py policycoreutils-2.0.52/gui/templates/semodule.py
+diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/templates/semodule.py policycoreutils-2.0.54/gui/templates/semodule.py
--- nsapolicycoreutils/gui/templates/semodule.py 1969-12-31 19:00:00.000000000 -0500
-+++ policycoreutils-2.0.52/gui/templates/semodule.py 2008-07-03 16:17:11.000000000 -0400
++++ policycoreutils-2.0.54/gui/templates/semodule.py 2008-08-06 18:05:28.000000000 -0400
@@ -0,0 +1,41 @@
+# Copyright (C) 2007 Red Hat
+# see file 'COPYING' for use and warranty information
@@ -12149,9 +12318,9 @@
+semanage ports -a -t TEMPLATETYPE_port_t -p udp PORTNUM
+"""
+
-diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/templates/tmp.py policycoreutils-2.0.52/gui/templates/tmp.py
+diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/templates/tmp.py policycoreutils-2.0.54/gui/templates/tmp.py
--- nsapolicycoreutils/gui/templates/tmp.py 1969-12-31 19:00:00.000000000 -0500
-+++ policycoreutils-2.0.52/gui/templates/tmp.py 2008-07-03 16:17:11.000000000 -0400
++++ policycoreutils-2.0.54/gui/templates/tmp.py 2008-08-06 18:05:28.000000000 -0400
@@ -0,0 +1,97 @@
+# Copyright (C) 2007 Red Hat
+# see file 'COPYING' for use and warranty information
@@ -12250,9 +12419,9 @@
+ TEMPLATETYPE_manage_tmp($1)
+"""
+
-diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/templates/user.py policycoreutils-2.0.52/gui/templates/user.py
+diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/templates/user.py policycoreutils-2.0.54/gui/templates/user.py
--- nsapolicycoreutils/gui/templates/user.py 1969-12-31 19:00:00.000000000 -0500
-+++ policycoreutils-2.0.52/gui/templates/user.py 2008-07-03 16:17:11.000000000 -0400
++++ policycoreutils-2.0.54/gui/templates/user.py 2008-08-06 18:05:28.000000000 -0400
@@ -0,0 +1,182 @@
+# Copyright (C) 2007 Red Hat
+# see file 'COPYING' for use and warranty information
@@ -12436,9 +12605,9 @@
+te_newrole_rules="""
+seutil_run_newrole(TEMPLATETYPE_t,TEMPLATETYPE_r,{ TEMPLATETYPE_devpts_t TEMPLATETYPE_tty_device_t })
+"""
-diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/templates/var_lib.py policycoreutils-2.0.52/gui/templates/var_lib.py
+diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/templates/var_lib.py policycoreutils-2.0.54/gui/templates/var_lib.py
--- nsapolicycoreutils/gui/templates/var_lib.py 1969-12-31 19:00:00.000000000 -0500
-+++ policycoreutils-2.0.52/gui/templates/var_lib.py 2008-07-03 16:17:11.000000000 -0400
++++ policycoreutils-2.0.54/gui/templates/var_lib.py 2008-08-06 18:05:28.000000000 -0400
@@ -0,0 +1,158 @@
+# Copyright (C) 2007 Red Hat
+# see file 'COPYING' for use and warranty information
@@ -12598,9 +12767,9 @@
+fc_dir="""\
+FILENAME(/.*)? gen_context(system_u:object_r:TEMPLATETYPE_var_lib_t,s0)
+"""
-diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/templates/var_log.py policycoreutils-2.0.52/gui/templates/var_log.py
+diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/templates/var_log.py policycoreutils-2.0.54/gui/templates/var_log.py
--- nsapolicycoreutils/gui/templates/var_log.py 1969-12-31 19:00:00.000000000 -0500
-+++ policycoreutils-2.0.52/gui/templates/var_log.py 2008-07-03 16:17:11.000000000 -0400
++++ policycoreutils-2.0.54/gui/templates/var_log.py 2008-08-06 18:05:28.000000000 -0400
@@ -0,0 +1,110 @@
+# Copyright (C) 2007 Red Hat
+# see file 'COPYING' for use and warranty information
@@ -12712,9 +12881,9 @@
+fc_dir="""\
+FILENAME(/.*)? gen_context(system_u:object_r:TEMPLATETYPE_log_t,s0)
+"""
-diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/templates/var_run.py policycoreutils-2.0.52/gui/templates/var_run.py
+diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/templates/var_run.py policycoreutils-2.0.54/gui/templates/var_run.py
--- nsapolicycoreutils/gui/templates/var_run.py 1969-12-31 19:00:00.000000000 -0500
-+++ policycoreutils-2.0.52/gui/templates/var_run.py 2008-07-03 16:17:11.000000000 -0400
++++ policycoreutils-2.0.54/gui/templates/var_run.py 2008-08-06 18:05:28.000000000 -0400
@@ -0,0 +1,118 @@
+# Copyright (C) 2007 Red Hat
+# see file 'COPYING' for use and warranty information
@@ -12834,9 +13003,9 @@
+FILENAME(/.*)? gen_context(system_u:object_r:TEMPLATETYPE_var_run_t,s0)
+"""
+
-diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/templates/var_spool.py policycoreutils-2.0.52/gui/templates/var_spool.py
+diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/templates/var_spool.py policycoreutils-2.0.54/gui/templates/var_spool.py
--- nsapolicycoreutils/gui/templates/var_spool.py 1969-12-31 19:00:00.000000000 -0500
-+++ policycoreutils-2.0.52/gui/templates/var_spool.py 2008-07-03 16:17:11.000000000 -0400
++++ policycoreutils-2.0.54/gui/templates/var_spool.py 2008-08-06 18:05:28.000000000 -0400
@@ -0,0 +1,129 @@
+# Copyright (C) 2007 Red Hat
+# see file 'COPYING' for use and warranty information
@@ -12967,9 +13136,9 @@
+fc_dir="""\
+FILENAME(/.*)? gen_context(system_u:object_r:TEMPLATETYPE_spool_t,s0)
+"""
-diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/translationsPage.py policycoreutils-2.0.52/gui/translationsPage.py
+diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/translationsPage.py policycoreutils-2.0.54/gui/translationsPage.py
--- nsapolicycoreutils/gui/translationsPage.py 1969-12-31 19:00:00.000000000 -0500
-+++ policycoreutils-2.0.52/gui/translationsPage.py 2008-07-03 16:17:11.000000000 -0400
++++ policycoreutils-2.0.54/gui/translationsPage.py 2008-08-06 18:05:28.000000000 -0400
@@ -0,0 +1,118 @@
+## translationsPage.py - show selinux translations
+## Copyright (C) 2006 Red Hat, Inc.
@@ -13089,9 +13258,9 @@
+ store, iter = self.view.get_selection().get_selected()
+ self.store.set_value(iter, 0, level)
+ self.store.set_value(iter, 1, translation)
-diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/usersPage.py policycoreutils-2.0.52/gui/usersPage.py
+diff --exclude-from=exclude -N -u -r nsapolicycoreutils/gui/usersPage.py policycoreutils-2.0.54/gui/usersPage.py
--- nsapolicycoreutils/gui/usersPage.py 1969-12-31 19:00:00.000000000 -0500
-+++ policycoreutils-2.0.52/gui/usersPage.py 2008-07-03 16:17:11.000000000 -0400
++++ policycoreutils-2.0.54/gui/usersPage.py 2008-08-06 18:05:28.000000000 -0400
@@ -0,0 +1,150 @@
+## usersPage.py - show selinux mappings
+## Copyright (C) 2006,2007,2008 Red Hat, Inc.
++++++ policycoreutils-po.patch.bz2 ++++++
++++ 196460 lines (skipped)
++++ between policycoreutils/policycoreutils-po.patch.bz2
++++ and /mounts/work_src_done/STABLE/policycoreutils/policycoreutils-po.patch.bz2
++++++ policycoreutils-rhat.patch ++++++
++++ 2111 lines (skipped)
++++ between policycoreutils/policycoreutils-rhat.patch
++++ and /mounts/work_src_done/STABLE/policycoreutils/policycoreutils-rhat.patch
++++++ policycoreutils-sepolgen.patch ++++++
--- /var/tmp/diff_new_pack.E11949/_old 2008-09-02 12:29:20.000000000 +0200
+++ /var/tmp/diff_new_pack.E11949/_new 2008-09-02 12:29:20.000000000 +0200
@@ -1,6 +1,6 @@
-diff --exclude-from=exclude -N -u -r nsasepolgen/src/sepolgen/refparser.py policycoreutils-2.0.49/sepolgen-1.0.12/src/sepolgen/refparser.py
---- nsasepolgen/src/sepolgen/refparser.py 2008-06-12 23:25:26.000000000 -0400
-+++ policycoreutils-2.0.49/sepolgen-1.0.12/src/sepolgen/refparser.py 2008-06-27 07:21:06.000000000 -0400
+diff --exclude-from=exclude -N -u -r nsasepolgen/src/sepolgen/refparser.py policycoreutils-2.0.52/sepolgen-1.0.13/src/sepolgen/refparser.py
+--- nsasepolgen/src/sepolgen/refparser.py 2008-06-13 23:25:26.000000000 -0400
++++ policycoreutils-2.0.52/sepolgen-1.0.13/src/sepolgen/refparser.py 2008-07-29 09:06:29.000000000 -0400
@@ -919,7 +919,7 @@
def list_headers(root):
modules = []
++++++ sepolgen-1.0.12.tar.bz2 -> sepolgen-1.0.13.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/sepolgen-1.0.12/ChangeLog new/sepolgen-1.0.13/ChangeLog
--- old/sepolgen-1.0.12/ChangeLog 2008-06-30 17:13:21.000000000 +0200
+++ new/sepolgen-1.0.13/ChangeLog 2008-07-29 15:26:03.000000000 +0200
@@ -1,3 +1,6 @@
+1.0.13 2008-07-29
+ * Only append s0 suffix if MLS is enabled from Karl MacMillan.
+
1.0.12 2008-06-30
* Fix generation of role-type and role allow rules from Karl MacMillan.
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/sepolgen-1.0.12/src/sepolgen/refpolicy.py new/sepolgen-1.0.13/src/sepolgen/refpolicy.py
--- old/sepolgen-1.0.12/src/sepolgen/refpolicy.py 2008-06-30 17:13:21.000000000 +0200
+++ new/sepolgen-1.0.13/src/sepolgen/refpolicy.py 2008-07-29 15:26:03.000000000 +0200
@@ -19,6 +19,7 @@
import string
import itertools
+import selinux
# OVERVIEW
#
@@ -265,7 +266,7 @@
self.user = ""
self.role = ""
self.type = ""
- self.level = ""
+ self.level = None
if context is not None:
self.from_string(context)
@@ -288,7 +289,7 @@
# FUTURE - normalize level fields to allow more comparisons to succeed.
self.level = string.join(fields[3:], ':')
else:
- self.level = ""
+ self.level = None
def __eq__(self, other):
"""Compare two SecurityContext objects - all fields must be exactly the
@@ -301,7 +302,7 @@
self.type == other.type and \
self.level == other.level
- def to_string(self, default_level="s0"):
+ def to_string(self, default_level=None):
"""Return a string representing this security context.
By default, the string will contiain a MCS / MLS level
@@ -317,8 +318,11 @@
'user:role:type:level'.
"""
fields = [self.user, self.role, self.type]
- if self.level == "":
- if default_level != "":
+ if self.level is None:
+ if default_level is None:
+ if selinux.is_selinux_mls_enabled() == 1:
+ fields.append("s0")
+ else:
fields.append(default_level)
else:
fields.append(self.level)
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/sepolgen-1.0.12/tests/test_refpolicy.py new/sepolgen-1.0.13/tests/test_refpolicy.py
--- old/sepolgen-1.0.12/tests/test_refpolicy.py 2008-06-30 17:13:21.000000000 +0200
+++ new/sepolgen-1.0.13/tests/test_refpolicy.py 2008-07-29 15:26:03.000000000 +0200
@@ -19,6 +19,7 @@
import unittest
import sepolgen.refpolicy as refpolicy
+import selinux
class TestIdSet(unittest.TestCase):
def test_set_to_str(self):
@@ -40,8 +41,11 @@
self.assertEquals(sc.user, "user_u")
self.assertEquals(sc.role, "object_r")
self.assertEquals(sc.type, "foo_t")
- self.assertEquals(sc.level, "")
- self.assertEquals(str(sc), context + ":s0")
+ self.assertEquals(sc.level, None)
+ if selinux.is_selinux_mls_enabled():
+ self.assertEquals(str(sc), context + ":s0")
+ else:
+ self.assertEquals(str(sc), context)
self.assertEquals(sc.to_string(default_level="s1"), context + ":s1")
context = "user_u:object_r:foo_t:s0-s0:c0-c255"
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/sepolgen-1.0.12/VERSION new/sepolgen-1.0.13/VERSION
--- old/sepolgen-1.0.12/VERSION 2008-06-30 17:13:21.000000000 +0200
+++ new/sepolgen-1.0.13/VERSION 2008-07-29 15:26:03.000000000 +0200
@@ -1 +1 @@
-1.0.12
+1.0.13
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
---------------------------------------------------------------------
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 libsemanage
checked in at Tue Sep 2 12:29:51 CEST 2008.
--------
--- libsemanage/libsemanage.changes 2008-08-01 17:32:23.000000000 +0200
+++ /mounts/work_src_done/STABLE/libsemanage/libsemanage.changes 2008-09-02 12:14:39.000000000 +0200
@@ -1,0 +2,11 @@
+Tue Sep 2 12:13:42 CEST 2008 - prusnak(a)suse.cz
+
+- updated to 2.0.27
+ * Modify genhomedircon to skip %groupname entries.
+ Ultimately we need to expand them to the list of users to support
+ per-role homedir labeling when using the %groupname syntax.
+- updated to 2.0.26
+ * Fix bug in genhomedircon fcontext matches logic from Dan Walsh.
+ Strip any trailing slash before appending /*$.
+
+-------------------------------------------------------------------
Old:
----
libsemanage-2.0.25-rhat.patch
libsemanage-2.0.25.tar.bz2
New:
----
libsemanage-2.0.27-rhat.patch
libsemanage-2.0.27.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libsemanage.spec ++++++
--- /var/tmp/diff_new_pack.N14046/_old 2008-09-02 12:29:45.000000000 +0200
+++ /var/tmp/diff_new_pack.N14046/_new 2008-09-02 12:29:45.000000000 +0200
@@ -1,10 +1,17 @@
#
-# spec file for package libsemanage (Version 2.0.25)
+# spec file for package libsemanage (Version 2.0.27)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
-# This file and all modifications and additions to the pristine
-# package are under the same license as the package itself.
#
+# All modifications and additions to the file contributed by third parties
+# remain the property of their copyright owners, unless otherwise agreed
+# upon. The license for this file, and modifications and additions to the
+# file, is the same license as for the pristine package itself (unless the
+# license for the pristine package is not an Open Source License, in which
+# case the license is the MIT License). An "Open Source License" is a
+# license that conforms to the Open Source Definition (Version 1.9)
+# published by the Open Source Initiative.
+
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
@@ -17,8 +24,8 @@
BuildRequires: libsepol-devel >= %{libsepol_ver}
Name: libsemanage
-Version: 2.0.25
-Release: 2
+Version: 2.0.27
+Release: 1
Url: http://www.nsa.gov/selinux/
License: LGPL v2.1 only
Group: System/Libraries
@@ -29,14 +36,14 @@
%define debug_package_requires libsemanage1 = %{version}
%description
-Security-enhanced Linux is a feature of the Linux� kernel and a number
-of utilities with enhanced security functionality designed to add
-mandatory access controls to Linux. The Security-enhanced Linux kernel
-contains new architectural components originally developed to improve
-the security of the Flask operating system. These architectural
+Security-enhanced Linux is a feature of the Linux(R) kernel and a
+number of utilities with enhanced security functionality designed to
+add mandatory access controls to Linux. The Security-enhanced Linux
+kernel contains new architectural components originally developed to
+improve the security of the Flask operating system. These architectural
components provide general support for the enforcement of many kinds of
mandatory access control policies, including those based on the
-concepts of Type Enforcement�, Role-based Access Control, and
+concepts of Type Enforcement(R), Role-based Access Control, and
Multi-level Security.
libsemanage provides an API for the manipulation of SELinux binary
@@ -53,14 +60,14 @@
Summary: SELinux binary policy manipulation library
%description -n libsemanage1
-Security-enhanced Linux is a feature of the Linux� kernel and a number
-of utilities with enhanced security functionality designed to add
-mandatory access controls to Linux. The Security-enhanced Linux kernel
-contains new architectural components originally developed to improve
-the security of the Flask operating system. These architectural
+Security-enhanced Linux is a feature of the Linux(R) kernel and a
+number of utilities with enhanced security functionality designed to
+add mandatory access controls to Linux. The Security-enhanced Linux
+kernel contains new architectural components originally developed to
+improve the security of the Flask operating system. These architectural
components provide general support for the enforcement of many kinds of
mandatory access control policies, including those based on the
-concepts of Type Enforcement�, Role-based Access Control, and
+concepts of Type Enforcement(R), Role-based Access Control, and
Multi-level Security.
libsemanage provides an API for the manipulation of SELinux binary
@@ -78,14 +85,14 @@
Requires: libsemanage1 = %{version}-%{release} libustr-devel
%description devel
-Security-enhanced Linux is a feature of the Linux� kernel and a number
-of utilities with enhanced security functionality designed to add
-mandatory access controls to Linux. The Security-enhanced Linux kernel
-contains new architectural components originally developed to improve
-the security of the Flask operating system. These architectural
+Security-enhanced Linux is a feature of the Linux(R) kernel and a
+number of utilities with enhanced security functionality designed to
+add mandatory access controls to Linux. The Security-enhanced Linux
+kernel contains new architectural components originally developed to
+improve the security of the Flask operating system. These architectural
components provide general support for the enforcement of many kinds of
mandatory access control policies, including those based on the
-concepts of Type Enforcement�, Role-based Access Control, and
+concepts of Type Enforcement(R), Role-based Access Control, and
Multi-level Security.
libsemanage provides an API for the manipulation of SELinux binary
@@ -161,6 +168,14 @@
%{_libdir}/python*/site-packages/*
%changelog
+* Tue Sep 02 2008 prusnak(a)suse.cz
+- updated to 2.0.27
+ * Modify genhomedircon to skip %%groupname entries.
+ Ultimately we need to expand them to the list of users to support
+ per-role homedir labeling when using the %%groupname syntax.
+- updated to 2.0.26
+ * Fix bug in genhomedircon fcontext matches logic from Dan Walsh.
+ Strip any trailing slash before appending /*$.
* Fri Aug 01 2008 ro(a)suse.de
- fix requires for debuginfo package
* Tue Jul 15 2008 prusnak(a)suse.cz
++++++ libsemanage-2.0.25-rhat.patch -> libsemanage-2.0.27-rhat.patch ++++++
--- libsemanage/libsemanage-2.0.25-rhat.patch 2008-01-29 14:36:49.000000000 +0100
+++ /mounts/work_src_done/STABLE/libsemanage/libsemanage-2.0.27-rhat.patch 2008-08-29 20:57:16.000000000 +0200
@@ -1,7 +1,91 @@
-diff --exclude-from=exclude -N -u -r nsalibsemanage/src/genhomedircon.c libsemanage-2.0.15/src/genhomedircon.c
---- nsalibsemanage/src/genhomedircon.c 2008-01-28 16:52:22.000000000 -0500
-+++ libsemanage-2.0.15/src/genhomedircon.c 2008-01-25 10:28:39.000000000 -0500
-@@ -406,7 +406,6 @@
+diff --exclude-from=exclude -N -u -r nsalibsemanage/src/direct_api.c libsemanage-2.0.27/src/direct_api.c
+--- nsalibsemanage/src/direct_api.c 2008-06-12 23:25:16.000000000 -0400
++++ libsemanage-2.0.27/src/direct_api.c 2008-08-26 10:25:38.000000000 -0400
+@@ -489,12 +489,6 @@
+ modified |= ifaces->dtable->is_modified(ifaces->dbase);
+ modified |= nodes->dtable->is_modified(nodes->dbase);
+
+- /* FIXME: get rid of these, once we support loading the existing policy,
+- * instead of rebuilding it */
+- modified |= seusers_modified;
+- modified |= fcontexts_modified;
+- modified |= users_extra_modified;
+-
+ /* If there were policy changes, or explicitly requested, rebuild the policy */
+ if (sh->do_rebuild || modified) {
+
+@@ -667,11 +661,33 @@
+ retval = semanage_verify_kernel(sh);
+ if (retval < 0)
+ goto cleanup;
+- }
++ } else {
++ retval = sepol_policydb_create(&out);
++ if (retval < 0)
++ goto cleanup;
++
++ retval = semanage_read_policydb(sh, out);
++ if (retval < 0)
++ goto cleanup;
++
++ /* dbase_policydb_attach((dbase_policydb_t *) pusers_base->dbase,out);
++ dbase_policydb_attach((dbase_policydb_t *) pports->dbase, out);
++ dbase_policydb_attach((dbase_policydb_t *) pifaces->dbase, out);
++ dbase_policydb_attach((dbase_policydb_t *) pbools->dbase, out);
++ dbase_policydb_attach((dbase_policydb_t *) pnodes->dbase, out);
++ */
++ if (seusers_modified) {
++ retval = pseusers->dtable->clear(sh, pseusers->dbase);
++ if (retval < 0)
++ goto cleanup;
++ }
+
+- /* FIXME: else if !modified, but seusers_modified,
+- * load the existing policy instead of rebuilding */
++ retval = semanage_base_merge_components(sh);
++ if (retval < 0)
++ goto cleanup;
+
++ /* Seusers */
++ }
+ /* ======= Post-process: Validate non-policydb components ===== */
+
+ /* Validate local modifications to file contexts.
+@@ -724,7 +740,8 @@
+ sepol_policydb_free(out);
+ out = NULL;
+
+- if (sh->do_rebuild || modified) {
++ if (sh->do_rebuild || modified ||
++ seusers_modified || fcontexts_modified || users_extra_modified) {
+ retval = semanage_install_sandbox(sh);
+ }
+
+@@ -733,12 +750,14 @@
+ free(mod_filenames[i]);
+ }
+
+- /* Detach from policydb, so it can be freed */
+- dbase_policydb_detach((dbase_policydb_t *) pusers_base->dbase);
+- dbase_policydb_detach((dbase_policydb_t *) pports->dbase);
+- dbase_policydb_detach((dbase_policydb_t *) pifaces->dbase);
+- dbase_policydb_detach((dbase_policydb_t *) pnodes->dbase);
+- dbase_policydb_detach((dbase_policydb_t *) pbools->dbase);
++ if (modified) {
++ /* Detach from policydb, so it can be freed */
++ dbase_policydb_detach((dbase_policydb_t *) pusers_base->dbase);
++ dbase_policydb_detach((dbase_policydb_t *) pports->dbase);
++ dbase_policydb_detach((dbase_policydb_t *) pifaces->dbase);
++ dbase_policydb_detach((dbase_policydb_t *) pnodes->dbase);
++ dbase_policydb_detach((dbase_policydb_t *) pbools->dbase);
++ }
+
+ free(mod_filenames);
+ sepol_policydb_free(out);
+diff --exclude-from=exclude -N -u -r nsalibsemanage/src/genhomedircon.c libsemanage-2.0.27/src/genhomedircon.c
+--- nsalibsemanage/src/genhomedircon.c 2008-08-05 09:57:28.000000000 -0400
++++ libsemanage-2.0.27/src/genhomedircon.c 2008-08-26 10:30:30.000000000 -0400
+@@ -487,7 +487,6 @@
const char *role_prefix)
{
replacement_pair_t repl[] = {
@@ -9,7 +93,7 @@
{.search_for = TEMPLATE_HOME_DIR,.replace_with = home},
{.search_for = TEMPLATE_ROLE,.replace_with = role_prefix},
{NULL, NULL}
-@@ -466,7 +465,6 @@
+@@ -547,7 +546,6 @@
replacement_pair_t repl[] = {
{.search_for = TEMPLATE_USER,.replace_with = user},
{.search_for = TEMPLATE_ROLE,.replace_with = role_prefix},
@@ -17,12 +101,152 @@
{NULL, NULL}
};
Ustr *line = USTR_NULL;
-diff --exclude-from=exclude -N -u -r nsalibsemanage/src/semanage.conf libsemanage-2.0.15/src/semanage.conf
---- nsalibsemanage/src/semanage.conf 2007-07-16 14:20:38.000000000 -0400
-+++ libsemanage-2.0.15/src/semanage.conf 2008-01-25 10:28:39.000000000 -0500
+diff --exclude-from=exclude -N -u -r nsalibsemanage/src/semanage.conf libsemanage-2.0.27/src/semanage.conf
+--- nsalibsemanage/src/semanage.conf 2008-06-12 23:25:16.000000000 -0400
++++ libsemanage-2.0.27/src/semanage.conf 2008-08-14 14:53:32.000000000 -0400
@@ -35,4 +35,4 @@
# given in <sepol/policydb.h>. Change this setting if a different
# version is necessary.
#policy-version = 19
-
+expand-check=0
+diff --exclude-from=exclude -N -u -r nsalibsemanage/src/semanage_store.c libsemanage-2.0.27/src/semanage_store.c
+--- nsalibsemanage/src/semanage_store.c 2008-06-12 23:25:16.000000000 -0400
++++ libsemanage-2.0.27/src/semanage_store.c 2008-08-14 14:53:32.000000000 -0400
+@@ -1648,6 +1648,47 @@
+ }
+
+ /**
++ * Read the policy from the sandbox (kernel)
++ */
++int semanage_read_policydb(semanage_handle_t * sh, sepol_policydb_t * in)
++{
++
++ int retval = STATUS_ERR;
++ const char *kernel_filename = NULL;
++ struct sepol_policy_file *pf = NULL;
++ FILE *infile = NULL;
++
++ if ((kernel_filename =
++ semanage_path(SEMANAGE_ACTIVE, SEMANAGE_KERNEL)) == NULL) {
++ goto cleanup;
++ }
++ if ((infile = fopen(kernel_filename, "r")) == NULL) {
++ ERR(sh, "Could not open kernel policy %s for reading.",
++ kernel_filename);
++ goto cleanup;
++ }
++ __fsetlocking(infile, FSETLOCKING_BYCALLER);
++ if (sepol_policy_file_create(&pf)) {
++ ERR(sh, "Out of memory!");
++ goto cleanup;
++ }
++ sepol_policy_file_set_fp(pf, infile);
++ sepol_policy_file_set_handle(pf, sh->sepolh);
++ if (sepol_policydb_read(in, pf) == -1) {
++ ERR(sh, "Error while reading kernel policy from %s.",
++ kernel_filename);
++ goto cleanup;
++ }
++ retval = STATUS_SUCCESS;
++
++ cleanup:
++ if (infile != NULL) {
++ fclose(infile);
++ }
++ sepol_policy_file_free(pf);
++ return retval;
++}
++/**
+ * Writes the final policy to the sandbox (kernel)
+ */
+ int semanage_write_policydb(semanage_handle_t * sh, sepol_policydb_t * out)
+diff --exclude-from=exclude -N -u -r nsalibsemanage/src/semanage_store.h libsemanage-2.0.27/src/semanage_store.h
+--- nsalibsemanage/src/semanage_store.h 2008-06-12 23:25:16.000000000 -0400
++++ libsemanage-2.0.27/src/semanage_store.h 2008-08-14 14:53:32.000000000 -0400
+@@ -97,6 +97,9 @@
+ sepol_module_package_t * base,
+ sepol_policydb_t ** policydb);
+
++int semanage_read_policydb(semanage_handle_t * sh,
++ sepol_policydb_t * policydb);
++
+ int semanage_write_policydb(semanage_handle_t * sh,
+ sepol_policydb_t * policydb);
+
+diff --exclude-from=exclude -N -u -r nsalibsemanage/tests/test_fcontext.c libsemanage-2.0.27/tests/test_fcontext.c
+--- nsalibsemanage/tests/test_fcontext.c 1969-12-31 19:00:00.000000000 -0500
++++ libsemanage-2.0.27/tests/test_fcontext.c 2008-08-15 10:59:48.000000000 -0400
+@@ -0,0 +1,72 @@
++#include <semanage/fcontext_record.h>
++#include <semanage/semanage.h>
++#include <semanage/fcontexts_local.h>
++#include <sepol/sepol.h>
++
++#include <errno.h>
++#include <stdio.h>
++#include <stdlib.h>
++
++int main(const int argc, const char **argv) {
++ semanage_handle_t *sh = NULL;
++ semanage_fcontext_t *fcontext;
++ semanage_context_t *con;
++ semanage_fcontext_key_t *k;
++
++ int exist = 0;
++ sh = semanage_handle_create();
++ if (sh == NULL) {
++ perror("Can't create semanage handle\n");
++ return -1;
++ }
++ if (semanage_access_check(sh) < 0) {
++ perror("Semanage access check failed\n");
++ return -1;
++ }
++ if (semanage_connect(sh) < 0) {
++ perror("Semanage connect failed\n");
++ return -1;
++ }
++
++ if (semanage_fcontext_key_create(sh, argv[2], SEMANAGE_FCONTEXT_REG, &k) < 0) {
++ fprintf(stderr, "Could not create key for %s", argv[2]);
++ return -1;
++ }
++
++ if(semanage_fcontext_exists(sh, k, &exist) < 0) {
++ fprintf(stderr,"Could not check if key exists for %s", argv[2]);
++ return -1;
++ }
++ if (exist) {
++ fprintf(stderr,"Could create %s mapping already exists", argv[2]);
++ return -1;
++ }
++
++ if (semanage_fcontext_create(sh, &fcontext) < 0) {
++ fprintf(stderr,"Could not create file context for %s", argv[2]);
++ return -1;
++ }
++ semanage_fcontext_set_expr(sh, fcontext, argv[2]);
++
++ if (semanage_context_from_string(sh, argv[1], &con)) {
++ fprintf(stderr,"Could not create context using %s for file context %s", argv[1], argv[2]);
++ return -1;
++ }
++
++ if (semanage_fcontext_set_con(sh, fcontext, con) < 0) {
++ fprintf(stderr,"Could not set file context for %s", argv[2]);
++ return -1;
++ }
++
++ semanage_fcontext_set_type(fcontext, SEMANAGE_FCONTEXT_REG);
++
++ if(semanage_fcontext_modify_local(sh, k, fcontext) < 0) {
++ fprintf(stderr,"Could not add file context for %s", argv[2]);
++ return -1;
++ }
++ semanage_fcontext_key_free(k);
++ semanage_fcontext_free(fcontext);
++
++ return 0;
++}
++
++++++ libsemanage-2.0.25.tar.bz2 -> libsemanage-2.0.27.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/libsemanage-2.0.25/ChangeLog new/libsemanage-2.0.27/ChangeLog
--- old/libsemanage-2.0.25/ChangeLog 2008-04-22 22:27:16.000000000 +0200
+++ new/libsemanage-2.0.27/ChangeLog 2008-08-05 15:58:36.000000000 +0200
@@ -1,3 +1,11 @@
+2.0.27 2008-08-05
+ * Modify genhomedircon to skip %groupname entries.
+ Ultimately we need to expand them to the list of users to support per-role homedir labeling when using the %groupname syntax.
+
+2.0.26 2008-07-29
+ * Fix bug in genhomedircon fcontext matches logic from Dan Walsh.
+ Strip any trailing slash before appending /*$.
+
2.0.25 2008-04-21
* Do not call genhomedircon if the policy was not rebuilt from Stephen Smalley.
Fixes semanage boolean -D seg fault (bug 441379).
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/libsemanage-2.0.25/src/genhomedircon.c new/libsemanage-2.0.27/src/genhomedircon.c
--- old/libsemanage-2.0.25/src/genhomedircon.c 2008-04-22 22:27:16.000000000 +0200
+++ new/libsemanage-2.0.27/src/genhomedircon.c 2008-08-05 15:58:37.000000000 +0200
@@ -192,6 +192,11 @@
goto done;
}
+ if (ustr_cmp_suffix_cstr_eq(expr, "/")) {
+ if (!ustr_del(&expr, 1))
+ goto done;
+ }
+
/* Append pattern to eat up trailing slashes */
if (!ustr_add_cstr(&expr, "/*$"))
goto done;
@@ -757,6 +762,10 @@
if (strcmp(name, TEMPLATE_SEUSER) == 0)
continue;
+ /* %groupname syntax */
+ if (name[0] == '%')
+ continue;
+
/* find the user structure given the name */
u = bsearch(seuname, user_list, nusers, sizeof(semanage_user_t *),
(int (*)(const void *, const void *))
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/libsemanage-2.0.25/src/Makefile new/libsemanage-2.0.27/src/Makefile
--- old/libsemanage-2.0.25/src/Makefile 2008-04-22 22:27:15.000000000 +0200
+++ new/libsemanage-2.0.27/src/Makefile 2008-08-05 15:58:37.000000000 +0200
@@ -31,7 +31,7 @@
LIBSO=$(TARGET).$(LIBVERSION)
OBJS= $(patsubst %.c,%.o,$(filter-out $(SWIGCOUT),$(wildcard *.c))) conf-scan.o conf-parse.o
LOBJS= $(patsubst %.c,%.lo,$(filter-out $(SWIGCOUT),$(wildcard *.c))) conf-scan.lo conf-parse.lo
-CFLAGS ?= -Wall -W -Wundef -Wmissing-noreturn -Wmissing-format-attribute -Wno-unused-parameter
+CFLAGS ?= -Wall -W -Wundef -Wshadow -Wmissing-noreturn -Wmissing-format-attribute -Wno-unused-parameter
override CFLAGS += -I../include -I$(INCLUDEDIR) -D_GNU_SOURCE
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/libsemanage-2.0.25/VERSION new/libsemanage-2.0.27/VERSION
--- old/libsemanage-2.0.25/VERSION 2008-04-22 22:27:16.000000000 +0200
+++ new/libsemanage-2.0.27/VERSION 2008-08-05 15:58:37.000000000 +0200
@@ -1 +1 @@
-2.0.25
+2.0.27
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
---------------------------------------------------------------------
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 zypper
checked in at Tue Sep 2 12:17:53 CEST 2008.
--------
--- zypper/zypper.changes 2008-08-12 20:46:12.000000000 +0200
+++ /mounts/work_src_done/STABLE/zypper/zypper.changes 2008-09-02 11:46:07.407310000 +0200
@@ -1,0 +2,13 @@
+Tue Aug 19 16:39:32 CEST 2008 - dmacvicar(a)suse.de
+
+- confirm unsupported packages in SLE
+ (fate#305057)
+
+-------------------------------------------------------------------
+Mon Aug 18 17:50:02 CEST 2008 - dmacvicar(a)suse.de
+
+- warn if repostory seems to be outdated
+ (fate#301904)
+- 0.12.2
+
+-------------------------------------------------------------------
Old:
----
zypper-0.12.1.tar.bz2
New:
----
zypper-0.12.2.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ zypper.spec ++++++
--- /var/tmp/diff_new_pack.N24946/_old 2008-09-02 12:17:21.000000000 +0200
+++ /var/tmp/diff_new_pack.N24946/_new 2008-09-02 12:17:21.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package zypper (Version 0.12.1)
+# spec file for package zypper (Version 0.12.2)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@@ -19,7 +19,7 @@
Name: zypper
-BuildRequires: boost-devel >= 1.33.1 gettext-devel >= 0.15 libzypp-devel >= 5.4.0 readline-devel >= 5.1
+BuildRequires: boost-devel >= 1.33.1 gettext-devel >= 0.15 libzypp-devel >= 5.7.0 readline-devel >= 5.1
BuildRequires: cmake >= 2.4.6 gcc-c++ >= 4.1
Requires: procps
Recommends: logrotate cron
@@ -29,9 +29,9 @@
AutoReqProv: on
PreReq: permissions
Summary: Command Line Package Management Using Libzypp
-Version: 0.12.1
+Version: 0.12.2
Release: 1
-Source: zypper-0.12.1.tar.bz2
+Source: zypper-0.12.2.tar.bz2
Prefix: /usr
Url: http://en.opensuse.org/Zypper
Provides: y2pmsh
@@ -55,6 +55,9 @@
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=%{prefix} \
+%if 0%{?sles_version}
+ -DZYPPER_CONFIRM_UNSUPPORTED_PACKAGES \
+%endif
-DSYSCONFDIR=%{_sysconfdir} \
-DMANDIR=%{_mandir} \
-DCMAKE_VERBOSE_MAKEFILE=TRUE \
@@ -110,6 +113,13 @@
# it from being erased by rpm -e
%ghost %config(noreplace) %{_var}/log/zypper.log
%changelog
+* Tue Aug 19 2008 dmacvicar(a)suse.de
+- confirm unsupported packages in SLE
+ (fate#305057)
+* Mon Aug 18 2008 dmacvicar(a)suse.de
+- warn if repostory seems to be outdated
+ (fate#301904)
+- 0.12.2
* Sat Aug 02 2008 jkupec(a)suse.cz
- service handling improved, ls, rs, refs now allow to specify
services by #, alias, or URI as in repos
++++++ zypper-0.12.1.tar.bz2 -> zypper-0.12.2.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/zypper-0.12.1/CMakeLists.txt new/zypper-0.12.2/CMakeLists.txt
--- old/zypper-0.12.1/CMakeLists.txt 2008-08-12 20:07:03.000000000 +0200
+++ new/zypper-0.12.2/CMakeLists.txt 2008-09-02 11:36:46.000000000 +0200
@@ -41,6 +41,11 @@
MESSAGE( FATAL_ERROR "readline not found" )
ENDIF( READLINE_FOUND )
+IF( ZYPPER_CONFIRM_UNSUPPORTED_PACKAGES )
+ ADD_DEFINITIONS( -DZYPPER_CONFIRM_UNSUPPORTED_PACKAGES )
+ENDIF( ZYPPER_CONFIRM_UNSUPPORTED_PACKAGES )
+
+
ADD_SUBDIRECTORY( src )
ADD_SUBDIRECTORY( po )
ADD_SUBDIRECTORY( doc )
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/zypper-0.12.1/package/zypper.changes new/zypper-0.12.2/package/zypper.changes
--- old/zypper-0.12.1/package/zypper.changes 2008-08-12 20:07:05.000000000 +0200
+++ new/zypper-0.12.2/package/zypper.changes 2008-09-02 11:36:46.000000000 +0200
@@ -1,4 +1,17 @@
-------------------------------------------------------------------
+Tue Aug 19 16:39:32 CEST 2008 - dmacvicar(a)suse.de
+
+- confirm unsupported packages in SLE
+ (fate#305057)
+
+-------------------------------------------------------------------
+Mon Aug 18 17:50:02 CEST 2008 - dmacvicar(a)suse.de
+
+- warn if repostory seems to be outdated
+ (fate#301904)
+- 0.12.2
+
+-------------------------------------------------------------------
Sat Aug 2 19:40:37 CEST 2008 - jkupec(a)suse.cz
- service handling improved, ls, rs, refs now allow to specify
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/zypper-0.12.1/src/repos.cc new/zypper-0.12.2/src/repos.cc
--- old/zypper-0.12.1/src/repos.cc 2008-08-12 20:07:04.000000000 +0200
+++ new/zypper-0.12.2/src/repos.cc 2008-09-02 11:36:46.000000000 +0200
@@ -2393,6 +2393,23 @@
}
manager.loadFromCache(repo);
+
+
+
+ // check that the metadata is not outdated
+ // feature #301904
+ Repository robj = God->pool().reposFind(repo.alias());
+ if ( robj != Repository::noRepository &&
+ robj.maybeOutdated() )
+ {
+
+ zypper.out().warning(boost::str(format(
+ _("Repository '%s' appears to outdated. Consider using a different mirror or server."))
+ % repo.name()), Out::QUIET);
+ WAR << format("Repository '%s' seems to be outdated")
+ % repo.name() << endl;
+
+ }
}
catch (const Exception & e)
{
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/zypper-0.12.1/src/solve-commit.cc new/zypper-0.12.2/src/solve-commit.cc
--- old/zypper-0.12.1/src/solve-commit.cc 2008-08-12 20:07:04.000000000 +0200
+++ new/zypper-0.12.2/src/solve-commit.cc 2008-09-02 11:36:46.000000000 +0200
@@ -271,7 +271,8 @@
TO_REINSTALL,
TO_REMOVE,
TO_CHANGE_ARCH,
- TO_CHANGE_VENDOR
+ TO_CHANGE_VENDOR,
+ UNSUPPORTED
} SummaryType;
static void xml_print_to_transact_tag(SummaryType stype, bool end = false)
@@ -299,6 +300,9 @@
case TO_CHANGE_VENDOR:
cout << "<" << (end ? "/" : "") << "to-change-vendor>" << endl;
break;
+ case UNSUPPORTED:
+ cout << "<" << (end ? "/" : "") << "unsupported>" << endl;
+ break;
}
}
@@ -510,6 +514,14 @@
"The following products are going to change vendor:",
it->second.size());
break;
+ case UNSUPPORTED:
+ // we only look vendor support in packages
+ if (it->first == ResKind::package)
+ title = _PL(
+ "The following package is not supported by its vendor:",
+ "The following packages are not supported by their vendor:",
+ it->second.size());
+ break;
}
show_summary_resolvable_list(title, it, zypper.out());
@@ -605,7 +617,10 @@
KindToResObjectSet toremove;
KindToResObjectSet tochangearch;
KindToResObjectSet tochangevendor;
-
+ // objects from previous lists that
+ // are not supported
+ KindToResObjectSet tounsupported;
+
// iterate the to_be_installed to find installs/upgrades/downgrades + size info
ByteCount download_size, new_installed_size;
@@ -617,6 +632,16 @@
{
ResObject::constPtr res(*resit);
+ // FIXME asKind not working?
+ Package::constPtr pkg = asKind<Package>(res);
+ if ( pkg )
+ {
+ // FIXME refactor with libzypp Package::vendorSupportAvailable()
+
+ if ( pkg->maybeUnsupported() )
+ tounsupported[res->kind()].insert(res);
+ }
+
// find in to_be_removed:
bool upgrade_downgrade = false;
for (set<ResObject::constPtr>::iterator rmit = to_be_removed[res->kind()].begin();
@@ -716,7 +741,9 @@
show_summary_of_type(zypper, TO_REMOVE, toremove);
show_summary_of_type(zypper, TO_CHANGE_ARCH, tochangearch);
show_summary_of_type(zypper, TO_CHANGE_VENDOR, tochangevendor);
-
+#ifdef ZYPPER_CONFIRM_UNSUPPORTED_PACKAGES
+ show_summary_of_type(zypper, UNSUPPORTED, tounsupported);
+#endif
// "</install-summary>"
if (zypper.out().type() == Out::TYPE_XML)
cout << "</install-summary>" << endl;
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/zypper-0.12.1/VERSION.cmake new/zypper-0.12.2/VERSION.cmake
--- old/zypper-0.12.1/VERSION.cmake 2008-08-12 20:07:05.000000000 +0200
+++ new/zypper-0.12.2/VERSION.cmake 2008-09-02 11:36:46.000000000 +0200
@@ -20,4 +20,4 @@
SET(VERSION_MAJOR "0")
SET(VERSION_MINOR "12")
-SET(VERSION_PATCH "1")
+SET(VERSION_PATCH "2")
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/zypper-0.12.1/zypper.spec.cmake new/zypper-0.12.2/zypper.spec.cmake
--- old/zypper-0.12.1/zypper.spec.cmake 2008-08-12 20:07:05.000000000 +0200
+++ new/zypper-0.12.2/zypper.spec.cmake 2008-09-02 11:36:46.000000000 +0200
@@ -11,7 +11,7 @@
# norootforbuild
Name: @PACKAGE@
-BuildRequires: libzypp-devel >= 5.4.0 boost-devel >= 1.33.1 gettext-devel >= 0.15 readline-devel >= 5.1
+BuildRequires: libzypp-devel >= 5.7.0 boost-devel >= 1.33.1 gettext-devel >= 0.15 readline-devel >= 5.1
BuildRequires: gcc-c++ >= 4.1 cmake >= 2.4.6
Requires: procps
Recommends: logrotate cron
@@ -46,6 +46,9 @@
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=%{prefix} \
+%if 0%{?sles_version}
+ -DZYPPER_CONFIRM_UNSUPPORTED_PACKAGES \
+%endif
-DSYSCONFDIR=%{_sysconfdir} \
-DMANDIR=%{_mandir} \
-DCMAKE_VERBOSE_MAKEFILE=TRUE \
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
---------------------------------------------------------------------
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 yast2-nis-server
checked in at Tue Sep 2 12:17:12 CEST 2008.
--------
--- yast2-nis-server/yast2-nis-server.changes 2008-08-28 14:20:33.000000000 +0200
+++ /mounts/work_src_done/STABLE/yast2-nis-server/yast2-nis-server.changes 2008-09-02 10:41:02.049233000 +0200
@@ -1,0 +2,6 @@
+Tue Sep 2 10:40:11 CEST 2008 - jsuchome(a)suse.cz
+
+- fixed button alignment (bnc#421043)
+- 2.17.1
+
+-------------------------------------------------------------------
Old:
----
yast2-nis-server-2.17.0.tar.bz2
New:
----
yast2-nis-server-2.17.1.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ yast2-nis-server.spec ++++++
--- /var/tmp/diff_new_pack.C23135/_old 2008-09-02 12:17:07.000000000 +0200
+++ /var/tmp/diff_new_pack.C23135/_new 2008-09-02 12:17:07.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package yast2-nis-server (Version 2.17.0)
+# spec file for package yast2-nis-server (Version 2.17.1)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@@ -19,12 +19,12 @@
Name: yast2-nis-server
-Version: 2.17.0
+Version: 2.17.1
Release: 1
License: GPL v2 or later
Group: System/YaST
BuildRoot: %{_tmppath}/%{name}-%{version}-build
-Source0: yast2-nis-server-2.17.0.tar.bz2
+Source0: yast2-nis-server-2.17.1.tar.bz2
Prefix: /usr
BuildRequires: doxygen perl-XML-Writer update-desktop-files yast2 yast2-devtools yast2-network yast2-nis-client yast2-testsuite
Requires: yast2-network yast2-nis-client
@@ -65,7 +65,7 @@
Martin Vidner <mvidner(a)suse.cz>
%prep
-%setup -n yast2-nis-server-2.17.0
+%setup -n yast2-nis-server-2.17.1
%build
%{prefix}/bin/y2tool y2autoconf
@@ -116,6 +116,9 @@
%exclude %{prefix}/share/doc/packages/yast2-nis-server/COPYING
%exclude %{prefix}/share/doc/packages/yast2-nis-server/README
%changelog
+* Tue Sep 02 2008 jsuchome(a)suse.cz
+- fixed button alignment (bnc#421043)
+- 2.17.1
* Thu Aug 28 2008 jsuchome(a)suse.cz
- adapted to recent changes in nis-client (no check for DHCP)
- DHCLIENT_SET_DOMAINNAME replaced with NETCONFIG_NIS_SETDOMAINNAME
++++++ yast2-nis-server-2.17.0.tar.bz2 -> yast2-nis-server-2.17.1.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-nis-server-2.17.0/src/NisServer.ycp new/yast2-nis-server-2.17.1/src/NisServer.ycp
--- old/yast2-nis-server-2.17.0/src/NisServer.ycp 2008-08-28 14:15:34.000000000 +0200
+++ new/yast2-nis-server-2.17.1/src/NisServer.ycp 2008-08-28 14:20:44.000000000 +0200
@@ -5,7 +5,7 @@
* Authors: Martin Vidner <mvidner(a)suse.cz>
* Dan Vesely <dan(a)suse.cz>
*
- * $Id: NisServer.ycp 46894 2008-04-21 10:16:11Z jsuchome $
+ * $Id: NisServer.ycp 50449 2008-08-28 12:20:44Z jsuchome $
*
* Representation of the configuration of nisServer.
* Input and output routines.
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-nis-server-2.17.0/src/securenets.ycp new/yast2-nis-server-2.17.1/src/securenets.ycp
--- old/yast2-nis-server-2.17.0/src/securenets.ycp 2005-09-08 10:37:17.000000000 +0200
+++ new/yast2-nis-server-2.17.1/src/securenets.ycp 2008-09-02 10:40:32.000000000 +0200
@@ -158,26 +158,25 @@
list<term> allow_query = ItemizeSecurenets (NisServer::securenets);
integer n_items = size (allow_query);
- term buttons = `HBox ();
- // To translators: pushbutton label
- buttons = add (buttons, `PushButton (`id (`add), `opt (`key_F3), _("A&dd")));
- // To translators: pushbutton label
- buttons = add (buttons, `PushButton (`id (`edit), `opt (`key_F4), _("&Edit")));
- // To translators: pushbutton label
- buttons = add (buttons, `PushButton (`id (`delete), `opt (`key_F5), _("De&lete")));
-
- term contents = `VBox ();
- contents = add (contents, `Table (`id (`table), `opt (`notify, `immediate),
- `header (
- // To translators: table headers
- _("Netmask"),
- // To translators: table headers
- _("Network")),
- allow_query));
- contents = add (contents, buttons);
+ term buttons = `HBox (
+ `PushButton (`id (`add), Label::AddButton ()),
+ `PushButton (`id (`edit), Label::EditButton ()),
+ `Left (
+ `PushButton (`id (`delete), Label::DeleteButton ())
+ )
+ );
+
+ term contents = `VBox (
+ `Table (`id (`table), `opt (`notify, `immediate), `header (
+ // To translators: table header
+ _("Netmask"),
+ // To translators: table header
+ _("Network")
+ ), allow_query),
+ buttons
+ );
-
- // To translators: dialog label
+ // To translators: dialog label
Wizard::SetContents (_("NIS Server Query Hosts Setup"), contents, helptext, true, true);
Wizard::SetNextButton(`next, Label::FinishButton() );
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-nis-server-2.17.0/VERSION new/yast2-nis-server-2.17.1/VERSION
--- old/yast2-nis-server-2.17.0/VERSION 2008-08-27 08:56:43.000000000 +0200
+++ new/yast2-nis-server-2.17.1/VERSION 2008-09-02 10:40:35.000000000 +0200
@@ -1 +1 @@
-2.17.0
+2.17.1
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
---------------------------------------------------------------------
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 wpa_supplicant
checked in at Tue Sep 2 12:16:57 CEST 2008.
--------
--- wpa_supplicant/wpa_supplicant.changes 2008-08-04 12:53:59.000000000 +0200
+++ /mounts/work_src_done/STABLE/wpa_supplicant/wpa_supplicant.changes 2008-09-02 03:06:23.396403000 +0200
@@ -1,0 +2,21 @@
+Tue Sep 2 03:05:49 CEST 2008 - ro(a)suse.de
+
+- update to 0.6.4
+ * added support for EAP Sequences in EAP-FAST Phase 2
+ * added support for using TNC with EAP-FAST
+ * added driver_ps3 for the PS3 Linux wireless driver
+ * added support for optional cryptobinding with PEAPv0
+ * fixed the OpenSSL patches (0.9.8g and 0.9.9) for EAP-FAST to
+ allow fallback to full handshake if server rejects PAC-Opaque
+ * added fragmentation support for EAP-TNC
+ * added support for parsing PKCS #8 formatted private keys into the
+ internal TLS implementation (both PKCS #1 RSA key and PKCS #8
+ encapsulated RSA key can now be used)
+ * added option of using faster, but larger, routines in the internal
+ LibTomMath (for internal TLS implementation) to speed up DH and RSA
+ calculations (CONFIG_INTERNAL_LIBTOMMATH_FAST=y)
+ * fixed race condition between disassociation event and group key
+ handshake to avoid getting stuck in incorrect state [Bug 261]
+ * fixed opportunistic key caching (proactive_key_caching)
+
+-------------------------------------------------------------------
Old:
----
wpa_supplicant-0.6.3.tar.bz2
New:
----
wpa_supplicant-0.6.4.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ wpa_supplicant.spec ++++++
--- /var/tmp/diff_new_pack.V22450/_old 2008-09-02 12:16:49.000000000 +0200
+++ /var/tmp/diff_new_pack.V22450/_new 2008-09-02 12:16:49.000000000 +0200
@@ -1,10 +1,17 @@
#
-# spec file for package wpa_supplicant (Version 0.6.3)
+# spec file for package wpa_supplicant (Version 0.6.4)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
-# This file and all modifications and additions to the pristine
-# package are under the same license as the package itself.
#
+# All modifications and additions to the file contributed by third parties
+# remain the property of their copyright owners, unless otherwise agreed
+# upon. The license for this file, and modifications and additions to the
+# file, is the same license as for the pristine package itself (unless the
+# license for the pristine package is not an Open Source License, in which
+# case the license is the MIT License). An "Open Source License" is a
+# license that conforms to the Open Source Definition (Version 1.9)
+# published by the Open Source Initiative.
+
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
@@ -17,7 +24,7 @@
BuildRequires: madwifi-devel
%endif
Url: http://hostap.epitest.fi/wpa_supplicant/
-Version: 0.6.3
+Version: 0.6.4
Release: 1
License: BSD 3-Clause; GPL v2 or later
Group: Productivity/Networking/Other
@@ -117,6 +124,24 @@
/usr/sbin/wpa_gui
%changelog
+* Tue Sep 02 2008 ro(a)suse.de
+- update to 0.6.4
+ * added support for EAP Sequences in EAP-FAST Phase 2
+ * added support for using TNC with EAP-FAST
+ * added driver_ps3 for the PS3 Linux wireless driver
+ * added support for optional cryptobinding with PEAPv0
+ * fixed the OpenSSL patches (0.9.8g and 0.9.9) for EAP-FAST to
+ allow fallback to full handshake if server rejects PAC-Opaque
+ * added fragmentation support for EAP-TNC
+ * added support for parsing PKCS #8 formatted private keys into the
+ internal TLS implementation (both PKCS #1 RSA key and PKCS #8
+ encapsulated RSA key can now be used)
+ * added option of using faster, but larger, routines in the internal
+ LibTomMath (for internal TLS implementation) to speed up DH and RSA
+ calculations (CONFIG_INTERNAL_LIBTOMMATH_FAST=y)
+ * fixed race condition between disassociation event and group key
+ handshake to avoid getting stuck in incorrect state [Bug 261]
+ * fixed opportunistic key caching (proactive_key_caching)
* Mon Aug 04 2008 hschaa(a)suse.de
- Remove patches that are already upstream
- Rebase patches to new version
++++++ wpa_supplicant-0.6.3.tar.bz2 -> wpa_supplicant-0.6.4.tar.bz2 ++++++
++++ 15963 lines of diff (skipped)
++++++ wpa_supplicant-driver-wext-debug.patch ++++++
--- /var/tmp/diff_new_pack.V22450/_old 2008-09-02 12:16:51.000000000 +0200
+++ /var/tmp/diff_new_pack.V22450/_new 2008-09-02 12:16:51.000000000 +0200
@@ -1,7 +1,6 @@
-diff -ur BUILD/wpa_supplicant-0.6.3/src/drivers/driver_wext.c BUILD2/wpa_supplicant-0.6.3/src/drivers/driver_wext.c
---- BUILD/wpa_supplicant-0.6.3/src/drivers/driver_wext.c 2008-02-23 03:45:24.000000000 +0100
-+++ BUILD2/wpa_supplicant-0.6.3/src/drivers/driver_wext.c 2008-08-04 11:20:37.000000000 +0200
-@@ -2069,20 +2069,32 @@
+--- BUILD/wpa_supplicant-0.6.4/src/drivers/driver_wext.c
++++ BUILD/wpa_supplicant-0.6.4/src/drivers/driver_wext.c
+@@ -2174,20 +2174,32 @@
*/
if (drv->auth_alg_fallback &&
wpa_driver_wext_auth_alg_fallback(drv, params) < 0)
@@ -34,7 +33,7 @@
if (params->wpa_ie == NULL || params->wpa_ie_len == 0)
value = IW_AUTH_WPA_VERSION_DISABLED;
else if (params->wpa_ie[0] == WLAN_EID_RSN)
-@@ -2091,26 +2103,41 @@
+@@ -2196,26 +2208,41 @@
value = IW_AUTH_WPA_VERSION_WPA;
if (wpa_driver_wext_set_auth_param(drv,
IW_AUTH_WPA_VERSION, value) < 0)
@@ -76,14 +75,22 @@
/* Allow unencrypted EAPOL messages even if pairwise keys are set when
* not using WPA. IEEE 802.1X specifies that these frames are not
-@@ -2124,14 +2151,26 @@
+@@ -2231,7 +2258,11 @@
if (wpa_driver_wext_set_auth_param(drv,
IW_AUTH_RX_UNENCRYPTED_EAPOL,
allow_unencrypted_eapol) < 0)
+- ret = -1;
+{
+wpa_printf(MSG_DEBUG, "%s: assoc failed because set_auth_param(RX_UNENCRYPTED_EAPOL) failed", __FUNCTION__);
- ret = -1;
++ ret = -1;
+}
++
+ #ifdef WEXT_MFP_PENDING
+ #ifdef CONFIG_IEEE80211W
+ switch (params->mgmt_frame_protection) {
+@@ -2250,12 +2281,21 @@
+ #endif /* CONFIG_IEEE80211W */
+ #endif /* WEXT_MFP_PENDING */
if (params->freq && wpa_driver_wext_set_freq(drv, params->freq) < 0)
+{
+wpa_printf(MSG_DEBUG, "%s: assoc failed because set_freq failed", __FUNCTION__);
@@ -103,7 +110,7 @@
return ret;
}
-@@ -2156,6 +2195,8 @@
+@@ -2280,6 +2320,8 @@
res = wpa_driver_wext_set_auth_param(drv, IW_AUTH_80211_AUTH_ALG,
algs);
drv->auth_alg_fallback = res == -2;
++++++ wpa_supplicant-errormsg.patch ++++++
--- /var/tmp/diff_new_pack.V22450/_old 2008-09-02 12:16:51.000000000 +0200
+++ /var/tmp/diff_new_pack.V22450/_new 2008-09-02 12:16:51.000000000 +0200
@@ -1,17 +1,16 @@
-diff -ur BUILD/wpa_supplicant-0.6.3/src/drivers/driver_wext.c BUILD2/wpa_supplicant-0.6.3/src/drivers/driver_wext.c
---- BUILD/wpa_supplicant-0.6.3/src/drivers/driver_wext.c 2008-08-04 11:49:26.000000000 +0200
-+++ BUILD2/wpa_supplicant-0.6.3/src/drivers/driver_wext.c 2008-08-04 11:49:11.000000000 +0200
-@@ -251,10 +251,12 @@
+--- BUILD/wpa_supplicant-0.6.4/src/drivers/driver_wext.c
++++ BUILD/wpa_supplicant-0.6.4/src/drivers/driver_wext.c
+@@ -228,12 +228,13 @@
iwr.u.param.value = value;
if (ioctl(drv->ioctl_sock, SIOCSIWAUTH, &iwr) < 0) {
-- perror("ioctl[SIOCSIWAUTH]");
+ int saved_errno = errno;
- fprintf(stderr, "WEXT auth param %d value 0x%x - ",
- idx, value);
+ if (errno != EOPNOTSUPP) {
+ wpa_printf(MSG_DEBUG, "WEXT: SIOCSIWAUTH(param %d "
+ "value 0x%x) failed: %s)",
+ idx, value, strerror(errno));
+ }
- ret = errno == EOPNOTSUPP ? -2 : -1;
-+ errno = saved_errno;
-+ perror("ioctl[SIOCSIWAUTH]");
+ ret = saved_errno == EOPNOTSUPP ? -2 : -1;
}
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
---------------------------------------------------------------------
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 SuSEfirewall2
checked in at Tue Sep 2 12:16:40 CEST 2008.
--------
--- SuSEfirewall2/SuSEfirewall2.changes 2008-08-25 01:44:56.000000000 +0200
+++ /mounts/work_src_done/STABLE/SuSEfirewall2/SuSEfirewall2.changes 2008-09-02 11:23:16.000000000 +0200
@@ -1,0 +2,5 @@
+Tue Sep 2 11:22:53 CEST 2008 - lnussel(a)suse.de
+
+- fix "recent" match (bnc#421806)
+
+-------------------------------------------------------------------
Old:
----
SuSEfirewall2-3.6_SVNr198.dif
SuSEfirewall2-3.6_SVNr198.tar.bz2
New:
----
SuSEfirewall2-3.6_SVNr200.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ SuSEfirewall2.spec ++++++
--- /var/tmp/diff_new_pack.z20974/_old 2008-09-02 12:15:52.000000000 +0200
+++ /var/tmp/diff_new_pack.z20974/_new 2008-09-02 12:15:52.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package SuSEfirewall2 (Version 3.6_SVNr198)
+# spec file for package SuSEfirewall2 (Version 3.6_SVNr200)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@@ -20,8 +20,8 @@
Name: SuSEfirewall2
-Version: 3.6_SVNr198
-Release: 14
+Version: 3.6_SVNr200
+Release: 1
License: GPL v2 or later
Group: Productivity/Networking/Security
Provides: personal-firewall SuSEfirewall
@@ -30,7 +30,6 @@
Requires: iptables coreutils perl sysconfig
Summary: Stateful Packet Filter Using iptables and netfilter
Source: SuSEfirewall2-%{version}.tar.bz2
-Patch: SuSEfirewall2-%{version}.dif
BuildArch: noarch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
@@ -51,7 +50,7 @@
%prep
%setup
-%patch
+# please send patches to lnussel for inclusion in svn first
%build
@@ -197,6 +196,8 @@
rm -rf %{buildroot}
%changelog
+* Tue Sep 02 2008 lnussel(a)suse.de
+- fix "recent" match (bnc#421806)
* Mon Aug 25 2008 ro(a)suse.de
- remove outdated start variables from fillup_and_insserv call
* Thu Jul 31 2008 werner(a)suse.de
++++++ SuSEfirewall2-3.6_SVNr198.tar.bz2 -> SuSEfirewall2-3.6_SVNr200.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/SuSEfirewall2-3.6_SVNr198/SuSEfirewall2 new/SuSEfirewall2-3.6_SVNr200/SuSEfirewall2
--- old/SuSEfirewall2-3.6_SVNr198/SuSEfirewall2 2008-07-22 10:47:42.000000000 +0200
+++ new/SuSEfirewall2-3.6_SVNr200/SuSEfirewall2 2008-09-02 11:22:22.000000000 +0200
@@ -1562,14 +1562,14 @@
while [ "$#" -gt 4 ]; do
case "$5" in
- hitcount=*) ipt_recent_update="$ipt_recent_update --hitcount ${1#*=}"; shift ;;
- blockseconds=*) ipt_recent_update="$ipt_recent_update --seconds ${1#*=}"; shift ;;
+ hitcount=*) ipt_recent_update="$ipt_recent_update --hitcount ${5#*=}"; shift ;;
+ blockseconds=*) ipt_recent_update="$ipt_recent_update --seconds ${5#*=}"; shift ;;
recentname=*)
- ipt_recent_update="$ipt_recent_update --name ${1#*=}"
- ipt_recent_set="$ipt_recent_set --name ${1#*=}"
+ ipt_recent_update="$ipt_recent_update --name ${5#*=}"
+ ipt_recent_set="$ipt_recent_set --name ${5#*=}"
shift
;;
- *) error "unknown parameter $1 in $var -> $service"; continue 2 ;;
+ *) error "unknown parameter $5 in $var -> $service"; continue 2 ;;
esac
done
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/SuSEfirewall2-3.6_SVNr198/SuSEfirewall2_init new/SuSEfirewall2-3.6_SVNr200/SuSEfirewall2_init
--- old/SuSEfirewall2-3.6_SVNr198/SuSEfirewall2_init 2007-06-18 17:02:20.000000000 +0200
+++ new/SuSEfirewall2-3.6_SVNr200/SuSEfirewall2_init 2008-09-02 11:22:22.000000000 +0200
@@ -8,9 +8,9 @@
### BEGIN INIT INFO
# Provides: SuSEfirewall2_init
# Required-Start: $local_fs
-# Required-Stop:
-# Default-Start: 3 4 5
-# Default-Stop:
+# Required-Stop: $local_fs
+# Default-Start: 3 4 5
+# Default-Stop: 0 1 2 6
# Short-Description: SuSEfirewall2 phase 1
# Description: SuSEfirewall2_init does some basic setup and is the
# phase 1 of 2 of the SuSEfirewall initialization
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/SuSEfirewall2-3.6_SVNr198/SuSEfirewall2_setup new/SuSEfirewall2-3.6_SVNr200/SuSEfirewall2_setup
--- old/SuSEfirewall2-3.6_SVNr198/SuSEfirewall2_setup 2008-04-04 10:05:24.000000000 +0200
+++ new/SuSEfirewall2-3.6_SVNr200/SuSEfirewall2_setup 2008-09-02 11:22:22.000000000 +0200
@@ -8,10 +8,11 @@
### BEGIN INIT INFO
# Provides: SuSEfirewall2_setup
# Required-Start: SuSEfirewall2_init $network $local_fs
-# Should-Start: $ALL
-# Required-Stop: $local_fs
-# Default-Start: 3 4 5
-# Default-Stop: 0 1 2 6
+# Should-Start: $ALL
+# Required-Stop: $local_fs
+# Should-Stop: $null
+# Default-Start: 3 4 5
+# Default-Stop: 0 1 2 6
# Short-Description: SuSEfirewall2 phase 2
# Description: SuSEfirewall2_setup does some basic setup and is the
# phase 2 of 2 of the SuSEfirewall initialization.
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
---------------------------------------------------------------------
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 strace
checked in at Tue Sep 2 12:15:42 CEST 2008.
--------
--- strace/strace.changes 2008-08-12 16:30:53.000000000 +0200
+++ /mounts/work_src_done/STABLE/strace/strace.changes 2008-09-02 10:24:48.000000000 +0200
@@ -1,0 +2,9 @@
+Tue Sep 2 10:23:32 CEST 2008 - schwab(a)suse.de
+
+- Update to strace 4.5.18.
+ * Bug fixes.
+ * Support new Linux/PPC system call subpage_prot and PROT_SAO flag.
+ * In sigaction system call, display sa_flags value along with
+ SIG_DFL/SIG_IGN.
+
+-------------------------------------------------------------------
@@ -14 +23 @@
-- Update to strace 4.5.16.
+- Update to strace 4.5.17.
Old:
----
madvice.diff
strace-4.5.17.diff
strace-4.5.17.tar.bz2
vfork.diff
New:
----
strace-4.5.18.diff
strace-4.5.18.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ strace.spec ++++++
--- /var/tmp/diff_new_pack.G20200/_old 2008-09-02 12:15:17.000000000 +0200
+++ /var/tmp/diff_new_pack.G20200/_new 2008-09-02 12:15:17.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package strace (Version 4.5.17)
+# spec file for package strace (Version 4.5.18)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@@ -22,13 +22,11 @@
License: BSD 3-Clause
Group: Development/Tools/Debuggers
AutoReqProv: on
-Version: 4.5.17
-Release: 13
+Version: 4.5.18
+Release: 1
Summary: A utility to trace the system calls of a program
-Source: strace-%{version}.tar.bz2
+Source: http://dl.sourceforge.net/strace/strace-%{version}.tar.bz2
Patch: strace-%{version}.diff
-Patch1: vfork.diff
-Patch2: madvice.diff
Url: http://sourceforge.net/projects/strace/
BuildRoot: %{_tmppath}/%{name}-%{version}-build
@@ -48,8 +46,6 @@
%prep
%setup -q
%patch
-%patch1
-%patch2 -p1
%build
export CFLAGS="$RPM_OPT_FLAGS"
@@ -73,12 +69,18 @@
%doc %{_mandir}/man1/strace.1.gz
%changelog
+* Tue Sep 02 2008 schwab(a)suse.de
+- Update to strace 4.5.18.
+ * Bug fixes.
+ * Support new Linux/PPC system call subpage_prot and PROT_SAO flag.
+ * In sigaction system call, display sa_flags value along with
+ SIG_DFL/SIG_IGN.
* Tue Aug 12 2008 schwab(a)suse.de
- Add fix for madvice decoding.
* Tue Aug 05 2008 schwab(a)suse.de
- Add fix for vfork handling.
* Tue Jul 22 2008 schwab(a)suse.de
-- Update to strace 4.5.16.
+- Update to strace 4.5.17.
* Many bug fixes.
* -F is now deprecated, -f has traced vfork too on Linux for a long time
now.
++++++ strace-4.5.17.diff -> strace-4.5.18.diff ++++++
--- strace/strace-4.5.17.diff 2008-07-22 09:46:54.000000000 +0200
+++ /mounts/work_src_done/STABLE/strace/strace-4.5.18.diff 2008-09-02 10:22:34.000000000 +0200
@@ -1,13 +1,15 @@
--- process.c
+++ process.c
-@@ -765,12 +765,12 @@ setarg(tcp, argnum)
+@@ -765,12 +765,13 @@ setarg(tcp, argnum)
{
#if defined (IA64)
{
- unsigned long *bsp, *ap;
-+ unsigned long bsp, *ap;
++ unsigned long *ap;
++ long bsp;
- if (upeek(tcp->pid, PT_AR_BSP, (long *) &bsp) , 0)
+- if (upeek(tcp->pid, PT_AR_BSP, (long *) &bsp) , 0)
++ if (upeek(tcp->pid, PT_AR_BSP, &bsp) , 0)
return -1;
- ap = ia64_rse_skip_regs(bsp, argnum);
@@ -15,7 +17,7 @@
errno = 0;
ptrace(PTRACE_POKEDATA, tcp->pid, (char *) ap, tcp->u_arg[argnum]);
if (errno)
-@@ -2289,6 +2289,18 @@ static const struct xlat ptrace_cmds[] =
+@@ -2289,6 +2290,18 @@ static const struct xlat ptrace_cmds[] =
#ifdef PTRACE_SETVRREGS
{ PTRACE_SETVRREGS, "PTRACE_SETVRREGS", },
#endif
@@ -61,45 +63,16 @@
return if $result == 0;
my $seq = $pr{$pid}{seq};
---- syscall.c
-+++ syscall.c
-@@ -1963,7 +1963,7 @@ struct tcb *tcp;
- #elif defined (IA64)
- {
- if (!ia32) {
-- unsigned long *out0, *rbs_end, cfm, sof, sol, i;
-+ unsigned long *out0, rbs_end, cfm, sof, sol, i;
- /* be backwards compatible with kernel < 2.4.4... */
- # ifndef PT_RBS_END
- # define PT_RBS_END PT_AR_BSP
-@@ -1976,7 +1976,7 @@ struct tcb *tcp;
-
- sof = (cfm >> 0) & 0x7f;
- sol = (cfm >> 7) & 0x7f;
-- out0 = ia64_rse_skip_regs(rbs_end, -sof + sol);
-+ out0 = ia64_rse_skip_regs((unsigned long *)rbs_end, -sof + sol);
-
- if (tcp->scno >= 0 && tcp->scno < nsyscalls
- && sysent[tcp->scno].nargs != -1)
--- util.c
+++ util.c
-@@ -1300,7 +1300,7 @@ typedef unsigned long *arg_setup_state;
- static int
- arg_setup(struct tcb *tcp, arg_setup_state *state)
- {
-- unsigned long *bsp, cfm, sof, sol;
-+ unsigned long bsp, cfm, sof, sol;
-
- if (ia32)
- return 0;
-@@ -1312,9 +1312,8 @@ arg_setup(struct tcb *tcp, arg_setup_sta
+@@ -1319,9 +1319,8 @@ arg_setup(struct tcb *tcp, arg_setup_sta
sof = (cfm >> 0) & 0x7f;
sol = (cfm >> 7) & 0x7f;
-- bsp = ia64_rse_skip_regs(bsp, -sof + sol);
+- bsp = (long) ia64_rse_skip_regs((unsigned long *) bsp, -sof + sol);
+ *state = ia64_rse_skip_regs((unsigned long *) bsp, -sof + sol);
-- *state = bsp;
+- *state = (unsigned long *) bsp;
return 0;
}
++++++ strace-4.5.17.tar.bz2 -> strace-4.5.18.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/strace-4.5.17/ChangeLog new/strace-4.5.18/ChangeLog
--- old/strace-4.5.17/ChangeLog 2008-07-22 02:42:54.000000000 +0200
+++ new/strace-4.5.18/ChangeLog 2008-08-28 23:19:51.000000000 +0200
@@ -1,3 +1,74 @@
+2008-08-28 Roland McGrath <roland(a)redhat.com>
+
+ * configure.ac, NEWS: Version 4.5.18.
+ * strace.spec: 4.5.18-1.
+
+2008-08-24 Roland McGrath <roland(a)redhat.com>
+
+ * linux/syscall.h (SYS_socket_subcall et al, SYS_ipc_subcall et al):
+ Don't define these if [__ARM_EABI__].
+ Reported by Johannes Stezenbach <js(a)sig21.net>.
+
+ * syscall.c (trace_syscall): Conditionalize on [SYS_socket_subcall]
+ and [SYS_ipc_subcall] individually.
+
+ * linux/powerpc/syscallent.h: Handle subpage_prot.
+ * mem.c [LINUX && POWERPC] (sys_subpage_prot): New function.
+ * linux/syscall.h [POWERPC]: Declare it.
+ From Simon Murray <simon(a)transitive.com>.
+
+ * mem.c (mmap_prot): Handle PROT_SAO.
+ From Simon Murray <simon(a)transitive.com>.
+
+ * mem.c (madvise_flags): Typo fixes. Rename to madvise_cmds.
+ (sys_madvise): Use printxval, not printflags.
+ Reported by Rajeev V. Pillai <rajeevvp(a)gmail.com>.
+
+2008-08-19 Roland McGrath <roland(a)redhat.com>
+
+ * signal.c (sys_sigaction, sys_rt_sigaction): Don't omit the rest of
+ the struct after sa_handler is a known constant. Some sa_flags bits
+ have meaning even for SIG_IGN/SIG_DFL.
+
+2008-08-06 Jan Kratochvil <jan.kratochvil(a)redhat.com>
+
+ * util.c (CLONE_VM): Define if not defined already.
+ (setbpt): Clear CLONE_VM in the case we already clear CLONE_VFORK for
+ SYS_clone and SYS_clone2.
+ Reported by Michal Nowak.
+ Fixes RH#455078.
+
+2008-08-06 Jan Kratochvil <jan.kratochvil(a)redhat.com>
+
+ Fix compiler warnings.
+ * signal.c (sys_signal): Cast to SIG_* to the matching type LONG.
+ * strace.c (trace): Variables PSR and PC are now signed.
+ * syscall.c (syscall_enter): Variable RBS_END is now signed long.
+ Remove/add the RBS_END casts appropriately.
+ * util.c [IA64] (arg_setup): Variable BSP is now signed long.
+ Remove/add the BSP casts appropriately.
+ <ia32>: Initialize *STATE.
+
+2008-07-31 Roland McGrath <roland(a)redhat.com>
+
+ * Makefile.am (EXTRA_DIST): Add new linux/arm/ files.
+
+ * file.c [LINUX] (struct kernel_dirent): Define it locally,
+ do not use <linux/dirent.h>.
+ Fixes RH#457291.
+
+ * configure.ac: Add AC_HEADER_STDBOOL.
+ * defs.h [HAVE_STDBOOL_H]: #include <stdbool.h>.
+ Fixes Debian#492774.
+
+2008-07-24 Dmitry V. Levin <ldv(a)altlinux.org>
+
+ * strace.c (main): Fix -F option backwards compatibility.
+
+2008-07-22 Roland McGrath <roland(a)redhat.com>
+
+ * Makefile.am (EXTRA_DIST): Add new debian/ files.
+
2008-07-21 Roland McGrath <roland(a)redhat.com>
* configure.ac: Version 4.5.17.
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/strace-4.5.17/config.h.in new/strace-4.5.18/config.h.in
--- old/strace-4.5.17/config.h.in 2008-07-22 02:43:42.000000000 +0200
+++ new/strace-4.5.18/config.h.in 2008-08-28 23:36:28.000000000 +0200
@@ -143,6 +143,9 @@
/* Define if stat64 is available in asm/stat.h. */
#undef HAVE_STAT64
+/* Define to 1 if stdbool.h conforms to C99. */
+#undef HAVE_STDBOOL_H
+
/* Define to 1 if you have the <stdint.h> header file. */
#undef HAVE_STDINT_H
@@ -304,6 +307,9 @@
/* Define to 1 if you have the <unistd.h> header file. */
#undef HAVE_UNISTD_H
+/* Define to 1 if the system has the type `_Bool'. */
+#undef HAVE__BOOL
+
/* Define to 1 if you have the `_sys_siglist' function. */
#undef HAVE__SYS_SIGLIST
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/strace-4.5.17/configure new/strace-4.5.18/configure
--- old/strace-4.5.17/configure 2008-07-22 02:43:21.000000000 +0200
+++ new/strace-4.5.18/configure 2008-08-28 23:36:06.000000000 +0200
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.61 for strace 4.5.17.
+# Generated by GNU Autoconf 2.61 for strace 4.5.18.
#
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
# 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
@@ -572,8 +572,8 @@
# Identity of this package.
PACKAGE_NAME='strace'
PACKAGE_TARNAME='strace'
-PACKAGE_VERSION='4.5.17'
-PACKAGE_STRING='strace 4.5.17'
+PACKAGE_VERSION='4.5.18'
+PACKAGE_STRING='strace 4.5.18'
PACKAGE_BUGREPORT=''
ac_unique_file="strace.c"
@@ -1232,7 +1232,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 strace 4.5.17 to adapt to many kinds of systems.
+\`configure' configures strace 4.5.18 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1302,7 +1302,7 @@
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of strace 4.5.17:";;
+ short | recursive ) echo "Configuration of strace 4.5.18:";;
esac
cat <<\_ACEOF
@@ -1387,7 +1387,7 @@
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-strace configure 4.5.17
+strace configure 4.5.18
generated by GNU Autoconf 2.61
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
@@ -1401,7 +1401,7 @@
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by strace $as_me 4.5.17, which was
+It was created by strace $as_me 4.5.18, which was
generated by GNU Autoconf 2.61. Invocation command line was
$ $0 $@
@@ -2094,7 +2094,7 @@
# Define the identity of the package.
PACKAGE='strace'
- VERSION='4.5.17'
+ VERSION='4.5.18'
cat >>confdefs.h <<_ACEOF
@@ -4557,6 +4557,261 @@
fi
+# On IRIX 5.3, sys/types and inttypes.h are conflicting.
+
+
+
+
+
+
+
+
+
+for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
+ inttypes.h stdint.h unistd.h
+do
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+{ echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
+if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+
+#include <$ac_header>
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ eval "$as_ac_Header=yes"
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ eval "$as_ac_Header=no"
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+ac_res=`eval echo '${'$as_ac_Header'}'`
+ { echo "$as_me:$LINENO: result: $ac_res" >&5
+echo "${ECHO_T}$ac_res" >&6; }
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+
+done
+
+
+{ echo "$as_me:$LINENO: checking for stdbool.h that conforms to C99" >&5
+echo $ECHO_N "checking for stdbool.h that conforms to C99... $ECHO_C" >&6; }
+if test "${ac_cv_header_stdbool_h+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+#include <stdbool.h>
+#ifndef bool
+ "error: bool is not defined"
+#endif
+#ifndef false
+ "error: false is not defined"
+#endif
+#if false
+ "error: false is not 0"
+#endif
+#ifndef true
+ "error: true is not defined"
+#endif
+#if true != 1
+ "error: true is not 1"
+#endif
+#ifndef __bool_true_false_are_defined
+ "error: __bool_true_false_are_defined is not defined"
+#endif
+
+ struct s { _Bool s: 1; _Bool t; } s;
+
+ char a[true == 1 ? 1 : -1];
+ char b[false == 0 ? 1 : -1];
+ char c[__bool_true_false_are_defined == 1 ? 1 : -1];
+ char d[(bool) 0.5 == true ? 1 : -1];
+ bool e = &s;
+ char f[(_Bool) 0.0 == false ? 1 : -1];
+ char g[true];
+ char h[sizeof (_Bool)];
+ char i[sizeof s.t];
+ enum { j = false, k = true, l = false * true, m = true * 256 };
+ _Bool n[m];
+ char o[sizeof n == m * sizeof n[0] ? 1 : -1];
+ char p[-1 - (_Bool) 0 < 0 && -1 - (bool) 0 < 0 ? 1 : -1];
+# if defined __xlc__ || defined __GNUC__
+ /* Catch a bug in IBM AIX xlc compiler version 6.0.0.0
+ reported by James Lemley on 2005-10-05; see
+ http://lists.gnu.org/archive/html/bug-coreutils/2005-10/msg00086.html
+ This test is not quite right, since xlc is allowed to
+ reject this program, as the initializer for xlcbug is
+ not one of the forms that C requires support for.
+ However, doing the test right would require a runtime
+ test, and that would make cross-compilation harder.
+ Let us hope that IBM fixes the xlc bug, and also adds
+ support for this kind of constant expression. In the
+ meantime, this test will reject xlc, which is OK, since
+ our stdbool.h substitute should suffice. We also test
+ this with GCC, where it should work, to detect more
+ quickly whether someone messes up the test in the
+ future. */
+ char digs[] = "0123456789";
+ int xlcbug = 1 / (&(digs + 5)[-2 + (bool) 1] == &digs[4] ? 1 : -1);
+# endif
+ /* Catch a bug in an HP-UX C compiler. See
+ http://gcc.gnu.org/ml/gcc-patches/2003-12/msg02303.html
+ http://lists.gnu.org/archive/html/bug-coreutils/2005-11/msg00161.html
+ */
+ _Bool q = true;
+ _Bool *pq = &q;
+
+int
+main ()
+{
+
+ *pq |= q;
+ *pq |= ! q;
+ /* Refer to every declared value, to avoid compiler optimizations. */
+ return (!a + !b + !c + !d + !e + !f + !g + !h + !i + !!j + !k + !!l
+ + !m + !n + !o + !p + !q + !pq);
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_cv_header_stdbool_h=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_header_stdbool_h=no
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+{ echo "$as_me:$LINENO: result: $ac_cv_header_stdbool_h" >&5
+echo "${ECHO_T}$ac_cv_header_stdbool_h" >&6; }
+{ echo "$as_me:$LINENO: checking for _Bool" >&5
+echo $ECHO_N "checking for _Bool... $ECHO_C" >&6; }
+if test "${ac_cv_type__Bool+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+typedef _Bool ac__type_new_;
+int
+main ()
+{
+if ((ac__type_new_ *) 0)
+ return 0;
+if (sizeof (ac__type_new_))
+ return 0;
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_compile") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest.$ac_objext; then
+ ac_cv_type__Bool=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_type__Bool=no
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+{ echo "$as_me:$LINENO: result: $ac_cv_type__Bool" >&5
+echo "${ECHO_T}$ac_cv_type__Bool" >&6; }
+if test $ac_cv_type__Bool = yes; then
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE__BOOL 1
+_ACEOF
+
+
+fi
+
+if test $ac_cv_header_stdbool_h = yes; then
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_STDBOOL_H 1
+_ACEOF
+
+fi
+
@@ -4866,75 +5121,6 @@
fi
-# On IRIX 5.3, sys/types and inttypes.h are conflicting.
-
-
-
-
-
-
-
-
-
-for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
- inttypes.h stdint.h unistd.h
-do
-as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-{ echo "$as_me:$LINENO: checking for $ac_header" >&5
-echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; }
-if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-$ac_includes_default
-
-#include <$ac_header>
-_ACEOF
-rm -f conftest.$ac_objext
-if { (ac_try="$ac_compile"
-case "(($ac_try" in
- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
- *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
- (eval "$ac_compile") 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } && {
- test -z "$ac_c_werror_flag" ||
- test ! -s conftest.err
- } && test -s conftest.$ac_objext; then
- eval "$as_ac_Header=yes"
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
- eval "$as_ac_Header=no"
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-ac_res=`eval echo '${'$as_ac_Header'}'`
- { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
-if test `eval echo '${'$as_ac_Header'}'` = yes; then
- cat >>confdefs.h <<_ACEOF
-#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
{ echo "$as_me:$LINENO: checking for struct stat.st_blksize" >&5
echo $ECHO_N "checking for struct stat.st_blksize... $ECHO_C" >&6; }
if test "${ac_cv_member_struct_stat_st_blksize+set}" = set; then
@@ -9408,7 +9594,7 @@
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by strace $as_me 4.5.17, which was
+This file was extended by strace $as_me 4.5.18, which was
generated by GNU Autoconf 2.61. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -9461,7 +9647,7 @@
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF
ac_cs_version="\\
-strace config.status 4.5.17
+strace config.status 4.5.18
configured by $0, generated by GNU Autoconf 2.61,
with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/strace-4.5.17/configure.ac new/strace-4.5.18/configure.ac
--- old/strace-4.5.17/configure.ac 2008-07-22 02:42:29.000000000 +0200
+++ new/strace-4.5.18/configure.ac 2008-08-28 23:15:56.000000000 +0200
@@ -1,6 +1,6 @@
dnl Process this file with autoconf to create configure. Use autoreconf.
AC_PREREQ(2.57)
-AC_INIT([strace],[4.5.17])
+AC_INIT([strace],[4.5.18])
AC_CONFIG_SRCDIR([strace.c])
AM_CONFIG_HEADER([config.h])
AM_INIT_AUTOMAKE([foreign check-news dist-bzip2])
@@ -158,6 +158,7 @@
AC_PROG_INSTALL
AC_C_CONST
AC_HEADER_STDC
+AC_HEADER_STDBOOL
AC_HEADER_DIRENT
AC_HEADER_STAT
AC_CHECK_MEMBERS([struct stat.st_blksize,
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/strace-4.5.17/debian/compat new/strace-4.5.18/debian/compat
--- old/strace-4.5.17/debian/compat 1970-01-01 01:00:00.000000000 +0100
+++ new/strace-4.5.18/debian/compat 2008-07-18 02:47:53.000000000 +0200
@@ -0,0 +1 @@
+5
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/strace-4.5.17/debian/strace64.install new/strace-4.5.18/debian/strace64.install
--- old/strace-4.5.17/debian/strace64.install 1970-01-01 01:00:00.000000000 +0100
+++ new/strace-4.5.18/debian/strace64.install 2008-07-22 02:25:23.000000000 +0200
@@ -0,0 +1 @@
+build64/strace64 usr/bin
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/strace-4.5.17/debian/strace64.manpages new/strace-4.5.18/debian/strace64.manpages
--- old/strace-4.5.17/debian/strace64.manpages 1970-01-01 01:00:00.000000000 +0100
+++ new/strace-4.5.18/debian/strace64.manpages 2008-07-22 02:25:23.000000000 +0200
@@ -0,0 +1 @@
+strace64.1
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/strace-4.5.17/debian/strace.docs new/strace-4.5.18/debian/strace.docs
--- old/strace-4.5.17/debian/strace.docs 1970-01-01 01:00:00.000000000 +0100
+++ new/strace-4.5.18/debian/strace.docs 2008-07-18 02:42:39.000000000 +0200
@@ -0,0 +1,2 @@
+TODO
+NEWS
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/strace-4.5.17/debian/strace.examples new/strace-4.5.18/debian/strace.examples
--- old/strace-4.5.17/debian/strace.examples 1970-01-01 01:00:00.000000000 +0100
+++ new/strace-4.5.18/debian/strace.examples 2008-07-18 02:42:39.000000000 +0200
@@ -0,0 +1 @@
+strace-graph
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/strace-4.5.17/debian/strace.install new/strace-4.5.18/debian/strace.install
--- old/strace-4.5.17/debian/strace.install 1970-01-01 01:00:00.000000000 +0100
+++ new/strace-4.5.18/debian/strace.install 2008-07-18 02:42:39.000000000 +0200
@@ -0,0 +1 @@
+build/strace usr/bin
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/strace-4.5.17/debian/strace.manpages new/strace-4.5.18/debian/strace.manpages
--- old/strace-4.5.17/debian/strace.manpages 1970-01-01 01:00:00.000000000 +0100
+++ new/strace-4.5.18/debian/strace.manpages 2008-07-18 02:42:39.000000000 +0200
@@ -0,0 +1 @@
+strace.1
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/strace-4.5.17/debian/strace-udeb.install new/strace-4.5.18/debian/strace-udeb.install
--- old/strace-4.5.17/debian/strace-udeb.install 1970-01-01 01:00:00.000000000 +0100
+++ new/strace-4.5.18/debian/strace-udeb.install 2008-07-18 02:42:39.000000000 +0200
@@ -0,0 +1 @@
+build/strace usr/bin
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/strace-4.5.17/defs.h new/strace-4.5.18/defs.h
--- old/strace-4.5.17/defs.h 2008-07-22 02:30:26.000000000 +0200
+++ new/strace-4.5.18/defs.h 2008-08-01 03:06:31.000000000 +0200
@@ -26,7 +26,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
- * $Id: defs.h,v 1.82 2008/07/22 00:30:26 roland Exp $
+ * $Id: defs.h,v 1.83 2008/08/01 01:06:31 roland Exp $
*/
#ifdef HAVE_CONFIG_H
@@ -80,6 +80,10 @@
#include <sys/time.h>
#include <errno.h>
+#ifdef HAVE_STDBOOL_H
+#include <stdbool.h>
+#endif
+
#ifdef STDC_HEADERS
#include <stddef.h>
#endif /* STDC_HEADERS */
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/strace-4.5.17/file.c new/strace-4.5.18/file.c
--- old/strace-4.5.17/file.c 2008-05-20 06:56:18.000000000 +0200
+++ new/strace-4.5.18/file.c 2008-08-01 03:13:10.000000000 +0200
@@ -28,21 +28,22 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
- * $Id: file.c,v 1.92 2008/05/20 04:56:18 roland Exp $
+ * $Id: file.c,v 1.93 2008/08/01 01:13:10 roland Exp $
*/
#include "defs.h"
#include <dirent.h>
+
#ifdef LINUX
-#define dirent kernel_dirent
-#define dirent64 kernel_dirent64
-#include <linux/types.h>
-#include <linux/dirent.h>
-#undef dirent
-#undef dirent64
+struct kernel_dirent {
+ unsigned long d_ino;
+ unsigned long d_off;
+ unsigned short d_reclen;
+ char d_name[1];
+};
#else
-#define kernel_dirent dirent
+# define kernel_dirent dirent
#endif
#ifdef LINUX
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/strace-4.5.17/linux/arm/errnoent1.h new/strace-4.5.18/linux/arm/errnoent1.h
--- old/strace-4.5.17/linux/arm/errnoent1.h 1970-01-01 01:00:00.000000000 +0100
+++ new/strace-4.5.18/linux/arm/errnoent1.h 2008-05-20 03:31:36.000000000 +0200
@@ -0,0 +1,2 @@
+/* Our second set comes from the i386 files. */
+#include "../errnoent.h"
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/strace-4.5.17/linux/arm/ioctlent1.h new/strace-4.5.18/linux/arm/ioctlent1.h
--- old/strace-4.5.17/linux/arm/ioctlent1.h 1970-01-01 01:00:00.000000000 +0100
+++ new/strace-4.5.18/linux/arm/ioctlent1.h 2008-05-20 03:31:36.000000000 +0200
@@ -0,0 +1,2 @@
+/* Our second set comes from the i386 files. */
+#include "../ioctlent.h"
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/strace-4.5.17/linux/arm/signalent1.h new/strace-4.5.18/linux/arm/signalent1.h
--- old/strace-4.5.17/linux/arm/signalent1.h 1970-01-01 01:00:00.000000000 +0100
+++ new/strace-4.5.18/linux/arm/signalent1.h 2008-05-20 03:31:36.000000000 +0200
@@ -0,0 +1,2 @@
+/* Our second set comes from the i386 files. */
+#include "../signalent.h"
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/strace-4.5.17/linux/arm/syscallent1.h new/strace-4.5.18/linux/arm/syscallent1.h
--- old/strace-4.5.17/linux/arm/syscallent1.h 1970-01-01 01:00:00.000000000 +0100
+++ new/strace-4.5.18/linux/arm/syscallent1.h 2008-05-20 03:31:36.000000000 +0200
@@ -0,0 +1,7 @@
+/* ARM specific syscalls */
+ { 5, 0, printargs, "SYS_0" }, /* 0 */
+ { 5, 0, printargs, "breakpoint" }, /* 1 */
+ { 5, 0, printargs, "cacheflush" }, /* 2 */
+ { 5, 0, printargs, "usr26" }, /* 3 */
+ { 5, 0, printargs, "usr32" }, /* 4 */
+ { 5, 0, printargs, "set_tls" }, /* 5 */
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/strace-4.5.17/linux/powerpc/syscallent.h new/strace-4.5.18/linux/powerpc/syscallent.h
--- old/strace-4.5.17/linux/powerpc/syscallent.h 2008-07-22 02:22:05.000000000 +0200
+++ new/strace-4.5.18/linux/powerpc/syscallent.h 2008-08-25 05:09:16.000000000 +0200
@@ -25,7 +25,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
- * $Id: syscallent.h,v 1.34 2008/07/22 00:22:05 roland Exp $
+ * $Id: syscallent.h,v 1.35 2008/08/25 03:09:16 roland Exp $
*/
{ 0, 0, sys_restart_syscall, "restart_syscall" }, /* 0 */
@@ -339,7 +339,7 @@
{ 1, TD, sys_eventfd, "eventfd" }, /* 307 */
{ 5, 0, printargs, "SYS_308" }, /* 308 */
{ 5, 0, printargs, "SYS_309" }, /* 309 */
- { 5, 0, printargs, "SYS_310" }, /* 310 */
+ { 3, 0, sys_subpage_prot, "subpage_prot" }, /* 310 */
{ 5, 0, printargs, "SYS_311" }, /* 311 */
{ 5, 0, printargs, "SYS_312" }, /* 312 */
{ 5, 0, printargs, "SYS_313" }, /* 313 */
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/strace-4.5.17/linux/syscall.h new/strace-4.5.18/linux/syscall.h
--- old/strace-4.5.17/linux/syscall.h 2008-05-20 06:56:22.000000000 +0200
+++ new/strace-4.5.18/linux/syscall.h 2008-08-25 05:15:43.000000000 +0200
@@ -25,7 +25,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
- * $Id: syscall.h,v 1.57 2008/05/20 04:56:22 roland Exp $
+ * $Id: syscall.h,v 1.59 2008/08/25 03:15:43 roland Exp $
*/
#include "dummy.h"
@@ -179,7 +179,8 @@
# endif
#endif
-#if !defined(ALPHA) && !defined(MIPS) && !defined(HPPA)
+#if !defined(ALPHA) && !defined(MIPS) && !defined(HPPA) && \
+ !defined(__ARM_EABI__)
# ifdef IA64
/*
* IA64 syscall numbers (the only ones available from standard header
@@ -234,7 +235,8 @@
int sys_msgsnd(), sys_msgrcv(), sys_msgget(), sys_msgctl();
int sys_shmat(), sys_shmdt(), sys_shmget(), sys_shmctl();
-#if !defined(ALPHA) && !defined(MIPS) && !defined(SPARC) && !defined(HPPA)
+#if !defined(ALPHA) && !defined(MIPS) && !defined(SPARC) && !defined(HPPA) && \
+ !defined(__ARM_EABI__)
# ifdef IA64
/*
* IA64 syscall numbers (the only ones available from standard
@@ -320,3 +322,7 @@
#endif
int sys_pread64(), sys_pwrite64();
+
+#ifdef POWERPC
+int sys_subpage_prot();
+#endif
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/strace-4.5.17/Makefile.am new/strace-4.5.18/Makefile.am
--- old/strace-4.5.17/Makefile.am 2007-07-03 04:07:28.000000000 +0200
+++ new/strace-4.5.18/Makefile.am 2008-08-01 03:15:09.000000000 +0200
@@ -20,6 +20,9 @@
EXTRA_DIST = $(man_MANS) errnoent.sh signalent.sh syscallent.sh ioctlsort.c \
debian/changelog debian/control debian/copyright debian/rules \
+ debian/compat debian/strace64.install debian/strace64.manpages \
+ debian/strace.docs debian/strace.examples debian/strace.install \
+ debian/strace.manpages debian/strace-udeb.install \
strace.spec \
strace-graph COPYRIGHT CREDITS PORTING \
README-CVS README-freebsd README-linux README-sunos4 README-svr4 \
@@ -28,7 +31,9 @@
linux/syscall.h linux/syscallent.h linux/dummy.h \
linux/alpha/errnoent.h linux/alpha/ioctlent.h \
linux/alpha/signalent.h linux/alpha/syscallent.h \
- linux/arm/syscallent.h \
+ linux/arm/syscallent.h linux/arm/syscallent1.h \
+ linux/arm/signalent1.h linux/arm/ioctlent1.h \
+ linux/arm/errnoent1.h \
linux/hppa/errnoent.h linux/hppa/ioctlent.h \
linux/hppa/signalent.h linux/hppa/syscallent.h \
linux/ia64/syscallent.h linux/ia64/errnoent.h \
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/strace-4.5.17/Makefile.in new/strace-4.5.18/Makefile.in
--- old/strace-4.5.17/Makefile.in 2008-07-22 02:43:21.000000000 +0200
+++ new/strace-4.5.18/Makefile.in 2008-08-28 23:36:07.000000000 +0200
@@ -208,6 +208,9 @@
noinst_HEADERS = defs.h
EXTRA_DIST = $(man_MANS) errnoent.sh signalent.sh syscallent.sh ioctlsort.c \
debian/changelog debian/control debian/copyright debian/rules \
+ debian/compat debian/strace64.install debian/strace64.manpages \
+ debian/strace.docs debian/strace.examples debian/strace.install \
+ debian/strace.manpages debian/strace-udeb.install \
strace.spec \
strace-graph COPYRIGHT CREDITS PORTING \
README-CVS README-freebsd README-linux README-sunos4 README-svr4 \
@@ -216,7 +219,9 @@
linux/syscall.h linux/syscallent.h linux/dummy.h \
linux/alpha/errnoent.h linux/alpha/ioctlent.h \
linux/alpha/signalent.h linux/alpha/syscallent.h \
- linux/arm/syscallent.h \
+ linux/arm/syscallent.h linux/arm/syscallent1.h \
+ linux/arm/signalent1.h linux/arm/ioctlent1.h \
+ linux/arm/errnoent1.h \
linux/hppa/errnoent.h linux/hppa/ioctlent.h \
linux/hppa/signalent.h linux/hppa/syscallent.h \
linux/ia64/syscallent.h linux/ia64/errnoent.h \
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/strace-4.5.17/mem.c new/strace-4.5.18/mem.c
--- old/strace-4.5.17/mem.c 2008-05-20 03:11:56.000000000 +0200
+++ new/strace-4.5.18/mem.c 2008-08-25 05:09:16.000000000 +0200
@@ -29,7 +29,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
- * $Id: mem.c,v 1.42 2008/05/20 01:11:56 roland Exp $
+ * $Id: mem.c,v 1.45 2008/08/25 03:09:16 roland Exp $
*/
#include "defs.h"
@@ -96,6 +96,9 @@
#ifdef PROT_GROWSUP
{ PROT_GROWSUP, "PROT_GROWSUP" },
#endif
+#ifdef PROT_SAO
+ { PROT_SAO, "PROT_SAO" },
+#endif
{ 0, NULL },
};
@@ -384,11 +387,11 @@
return RVAL_HEX;
}
-static const struct xlat madvise_flags[] = {
+static const struct xlat madvise_cmds[] = {
#ifdef MADV_NORMAL
{ MADV_NORMAL, "MADV_NORMAL" },
#endif
-#ifdef MADZV_RANDOM
+#ifdef MADV_RANDOM
{ MADV_RANDOM, "MADV_RANDOM" },
#endif
#ifdef MADV_SEQUENTIAL
@@ -397,7 +400,7 @@
#ifdef MADV_WILLNEED
{ MADV_WILLNEED, "MADV_WILLNEED" },
#endif
-#ifdef MADV_DONTNED
+#ifdef MADV_DONTNEED
{ MADV_DONTNEED, "MADV_DONTNEED" },
#endif
{ 0, NULL },
@@ -410,7 +413,7 @@
{
if (entering(tcp)) {
tprintf("%#lx, %lu, ", tcp->u_arg[0], tcp->u_arg[1]);
- printflags(madvise_flags, tcp->u_arg[2], "MADV_???");
+ printxval(madvise_cmds, tcp->u_arg[2], "MADV_???");
}
return 0;
}
@@ -883,3 +886,53 @@
return 0;
}
#endif
+
+#if defined(LINUX) && defined(POWERPC)
+int
+sys_subpage_prot(tcp)
+struct tcb *tcp;
+{
+ if (entering(tcp)) {
+ unsigned long cur, end, abbrev_end, entries;
+ unsigned int entry;
+
+ tprintf("%#lx, %#lx, ", tcp->u_arg[0], tcp->u_arg[1]);
+ entries = tcp->u_arg[1] >> 16;
+ if (!entries || !tcp->u_arg[2]) {
+ tprintf("{}");
+ return 0;
+ }
+ cur = tcp->u_arg[2];
+ end = cur + (sizeof(int) * entries);
+ if (!verbose(tcp) || end < tcp->u_arg[2]) {
+ tprintf("%#lx", tcp->u_arg[2]);
+ return 0;
+ }
+ if (abbrev(tcp)) {
+ abbrev_end = cur + (sizeof(int) * max_strlen);
+ if (abbrev_end > end)
+ abbrev_end = end;
+ }
+ else
+ abbrev_end = end;
+ tprintf("{");
+ for (; cur < end; cur += sizeof(int)) {
+ if (cur > tcp->u_arg[2])
+ tprintf(", ");
+ if (cur >= abbrev_end) {
+ tprintf("...");
+ break;
+ }
+ if (umove(tcp, cur, &entry) < 0) {
+ tprintf("??? [%#lx]", cur);
+ break;
+ }
+ else
+ tprintf("%#08x", entry);
+ }
+ tprintf("}");
+ }
+
+ return 0;
+}
+#endif
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/strace-4.5.17/NEWS new/strace-4.5.18/NEWS
--- old/strace-4.5.17/NEWS 2008-07-18 04:20:42.000000000 +0200
+++ new/strace-4.5.18/NEWS 2008-08-28 23:17:31.000000000 +0200
@@ -1,3 +1,9 @@
+Changes in 4.5.18
+==============
+* Bug fixes.
+* Support new Linux/PPC system call subpage_prot and PROT_SAO flag.
+* In sigaction system call, display sa_flags value along with SIG_DFL/SIG_IGN.
+
Changes in 4.5.17
==============
* Many bug fixes.
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/strace-4.5.17/signal.c new/strace-4.5.18/signal.c
--- old/strace-4.5.17/signal.c 2008-07-18 03:02:41.000000000 +0200
+++ new/strace-4.5.18/signal.c 2008-08-20 03:59:40.000000000 +0200
@@ -30,7 +30,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
- * $Id: signal.c,v 1.66 2008/07/18 01:02:41 roland Exp $
+ * $Id: signal.c,v 1.68 2008/08/20 01:59:40 roland Exp $
*/
#include "defs.h"
@@ -1120,23 +1120,20 @@
else if (umove(tcp, addr, &sa) < 0)
tprintf("{...}");
else {
- switch ((long) sa.SA_HANDLER) {
- case (long) SIG_ERR:
- tprintf("{SIG_ERR}");
- break;
- case (long) SIG_DFL:
- tprintf("{SIG_DFL}");
- break;
- case (long) SIG_IGN:
+ if (sa.SA_HANDLER == SIG_ERR)
+ tprintf("{SIG_ERR, ");
+ else if (sa.SA_HANDLER == SIG_DFL)
+ tprintf("{SIG_DFL, ");
+ else if (sa.SA_HANDLER == SIG_DFL) {
#ifndef USE_PROCFS
if (tcp->u_arg[0] == SIGTRAP) {
tcp->flags |= TCB_SIGTRAPPED;
kill(tcp->pid, SIGSTOP);
}
#endif /* !USE_PROCFS */
- tprintf("{SIG_IGN}");
- break;
- default:
+ tprintf("{SIG_IGN, ");
+ }
+ else {
#ifndef USE_PROCFS
if (tcp->u_arg[0] == SIGTRAP) {
tcp->flags |= TCB_SIGTRAPPED;
@@ -1176,13 +1173,13 @@
printsignal(tcp->u_arg[0]);
tprintf(", ");
switch (tcp->u_arg[1]) {
- case (int) SIG_ERR:
+ case (long) SIG_ERR:
tprintf("SIG_ERR");
break;
- case (int) SIG_DFL:
+ case (long) SIG_DFL:
tprintf("SIG_DFL");
break;
- case (int) SIG_IGN:
+ case (long) SIG_IGN:
#ifndef USE_PROCFS
if (tcp->u_arg[0] == SIGTRAP) {
tcp->flags |= TCB_SIGTRAPPED;
@@ -1204,11 +1201,11 @@
}
else {
switch (tcp->u_rval) {
- case (int) SIG_ERR:
+ case (long) SIG_ERR:
tcp->auxstr = "SIG_ERR"; break;
- case (int) SIG_DFL:
+ case (long) SIG_DFL:
tcp->auxstr = "SIG_DFL"; break;
- case (int) SIG_IGN:
+ case (long) SIG_IGN:
tcp->auxstr = "SIG_IGN"; break;
default:
tcp->auxstr = NULL;
@@ -1865,7 +1862,7 @@
};
- int
+int
sys_rt_sigaction(tcp)
struct tcb *tcp;
{
@@ -1886,38 +1883,33 @@
else if (umove(tcp, addr, &sa) < 0)
tprintf("{...}");
else {
- switch ((long) sa.__sigaction_handler.__sa_handler) {
- case (long) SIG_ERR:
- tprintf("{SIG_ERR}");
- break;
- case (long) SIG_DFL:
- tprintf("{SIG_DFL}");
- break;
- case (long) SIG_IGN:
- tprintf("{SIG_IGN}");
- break;
- default:
- tprintf("{%#lx, ",
- (long) sa.__sigaction_handler.__sa_handler);
- sigemptyset(&sigset);
+ if (sa.__sigaction_handler.__sa_handler == SIG_ERR)
+ tprintf("{SIG_ERR, ");
+ else if (sa.__sigaction_handler.__sa_handler == SIG_DFL)
+ tprintf("{SIG_DFL, ");
+ else if (sa.__sigaction_handler.__sa_handler == SIG_DFL)
+ tprintf("{SIG_IGN, ");
+ else
+ tprintf("{%#lx, ",
+ (long) sa.__sigaction_handler.__sa_handler);
+ sigemptyset(&sigset);
#ifdef LINUXSPARC
- if (tcp->u_arg[4] <= sizeof(sigset))
- memcpy(&sigset, &sa.sa_mask, tcp->u_arg[4]);
+ if (tcp->u_arg[4] <= sizeof(sigset))
+ memcpy(&sigset, &sa.sa_mask, tcp->u_arg[4]);
#else
- if (tcp->u_arg[3] <= sizeof(sigset))
- memcpy(&sigset, &sa.sa_mask, tcp->u_arg[3]);
+ if (tcp->u_arg[3] <= sizeof(sigset))
+ memcpy(&sigset, &sa.sa_mask, tcp->u_arg[3]);
#endif
- else
- memcpy(&sigset, &sa.sa_mask, sizeof(sigset));
- printsigmask(&sigset, 1);
- tprintf(", ");
- printflags(sigact_flags, sa.sa_flags, "SA_???");
+ else
+ memcpy(&sigset, &sa.sa_mask, sizeof(sigset));
+ printsigmask(&sigset, 1);
+ tprintf(", ");
+ printflags(sigact_flags, sa.sa_flags, "SA_???");
#ifdef SA_RESTORER
- if (sa.sa_flags & SA_RESTORER)
- tprintf(", %p", sa.sa_restorer);
+ if (sa.sa_flags & SA_RESTORER)
+ tprintf(", %p", sa.sa_restorer);
#endif
- tprintf("}");
- }
+ tprintf("}");
}
if (entering(tcp))
tprintf(", ");
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/strace-4.5.17/strace.c new/strace-4.5.18/strace.c
--- old/strace-4.5.17/strace.c 2008-07-18 02:25:10.000000000 +0200
+++ new/strace-4.5.18/strace.c 2008-08-19 06:47:50.000000000 +0200
@@ -27,7 +27,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
- * $Id: strace.c,v 1.86 2008/07/18 00:25:10 roland Exp $
+ * $Id: strace.c,v 1.88 2008/08/06 21:38:52 kratochvil Exp $
*/
#include "defs.h"
@@ -622,6 +622,7 @@
extern char *optarg;
struct tcb *tcp;
int c, pid = 0;
+ int optF = 0;
struct sigaction sa;
static char buf[BUFSIZ];
@@ -660,7 +661,8 @@
debug++;
break;
case 'F':
- /* Obsoleted, acts as `-f'. */
+ optF = 1;
+ break;
case 'f':
followfork++;
break;
@@ -757,6 +759,9 @@
if ((optind == argc) == !pflag_seen)
usage(stderr, 1);
+ if (!followfork)
+ followfork = optF;
+
if (followfork > 1 && cflag) {
fprintf(stderr,
"%s: -c and -ff are mutually exclusive options\n",
@@ -2416,11 +2421,12 @@
}
if (!cflag
&& (qual_flags[WSTOPSIG(status)] & QUAL_SIGNAL)) {
- unsigned long addr = 0, pc = 0;
+ unsigned long addr = 0;
+ long pc = 0;
#if defined(PT_CR_IPSR) && defined(PT_CR_IIP) && defined(PT_GETSIGINFO)
# define PSR_RI 41
struct siginfo si;
- unsigned long psr;
+ long psr;
upeek(pid, PT_CR_IPSR, &psr);
upeek(pid, PT_CR_IIP, &pc);
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/strace-4.5.17/strace.spec new/strace-4.5.18/strace.spec
--- old/strace-4.5.17/strace.spec 2008-07-22 02:47:34.000000000 +0200
+++ new/strace-4.5.18/strace.spec 2008-08-28 23:19:33.000000000 +0200
@@ -1,6 +1,6 @@
Summary: Tracks and displays system calls associated with a running process
Name: strace
-Version: 4.5.17
+Version: 4.5.18
Release: 1%{?dist}
License: BSD
Group: Development/Debuggers
@@ -76,6 +76,12 @@
%changelog
+* Thu Aug 28 2008 Roland McGrath <roland(a)redhat.com> - 4.5.18-1
+- build fix for newer kernel headers (#457291)
+- fix CLONE_VFORK handling (#455078)
+- Support new Linux/PPC system call subpage_prot and PROT_SAO flag.
+- In sigaction system call, display sa_flags value along with SIG_DFL/SIG_IGN.
+
* Mon Jul 21 2008 Roland McGrath <roland(a)redhat.com> - 4.5.17-1
- handle O_CLOEXEC, MSG_CMSG_CLOEXEC (#365781)
- fix biarch stat64 decoding (#222275)
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/strace-4.5.17/syscall.c new/strace-4.5.18/syscall.c
--- old/strace-4.5.17/syscall.c 2008-05-28 01:18:29.000000000 +0200
+++ new/strace-4.5.18/syscall.c 2008-08-25 05:16:26.000000000 +0200
@@ -30,7 +30,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
- * $Id: syscall.c,v 1.94 2008/05/27 23:18:29 roland Exp $
+ * $Id: syscall.c,v 1.96 2008/08/25 03:16:26 roland Exp $
*/
#include "defs.h"
@@ -1963,20 +1963,21 @@
#elif defined (IA64)
{
if (!ia32) {
- unsigned long *out0, *rbs_end, cfm, sof, sol, i;
+ unsigned long *out0, cfm, sof, sol, i;
+ long rbs_end;
/* be backwards compatible with kernel < 2.4.4... */
# ifndef PT_RBS_END
# define PT_RBS_END PT_AR_BSP
# endif
- if (upeek(pid, PT_RBS_END, (long *) &rbs_end) < 0)
+ if (upeek(pid, PT_RBS_END, &rbs_end) < 0)
return -1;
if (upeek(pid, PT_CFM, (long *) &cfm) < 0)
return -1;
sof = (cfm >> 0) & 0x7f;
sol = (cfm >> 7) & 0x7f;
- out0 = ia64_rse_skip_regs(rbs_end, -sof + sol);
+ out0 = ia64_rse_skip_regs((unsigned long *) rbs_end, -sof + sol);
if (tcp->scno >= 0 && tcp->scno < nsyscalls
&& sysent[tcp->scno].nargs != -1)
@@ -2429,18 +2430,18 @@
return res;
switch (known_scno(tcp)) {
-#ifdef LINUX
-#if !defined (ALPHA) && !defined(MIPS) && !defined(HPPA)
+#ifdef SYS_socket_subcall
case SYS_socketcall:
decode_subcall(tcp, SYS_socket_subcall,
SYS_socket_nsubcalls, deref_style);
break;
+#endif
+#ifdef SYS_ipc_subcall
case SYS_ipc:
decode_subcall(tcp, SYS_ipc_subcall,
SYS_ipc_nsubcalls, shift_style);
break;
-#endif /* !(ALPHA || MIPS || HPPA) */
-#endif /* LINUX */
+#endif
#ifdef SVR4
#ifdef SYS_pgrpsys_subcall
case SYS_pgrpsys:
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/strace-4.5.17/util.c new/strace-4.5.18/util.c
--- old/strace-4.5.17/util.c 2008-07-18 03:19:36.000000000 +0200
+++ new/strace-4.5.18/util.c 2008-08-19 06:47:51.000000000 +0200
@@ -30,7 +30,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
- * $Id: util.c,v 1.77 2008/07/18 01:19:36 roland Exp $
+ * $Id: util.c,v 1.79 2008/08/06 21:43:35 kratochvil Exp $
*/
#include "defs.h"
@@ -1284,6 +1284,9 @@
#ifndef CLONE_VFORK
# define CLONE_VFORK 0x00004000
#endif
+#ifndef CLONE_VM
+# define CLONE_VM 0x00000100
+#endif
#ifndef CLONE_STOPPED
# define CLONE_STOPPED 0x02000000
#endif
@@ -1300,21 +1303,25 @@
static int
arg_setup(struct tcb *tcp, arg_setup_state *state)
{
- unsigned long *bsp, cfm, sof, sol;
+ unsigned long cfm, sof, sol;
+ long bsp;
- if (ia32)
+ if (ia32) {
+ /* Satisfy a false GCC warning. */
+ *state = NULL;
return 0;
+ }
- if (upeek(tcp->pid, PT_AR_BSP, (long *) &bsp) < 0)
+ if (upeek(tcp->pid, PT_AR_BSP, &bsp) < 0)
return -1;
if (upeek(tcp->pid, PT_CFM, (long *) &cfm) < 0)
return -1;
sof = (cfm >> 0) & 0x7f;
sol = (cfm >> 7) & 0x7f;
- bsp = ia64_rse_skip_regs(bsp, -sof + sol);
+ bsp = (long) ia64_rse_skip_regs((unsigned long *) bsp, -sof + sol);
- *state = bsp;
+ *state = (unsigned long *) bsp;
return 0;
}
@@ -1533,15 +1540,19 @@
#ifdef SYS_clone2
case SYS_clone2:
#endif
- /* ia64 calls directly `clone (CLONE_VFORK)' contrary to
- x86 SYS_vfork above. Even on x86 we turn the vfork
- semantics into plain fork - each application must not
- depend on the vfork specifics according to POSIX. We
- would hang waiting for the parent resume otherwise. */
+ /* ia64 calls directly `clone (CLONE_VFORK | CLONE_VM)'
+ contrary to x86 SYS_vfork above. Even on x86 we turn the
+ vfork semantics into plain fork - each application must not
+ depend on the vfork specifics according to POSIX. We would
+ hang waiting for the parent resume otherwise. We need to
+ clear also CLONE_VM but only in the CLONE_VFORK case as
+ otherwise we would break pthread_create. */
+
if ((arg_setup (tcp, &state) < 0
|| set_arg0 (tcp, &state,
(tcp->u_arg[arg0_index] | CLONE_PTRACE)
- & ~CLONE_VFORK) < 0
+ & ~(tcp->u_arg[arg0_index] & CLONE_VFORK
+ ? CLONE_VFORK | CLONE_VM : 0)) < 0
|| arg_finish_change (tcp, &state) < 0))
return -1;
tcp->flags |= TCB_BPTSET;
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
---------------------------------------------------------------------
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 scummvm
checked in at Tue Sep 2 12:15:06 CEST 2008.
--------
--- scummvm/scummvm.changes 2008-03-01 01:06:32.000000000 +0100
+++ /mounts/work_src_done/STABLE/scummvm/scummvm.changes 2008-09-02 03:51:16.395400686 +0200
@@ -1,0 +2,38 @@
+Tue Sep 2 03:25:35 CEST 2008 - sndirsch(a)suse.de
+
+- updated to new 0.12.0 release
+ * New Games:
+ - The Legend of Kyrandia: Book Two: Hand of Fate.
+ - The Legend of Kyrandia: Book Three: Malcolm's Revenge.
+ - Lost in Time.
+ - The Bizarre Adventures of Woodruff and the Schnibble.
+ - PC version of Waxworks.
+ - Macintosh version of I Have no Mouth, and I must Scream.
+ - Drascula: The Vampire Strikes Back.
+ * General
+ - Added CAMD MIDI driver for AmigaOS4.
+ - Revived the PS2 port (was already in 0.11.1 but was
+ forgotten in the release notes).
+ - Plugged numerous memory leaks in all engines (part of
+ GSoC'08 task),
+ - Added audio double buffering to the SDL backend, which
+ fixes the problems with the MT-32 emulator on Mac OS X
+ (for now only enabled on Mac OS X).
+ * AGOS:
+ - Fixed crashes during certain music in Amiga versions of
+ Elvira 1 and Simon the Sorcerer 1.
+ - Fixed palette issues in Amiga versions of Simon the
+ Sorcerer 1.
+ * Queen:
+ - Speech is played at the correct sample rate. (It used to be
+ pitched a bit too low.)
+ * SCUMM:
+ - Rewrote parts of Digital iMUSE, fixing some bugs.
+ - Rewrote the internal timer code, fixing some speed issues
+ in e.g. COMI.
+ - Improved support for sound effects in Amiga version of Zak
+ McKracken.
+ - Added support for mixed Adlib/MIDI mode in Monkey Island 1
+ (Floppy).
+
+-------------------------------------------------------------------
Old:
----
gccversion.diff
scummvm-0.11.1.tar.bz2
New:
----
scummvm-0.12.0.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ scummvm.spec ++++++
--- /var/tmp/diff_new_pack.Q17211/_old 2008-09-02 12:14:33.000000000 +0200
+++ /var/tmp/diff_new_pack.Q17211/_new 2008-09-02 12:14:33.000000000 +0200
@@ -1,10 +1,17 @@
#
-# spec file for package scummvm (Version 0.11.1)
+# spec file for package scummvm (Version 0.12.0)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
-# This file and all modifications and additions to the pristine
-# package are under the same license as the package itself.
#
+# All modifications and additions to the file contributed by third parties
+# remain the property of their copyright owners, unless otherwise agreed
+# upon. The license for this file, and modifications and additions to the
+# file, is the same license as for the pristine package itself (unless the
+# license for the pristine package is not an Open Source License, in which
+# case the license is the MIT License). An "Open Source License" is a
+# license that conforms to the Open Source Definition (Version 1.9)
+# published by the Open Source Initiative.
+
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
@@ -20,7 +27,7 @@
AutoReqProv: on
Provides: sarien
Obsoletes: sarien
-Version: 0.11.1
+Version: 0.12.0
Release: 1
Summary: Interpreter for LucasArts games
Source: %name-%version.tar.bz2
@@ -29,7 +36,6 @@
Patch: %name-cflags.diff
Patch1: %name-tools-0.11.0.diff
Patch2: %name-bufferoverflow.diff
-Patch7: gccversion.diff
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
@@ -69,7 +75,6 @@
%patch1
popd
%patch2
-%patch7
%build
pushd ../scummvm-tools-0.11.0
@@ -110,6 +115,41 @@
%exclude /usr/share/doc/scummvm
%changelog
+* Tue Sep 02 2008 sndirsch(a)suse.de
+- updated to new 0.12.0 release
+ * New Games:
+ - The Legend of Kyrandia: Book Two: Hand of Fate.
+ - The Legend of Kyrandia: Book Three: Malcolm's Revenge.
+ - Lost in Time.
+ - The Bizarre Adventures of Woodruff and the Schnibble.
+ - PC version of Waxworks.
+ - Macintosh version of I Have no Mouth, and I must Scream.
+ - Drascula: The Vampire Strikes Back.
+ * General
+ - Added CAMD MIDI driver for AmigaOS4.
+ - Revived the PS2 port (was already in 0.11.1 but was
+ forgotten in the release notes).
+ - Plugged numerous memory leaks in all engines (part of
+ GSoC'08 task),
+ - Added audio double buffering to the SDL backend, which
+ fixes the problems with the MT-32 emulator on Mac OS X
+ (for now only enabled on Mac OS X).
+ * AGOS:
+ - Fixed crashes during certain music in Amiga versions of
+ Elvira 1 and Simon the Sorcerer 1.
+ - Fixed palette issues in Amiga versions of Simon the
+ Sorcerer 1.
+ * Queen:
+ - Speech is played at the correct sample rate. (It used to be
+ pitched a bit too low.)
+ * SCUMM:
+ - Rewrote parts of Digital iMUSE, fixing some bugs.
+ - Rewrote the internal timer code, fixing some speed issues
+ in e.g. COMI.
+ - Improved support for sound effects in Amiga version of Zak
+ McKracken.
+ - Added support for mixed Adlib/MIDI mode in Monkey Island 1
+ (Floppy).
* Sat Mar 01 2008 sndirsch(a)suse.de
- updated to new 0.11.1 release
* fixed digital iMUSE system (better COMI experience)
@@ -457,7 +497,7 @@
- updated to daily snapshot (20051008)
* Tue Sep 20 2005 sndirsch(a)suse.de
- updated to daily snapshot (20050920)
-* Mon Sep 12 2005 sndirsch(a)suse.de
+* Tue Sep 13 2005 sndirsch(a)suse.de
- updated README.SUSE another time; a link for download the large -
unmodified original version can now be found on the scummvm
download page (#116335)
@@ -639,7 +679,7 @@
- Update to 0.3.0b
* Wed Dec 04 2002 mmj(a)suse.de
- Use BuildRoot:
-* Sun May 19 2002 mmj(a)suse.de
+* Mon May 20 2002 mmj(a)suse.de
- Update to 0.2.0
* Thu Apr 18 2002 uli(a)suse.de
- build and link with g++
++++++ scummvm-0.11.1.tar.bz2 -> scummvm-0.12.0.tar.bz2 ++++++
++++ 336905 lines of diff (skipped)
++++++ scummvm-bufferoverflow.diff ++++++
--- /var/tmp/diff_new_pack.Q17211/_old 2008-09-02 12:14:44.000000000 +0200
+++ /var/tmp/diff_new_pack.Q17211/_new 2008-09-02 12:14:44.000000000 +0200
@@ -1,14 +1,3 @@
---- engines/drascula/drascula.cpp.orig 2008-01-13 17:42:19.062073000 +0100
-+++ engines/drascula/drascula.cpp 2008-01-13 17:43:05.981005250 +0100
-@@ -5523,7 +5523,7 @@
- int juego1 = 1, juego2 = 1, juego3 = 1, juego4 = 1;
- char frase1[78];
- char frase2[78];
-- char frase3[78];
-+ char frase3[88];
- char frase4[78];
- char para_codificar[13];
- char suena1[13];
--- engines/saga/sfuncs.cpp.orig 2008-01-13 17:43:26.266273000 +0100
+++ engines/saga/sfuncs.cpp 2008-01-13 17:47:20.736926500 +0100
@@ -1985,7 +1985,7 @@
++++++ scummvm-cflags.diff ++++++
--- /var/tmp/diff_new_pack.Q17211/_old 2008-09-02 12:14:44.000000000 +0200
+++ /var/tmp/diff_new_pack.Q17211/_new 2008-09-02 12:14:44.000000000 +0200
@@ -1,9 +1,9 @@
--- Makefile.orig 2006-05-28 12:27:43.041858713 +0200
+++ Makefile 2006-05-28 12:28:26.485265934 +0200
@@ -25,6 +25,7 @@
- CXXFLAGS+= -pedantic -Wpointer-arith -Wcast-qual -Wconversion
- CXXFLAGS+= -Wshadow -Wimplicit -Wundef -Wnon-virtual-dtor
- CXXFLAGS+= -Wno-reorder -Wwrite-strings
+ # Enable even more warnings...
+ CXXFLAGS+= -pedantic -Wpointer-arith -Wcast-qual -Wcast-align
+ CXXFLAGS+= -Wshadow -Wimplicit -Wnon-virtual-dtor -Wwrite-strings
+CXXFLAGS+= $(RPM_OPT_FLAGS) -fno-strict-aliasing
# Disable RTTI and exceptions, and enabled checking of pointers returned by "new"
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
---------------------------------------------------------------------
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 liburiparser1
checked in at Tue Sep 2 12:10:45 CEST 2008.
--------
--- liburiparser1/liburiparser1.changes 2008-04-28 05:20:31.000000000 +0200
+++ /mounts/work_src_done/STABLE/liburiparser1/liburiparser1.changes 2008-09-02 11:12:50.000000000 +0200
@@ -1,0 +2,14 @@
+Tue Sep 2 11:11:06 CEST 2008 - crrodriguez(a)suse.de
+
+- update to version 0.7.2
+ Fixed: Bad cleanup logic in functions
+ uriAddBaseUri(..)
+ uriRemoveBaseUri(..)
+ Previously you needed to call uriFreeUriMembers on return code
+ URI_ERROR_MALLOC and only then. So that's why these functions now
+ take cleanup off your shoulders. An extra call to uriFreeUriMembers
+ from your side is still needed in case of success.
+* Soname: 1:7:0
+
+
+-------------------------------------------------------------------
Old:
----
uriparser-0.7.1.tar.bz2
New:
----
uriparser-0.7.2.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ liburiparser1.spec ++++++
--- /var/tmp/diff_new_pack.Lh9312/_old 2008-09-02 12:10:02.000000000 +0200
+++ /var/tmp/diff_new_pack.Lh9312/_new 2008-09-02 12:10:02.000000000 +0200
@@ -1,10 +1,17 @@
#
-# spec file for package liburiparser1 (Version 0.7.1)
+# spec file for package liburiparser1 (Version 0.7.2)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
-# This file and all modifications and additions to the pristine
-# package are under the same license as the package itself.
#
+# All modifications and additions to the file contributed by third parties
+# remain the property of their copyright owners, unless otherwise agreed
+# upon. The license for this file, and modifications and additions to the
+# file, is the same license as for the pristine package itself (unless the
+# license for the pristine package is not an Open Source License, in which
+# case the license is the MIT License). An "Open Source License" is a
+# license that conforms to the Open Source Definition (Version 1.9)
+# published by the Open Source Initiative.
+
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
@@ -14,7 +21,7 @@
Name: liburiparser1
Url: http://uriparser.sourceforge.net/
%define pkg_name uriparser
-Version: 0.7.1
+Version: 0.7.2
Release: 1
License: BSD 3-Clause
BuildRoot: %{_tmppath}/%{name}-%{version}-build
@@ -53,8 +60,11 @@
%prep
%setup -q -n %{pkg_name}-%{version}
+#file is dated in the future..
+#find . -type f -exec touch {} +
%build
+autoreconf -fiv
CFLAGS="%{optflags}"
CXXFLAGS="%{optflags}"
%if 0%{?suse_version} > 1000
@@ -71,9 +81,9 @@
%{__rm} -f %{buildroot}%{_libdir}/*.la
%check
-export MALLOC_CHECK_=2
+export MALLOC_CHECK_=2 MALLOC_PERTURB_=$((${RANDOM:-256} % 256))
%{__make} check
-unset MALLOC_CHECK_
+unset MALLOC_CHECK_ MALLOC_PERTURB_
%clean
%{__rm} -rf %{buildroot}
@@ -93,6 +103,16 @@
%{_libdir}/liburiparser.so
%changelog
+* Tue Sep 02 2008 crrodriguez(a)suse.de
+- update to version 0.7.2
+ Fixed: Bad cleanup logic in functions
+ uriAddBaseUri(..)
+ uriRemoveBaseUri(..)
+ Previously you needed to call uriFreeUriMembers on return code
+ URI_ERROR_MALLOC and only then. So that's why these functions now
+ take cleanup off your shoulders. An extra call to uriFreeUriMembers
+ from your side is still needed in case of success.
+ * Soname: 1:7:0
* Mon Apr 28 2008 crrodriguez(a)suse.de
- update to version 0.7.1
* Fixed: Bogus syntax error when parsing URIs with port-like
++++++ uriparser-0.7.1.tar.bz2 -> uriparser-0.7.2.tar.bz2 ++++++
++++ 23588 lines of diff (skipped)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
---------------------------------------------------------------------
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 libp11
checked in at Tue Sep 2 12:09:32 CEST 2008.
--------
--- libp11/libp11.changes 2008-08-22 16:27:10.000000000 +0200
+++ /mounts/work_src_done/STABLE/libp11/libp11.changes 2008-09-02 11:40:35.000000000 +0200
@@ -1,0 +2,7 @@
+Tue Sep 2 11:39:55 CEST 2008 - crrodriguez(a)suse.de
+
+- fix build, doxygen required.
+- kill ".la" files and static libraries
+- fix -devel package requires
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libp11.spec ++++++
--- /var/tmp/diff_new_pack.YJ6726/_old 2008-09-02 12:09:16.000000000 +0200
+++ /var/tmp/diff_new_pack.YJ6726/_new 2008-09-02 12:09:16.000000000 +0200
@@ -20,7 +20,7 @@
Name: libp11
Version: 0.2.4
-Release: 1
+Release: 2
Url: http://www.opensc-project.org/libp11/
Group: Productivity/Security
License: LGPL v2.1 or later
@@ -30,7 +30,7 @@
Patch: libp11-strict-aliasing.patch
Patch1: libp11-api-fix.patch
Patch2: libp11-api-update.patch
-BuildRequires: openssl-devel pkg-config zlib-devel
+BuildRequires: doxygen openssl-devel pkg-config zlib-devel
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
@@ -88,7 +88,7 @@
License: LGPL v2.1 or later
Group: Development/Libraries/C and C++
Summary: Library Implementing a Small Layer on Top of PKCS#11 API
-Requires: libp11-1 = %{version} glibc-devel openssl-devel libtool zlib-devel
+Requires: libp11-1 = %{version} openssl-devel
%description devel
Libp11 is a library implementing a small layer on top of PKCS#11 API to
@@ -119,7 +119,7 @@
%patch2
%build
-%configure\
+%configure --disable-static --with-pic \
--enable-doc\
--docdir=%{_docdir}/libp11-1\
--enable-api-doc\
@@ -129,6 +129,7 @@
%install
%makeinstall
mkdir -p $RPM_BUILD_ROOT%{_docdir}/%{name} $RPM_BUILD_ROOT%{_docdir}/libp11-1
+rm -f %{buildroot}%{_libdir}/*.la
%clean
rm -rf $RPM_BUILD_ROOT
@@ -147,10 +148,13 @@
%doc %{_docdir}/%{name}-devel
%{_includedir}/*.h
%{_libdir}/*.so
-%{_libdir}/*.*a
%{_libdir}/pkgconfig/*.pc
%changelog
+* Tue Sep 02 2008 crrodriguez(a)suse.de
+- fix build, doxygen required.
+- kill ".la" files and static libraries
+- fix -devel package requires
* Tue Aug 19 2008 sbrabec(a)suse.cz
- Updated to version 0.2.4:
* Build system rewritten
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
---------------------------------------------------------------------
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0