openSUSE Commits
Threads by month
- ----- 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
May 2006
- 1 participants
- 1219 discussions
Hello community,
here is the log from the commit of package oprofile
checked in at Wed May 31 17:12:11 CEST 2006.
--------
--- oprofile/oprofile.changes 2006-05-04 14:53:21.000000000 +0200
+++ oprofile/oprofile.changes 2006-05-31 11:18:40.000000000 +0200
@@ -1,0 +2,5 @@
+Wed May 31 11:18:29 CEST 2006 - schwab(a)suse.de
+
+- Fix invalid string operation.
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ oprofile.spec ++++++
--- /var/tmp/diff_new_pack.owGYOO/_old 2006-05-31 17:11:58.000000000 +0200
+++ /var/tmp/diff_new_pack.owGYOO/_new 2006-05-31 17:11:58.000000000 +0200
@@ -11,13 +11,13 @@
# norootforbuild
Name: oprofile
-BuildRequires: libdrm-devel libjpeg-devel libxslt popt-devel qt3-devel update-desktop-files
-URL: http://oprofile.sf.net
+BuildRequires: libxslt popt-devel qt3-devel update-desktop-files
+URL: http://oprofile.sourceforge.net/
License: GPL
Group: Development/Tools/Other
Autoreqprov: on
Version: 0.9.1
-Release: 16
+Release: 17
Summary: System-Wide Profiler for Linux Systems
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Source: %{name}-%{version}.tar.gz
@@ -94,6 +94,8 @@
%doc doc/oprofile.html COPYING README TODO ChangeLog
%changelog -n oprofile
+* Wed May 31 2006 - schwab(a)suse.de
+- Fix invalid string operation.
* Thu May 04 2006 - schwab(a)suse.de
- Fix last change.
* Mon Feb 27 2006 - schwab(a)suse.de
++++++ oprofile-0.9.1.diff ++++++
--- /var/tmp/diff_new_pack.owGYOO/_old 2006-05-31 17:11:58.000000000 +0200
+++ /var/tmp/diff_new_pack.owGYOO/_new 2006-05-31 17:11:58.000000000 +0200
@@ -40,6 +40,39 @@
/// We have more than one axis of classification, tell the user.
void report_error(profile_classes const & classes, axis_types newaxis)
{
+--- libregex/op_regex.cpp
++++ libregex/op_regex.cpp
+@@ -284,15 +284,15 @@
+ string left = line;
+ left_rule.execute(left);
+ if (left == line) {
+- throw bad_regex("invalid input file: " +
+- '"' + line + '"');
++ throw bad_regex("invalid input file: \"" +
++ line + '"');
+ }
+
+ string right = line;
+ right_rule.execute(right);
+ if (right == line) {
+- throw bad_regex("invalid input file: "
+- + '"' + line + '"');
++ throw bad_regex("invalid input file: \""
++ + line + '"');
+ }
+
+ regex.add_pattern(left, right);
+@@ -303,8 +303,8 @@
+ string var_value = line;
+ var_value_rule.execute(var_value);
+ if (var_value == line) {
+- throw bad_regex("invalid input file: " +
+- '"' + line + '"');
++ throw bad_regex("invalid input file: \"" +
++ line + '"');
+ }
+
+ regex.add_definition(var_name, var_value);
--- utils/opcontrol
+++ utils/opcontrol
@@ -398,11 +398,20 @@
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
1
0
Hello community,
here is the log from the commit of package open-iscsi
checked in at Wed May 31 17:11:51 CEST 2006.
--------
--- open-iscsi/open-iscsi.changes 2006-05-23 01:21:52.000000000 +0200
+++ open-iscsi/open-iscsi.changes 2006-05-31 08:33:49.000000000 +0200
@@ -1,0 +2,7 @@
+Wed May 31 08:30:29 CEST 2006 - hare(a)suse.de
+
+- update to svn r595
+ - Include local patches
+ - Fix lockup on target restart for real (#176151)
+
+-------------------------------------------------------------------
Old:
----
open-iscsi-allow-displaying-of-chap-secret
open-iscsi-cleanup-iscsiadm-man-page
New:
----
open-iscsi-595.diff
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ open-iscsi.spec ++++++
--- /var/tmp/diff_new_pack.Fjyakg/_old 2006-05-31 17:11:02.000000000 +0200
+++ /var/tmp/diff_new_pack.Fjyakg/_new 2006-05-31 17:11:02.000000000 +0200
@@ -18,7 +18,7 @@
Prereq: %fillup_prereq %insserv_prereq
Autoreqprov: on
Version: 0.5.545
-Release: 10
+Release: 11
Provides: linux-iscsi
Obsoletes: linux-iscsi
%define iscsi_release 545
@@ -34,8 +34,7 @@
Patch6: %{name}-564.diff
Patch7: %{name}-574.diff
Patch8: %{name}-581.diff
-Patch10: %{name}-cleanup-iscsiadm-man-page
-Patch11: %{name}-allow-displaying-of-chap-secret
+Patch9: %{name}-595.diff
Patch12: %{name}-start-iscsi-after-xen
Patch21: %{name}-check-active-sessions-before-delete
Patch22: %{name}-iscsi-iname-Makefile.patch
@@ -76,8 +75,7 @@
%patch6
%patch7
%patch8
-%patch10 -p1
-%patch11 -p1
+%patch9
%patch12 -p1
%patch21 -p1
%patch22 -p1
@@ -141,6 +139,10 @@
%doc %{_mandir}/man8/*
%changelog -n open-iscsi
+* Wed May 31 2006 - hare(a)suse.de
+- update to svn r595
+- Include local patches
+- Fix lockup on target restart for real (#176151)
* Mon May 22 2006 - hare(a)suse.de
- update to svn r581
- Fix lockup when target is restarted (#176151)
++++++ open-iscsi-595.diff ++++++
++++ 1607 lines (skipped)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
1
0
Hello community,
here is the log from the commit of package libzypp-zmd-backend
checked in at Wed May 31 17:10:55 CEST 2006.
--------
--- libzypp-zmd-backend/libzypp-zmd-backend.changes 2006-05-30 12:45:12.000000000 +0200
+++ libzypp-zmd-backend/libzypp-zmd-backend.changes 2006-05-31 14:02:56.000000000 +0200
@@ -1,0 +2,7 @@
+Wed May 31 10:29:21 CEST 2006 - kkaempf(a)suse.de
+
+- fall back to source URL if no product available (#179875)
+- refresh remote, zypp-owned sources (#178334)
+- rev 3469
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libzypp-zmd-backend.spec ++++++
--- /var/tmp/diff_new_pack.L0bLCL/_old 2006-05-31 17:10:15.000000000 +0200
+++ /var/tmp/diff_new_pack.L0bLCL/_new 2006-05-31 17:10:15.000000000 +0200
@@ -22,7 +22,7 @@
Obsoletes: zmd-librc-backend
Summary: ZMD backend for Package, Patch, Pattern, and Product Management
Version: 7.1.1.0
-Release: 48
+Release: 49
Source: zmd-backend-%{version}.tar.bz2
Prefix: /usr
@@ -68,6 +68,10 @@
/etc/logrotate.d/zmd-backend
%changelog -n libzypp-zmd-backend
+* Wed May 31 2006 - kkaempf(a)suse.de
+- fall back to source URL if no product available (#179875)
+- refresh remote, zypp-owned sources (#178334)
+- rev 3469
* Tue May 30 2006 - kkaempf(a)suse.de
- re-enable callback (r3398, r3425) based on environment variable
"KEYRING_CALLBACK" set by ZMD (#173920)
++++++ zmd-backend-7.1.1.0.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/zmd-backend-7.1.1.0/src/MediaChangeCallback.h new/zmd-backend-7.1.1.0/src/MediaChangeCallback.h
--- old/zmd-backend-7.1.1.0/src/MediaChangeCallback.h 2006-05-12 12:13:26.000000000 +0200
+++ new/zmd-backend-7.1.1.0/src/MediaChangeCallback.h 2006-05-31 10:27:32.000000000 +0200
@@ -67,11 +67,15 @@
}
}
+ // fall back to source url if source does not provide a product
if (product_name.empty()) {
- product_name = description;
+ product_name = source.url().asString();
}
std::cout << "|" << product_name << std::endl;
+
+ // FIXME: prodive additonal details about WHY a media change is requested
+ // std::cout << "|" << description;
}
// and abort here.
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/zmd-backend-7.1.1.0/src/parse-metadata.cc new/zmd-backend-7.1.1.0/src/parse-metadata.cc
--- old/zmd-backend-7.1.1.0/src/parse-metadata.cc 2006-05-18 12:39:05.000000000 +0200
+++ new/zmd-backend-7.1.1.0/src/parse-metadata.cc 2006-05-31 14:00:26.000000000 +0200
@@ -245,7 +245,14 @@
}
}
else if (urialias == it->alias()) { // urialias matches zypp one
+
MIL << "Found alias, source already known to zypp" << endl;
+
+ if (it->remote()) {
+ Source_Ref source = manager->findSource( it->numericId() ); // get non-const reference
+ source.refresh(); // refresh zypp-owned remote source
+ }
+
sync_source( db, *it, catalog, Url(), owner ); // known by alias
break;
}
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
1
0
Hello community,
here is the log from the commit of package kexec-tools
checked in at Wed May 31 17:10:08 CEST 2006.
--------
--- kexec-tools/kexec-tools.changes 2006-05-22 12:51:25.000000000 +0200
+++ kexec-tools/kexec-tools.changes 2006-05-30 16:04:43.000000000 +0200
@@ -1,0 +2,5 @@
+Tue May 30 16:03:26 CEST 2006 - tiwai(a)suse.de
+
+- ppc64 kdump ELF header fix for power 4 box (#175128).
+
+-------------------------------------------------------------------
New:
----
ppc64-kdump-tools-ELF-header-fix.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kexec-tools.spec ++++++
--- /var/tmp/diff_new_pack.rFXKRI/_old 2006-05-31 17:09:45.000000000 +0200
+++ /var/tmp/diff_new_pack.rFXKRI/_new 2006-05-31 17:09:45.000000000 +0200
@@ -17,7 +17,7 @@
Autoreqprov: on
Summary: Tools for fast kernel loading
Version: 1.101
-Release: 33
+Release: 34
Source: %{name}-%{version}.tar.bz2
Source1: kdump
Source2: sysconfig.kdump
@@ -31,6 +31,7 @@
Patch3: kexec-tools-ia64-fix.diff
Patch4: kexec-tools-s390-fix.diff
Patch5: kexec-tools-ppc64-rm-platform-prop-fix.patch
+Patch6: ppc64-kdump-tools-ELF-header-fix.patch
URL: http://www.xmission.com/~ebiederm/files/kexec/
BuildRoot: %{_tmppath}/%{name}-%{version}-build
@@ -59,6 +60,7 @@
%patch3
%patch4
%patch5 -p1
+%patch6 -p1
%{?suse_update_config -f}
cp %{SOURCE5} .
@@ -114,6 +116,8 @@
/var/adm/fillup-templates/sysconfig.kdump
%changelog -n kexec-tools
+* Tue May 30 2006 - tiwai(a)suse.de
+- ppc64 kdump ELF header fix for power 4 box (#175128).
* Mon May 22 2006 - tiwai(a)suse.de
- added the missing man page for kexec (#175084).
- add sleep after reboot in kdump init script for avoiding
++++++ ppc64-kdump-tools-ELF-header-fix.patch ++++++
diff -Naurp tools.orig/kexec-tools-1.101/kexec/arch/ppc64/crashdump-ppc64.c kexec-tools-1.101/kexec/arch/ppc64/crashdump-ppc64.c
--- tools.orig/kexec-tools-1.101/kexec/arch/ppc64/crashdump-ppc64.c 2006-05-28 20:06:06.000000000 -0500
+++ kexec-tools-1.101/kexec/arch/ppc64/crashdump-ppc64.c 2006-05-28 20:17:18.000000000 -0500
@@ -44,9 +44,6 @@ static struct memory_range crash_memory_
*/
mem_rgns_t usablemem_rgns = {0, };
-/* array to store memory regions to be excluded from elf header creation */
-mem_rgns_t exclude_rgns = {0, };
-
/*
* To store the memory size of the first kernel and this value will be
* passed to the second kernel as command line (savemaxmem=xM).
@@ -58,8 +55,6 @@ mem_rgns_t exclude_rgns = {0, };
*/
unsigned long saved_max_mem = 0;
-static int sort_regions(mem_rgns_t *rgn);
-
/* Reads the appropriate file and retrieves the SYSTEM RAM regions for whom to
* create Elf headers. Keeping it separate from get_memory_ranges() as
* requirements are different in the case of normal kexec and crashdumps.
@@ -81,7 +76,7 @@ static int get_crash_memory_ranges(struc
DIR *dir, *dmem;
FILE *file;
struct dirent *dentry, *mentry;
- int i, n, match;
+ int i, n;
unsigned long long start, end, cstart, cend;
/* create a separate program header for the backup region */
@@ -121,68 +116,72 @@ static int get_crash_memory_ranges(struc
closedir(dir);
return -1;
}
- if (memory_ranges >= MAX_MEMORY_RANGES)
- break;
+ if (memory_ranges >= MAX_MEMORY_RANGES) {
+ /* No space to insert another element. */
+ fprintf(stderr,
+ "Error: Number of crash memory ranges"
+ " excedeed the max limit\n");
+ return -1;
+ }
+
start = ((unsigned long long *)buf)[0];
end = start + ((unsigned long long *)buf)[1];
if (start == 0 && end >= 0x8000)
start = 0x8000;
- match = 0;
- sort_regions(&exclude_rgns);
-
- /* exclude crash reserved regions */
- for (i = 0; i < exclude_rgns.size; i++) {
- cstart = exclude_rgns.ranges[i].start;
- cend = exclude_rgns.ranges[i].end;
- if (cstart < end && cend > start) {
- if ((cstart == start) && (cend == end)) {
- match = 1;
- continue;
- }
- if (start < cstart && end > cend) {
- match = 1;
- crash_memory_range[memory_ranges].start = start;
- crash_memory_range[memory_ranges].end = cstart - 1;
- crash_memory_range[memory_ranges].type = RANGE_RAM;
- memory_ranges++;
- crash_memory_range[memory_ranges].start = cend + 1;
- crash_memory_range[memory_ranges].end = end;
- crash_memory_range[memory_ranges].type = RANGE_RAM;
- memory_ranges++;
- break;
- } else if (start < cstart) {
- match = 1;
- crash_memory_range[memory_ranges].start = start;
- crash_memory_range[memory_ranges].end = cstart - 1;
- crash_memory_range[memory_ranges].type = RANGE_RAM;
- memory_ranges++;
- end = cstart - 1;
- continue;
- } else if (end > cend){
- match = 1;
- crash_memory_range[memory_ranges].start = cend + 1;
- crash_memory_range[memory_ranges].end = end;
- crash_memory_range[memory_ranges].type = RANGE_RAM;
- memory_ranges++;
- start = cend + 1;
- continue;
- }
+
+ cstart = crash_base;
+ cend = crash_base + crash_size;
+ /*
+ * Exclude the region that lies within crashkernel
+ */
+ if (cstart < end && cend > start) {
+ if (start < cstart && end > cend) {
+ crash_memory_range[memory_ranges].start = start;
+ crash_memory_range[memory_ranges].end = cstart;
+ crash_memory_range[memory_ranges].type = RANGE_RAM;
+ memory_ranges++;
+ crash_memory_range[memory_ranges].start = cend;
+ crash_memory_range[memory_ranges].end = end;
+ crash_memory_range[memory_ranges].type = RANGE_RAM;
+ memory_ranges++;
+ } else if (start < cstart) {
+ crash_memory_range[memory_ranges].start = start;
+ crash_memory_range[memory_ranges].end = cstart;
+ crash_memory_range[memory_ranges].type = RANGE_RAM;
+ memory_ranges++;
+ } else if (end > cend){
+ crash_memory_range[memory_ranges].start = cend;
+ crash_memory_range[memory_ranges].end = end;
+ crash_memory_range[memory_ranges].type = RANGE_RAM;
+ memory_ranges++;
}
-
- } /* end of for loop */
- if (!match) {
+ } else {
crash_memory_range[memory_ranges].start = start;
crash_memory_range[memory_ranges].end = end;
crash_memory_range[memory_ranges].type = RANGE_RAM;
memory_ranges++;
}
-
fclose(file);
}
closedir(dmem);
}
closedir(dir);
+ /*
+ * If RTAS region is overlapped with crashkernel, need to create ELF
+ * Program header for the overlapped memory.
+ */
+ if (crash_base < rtas_base + rtas_size &&
+ rtas_base < crash_base + crash_size) {
+ cstart = rtas_base;
+ cend = rtas_base + rtas_size;
+ if (cstart < crash_base)
+ cstart = crash_base;
+ if (cend > crash_base + crash_size)
+ cend = crash_base + crash_size;
+ crash_memory_range[memory_ranges].start = cstart;
+ crash_memory_range[memory_ranges++].end = cend;
+ }
/*
* Can not trust the memory regions order that we read from
* device-tree. Hence, get the MAX end value.
@@ -450,45 +449,7 @@ void add_usable_mem_rgns(unsigned long l
#endif
}
-/*
- * Used to exclude various memory regions that do not need elf hdr generation
- */
-
-void add_exclude_rgns(unsigned long long base, unsigned long long size)
-{
- int i;
- unsigned long long end = base + size;
- unsigned long long xstart, xend;
-
- for (i=0; i < exclude_rgns.size; i++) {
- xstart = exclude_rgns.ranges[i].start;
- xend = exclude_rgns.ranges[i].end;
- if (base < xend && end > xstart) {
- if ((base >= xstart) && (end <= xend))
- return;
- if (base < xstart && end > xend) {
- exclude_rgns.ranges[i].start = base;
- exclude_rgns.ranges[i].end = end;
- return;
- } else if (base < xstart) {
- exclude_rgns.ranges[i].start = base;
- exclude_rgns.ranges[i].end = xend;
- return;
- } else if (end > xend){
- exclude_rgns.ranges[i].start = xstart;
- exclude_rgns.ranges[i].end = end;
- return;
- }
- }
- }
- exclude_rgns.ranges[exclude_rgns.size].start = base;
- exclude_rgns.ranges[exclude_rgns.size++].end = end;
-
-#ifdef DEBUG
- fprintf(stderr, "exclude rgns size:%d base:%lx end:%lx size:%lx\n", exclude_rgns.size, base, end, size);
-#endif
-}
-
+#if 0
static int sort_regions(mem_rgns_t *rgn)
{
int i, j;
@@ -508,4 +469,5 @@ static int sort_regions(mem_rgns_t *rgn)
return 0;
}
+#endif
diff -Naurp tools.orig/kexec-tools-1.101/kexec/arch/ppc64/crashdump-ppc64.h kexec-tools-1.101/kexec/arch/ppc64/crashdump-ppc64.h
--- tools.orig/kexec-tools-1.101/kexec/arch/ppc64/crashdump-ppc64.h 2006-05-28 20:06:06.000000000 -0500
+++ kexec-tools-1.101/kexec/arch/ppc64/crashdump-ppc64.h 2006-05-28 15:21:31.000000000 -0500
@@ -4,7 +4,6 @@
int load_crashdump_segments(struct kexec_info *info, char *mod_cmdline,
unsigned long max_addr, unsigned long min_base);
void add_usable_mem_rgns(unsigned long long base, unsigned long long size);
-void add_exclude_rgns(unsigned long long base, unsigned long long size);
#define PAGE_OFFSET 0xC000000000000000
#define KERNELBASE PAGE_OFFSET
@@ -31,5 +30,7 @@ void add_exclude_rgns(unsigned long long
extern unsigned long long crash_base;
extern unsigned long long crash_size;
+extern unsigned int rtas_base;
+extern unsigned int rtas_size;
#endif /* CRASHDUMP_PPC64_H */
diff -Naurp tools.orig/kexec-tools-1.101/kexec/arch/ppc64/kexec-ppc64.c kexec-tools-1.101/kexec/arch/ppc64/kexec-ppc64.c
--- tools.orig/kexec-tools-1.101/kexec/arch/ppc64/kexec-ppc64.c 2006-05-28 20:06:06.000000000 -0500
+++ kexec-tools-1.101/kexec/arch/ppc64/kexec-ppc64.c 2006-05-28 20:22:52.000000000 -0500
@@ -41,6 +41,7 @@ static struct memory_range base_memory_r
unsigned long long memory_max = 0;
static int nr_memory_ranges, nr_exclude_ranges;
unsigned long long crash_base, crash_size;
+unsigned int rtas_base, rtas_size;
static int sort_base_ranges();
@@ -87,8 +88,10 @@ static int get_base_ranges()
closedir(dir);
return -1;
}
- if (local_memory_ranges >= MAX_MEMORY_RANGES)
+ if (local_memory_ranges >= MAX_MEMORY_RANGES) {
+ fclose(file);
break;
+ }
base_memory_range[local_memory_ranges].start =
((unsigned long long *)buf)[0];
base_memory_range[local_memory_ranges].end =
@@ -165,7 +168,6 @@ static int get_devtree_details(unsigned
unsigned long long rmo_base;
unsigned long long tce_base;
unsigned int tce_size;
- unsigned int rtas_base, rtas_size;
unsigned long long htab_base, htab_size;
unsigned long long kernel_end;
char buf[MAXBYTES-1];
@@ -428,29 +430,6 @@ static int get_devtree_details(unsigned
sort_ranges();
- /* add crash_region and remove rtas range from exclude regions if it
- * lies within crash region
- */
- if (kexec_flags & KEXEC_ON_CRASH) {
- unsigned long new_crash_size;
- if (crash_base < rtas_base &&
- ((crash_base + crash_size) > (rtas_base + rtas_size))){
- new_crash_size = rtas_base - crash_base;
- add_exclude_rgns(crash_base, new_crash_size);
- new_crash_size = (crash_base + crash_size) - (rtas_base + rtas_size);
- add_exclude_rgns(rtas_base + rtas_size, new_crash_size);
- } else if (crash_base < rtas_base &&
- ((rtas_base + rtas_size) > (crash_base + crash_size))){
- new_crash_size = rtas_base - crash_base;
- add_exclude_rgns(crash_base, new_crash_size);
- } else if (crash_base > rtas_base &&
- ((rtas_base + rtas_size) < (crash_base + crash_size))){
- new_crash_size = (crash_base + crash_size) - (rtas_base + rtas_size);
- add_exclude_rgns(rtas_base + rtas_size, new_crash_size);
- } else
- add_exclude_rgns(crash_base, crash_size);
- }
-
#ifdef DEBUG
int k;
for (k = 0; k < i; k++)
diff -Naurp tools.orig/kexec-tools-1.101/kexec/arch/ppc64/kexec-ppc64.h kexec-tools-1.101/kexec/arch/ppc64/kexec-ppc64.h
--- tools.orig/kexec-tools-1.101/kexec/arch/ppc64/kexec-ppc64.h 2006-05-28 20:06:06.000000000 -0500
+++ kexec-tools-1.101/kexec/arch/ppc64/kexec-ppc64.h 2006-05-28 15:30:00.000000000 -0500
@@ -1,7 +1,8 @@
#ifndef KEXEC_PPC64_H
#define KEXEC_PPC64_H
-#define MAX_MEMORY_RANGES 256 /* TO FIX - needs to be dynamically set */
+#define MAX_MEMORY_RANGES 1024 /* TO FIX - needs to be dynamically set */
+
#define MAXBYTES 128
#define MAX_LINE 160
#define CORE_TYPE_ELF32 1
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
1
0
Hello community,
here is the log from the commit of package kdebluetooth
checked in at Wed May 31 17:09:39 CEST 2006.
--------
--- KDE/kdebluetooth/kdebluetooth.changes 2006-05-31 10:11:42.000000000 +0200
+++ kdebluetooth/kdebluetooth.changes 2006-05-31 15:36:55.000000000 +0200
@@ -1,0 +2,5 @@
+Wed May 31 15:36:37 CEST 2006 - adrian(a)suse.de
+
+- do not apply openobex patch for < 10.1
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kdebluetooth.spec ++++++
--- /var/tmp/diff_new_pack.PM8pob/_old 2006-05-31 17:09:14.000000000 +0200
+++ /var/tmp/diff_new_pack.PM8pob/_new 2006-05-31 17:09:14.000000000 +0200
@@ -20,7 +20,7 @@
Group: Hardware/Other
Summary: Bluetooth Support for KDE
Version: 0.0.svn20060413
-Release: 9
+Release: 10
BuildRoot: %{_tmppath}/%{name}-%{version}-build
# createPackage.sh -ab trunk/extragear/pim -a kdebluetooth -is extragear-pim -av 0.0.svn20061413 --package bzip2 --pofiles kbluelock kbluepin kbluetoothdcm kbluetoothd kbthandsfree kbtobexclient kbtsearch kbtserialchat khciconfig kioclient libkbluetooth
Source0: %name-%version.tar.bz2
@@ -58,7 +58,9 @@
%patch3
%patch5
%patch6
+%if %suse_version > 1010
%patch7
+%endif
rm -rf doc/da
. /etc/opt/kde3/common_options
update_admin # --no-unsermake
@@ -120,6 +122,8 @@
/opt/kde3/share/locale
%changelog -n kdebluetooth
+* Wed May 31 2006 - adrian(a)suse.de
+- do not apply openobex patch for < 10.1
* Tue May 30 2006 - adrian(a)suse.de
- fix build for < 10.1
* Wed May 17 2006 - dmueller(a)suse.de
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
1
0
Hello community,
here is the log from the commit of package kdebase3-SuSE
checked in at Wed May 31 17:09:08 CEST 2006.
--------
--- KDE/kdebase3-SuSE/kdebase3-SuSE.changes 2006-05-18 13:08:49.000000000 +0200
+++ kdebase3-SuSE/kdebase3-SuSE.changes 2006-05-31 12:00:20.000000000 +0200
@@ -1,0 +2,6 @@
+Wed May 31 11:59:45 CEST 2006 - coolo(a)suse.de
+
+- update from SVN to fix:
+ - sysinfo:/ displays wrong filesystem sizes (#176828)
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kdebase3-SuSE.spec ++++++
--- /var/tmp/diff_new_pack.hPw2kS/_old 2006-05-31 17:06:57.000000000 +0200
+++ /var/tmp/diff_new_pack.hPw2kS/_new 2006-05-31 17:06:57.000000000 +0200
@@ -31,7 +31,7 @@
PreReq: %fillup_prereq
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Version: 10.2
-Release: 2
+Release: 3
Source0: kdebase-SuSE-%{version}.tar.bz2
Source2: kdebase3-SuSE-displaymanager.fillup
Source3: kdebase3-SuSE-windowmanager.fillup
@@ -185,6 +185,9 @@
/var/lib/kde-profiles
%changelog -n kdebase3-SuSE
+* Wed May 31 2006 - coolo(a)suse.de
+- update from SVN to fix:
+- sysinfo:/ displays wrong filesystem sizes (#176828)
* Thu May 18 2006 - coolo(a)suse.de
- enable Screensaver locking by default for non-autologin users
(#58530)
++++++ kdebase-SuSE-10.2.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kdebase-SuSE/admin/cvs.sh new/kdebase-SuSE/admin/cvs.sh
--- old/kdebase-SuSE/admin/cvs.sh 2006-03-17 22:30:20.000000000 +0100
+++ new/kdebase-SuSE/admin/cvs.sh 2006-05-23 12:01:43.000000000 +0200
@@ -316,7 +316,7 @@
fi
fi
if test -z "$VERSION" || test "$VERSION" = "@VERSION@"; then
- VERSION="\"3.5.2\""
+ VERSION="\"3.5.3\""
fi
if test -z "$modulename" || test "$modulename" = "@MODULENAME@"; then
modulename=`pwd`;
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kdebase-SuSE/config-files/opt/kde3/share/config/SuSE/default/kdmrc new/kdebase-SuSE/config-files/opt/kde3/share/config/SuSE/default/kdmrc
--- old/kdebase-SuSE/config-files/opt/kde3/share/config/SuSE/default/kdmrc 2006-01-28 16:05:55.000000000 +0100
+++ new/kdebase-SuSE/config-files/opt/kde3/share/config/SuSE/default/kdmrc 2006-05-23 14:03:59.000000000 +0200
@@ -84,7 +84,7 @@
# LD_LIBRARY_PATH and XCURSOR_THEME are good candidates;
# otherwise, it should not be necessary very often.
# Default is ""
-ExportList=LANG
+ExportList=LANG,XCURSOR_THEME
# A character device KDM should read entropy from.
# Empty means use the system's preferred entropy device.
# Default is ""
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kdebase-SuSE/po/hu/kio_sysinfo.po new/kdebase-SuSE/po/hu/kio_sysinfo.po
--- old/kdebase-SuSE/po/hu/kio_sysinfo.po 2006-05-18 10:27:47.000000000 +0200
+++ new/kdebase-SuSE/po/hu/kio_sysinfo.po 2006-05-23 10:36:41.000000000 +0200
@@ -3,25 +3,25 @@
# Copyright (C) 2005 SUSE Linux Products GmbH.
# Copyright (C) 2002 SuSE Linux AG.
# Copyright (C) 2000, 2001 SuSE GmbH.
+# Kéménczy Kálmán, 2006.
# Marcel Hilzinger <hili(a)suselinux.hu>, 2001.
# Sári Gábor <saga(a)tux.hu>, 2000.
# Steve Varadi <svaradi(a)usa.com>, 2000.
# Zoltán Levárdy <pogacsa(a)programmer.net>, 1999.
# Kalman Kemenczy <kkemenczy(a)novell.com>, 2006.
-# Kéménczy Kálmán, 2006.
#
msgid ""
msgstr ""
"Project-Id-Version: kio_sysinfo\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2006-05-18 10:26+0200\n"
-"PO-Revision-Date: 2006-03-20 17:48+0100\n"
-"Last-Translator: Kéménczy Kálmán\n"
+"POT-Creation-Date: 2006-03-13 15:12+0100\n"
+"PO-Revision-Date: 2006-05-23 10:03+0200\n"
+"Last-Translator: Kalman Kemenczy <kkemenczy(a)novell.com>\n"
"Language-Team: Hungarian <en(a)li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.10.2\n"
+"X-Generator: KBabel 1.11\n"
#: ksysinfopart.cpp:72
msgid "KSysinfo"
@@ -135,106 +135,106 @@
msgid "Looking for CPU information..."
msgstr "CPU adatok keresése..."
-#: sysinfo.cpp:171
+#: sysinfo.cpp:169
msgid "CPU Information"
msgstr "CPU adatok "
-#: sysinfo.cpp:173
+#: sysinfo.cpp:171
msgid "Processor (CPU):"
msgstr "Processzor (CPU):"
-#: sysinfo.cpp:174
+#: sysinfo.cpp:172
msgid "Speed:"
msgstr "Sebesség:"
# /usr/lib/YaST2/clients/inst_config_x11.ycp:145
-#: sysinfo.cpp:175
+#: sysinfo.cpp:173
msgid "%1 MHz"
msgstr "%1 MHz"
-#: sysinfo.cpp:180
+#: sysinfo.cpp:177
msgid "Looking for memory information..."
msgstr "Memóriainformációk keresése..."
-#: sysinfo.cpp:182
+#: sysinfo.cpp:179
msgid "Memory Information"
msgstr "Memóriainformációk "
-#: sysinfo.cpp:184
+#: sysinfo.cpp:181
msgid "Total memory (RAM):"
msgstr "Összmemória (RAM):"
-#: sysinfo.cpp:185
+#: sysinfo.cpp:182
msgid "Free memory:"
msgstr "Szabad memória:"
-#: sysinfo.cpp:186
+#: sysinfo.cpp:183
msgid "Used Memory"
msgstr "Felhasznált memória:"
-#: sysinfo.cpp:187
+#: sysinfo.cpp:184
msgid "Total swap:"
msgstr "Cserefájl összesen:"
-#: sysinfo.cpp:188
+#: sysinfo.cpp:185
msgid "Free swap:"
msgstr "Cserefájl szabad:"
-#: sysinfo.cpp:252
+#: sysinfo.cpp:250
msgid "%1 (+ %2 Caches)"
msgstr "%1 (+ %2 gyorsítótár)"
-#: sysinfo.cpp:284
+#: sysinfo.cpp:270
msgid "Device"
msgstr "Eszköz"
-#: sysinfo.cpp:284
+#: sysinfo.cpp:270
msgid "Filesystem"
msgstr "Fájlrendszer"
-#: sysinfo.cpp:285
+#: sysinfo.cpp:271
msgid "Total space"
msgstr "Összes terület"
-#: sysinfo.cpp:285
+#: sysinfo.cpp:271
msgid "Available space"
msgstr "Rendelkezésre álló terület"
-#: sysinfo.cpp:291
+#: sysinfo.cpp:277
msgid "Press the right mouse button for more options like Mount or Eject"
msgstr ""
"A jobb egérgomb megnyomására további opciók állnak rendelkezésre (például "
"Felcsatolás vagy Kiadatás)"
-#: sysinfo.cpp:512
+#: sysinfo.cpp:495
msgid "%1 (3D Support)"
msgstr "%1 (3D támogatás)"
-#: sysinfo.cpp:516
+#: sysinfo.cpp:499
msgid "%1 (No 3D Support)"
msgstr "%1 (3D támogatás nélkül)"
-#: sysinfo.cpp:522
+#: sysinfo.cpp:504
msgid "unknown"
msgstr "ismeretlen"
-#: sysinfo.cpp:530
+#: sysinfo.cpp:511
msgid "Network is <strong>unreachable</strong>"
msgstr "A hálózat <strong>elérhetetlen</strong>"
-#: sysinfo.cpp:532
+#: sysinfo.cpp:513
msgid "You are <strong>offline</strong>"
msgstr "Ön most <strong>offline</strong> állapotú"
-#: sysinfo.cpp:534
+#: sysinfo.cpp:515
msgid "Network is <strong>shutting down</strong>"
msgstr "A hálózat <strong>leáll</strong>"
-#: sysinfo.cpp:536
+#: sysinfo.cpp:517
msgid "<strong>Establishing</strong> connection to the network"
msgstr "Kapcsolat <strong>létesítése</strong> a hálózat felé"
-#: sysinfo.cpp:538
+#: sysinfo.cpp:519
msgid "You are <strong>online</strong>"
msgstr "Ön most <strong>online</strong> állapotú"
@@ -245,6 +245,7 @@
# modules/sound/sound.ycp:719 modules/sound/sound.ycp:754
# modules/sound/sound.ycp:801 modules/sound/sound.ycp:848
# modules/sound/sound.ycp:874 modules/sound/sound.ycp:918
-#: sysinfo.cpp:540
+#: sysinfo.cpp:521
msgid "Unknown network status"
msgstr "Ismeretlen hálózati állapot"
+
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kdebase-SuSE/po/hu/suseplugger.po new/kdebase-SuSE/po/hu/suseplugger.po
--- old/kdebase-SuSE/po/hu/suseplugger.po 2006-05-18 10:27:47.000000000 +0200
+++ new/kdebase-SuSE/po/hu/suseplugger.po 2006-05-23 10:36:41.000000000 +0200
@@ -26,17 +26,17 @@
msgstr ""
"Project-Id-Version: suseplugger\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2006-05-18 10:26+0200\n"
-"PO-Revision-Date: 2006-03-10 14:44+0100\n"
+"POT-Creation-Date: 2006-03-10 09:16+0100\n"
+"PO-Revision-Date: 2006-05-23 10:03+0200\n"
"Last-Translator: Kalman Kemenczy <kkemenczy(a)novell.com>\n"
"Language-Team: Hungarian <en(a)li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: KBabel 1.10.2\n"
+"X-Generator: KBabel 1.11\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: KBabel 1.10.2\n"
+"X-Generator: KBabel 1.11\n"
#: main.cpp:41
msgid "Check for new hardware on session startup."
@@ -176,10 +176,8 @@
"telepítésre..."
#: susehwitem.cpp:428
-msgid ""
-"An error occured while checking for the installed YaST2 module. Aborting."
-msgstr ""
-"Hiba történt a telepített YaST2-modulok ellenőrzésekor.A program leáll."
+msgid "An error occured while checking for the installed YaST2 module. Aborting."
+msgstr "Hiba történt a telepített YaST2-modulok ellenőrzésekor.A program leáll."
#: susehwitemhandler.cpp:198
msgid ""
@@ -190,3 +188,4 @@
"A monitor nem jelentette le X- és Y-méretét. Ebből származhatnak "
"megjelenítési problémák, például olvashatatlan betűkészletek.\n"
"Kívánja kézzel beállítani a monitor geometriáját?"
+
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/kdebase-SuSE/sysinfo/sysinfo.cpp new/kdebase-SuSE/sysinfo/sysinfo.cpp
--- old/kdebase-SuSE/sysinfo/sysinfo.cpp 2006-05-11 18:21:16.000000000 +0200
+++ new/kdebase-SuSE/sysinfo/sysinfo.cpp 2006-05-31 11:39:40.000000000 +0200
@@ -124,7 +124,7 @@
sysInfo += "<tr><td>" + i18n( "OS:" ) + "</td><td>" + m_info[OS_SYSNAME] + " " + m_info[OS_RELEASE] + " " + m_info[OS_MACHINE] + "</td></tr>";
sysInfo += "<tr><td>" + i18n( "Current user:" ) + "</td><td>" + m_info[OS_USER] + "@" + m_info[OS_HOSTNAME] + "</td></tr>";
sysInfo += "<tr><td>" + i18n( "System:" ) + "</td><td>" + m_info[OS_SYSTEM] + "</td></tr>";
- sysInfo += "<tr><td>" + i18n( "KDE:" ) + "</td><td>" + KDE_VERSION_STRING + "</td></tr>";
+ sysInfo += "<tr><td>" + i18n( "KDE:" ) + "</td><td>" + KDE::versionString() + "</td></tr>";
sysInfo += "</table>";
// OpenGL info
@@ -473,10 +473,16 @@
driver_info_t *di = hd->driver_info;
QString renderer;
bool dri = hasDirectRendering( renderer );
+ QString driver;
for(di = di; di; di = di->next)
{
- QString loadline = QString("(II) LoadModule: \"%1\"").arg( di->x11.server );
+ QString loadline;
+ if (di->any.type == di_x11)
+ driver = di->x11.server;
+ else if (di->any.type == di_module && di->module.names)
+ driver = di->module.names->str;
+ loadline = QString("(II) LoadModule: \"%1\"").arg( driver );
QFile file( "/var/log/Xorg.0.log" );
if ( !file.exists() || !file.open( IO_ReadOnly ) )
@@ -502,20 +508,22 @@
kdDebug() << "found_line " << found_line << endl;
if (found_line)
break;
+ else
+ driver = QString::null;
}
m_info[GFX_VENDOR] = hd->vendor.name;
m_info[GFX_MODEL] = hd->device.name;
- if (di)
+ if (!driver.isNull())
{
if (dri)
- m_info[GFX_DRIVER] = i18n("%1 (3D Support)").arg(di->x11.server);
+ m_info[GFX_DRIVER] = i18n("%1 (3D Support)").arg(driver);
else
{
if ( renderer.contains( "Mesa GLX Indirect" ) )
- m_info[GFX_DRIVER] = i18n("%1 (No 3D Support)").arg(di->x11.server);
+ m_info[GFX_DRIVER] = i18n("%1 (No 3D Support)").arg(driver);
else
- m_info[GFX_DRIVER] = di->x11.server;
+ m_info[GFX_DRIVER] = driver;
}
}
else
@@ -704,11 +712,11 @@
// calc the free/total space
struct statfs sfs;
- if ( statfs( QFile::encodeName( di.mountPoint ), &sfs ) == 0 )
+ if ( di.mounted && statfs( QFile::encodeName( di.mountPoint ), &sfs ) == 0 )
{
di.total = ( unsigned long long )sfs.f_blocks * sfs.f_bsize;
di.avail = ( unsigned long long )( getuid() ? sfs.f_bavail : sfs.f_bfree ) * sfs.f_bsize;
- } else if (m_halContext)
+ } else if (m_halContext && di.id.startsWith("/org/freedesktop/Hal/" ) )
{
dbus_error_init(&error);
di.total = libhal_device_get_property_uint64(m_halContext, di.id.latin1(), "volume.size", &error);
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
1
0
Hello community,
here is the log from the commit of package kchmviewer
checked in at Wed May 31 17:04:05 CEST 2006.
--------
--- KDE/kchmviewer/kchmviewer.changes 2006-05-22 13:33:06.000000000 +0200
+++ kchmviewer/kchmviewer.changes 2006-05-31 11:53:27.000000000 +0200
@@ -1,0 +2,5 @@
+Wed May 31 11:53:22 CEST 2006 - adrian(a)suse.de
+
+- fix build for < 10.1
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kchmviewer.spec ++++++
--- /var/tmp/diff_new_pack.tAJBY1/_old 2006-05-31 17:03:57.000000000 +0200
+++ /var/tmp/diff_new_pack.tAJBY1/_new 2006-05-31 17:03:57.000000000 +0200
@@ -12,6 +12,9 @@
Name: kchmviewer
BuildRequires: kdelibs3-devel
+%if %suse_version < 1000
+BuildRequires: libjpeg-devel
+%endif
%if %suse_version > 1010
BuildRequires: chmlib-devel
%endif
@@ -19,7 +22,7 @@
Group: Productivity/Office/Other
Summary: KDE chm Viewer (MS Windows Compressed HTML Documents)
Version: 2.5
-Release: 3
+Release: 4
URL: http://kchmviewer.sourceforge.net/
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Source: %name-%version.tar.gz
@@ -53,7 +56,11 @@
. /etc/opt/kde3/common_options
make DESTDIR=$RPM_BUILD_ROOT $INSTALL_TARGET
#kde_post_install
+%if %suse_version < 1010
+%suse_update_desktop_file %name Office Viewer
+%else
%suse_update_desktop_file -G "Compressed HTML Viewer" %name Office Viewer
+%endif
%clean
rm -rf $RPM_BUILD_ROOT
@@ -67,6 +74,8 @@
/opt/kde3/share/services/msits.protocol
%changelog -n kchmviewer
+* Wed May 31 2006 - adrian(a)suse.de
+- fix build for < 10.1
* Mon May 22 2006 - stbinner(a)suse.de
- Use system-wide chmlib package (#153012)
* Wed May 17 2006 - stbinner(a)suse.de
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
1
0
Hello community,
here is the log from the commit of package jabberd
checked in at Wed May 31 17:03:52 CEST 2006.
--------
--- jabberd/jabberd.changes 2006-01-25 21:36:45.000000000 +0100
+++ jabberd/jabberd.changes 2006-05-31 15:54:28.000000000 +0200
@@ -1,0 +2,26 @@
+Wed May 31 15:26:04 CEST 2006 - max(a)suse.de
+
+- Updated to version 2.0s11, fixing a remote DoS vulnerability.
+
+- Build the storage and authreg drivers as loadable modules
+ (jabberd-dbmodules.patch).
+
+- Skip automatic dependency generation for the modules to avoid
+ the requiremet for mini subpackages only containing a single
+ small shared library.
+
+- Enable all possible storage and authreg modules, now that we
+ have the flexibility.
+
+- Added jabberd-README.SUSE to explain the new module concept.
+
+- Use an installed copy of expat (jabberd-expat.patch).
+
+- Support authentication via SQLite (jabberd-sqlite.patch).
+
+- Make PostgreSQL connection credencials optional
+ (jabberd-pgsql.patch).
+
+- Create a user and group so that the server doesn't run as root.
+
+-------------------------------------------------------------------
Old:
----
jabberd-2.0s10.tar.bz2
New:
----
jabberd-2.0s11.tar.bz2
jabberd-README.SUSE
jabberd-dbmodules.patch
jabberd-expat.patch
jabberd-pgsql.patch
jabberd-sqlite.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ jabberd.spec ++++++
--- /var/tmp/diff_new_pack.M6jcKb/_old 2006-05-31 17:03:11.000000000 +0200
+++ /var/tmp/diff_new_pack.M6jcKb/_new 2006-05-31 17:03:11.000000000 +0200
@@ -1,18 +1,20 @@
#
-# spec file for package jabberd (Version 2.0s10)
+# spec file for package jabberd (Version 2.0s11)
#
# Copyright (c) 2006 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.
#
-# Please submit bugfixes or comments via http://bugs.opensuse.org
+# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
# norootforbuild
Name: jabberd
-BuildRequires: db-devel krb5-devel libidn-devel mysql-devel openldap2 openldap2-devel pam-devel
-Version: 2.0s10
+BuildRequires: expat openssl-devel postgresql-devel sqlite-devel
+BuildRequires: db-devel krb5-devel libidn-devel mysql-devel
+BuildRequires: openldap2 openldap2-devel pam-devel
+Version: 2.0s11
Release: 1
URL: http://jabberd.jabberstudio.org/
Group: Productivity/Networking/Other
@@ -21,13 +23,20 @@
Source: %{name}-%{version}.tar.bz2
Source1: jabberd.init
Source2: jabberd.pam
+Source3: jabberd-README.SUSE
+Patch1: jabberd-sqlite.patch
+Patch2: jabberd-pgsql.patch
+Patch3: jabberd-dbmodules.patch
+Patch9: jabberd-expat.patch
# Needed for init script,
Requires: net-tools
+PreReq: /usr/sbin/useradd /usr/sbin/groupadd
+PreReq: %insserv_prereq
Autoreqprov: on
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
-Jabber Open Source Server.
+Jabber open source server.
@@ -56,35 +65,75 @@
Albert Chin <china(a)thewrittenword.com>
%prep
-%setup
+%setup -q
+rm -rf expat
+cp -a %SOURCE3 README.SUSE
+%patch1
+%patch2
+%patch3
+%patch9
%build
+%{?suse_update_config:%suse_update_config}
+autoreconf --force --install
export CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing -DLDAP_DEPRECATED"
-# If you want to compile for postgreSQL, add postgresql-libs postgresql-devel to neededforbuild and
-# "--enable-pgsql --with-extra-include-path=/usr/include/pgsql" and optionally "--disable-mysql"
./configure\
- --prefix=/usr\
- --sysconfdir=/etc\
- --localstatedir=/var/lib\
- --mandir=/usr/share/man\
- --enable-db --enable-ldap --enable-pam --enable-pipe --enable-anon --enable-fs
+ --prefix=/usr \
+ --libdir=%_libdir \
+ --sysconfdir=/etc \
+ --localstatedir=/var/lib \
+ --mandir=/usr/share/man \
+ --enable-mysql \
+ --enable-pgsql \
+ --with-extra-include-path=/usr/include/pgsql \
+ --enable-sqlite \
+ --enable-db \
+ --enable-ldap \
+ --enable-pam \
+ --enable-pipe \
+ --enable-anon \
+ --enable-fs
make
%install
-rm -rf $RPM_BUILD_ROOT
-make DESTDIR=$RPM_BUILD_ROOT install
-mkdir -p $RPM_BUILD_ROOT/etc/{init,pam}.d $RPM_BUILD_ROOT/usr/sbin
-install %{S:1} $RPM_BUILD_ROOT/etc/init.d/jabberd
-install -m0644 %{S:2} $RPM_BUILD_ROOT/etc/pam.d/jabberd
-ln -s ../../etc/init.d/jabberd $RPM_BUILD_ROOT/usr/sbin/rcjabberd
-mkdir -p $RPM_BUILD_ROOT/var/lib/jabberd/db $RPM_BUILD_ROOT/var/lib/jabberd/pid
+make DESTDIR=%buildroot install
+install -d -m750 %buildroot/etc/{init,pam}.d %buildroot/usr/sbin
+install %{S:1} %buildroot/etc/init.d/jabberd
+install -m0644 %{S:2} %buildroot/etc/pam.d/jabberd
+ln -s /etc/init.d/jabberd %buildroot/usr/sbin/rcjabberd
+mkdir -p %buildroot/var/lib/jabberd/{db,pid}
+# .la files are not needed for loadable modules.
+rm -f %buildroot%_libdir/%name/*.la
+# keep the dependencies of the database plugins out of the requires list
+%define my_requires /tmp/my-requires
+cat << EOF > %my_requires
+#!/bin/sh
+fgrep -v %_libdir/%name | %__find_requires
+EOF
+chmod 755 %my_requires
+%define __find_requires %my_requires
%clean
-rm -rf $RPM_BUILD_ROOT
+rm -rf %buildroot
+
+%pre
+groupadd --system jabber 2>/dev/null ||:
+useradd --system --gid jabber --comment "Jabber Server" \
+ --home /var/lib/jabberd --shell /bin/false jabber 2>/dev/null ||:
+exit 0
+
+%preun
+%{?stop_on_removal:%stop_on_removal jabberd}
+exit 0
+
+%postun
+%{?insserv_cleanup:%insserv_cleanup}
+exit 0
%files
-%defattr (-, root, root)
+%defattr (-, root, root, -)
%doc AUTHORS COPYING ChangeLog NEWS PROTOCOL README TODO
+%doc README.SUSE tools/db-*
/etc/init.d/*
%config /etc/pam.d/*
%dir /etc/jabberd
@@ -97,12 +146,27 @@
/etc/jabberd/templates/*.xml.dist
/usr/bin/*
/usr/sbin/*
-%doc /usr/share/man/man?/*.*
-%dir /var/lib/jabberd
-%dir /var/lib/jabberd/db
-%dir /var/lib/jabberd/pid
+%_libdir/%name
+%doc /usr/share/man/*/*
+%defattr (-, jabber, jabber, -)
+/var/lib/jabberd
%changelog -n jabberd
+* Wed May 31 2006 - max(a)suse.de
+- Updated to version 2.0s11, fixing a remote DoS vulnerability.
+- Build the storage and authreg drivers as loadable modules
+ (jabberd-dbmodules.patch).
+- Skip automatic dependency generation for the modules to avoid
+ the requiremet for mini subpackages only containing a single
+ small shared library.
+- Enable all possible storage and authreg modules, now that we
+ have the flexibility.
+- Added jabberd-README.SUSE to explain the new module concept.
+- Use an installed copy of expat (jabberd-expat.patch).
+- Support authentication via SQLite (jabberd-sqlite.patch).
+- Make PostgreSQL connection credencials optional
+ (jabberd-pgsql.patch).
+- Create a user and group so that the server doesn't run as root.
* Wed Jan 25 2006 - mls(a)suse.de
- converted neededforbuild to BuildRequires
* Tue Jan 10 2006 - sbrabec(a)suse.cz
++++++ jabberd-2.0s10.tar.bz2 -> jabberd-2.0s11.tar.bz2 ++++++
++++ 11122 lines of diff (skipped)
++++ retrying with extended exclude list
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/jabberd-2.0s10/PROTOCOL new/jabberd-2.0s11/PROTOCOL
--- old/jabberd-2.0s10/PROTOCOL 2005-10-04 08:44:07.000000000 +0200
+++ new/jabberd-2.0s11/PROTOCOL 2006-03-09 08:51:21.000000000 +0100
@@ -10,7 +10,7 @@
This document lists the protocols supported by the server, and any notes
relating to the implementation.
-This is current as of 2005-10-04 (jabberd 2.0s10).
+This is current as of 2005-10-04 (jabberd 2.0s11).
XMPP
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/jabberd-2.0s10/README new/jabberd-2.0s11/README
--- old/jabberd-2.0s10/README 2005-10-04 08:43:12.000000000 +0200
+++ new/jabberd-2.0s11/README 2006-03-09 08:51:07.000000000 +0100
@@ -1,4 +1,4 @@
-README for Jabber Open Source Server (2.0s10)
+README for Jabber Open Source Server (2.0s11)
Thanks for downloading jabberd 2.0. Below are some basic instructions to
get you started. Complete documentation is available at
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/jabberd-2.0s10/configure.in new/jabberd-2.0s11/configure.in
--- old/jabberd-2.0s10/configure.in 2005-10-04 08:42:58.000000000 +0200
+++ new/jabberd-2.0s11/configure.in 2006-03-09 08:50:54.000000000 +0100
@@ -1,5 +1,5 @@
dnl jabberd2 configure script
-dnl $Id: configure.in,v 1.79.2.36 2005/08/21 10:01:58 zion Exp $
+dnl $Id: configure.in,v 1.79.2.37 2005/10/29 20:30:16 zion Exp $
dnl
dnl autoconf setup
@@ -8,7 +8,7 @@
AC_PREREQ(2.57)
dnl startup
-AC_INIT(jabberd, 2.0s10)
+AC_INIT(jabberd, 2.0s11)
AM_INIT_AUTOMAKE
dnl copyright
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/jabberd-2.0s10/scod/scod.c new/jabberd-2.0s11/scod/scod.c
--- old/jabberd-2.0s10/scod/scod.c 2003-10-28 05:53:43.000000000 +0100
+++ new/jabberd-2.0s11/scod/scod.c 2005-10-29 22:23:57.000000000 +0200
@@ -279,7 +279,10 @@
int scod_server_step(scod_t sd, const char *resp, int resplen, char **chal, int *challen) {
int ret;
- assert((int) sd);
+ /* Check that auth has actually begun */
+ if(sd == NULL)
+ return sd_err_UNKNOWN_MECH;
+
assert((int) resp);
assert((int) chal);
assert((int) challen);
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/jabberd-2.0s10/sx/sasl.c new/jabberd-2.0s11/sx/sasl.c
--- old/jabberd-2.0s10/sx/sasl.c 2005-07-26 09:28:15.000000000 +0200
+++ new/jabberd-2.0s11/sx/sasl.c 2005-10-29 22:23:57.000000000 +0200
@@ -211,7 +211,7 @@
static void _sx_sasl_client_process(sx_t s, sx_plugin_t p, scod_t sd, char *mech, char *in, int inlen) {
_sx_sasl_t ctx = (_sx_sasl_t) p->private;
char realm[256];
- char *buf, *out;
+ char *buf = NULL, *out = NULL;
int buflen, outlen, ret;
if(mech != NULL) {
++++++ jabberd-dbmodules.patch ++++++
++++ 642 lines (skipped)
++++++ jabberd-expat.patch ++++++
--- Makefile.am
+++ Makefile.am
@@ -1,6 +1,6 @@
EXTRA_DIST = PROTOCOL Doxyfile.in README.win32 contrib
-SUBDIRS = etc tools man expat mio scod subst sx util c2s resolver router s2s sm
+SUBDIRS = etc tools man mio scod subst sx util c2s resolver router s2s sm
docs: Doxyfile
@doxygen
--- c2s/Makefile.am
+++ c2s/Makefile.am
@@ -10,7 +10,7 @@
$(top_builddir)/mio/libmio.la \
$(top_builddir)/util/libutil.la \
$(top_builddir)/subst/libsubst.la \
- $(top_builddir)/expat/libexpat.la
+ -lexpat
MODULE_LDFLAGS = -module -avoid-version
--- configure.in
+++ configure.in
@@ -791,7 +791,6 @@
etc/templates/Makefile \
tools/Makefile \
man/Makefile \
- expat/Makefile \
mio/Makefile \
scod/Makefile \
subst/Makefile \
--- resolver/Makefile.am
+++ resolver/Makefile.am
@@ -10,4 +10,4 @@
$(top_builddir)/mio/libmio.la \
$(top_builddir)/util/libutil.la \
$(top_builddir)/subst/libsubst.la \
- $(top_builddir)/expat/libexpat.la
+ -lexpat
--- router/Makefile.am
+++ router/Makefile.am
@@ -10,4 +10,4 @@
$(top_builddir)/mio/libmio.la \
$(top_builddir)/util/libutil.la \
$(top_builddir)/subst/libsubst.la \
- $(top_builddir)/expat/libexpat.la
+ -lexpat
\ No newline at end of file
--- s2s/Makefile.am
+++ s2s/Makefile.am
@@ -10,4 +10,4 @@
$(top_builddir)/mio/libmio.la \
$(top_builddir)/util/libutil.la \
$(top_builddir)/subst/libsubst.la \
- $(top_builddir)/expat/libexpat.la
+ -lexpat
--- sm/Makefile.am
+++ sm/Makefile.am
@@ -42,7 +42,7 @@
$(top_builddir)/mio/libmio.la \
$(top_builddir)/util/libutil.la \
$(top_builddir)/subst/libsubst.la \
- $(top_builddir)/expat/libexpat.la
+ -lexpat
sm_LDFLAGS = -export-dynamic
--- sx/sx.h
+++ sx/sx.h
@@ -27,7 +27,7 @@
#include "ac-stdint.h"
-#include <expat/expat.h>
+#include <expat.h>
#include <util/util.h>
#ifdef __cplusplus
--- util/config.c
+++ util/config.c
@@ -19,7 +19,7 @@
*/
#include "util.h"
-#include "expat/expat.h"
+#include <expat.h>
/** new config structure */
config_t config_new(void)
--- util/nad.c
+++ util/nad.c
@@ -35,7 +35,7 @@
#include "util.h"
#ifdef HAVE_EXPAT
-#include "expat/expat.h"
+#include <expat.h>
#endif
/* define NAD_DEBUG to get pointer tracking - great for weird bugs that you can't reproduce */
++++++ jabberd-pgsql.patch ++++++
--- c2s/authreg_pgsql.c
+++ c2s/authreg_pgsql.c
@@ -500,11 +500,6 @@
user = config_get_one(ar->c2s->config, "authreg.pgsql.user", 0);
pass = config_get_one(ar->c2s->config, "authreg.pgsql.pass", 0);
- if(host == NULL || port == NULL || dbname == NULL || user == NULL || pass == NULL) {
- log_write(ar->c2s->log, LOG_ERR, "pgsql: invalid module config");
- return 1;
- }
-
log_debug( ZONE, "pgsql connecting as '%s' to database '%s' on %s:%s", user, dbname, host, port );
conn = PQsetdbLogin(host, port, NULL, NULL, dbname, user, pass);
--- resolver/dns.c
+++ resolver/dns.c
@@ -72,7 +72,7 @@
/* unix implementation */
-#ifdef HAVE_RES_QUERY
+#if defined(HAVE_RES_QUERY) || defined(HAVE___RES_QUERY)
/* older systems might not have these */
#ifndef T_SRV
--- sm/storage_pgsql.c
+++ sm/storage_pgsql.c
@@ -599,11 +599,6 @@
user = config_get_one(drv->st->sm->config, "storage.pgsql.user", 0);
pass = config_get_one(drv->st->sm->config, "storage.pgsql.pass", 0);
- if(host == NULL || port == NULL || dbname == NULL || user == NULL || pass == NULL) {
- log_write(drv->st->sm->log, LOG_ERR, "pgsql: invalid driver config");
- return st_FAILED;
- }
-
conn = PQsetdbLogin(host, port, NULL, NULL, dbname, user, pass);
if(conn == NULL) {
log_write(drv->st->sm->log, LOG_ERR, "pgsql: unable to allocate database connection state");
++++++ jabberd-sqlite.patch ++++++
++++ 689 lines (skipped)
++++++ jabberd.init ++++++
--- jabberd/jabberd.init 2005-09-06 13:52:03.000000000 +0200
+++ jabberd/jabberd.init 2006-04-12 12:22:49.000000000 +0200
@@ -88,6 +88,7 @@
# description: jabberd2 is the next generation of the jabberd server
# chkconfig: 2345 85 15
#
+
progs="router resolver sm c2s s2s"
progsPath="/usr/bin"
confPath="/etc/jabberd"
@@ -173,7 +174,7 @@
rm -f /var/lock/subsys/${prog}
rm -f ${pidPath}/${prog}.pid
args="-c ${confPath}/${prog}.xml"
- ${progsPath}/${prog} ${args} & 2> /dev/null
+ startproc -u jabber -p ${pidPath}/${prog}.pid -q ${progsPath}/${prog} ${args}
retval=$?
if [ ${retval} == 0 ]; then
StatusOK
@@ -193,7 +194,7 @@
echo "Terminating jabberd processes..."
for prog in ${progs}; do
echo -ne "\tStopping ${prog} "
- killproc ${prog}
+ killproc -p ${pidPath}/${prog}.pid ${prog}
retval=$?
if [ ${retval} == 0 ]; then
StatusOK
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
1
0
Hello community,
here is the log from the commit of package iscsitarget
checked in at Wed May 31 16:54:53 CEST 2006.
--------
--- iscsitarget/iscsitarget.changes 2006-05-22 15:21:41.000000000 +0200
+++ iscsitarget/iscsitarget.changes 2006-05-31 09:10:08.000000000 +0200
@@ -1,0 +2,5 @@
+Wed May 31 09:09:32 CEST 2006 - hare(a)suse.de
+
+- Pull in fixes from upstream to prevent kernel oops [#179557]
+
+-------------------------------------------------------------------
New:
----
iscsitarget-svn-33.diff
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ iscsitarget.spec ++++++
--- /var/tmp/diff_new_pack.iCvSpf/_old 2006-05-31 16:54:03.000000000 +0200
+++ /var/tmp/diff_new_pack.iCvSpf/_new 2006-05-31 16:54:03.000000000 +0200
@@ -18,11 +18,12 @@
Prereq: %fillup_prereq %insserv_prereq /bin/cat /bin/rm
Autoreqprov: on
Version: 0.4.13
-Release: 15
+Release: 16
Requires: kernel
Summary: Open Source iSCSI Target with Professional Features
Source: %{name}-%{version}.tar.gz
Source1: %{name}.init
+Patch1: %{name}-svn-33.diff
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
@@ -39,6 +40,7 @@
%prep
%setup
+%patch1 -p1
%build
%{__make} CFLAGS="${RPM_OPT_FLAGS} -I../include" bindir=/usr/sbin progs
@@ -72,6 +74,8 @@
%doc %{_mandir}/man8/*
%changelog -n iscsitarget
+* Wed May 31 2006 - hare(a)suse.de
+- Pull in fixes from upstream to prevent kernel oops [#179557]
* Mon May 22 2006 - hare(a)suse.de
- Set mode for /etc/ietd.conf to 600 [#177081]
* Thu May 18 2006 - kukuk(a)suse.de
++++++ iscsitarget-svn-33.diff ++++++
diff -pur iscsitarget-0.4.13/include/iet_u.h iscsitarget/include/iet_u.h
--- iscsitarget-0.4.13/include/iet_u.h 2006-01-13 15:24:04.000000000 +0100
+++ iscsitarget/include/iet_u.h 2006-02-09 11:07:10.000000000 +0100
@@ -1,7 +1,7 @@
#ifndef _IET_U_H
#define _IET_U_H
-#define IET_VERSION_STRING "0.4.12"
+#define IET_VERSION_STRING "0.4.13"
/* The maximum length of 223 bytes in the RFC. */
#define ISCSI_NAME_LEN 256
diff -pur iscsitarget-0.4.13/kernel/config.c iscsitarget/kernel/config.c
--- iscsitarget-0.4.13/kernel/config.c 2006-01-13 15:24:04.000000000 +0100
+++ iscsitarget/kernel/config.c 2006-05-31 08:55:29.000000000 +0200
@@ -310,4 +310,5 @@ done:
struct file_operations ctr_fops = {
.owner = THIS_MODULE,
.unlocked_ioctl = ioctl,
+ .compat_ioctl = ioctl,
};
diff -pur iscsitarget-0.4.13/kernel/file-io.c iscsitarget/kernel/file-io.c
--- iscsitarget-0.4.13/kernel/file-io.c 2006-01-13 15:24:04.000000000 +0100
+++ iscsitarget/kernel/file-io.c 2006-05-31 08:55:29.000000000 +0200
@@ -26,7 +26,7 @@ static int fileio_make_request(struct ie
u32 offset, size;
loff_t ppos, count;
char *buf;
- int i;
+ int i, err = 0;
ssize_t ret;
assert(p);
@@ -58,15 +58,17 @@ static int fileio_make_request(struct ie
set_fs(oldfs);
- if (ret != count)
+ if (ret != count) {
eprintk("I/O error %lld, %ld\n", count, (long) ret);
+ err = -EIO;
+ }
size -= count;
offset = 0;
}
assert(!size);
- return 0;
+ return err;
}
static int fileio_sync(struct iet_volume *lu, struct tio *tio)
diff -pur iscsitarget-0.4.13/kernel/iscsi.c iscsitarget/kernel/iscsi.c
--- iscsitarget-0.4.13/kernel/iscsi.c 2006-01-13 15:24:04.000000000 +0100
+++ iscsitarget/kernel/iscsi.c 2006-05-31 08:55:29.000000000 +0200
@@ -223,10 +223,10 @@ static void iscsi_cmnd_init_write(struct
LIST_HEAD(head);
if (!list_empty(&cmnd->list)) {
- eprintk("%x %x %x %x %lx %lx %u %u %u %u %u %u %u %d %d\n",
+ eprintk("%x %x %x %x %lx %u %u %u %u %u %u %u %d %d\n",
cmnd_itt(cmnd), cmnd_ttt(cmnd), cmnd_opcode(cmnd),
- cmnd_scsicode(cmnd), cmnd->state, cmnd->flags,
- cmnd->r2t_sn, cmnd->r2t_length, cmnd->is_unsolicited_data,
+ cmnd_scsicode(cmnd), cmnd->flags, cmnd->r2t_sn,
+ cmnd->r2t_length, cmnd->is_unsolicited_data,
cmnd->target_task_tag, cmnd->outstanding_r2t,
cmnd->hdigest, cmnd->ddigest,
list_empty(&cmnd->pdu_list), list_empty(&cmnd->hash_list));
@@ -315,25 +315,6 @@ static struct iscsi_cmnd *create_scsi_rs
return rsp;
}
-void send_scsi_rsp(struct iscsi_cmnd *req, int (*func)(struct iscsi_cmnd *))
-{
- struct iscsi_cmnd *rsp;
- struct iscsi_scsi_rsp_hdr *rsp_hdr;
- u32 size;
-
- rsp = create_scsi_rsp(req);
- rsp_hdr = (struct iscsi_scsi_rsp_hdr *) &rsp->pdu.bhs;
- if ((size = cmnd_read_size(req)) != 0) {
- rsp_hdr->flags |= ISCSI_FLG_RESIDUAL_UNDERFLOW;
- rsp_hdr->residual_count = cpu_to_be32(size);
- }
-
- if (func(req) < 0)
- eprintk("%x\n", cmnd_opcode(req));
-
- iscsi_cmnd_init_write(rsp);
-}
-
static struct iscsi_cmnd *create_sense_rsp(struct iscsi_cmnd *req,
u8 sense_key, u8 asc, u8 ascq)
{
@@ -369,15 +350,47 @@ static struct iscsi_cmnd *create_sense_r
return rsp;
}
-void send_data_rsp(struct iscsi_cmnd *req, int (*func)(struct iscsi_cmnd *))
+void send_scsi_rsp(struct iscsi_cmnd *req, int (*func)(struct iscsi_cmnd *))
{
struct iscsi_cmnd *rsp;
+ struct iscsi_scsi_rsp_hdr *rsp_hdr;
+ u32 size;
- if (func(req) < 0) {
+ switch (func(req)) {
+ case 0:
+ rsp = create_scsi_rsp(req);
+ rsp_hdr = (struct iscsi_scsi_rsp_hdr *) &rsp->pdu.bhs;
+ if ((size = cmnd_read_size(req)) != 0) {
+ rsp_hdr->flags |= ISCSI_FLG_RESIDUAL_UNDERFLOW;
+ rsp_hdr->residual_count = cpu_to_be32(size);
+ }
+ break;
+ case -EIO:
+ /* Medium Error/Write Fault */
+ rsp = create_sense_rsp(req, MEDIUM_ERROR, 0x03, 0x0);
+ break;
+ default:
rsp = create_sense_rsp(req, ILLEGAL_REQUEST, 0x24, 0x0);
- iscsi_cmnd_init_write(rsp);
- } else
+ }
+ iscsi_cmnd_init_write(rsp);
+}
+
+void send_data_rsp(struct iscsi_cmnd *req, int (*func)(struct iscsi_cmnd *))
+{
+ struct iscsi_cmnd *rsp;
+
+ switch (func(req)) {
+ case 0:
do_send_data_rsp(req);
+ return;
+ case -EIO:
+ /* Medium Error/Unrecovered Read Error */
+ rsp = create_sense_rsp(req, MEDIUM_ERROR, 0x11, 0x0);
+ break;
+ default:
+ rsp = create_sense_rsp(req, ILLEGAL_REQUEST, 0x24, 0x0);
+ }
+ iscsi_cmnd_init_write(rsp);
}
/**
@@ -401,10 +414,11 @@ void iscsi_cmnd_remove(struct iscsi_cmnd
if (!list_empty(&cmnd->list)) {
struct iscsi_scsi_cmd_hdr *req = cmnd_hdr(cmnd);
- eprintk("cmnd %p still on some list?, %x, %x, %x, %x, %x, %x, %x %lx %lx\n",
+ eprintk("cmnd %p still on some list?, %x, %x, %x, %x, %x, %x, %x %lx\n",
cmnd, req->opcode, req->scb[0], req->flags, req->itt,
be32_to_cpu(req->data_length),
- req->cmd_sn, be32_to_cpu(cmnd->pdu.datasize), cmnd->state, conn->state);
+ req->cmd_sn, be32_to_cpu(cmnd->pdu.datasize),
+ conn->state);
if (cmnd->req) {
struct iscsi_scsi_cmd_hdr *req = cmnd_hdr(cmnd->req);
@@ -941,6 +955,7 @@ static void scsi_cmnd_start(struct iscsi
eprintk("%x %x\n", cmnd_itt(req), req_hdr->scb[0]);
create_sense_rsp(req, ABORTED_COMMAND, 0xc, 0xc);
cmnd_skip_data(req);
+ break;
}
set_offset_and_length(req->lun, req_hdr->scb, &offset, &length);
@@ -1548,7 +1563,7 @@ static int check_segment_length(struct i
struct iscsi_sess_param *param = &conn->session->param;
if (cmnd->pdu.datasize > param->max_recv_data_length) {
- eprintk("too lond data %x %u %u\n", cmnd_itt(cmnd),
+ eprintk("data too long %x %u %u\n", cmnd_itt(cmnd),
cmnd->pdu.datasize, param->max_recv_data_length);
if (get_pgcnt(cmnd->pdu.datasize, 0) > ISCSI_CONN_IOV_MAX) {
diff -pur iscsitarget-0.4.13/kernel/iscsi.h iscsitarget/kernel/iscsi.h
--- iscsitarget-0.4.13/kernel/iscsi.h 2006-01-13 15:24:04.000000000 +0100
+++ iscsitarget/kernel/iscsi.h 2006-02-09 11:07:09.000000000 +0100
@@ -231,7 +231,6 @@ typedef void (iet_show_info_t)(struct se
struct iscsi_cmnd {
struct list_head list;
struct list_head conn_list;
- unsigned long state;
unsigned long flags;
struct iscsi_conn *conn;
struct iet_volume *lun;
diff -pur iscsitarget-0.4.13/kernel/target_disk.c iscsitarget/kernel/target_disk.c
--- iscsitarget-0.4.13/kernel/target_disk.c 2006-01-13 15:24:04.000000000 +0100
+++ iscsitarget/kernel/target_disk.c 2006-05-31 08:55:29.000000000 +0200
@@ -23,7 +23,7 @@ static int insert_disconnect_pg(u8 *ptr)
static int insert_caching_pg(u8 *ptr)
{
- unsigned char caching_pg[] = {0x08, 0x12, 0x14, 0x00, 0xff, 0xff, 0x00, 0x00,
+ unsigned char caching_pg[] = {0x08, 0x12, 0x10, 0x00, 0xff, 0xff, 0x00, 0x00,
0xff, 0xff, 0xff, 0xff, 0x80, 0x14, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00};
@@ -329,13 +329,13 @@ static int build_read_response(struct is
assert(tio);
assert(cmnd->lun);
- tio_read(cmnd->lun, tio);
- return 0;
+ return tio_read(cmnd->lun, tio);
}
static int build_write_response(struct iscsi_cmnd *cmnd)
{
+ int err;
struct tio *tio = cmnd->tio;
assert(cmnd);
@@ -343,10 +343,11 @@ static int build_write_response(struct i
assert(cmnd->lun);
list_del_init(&cmnd->list);
- tio_write(cmnd->lun, tio);
- tio_sync(cmnd->lun, tio);
+ err = tio_write(cmnd->lun, tio);
+ if (!err)
+ err = tio_sync(cmnd->lun, tio);
- return 0;
+ return err;
}
static int build_generic_response(struct iscsi_cmnd *cmnd)
diff -pur iscsitarget-0.4.13/Makefile iscsitarget/Makefile
--- iscsitarget-0.4.13/Makefile 2006-01-13 15:24:07.000000000 +0100
+++ iscsitarget/Makefile 2006-02-13 14:25:50.000000000 +0100
@@ -7,18 +7,18 @@
#
# Note 2! The CFLAGS definitions are now in the main makefile.
-#export KERNELSRC := /usr/src/linux
+#export KSRC := /usr/src/linux
SUBDIRS := $(shell pwd)
-ifeq ($(KERNELSRC),)
- KERNELSRC ?= /lib/modules/$(shell uname -r)/build
+ifeq ($(KSRC),)
+ KSRC ?= /lib/modules/$(shell uname -r)/build
endif
all: progs mods
mods:
- $(MAKE) -C $(KERNELSRC) SUBDIRS=$(shell pwd)/kernel modules
+ $(MAKE) -C $(KSRC) SUBDIRS=$(shell pwd)/kernel modules
progs:
$(MAKE) -C usr
@@ -37,11 +37,11 @@ install: kernel/iscsi_trgt.ko usr/ietd u
else \
install -vD -m 755 etc/initd/initd $(DISTDIR)/etc/init.d/iscsi-target; \
fi
- @eval `sed -n 's/#define UTS_RELEASE /KERNELRELEASE=/p' $(KERNELSRC)/include/linux/version.h`; \
+ @eval `sed -n 's/#define UTS_RELEASE /KERNELRELEASE=/p' $(KSRC)/include/linux/version.h`; \
install -vD kernel/iscsi_trgt.ko \
$(DISTDIR)$(INSTALL_MOD_PATH)/lib/modules/$$KERNELRELEASE/kernel/iscsi/iscsi_trgt.ko
-depmod -aq
clean:
$(MAKE) -C usr clean
- $(MAKE) -C $(KERNELSRC) SUBDIRS=$(shell pwd)/kernel clean
+ $(MAKE) -C $(KSRC) SUBDIRS=$(shell pwd)/kernel clean
diff -pur iscsitarget-0.4.13/README iscsitarget/README
--- iscsitarget-0.4.13/README 2006-01-13 15:24:07.000000000 +0100
+++ iscsitarget/README 2006-02-13 14:25:50.000000000 +0100
@@ -21,9 +21,9 @@ The iSCSI target consists of kernel modu
compilation of the kernel modules require the path to above kernel
sources:
- make KERNELSRC=<kernel-src>
+ make KSRC=<kernel-src>
-The path can also be set by editing the main Makefile. If KERNELSRC is
+The path can also be set by editing the main Makefile. If KSRC is
omitted, make program will try to locate the kernel sources for
current running kernel. Be sure to check whether it finds the right
kernel sources.
@@ -31,7 +31,7 @@ kernel sources.
This will build the modules, the daemon, and the control tool. To
install both, use:
- make KERNELSRC=<kernel-src> install
+ make KSRC=<kernel-src> install
The kernel modules will be install in the module directory of the
kernel. The daemon and the control tool will be installed as ietd and
diff -pur iscsitarget-0.4.13/usr/ietadm.c iscsitarget/usr/ietadm.c
--- iscsitarget-0.4.13/usr/ietadm.c 2006-01-13 15:24:07.000000000 +0100
+++ iscsitarget/usr/ietadm.c 2006-03-23 13:31:55.000000000 +0100
@@ -62,7 +62,8 @@ static void usage(int status)
iSCSI Enterprise Target Administration Utility.\n\
\n\
--op new --tid=[id] --params Name=[name]\n\
- add a new target with [id]. [id] must not be zero.\n\
+ add a new target with [id]. If [id] is zero the next\n\
+ available target id will be chosen.\n\
--op delete --tid=[id]\n\
delete specific target with [id]. The target must\n\
have no active sessions.\n\
@@ -396,6 +397,8 @@ static int user_handle(int op, u32 set,
req.rcmnd = C_ACCT_DEL;
break;
case OP_UPDATE:
+ req.rcmnd = C_ACCT_UPDATE;
+ break;
case OP_SHOW:
fprintf(stderr, "Unsupported.\n");
goto out;
@@ -431,12 +434,18 @@ static int user_handle(int op, u32 set,
}
}
- if ((op == OP_NEW && ((user && !pass) || (!user && pass) || (!user && !pass))) ||
- (op == OP_DELETE && ((!user && pass) || (!user && !pass)))) {
+ if ((!user && pass) || (!user && !pass)) {
fprintf(stderr,
"You need to specify a user and its password %s %s\n", pass, user);
goto out;
}
+ if ((op == OP_NEW && (user && !pass)) ||
+ (op == OP_UPDATE && (user && !pass))) {
+ fprintf(stderr,
+ "You need to specify a non-empty password for %s\n",
+ user);
+ goto out;
+ }
strncpy(req.u.acnt.user, user, sizeof(req.u.acnt.user) - 1);
if (pass)
diff -pur iscsitarget-0.4.13/usr/Makefile iscsitarget/usr/Makefile
--- iscsitarget-0.4.13/usr/Makefile 2006-01-13 15:24:07.000000000 +0100
+++ iscsitarget/usr/Makefile 2006-03-22 16:32:55.000000000 +0100
@@ -1,4 +1,4 @@
-CFLAGS += -O2 -fno-inline -Wall -Wstrict-prototypes -g -I../include
+CFLAGS += -fno-inline -Wall -Wstrict-prototypes -g -I../include
PROGRAMS = ietd ietadm
LIBS = -lcrypto
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
1
0
Hello community,
here is the log from the commit of package gdb
checked in at Wed May 31 16:53:58 CEST 2006.
--------
--- gdb/gdb.changes 2006-05-22 14:54:41.000000000 +0200
+++ gdb/gdb.changes 2006-05-31 14:42:14.000000000 +0200
@@ -1,0 +2,5 @@
+Wed May 31 14:41:40 CEST 2006 - schwab(a)suse.de
+
+- Set long double size to 16 [#180103].
+
+-------------------------------------------------------------------
New:
----
loader_break.diff
ppc-long-double.diff
ppc64-elf-get-synthetic-symtab.diff
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ gdb.spec ++++++
--- /var/tmp/diff_new_pack.S82PmU/_old 2006-05-31 16:53:18.000000000 +0200
+++ /var/tmp/diff_new_pack.S82PmU/_new 2006-05-31 16:53:18.000000000 +0200
@@ -21,7 +21,7 @@
Autoreqprov: on
PreReq: %{install_info_prereq}
Version: 6.4.90.20060522
-Release: 1
+Release: 2
Summary: The GNU Debugger
Source: gdb-%{version}.tar.bz2
Patch1: gdb-misc.patch
@@ -32,6 +32,9 @@
Patch7: ppc-dwarf2-cfi.patch
Patch8: pie-relocate.diff
Patch9: mst-solib-trampoline.diff
+Patch10: ppc64-elf-get-synthetic-symtab.diff
+Patch11: loader_break.diff
+Patch12: ppc-long-double.diff
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
@@ -68,6 +71,11 @@
%patch7
%patch8
%patch9
+%patch10
+cd gdb
+%patch11
+cd ..
+%patch12
%build
CFLAGS="$RPM_OPT_FLAGS" \
@@ -123,6 +131,8 @@
%endif
%changelog -n gdb
+* Wed May 31 2006 - schwab(a)suse.de
+- Set long double size to 16 [#180103].
* Mon May 22 2006 - schwab(a)suse.de
- Update to gdb 6.4.90 snapshot 20060522.
* Sun Apr 23 2006 - schwab(a)suse.de
++++++ loader_break.diff ++++++
2006-05-25 Paul Gilliam <pgilliam(a)us.ibm.com
* solib-svr4.c: Remove "._dl_debug_state" from the list of symbols at
which to try setting a breakpoint for tracking solibs.
(enable_break): Resolve break address when the symbol is found in
the data section.
Index: solib-svr4.c
===================================================================
RCS file: /cvs/src/src/gdb/solib-svr4.c,v
retrieving revision 1.58
diff -a -u -r1.58 solib-svr4.c
--- solib-svr4.c 18 May 2006 20:38:56 -0000 1.58
+++ solib-svr4.c 25 May 2006 22:12:55 -0000
@@ -85,16 +85,6 @@
"rtld_db_dlactivity",
"_rtld_debug_state",
- /* On the 64-bit PowerPC, the linker symbol with the same name as
- the C function points to a function descriptor, not to the entry
- point. The linker symbol whose name is the C function name
- prefixed with a '.' points to the function's entry point. So
- when we look through this table, we ignore symbols that point
- into the data section (thus skipping the descriptor's symbol),
- and eventually try this one, giving us the real entry point
- address. */
- "._dl_debug_state",
-
NULL
};
@@ -1043,20 +1033,45 @@
/* Now try to set a breakpoint in the dynamic linker. */
for (bkpt_namep = solib_break_names; *bkpt_namep != NULL; bkpt_namep++)
{
- /* On ABI's that use function descriptors, there are usually
- two linker symbols associated with each C function: one
- pointing at the actual entry point of the machine code,
- and one pointing at the function's descriptor. The
- latter symbol has the same name as the C function.
-
- What we're looking for here is the machine code entry
- point, so we are only interested in symbols in code
- sections. */
+ /* What we're looking for here is the machine code entry point,
+ so we are only interested in symbols in code sections.
+
+ On ABI's that use function descriptors, the linker symbol with
+ the same name as a C funtion points to that functions descriptor.
+ when those function descriptors are in the code section, they
+ contain executable code and we can set a breakpoint there. */
sym_addr = bfd_lookup_symbol (tmp_bfd, *bkpt_namep, SEC_CODE);
if (sym_addr != 0)
break;
}
+ if (sym_addr == 0)
+ {
+ CORE_ADDR sect_offset;
+
+ /* No symbol was found in a code section, so look in the data
+ sections. This will only happen when the linker symbol points
+ to a function descriptor that is in a data section. */
+ for (bkpt_namep = solib_break_names; *bkpt_namep!=NULL; bkpt_namep++)
+ {
+ /* On ABI's that use function descriptors that are in the data
+ section, */
+ sym_addr = bfd_lookup_symbol (tmp_bfd, *bkpt_namep, SEC_DATA);
+ if (sym_addr != 0)
+ break;
+ }
+ if (sym_addr == 0)
+ {
+ target_close (tmp_bfd_target, 0);
+ goto bkpt_at_symbol;
+ }
+
+ /* Convert 'sym_addr' from a function pointer to an address. */
+ sym_addr = gdbarch_convert_from_func_ptr_addr (current_gdbarch,
+ sym_addr,
+ tmp_bfd_target);
+ }
+
/* We're done with both the temporary bfd and target. Remember,
closing the target closes the underlying bfd. */
target_close (tmp_bfd_target, 0);
++++++ ppc-long-double.diff ++++++
--- gdb/ppc-linux-tdep.c
+++ gdb/ppc-linux-tdep.c
@@ -1065,6 +1065,7 @@
{
struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch);
+#if 0
/* NOTE: jimb/2004-03-26: The System V ABI PowerPC Processor
Supplement says that long doubles are sixteen bytes long.
However, as one of the known warts of its ABI, PPC GNU/Linux uses
@@ -1074,6 +1075,7 @@
double' on PPC GNU/Linux are non-conformant. */
/* NOTE: cagney/2005-01-25: True for both 32- and 64-bit. */
set_gdbarch_long_double_bit (gdbarch, 8 * TARGET_CHAR_BIT);
+#endif
if (tdep->wordsize == 4)
{
++++++ ppc64-elf-get-synthetic-symtab.diff ++++++
>From nobody Tue May 23 14:02:48 2006
From: Alan Modra <amodra(a)bigpond.net.au>
Subject: PowerPC64 synthetic syms
To: binutils(a)sourceware.org
Date: Tue, 23 May 2006 11:02:14 +0930
Mail-Followup-To: binutils(a)sourceware.org
PowerPC64 bfd_get_synthetic_symtab provides pseudo function entry
symbols (dot-symbols) for object files generated by newer toolchains.
This is useful for objdump disassembly of object files. gdb also has
at least one place where a dot-symbol is searched, solib-svr4.c
solib_break_names, so relies on bfd_get_synthetic_symtab. A recent
testcase shows this to be unreliable because the ppc64 back-end only
creates one synthetic sym for each function descriptor, and ld.so
happens to have *two* symbols pointing at the functions descriptor.
Which dot-symbol is created depends on symbol table hash order.
Really, gdb should be looking up the function descriptor syms itself
instead of relying on a crutch like the synthetic syms, but the
following patch happens to cure gdb and makes sense in isolation.
Applying mainline and 2.17.
* elf64-ppc.c (compare_symbols): Prefer strong dynamic global
function syms over other syms.
Index: bfd/elf64-ppc.c
===================================================================
RCS file: /cvs/src/src/bfd/elf64-ppc.c,v
retrieving revision 1.238
diff -u -p -r1.238 elf64-ppc.c
--- bfd/elf64-ppc.c 9 May 2006 03:38:30 -0000 1.238
+++ bfd/elf64-ppc.c 23 May 2006 01:29:40 -0000
@@ -2626,6 +2626,32 @@ compare_symbols (const void *ap, const v
if (a->value + a->section->vma > b->value + b->section->vma)
return 1;
+ /* For syms with the same value, prefer strong dynamic global function
+ syms over other syms. */
+ if ((a->flags & BSF_GLOBAL) != 0 && (b->flags & BSF_GLOBAL) == 0)
+ return -1;
+
+ if ((a->flags & BSF_GLOBAL) == 0 && (b->flags & BSF_GLOBAL) != 0)
+ return 1;
+
+ if ((a->flags & BSF_FUNCTION) != 0 && (b->flags & BSF_FUNCTION) == 0)
+ return -1;
+
+ if ((a->flags & BSF_FUNCTION) == 0 && (b->flags & BSF_FUNCTION) != 0)
+ return 1;
+
+ if ((a->flags & BSF_WEAK) == 0 && (b->flags & BSF_WEAK) != 0)
+ return -1;
+
+ if ((a->flags & BSF_WEAK) != 0 && (b->flags & BSF_WEAK) == 0)
+ return 1;
+
+ if ((a->flags & BSF_DYNAMIC) != 0 && (b->flags & BSF_DYNAMIC) == 0)
+ return -1;
+
+ if ((a->flags & BSF_DYNAMIC) == 0 && (b->flags & BSF_DYNAMIC) != 0)
+ return 1;
+
return 0;
}
--
Alan Modra
IBM OzLabs - Linux Technology Centre
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
1
0
Hello community,
here is the log from the commit of package skim
checked in at Wed May 31 11:53:28 CEST 2006.
--------
--- skim/skim.changes 2006-04-10 18:30:19.000000000 +0200
+++ skim/skim.changes 2006-05-31 09:07:09.000000000 +0200
@@ -1,0 +2,5 @@
+Wed May 31 09:06:24 CEST 2006 - adrian(a)suse.de
+
+- fix build for 10.0
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ skim.spec ++++++
--- /var/tmp/diff_new_pack.UWoPtG/_old 2006-05-31 11:53:22.000000000 +0200
+++ /var/tmp/diff_new_pack.UWoPtG/_new 2006-05-31 11:53:22.000000000 +0200
@@ -12,11 +12,14 @@
Name: skim
BuildRequires: kdelibs3-devel scim-devel
+%if %suse_version < 1010
+BuildRequires: kdelibs3-doc python-devel
+%endif
License: GPL
Group: System/I18n/Chinese
Summary: KDE integration for SCIM
Version: 1.4.4
-Release: 8
+Release: 13
Autoreqprov: on
Provides: locale(kdebase3:ja;ko;zh)
URL: http://www.scim-im.org
@@ -90,6 +93,8 @@
/opt/kde3/%_lib/pkgconfig/*
%changelog -n skim
+* Wed May 31 2006 - adrian(a)suse.de
+- fix build for 10.0
* Mon Apr 10 2006 - mfabian(a)suse.de
- Bugzilla #87443: add "Hangul" to the SCIM Trigger keys.
See also: http://librarian.launchpad.net/1914454/scim_config.diff
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
1
0
Hello community,
here is the log from the commit of package simias
checked in at Wed May 31 11:53:12 CEST 2006.
--------
--- simias/simias.changes 2006-05-22 16:41:20.000000000 +0200
+++ simias/simias.changes 2006-05-31 11:34:24.000000000 +0200
@@ -1,0 +2,5 @@
+Wed May 31 11:34:21 CEST 2006 - ro(a)suse.de
+
+- remove bogus "obsoletes" line in specfile
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ simias.spec ++++++
--- /var/tmp/diff_new_pack.APMRZa/_old 2006-05-31 11:52:59.000000000 +0200
+++ /var/tmp/diff_new_pack.APMRZa/_new 2006-05-31 11:52:59.000000000 +0200
@@ -24,8 +24,7 @@
Requires: mono-web >= 1.1.13
Requires: log4net
Version: 1.4.6142.1
-Release: 1
-Obsoletes: %{name} < %{version}
+Release: 2
Summary: Collection-Oriented Data Storage
Source: simias-1.4.%{buildnum}.1.tar.gz
Patch: simias-libflaim.patch
@@ -145,6 +144,8 @@
#%config(noreplace) %{prefix}/web/web.config
%changelog -n simias
+* Wed May 31 2006 - ro(a)suse.de
+- remove bogus "obsoletes" line in specfile
* Mon May 22 2006 - jhargadon(a)novell.com
- Created a UserName property in MyEnvironment that guarantees the
username to be a single component. Changed three locations in
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
1
0
Hello community,
here is the log from the commit of package scummvm
checked in at Wed May 31 11:52:52 CEST 2006.
--------
--- scummvm/scummvm.changes 2006-05-28 12:23:21.000000000 +0200
+++ scummvm/scummvm.changes 2006-05-30 23:56:16.000000000 +0200
@@ -1,0 +2,7 @@
+Tue May 30 23:55:37 CEST 2006 - sndirsch(a)suse.de
+
+- updated to current CVS (2006-05-30)
+ * obsoletes gob2.diff
+ * heavy development in gob2 engine
+
+-------------------------------------------------------------------
Old:
----
gob2.diff
scummvm-060528.tar.bz2
New:
----
scummvm-060530.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ scummvm.spec ++++++
--- /var/tmp/diff_new_pack.whHPHk/_old 2006-05-31 11:50:59.000000000 +0200
+++ /var/tmp/diff_new_pack.whHPHk/_new 2006-05-31 11:50:59.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package scummvm (Version 060528)
+# spec file for package scummvm (Version 060530)
#
# Copyright (c) 2006 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
@@ -16,7 +16,7 @@
License: GPL
Group: Amusements/Games/Other
Autoreqprov: on
-Version: 060528
+Version: 060530
Release: 1
Summary: Interpreter for LucasArts games
Source: %name-%version.tar.bz2
@@ -24,7 +24,6 @@
Source2: README.SUSE
Patch: %name-cflags.diff
Patch1: %name-tools-060528.diff
-Patch3: gob2.diff
Patch4: %name.diff
Patch5: %name-strip.diff
BuildRoot: %{_tmppath}/%{name}-%{version}-build
@@ -65,7 +64,6 @@
pushd ../../tools/trunk
%patch1
popd
-%patch3
%patch4
%patch5
@@ -105,6 +103,10 @@
/usr/share/pixmaps/scummvm.xpm
%changelog -n scummvm
+* Tue May 30 2006 - sndirsch(a)suse.de
+- updated to current CVS (2006-05-30)
+ * obsoletes gob2.diff
+ * heavy development in gob2 engine
* Sun May 28 2006 - sndirsch(a)suse.de
- updated to current CVS (2006-05-28)
* adds eperimental support for lure, cine, agi *and* gob2 (at
++++++ scummvm-060528.tar.bz2 -> scummvm-060530.tar.bz2 ++++++
++++ 10860 lines of diff (skipped)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
1
0
Hello community,
here is the log from the commit of package scribus
checked in at Wed May 31 11:50:55 CEST 2006.
--------
--- KDE/scribus/scribus.changes 2006-05-29 15:52:30.000000000 +0200
+++ scribus/scribus.changes 2006-05-31 09:24:44.000000000 +0200
@@ -1,0 +2,8 @@
+Wed May 31 09:16:15 CEST 2006 - adrian(a)suse.de
+
+- update to version 1.3.3.2 "stable usable development version"
+ * more than 200 bugs and feature requests got implemented
+ * fix for pdf export using Adobe Reader 7.x
+ * new language translations
+
+-------------------------------------------------------------------
Old:
----
scribus-1.2.4.1.tar.bz2
scribus-desktop.patch
scribus-linkflag.patch
New:
----
scribus-1.3.3.2.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ scribus.spec ++++++
--- /var/tmp/diff_new_pack.R70VK4/_old 2006-05-31 11:49:38.000000000 +0200
+++ /var/tmp/diff_new_pack.R70VK4/_new 2006-05-31 11:49:38.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package scribus (Version 1.2.4.1)
+# spec file for package scribus (Version 1.3.3.2)
#
# Copyright (c) 2006 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
@@ -12,6 +12,12 @@
Name: scribus
BuildRequires: cups cups-devel kdelibs3-devel python-devel shared-mime-info
+%if %suse_version < 1000
+BuildRequires: libjpeg-devel
+%endif
+%if %suse_version < 1001
+BuildRequires: openssl-devel
+%endif
License: GPL
Group: Productivity/Publishing/Other
Autoreqprov: on
@@ -21,11 +27,9 @@
%endif
Provides: scribus-short-words
Obsoletes: scribus-i18n-de scribus-i18n-en scribus-i18n-fr scribus-short-words
-Version: 1.2.4.1
-Release: 19
+Version: 1.3.3.2
+Release: 1
Source: %{name}-%{version}.tar.bz2
-Patch: %{name}-desktop.patch
-Patch1: %{name}-linkflag.patch
URL: http://www.scribus.net/
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Summary: Open Source Page Layout / Desktop Publishing (DTP)
@@ -95,8 +99,6 @@
%define prefix /usr
%prep
%setup -q
-%patch
-%patch1
%build
#. /etc/opt/kde3/common_options
@@ -116,7 +118,7 @@
%endif
--with-pythondir=%{_libdir}/python \
--with-xinerama
-make %{?jobs:-j %jobs} linkflag=
+make %{?jobs:-j %jobs}
%install
#. /etc/opt/kde3/common_options
@@ -152,28 +154,24 @@
/usr/share/man/man?/*.*
/usr/share/man/*/man?/*.*
/usr/share/pixmaps/*
-%dir %{_libdir}/scribus
-%{_libdir}/scribus/*.prolog
-%{_libdir}/scribus/*.txt
-%{_libdir}/scribus/*.qm
-%{_libdir}/scribus/dicts
-%dir %{_libdir}/scribus/libs
-%{_libdir}/scribus/plugins
-%{_libdir}/scribus/profiles
-%{_libdir}/scribus/libs/*.so.*
-%{_libdir}/scribus/libs/*.so
+%{_libdir}/scribus
%{_prefix}/share/mime/packages/*.xml
%{_prefix}/share/scribus
-# This should be owned by filesystem or man, but there are only scribus files:
+%{_prefix}/share/doc/scribus-%{version}
+# This should be owned by filesystem or man, but there are only scribus files:
%lang(pl) %dir /usr/share/man/pl
%lang(pl) %dir /usr/share/man/pl/man1
%files devel
%defattr(-, root, root)
-%{_libdir}/scribus/libs/*.*a
%{_prefix}/include/scribus
%changelog -n scribus
+* Wed May 31 2006 - adrian(a)suse.de
+- update to version 1.3.3.2 "stable usable development version"
+ * more than 200 bugs and feature requests got implemented
+ * fix for pdf export using Adobe Reader 7.x
+ * new language translations
* Mon May 29 2006 - schwab(a)suse.de
- Don't strip binaries.
* Mon Feb 20 2006 - sbrabec(a)suse.cz
++++++ scribus-1.2.4.1.tar.bz2 -> scribus-1.3.3.2.tar.bz2 ++++++
KDE/scribus/scribus-1.2.4.1.tar.bz2 scribus/scribus-1.3.3.2.tar.bz2 differ: char 11, line 1
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
1
0
Hello community,
here is the log from the commit of package nautilus-ifolder3
checked in at Wed May 31 11:49:31 CEST 2006.
--------
--- nautilus-ifolder3/nautilus-ifolder3.changes 2006-05-22 16:30:55.000000000 +0200
+++ nautilus-ifolder3/nautilus-ifolder3.changes 2006-05-31 11:34:18.000000000 +0200
@@ -1,0 +2,5 @@
+Wed May 31 11:34:15 CEST 2006 - ro(a)suse.de
+
+- remove bogus "obsoletes" line in specfile
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ nautilus-ifolder3.spec ++++++
--- /var/tmp/diff_new_pack.BqG48J/_old 2006-05-31 11:43:16.000000000 +0200
+++ /var/tmp/diff_new_pack.BqG48J/_new 2006-05-31 11:43:16.000000000 +0200
@@ -19,12 +19,11 @@
License: GPL
Group: System/GUI/Other
Version: 3.4.6142.1
-Release: 1
+Release: 2
Autoreqprov: on
Requires: nautilus >= 2.10.0
Requires: simias >= 1.4
Requires: ifolder3 = %{version}
-Obsoletes: %{name} < %{version}
Provides: nautilus-ifolder
Obsoletes: nautilus-ifolder
Summary: Nautilus Plug-In to Add iFolder Support
@@ -78,6 +77,8 @@
/opt/gnome/share/nautilus-ifolder3/pixmaps/ifolder-folder.png
%changelog -n nautilus-ifolder3
+* Wed May 31 2006 - ro(a)suse.de
+- remove bogus "obsoletes" line in specfile
* Mon May 22 2006 - jhargadon(a)novell.com
- resubmitting package to keep in sync with iFolder3 package.
* Mon May 08 2006 - jhargadon(a)novell.com
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
1
0
Hello community,
here is the log from the commit of package kernel-source
checked in at Wed May 31 11:43:09 CEST 2006.
--------
--- kernel-source/kernel-bigsmp.changes 2006-05-24 18:54:22.000000000 +0200
+++ kernel-source/kernel-bigsmp.changes 2006-05-31 09:17:19.000000000 +0200
@@ -1,0 +2,71 @@
+Wed May 31 08:48:05 CEST 2006 - hare(a)suse.de
+
+- patches.drivers/open-iscsi-svn.diff:
+ Fix kernel hang on target reset (#176151)
+
+-------------------------------------------------------------------
+Mon May 29 16:16:57 CEST 2006 - ak(a)suse.de
+
+- patches.arch/x86_64-compat-stack-rnd: Fix stack/mmap
+ randomization for compat tasks (177108).
+
+-------------------------------------------------------------------
+Mon May 29 13:09:54 CEST 2006 - perex(a)suse.de
+
+- patches.suse/bonding-sysfs: Delete. (157936)
+
+-------------------------------------------------------------------
+Mon May 29 11:17:24 CEST 2006 - perex(a)suse.de
+
+- patches.suse/bonding-sysfs: Allow loading of bonding module
+ with max_bonds=0 (157936).
+- patches.suse/netfilter-ipt_LOG-mac: LTC23987-iptables LOG
+ output shows too long MAC info (176921).
+
+-------------------------------------------------------------------
+Mon May 29 11:07:58 CEST 2006 - olh(a)suse.de
+
+- add patches.drivers/ibmveth-flexbuf.patch
+ change buffer pools dynamically (169074 - LTC23397)
+
+-------------------------------------------------------------------
+Mon May 29 10:59:03 CEST 2006 - olh(a)suse.de
+
+- add patches.arch/ppc-kdump-soft-reset-64bit-mode.patch
+ force 64bit mode in system_reset_fwnmi for POWER4 (159713 - LTC22581)
+
+-------------------------------------------------------------------
+Mon May 29 10:05:24 CEST 2006 - hare(a)suse.de
+
+- add patches.fixes/dm-suspend-resume-events
+ Send online/offline events for dm devices (175972)
+
+-------------------------------------------------------------------
+Fri May 26 21:14:30 CEST 2006 - olh(a)suse.de
+
+- add patches.drivers/s2io-udp_rr.patch
+ fix netperf UDP_RR hangs (176892 - LTC23863)
+
+-------------------------------------------------------------------
+Fri May 26 09:47:40 CEST 2006 - jbeulich(a)novell.com
+
+- patches.xen/xen-x86_64-halt.patch: Use halt() instead of raw
+ inline assembly. (177511).
+
+-------------------------------------------------------------------
+Fri May 26 09:09:05 CEST 2006 - neilb(a)suse.de
+
+- patches.fixes/nfsd-dmapi-aware: Make NFSD DMAPI aware (74107, 173874).
+
+-------------------------------------------------------------------
+Sat May 27 04:34:05 CEST 2006 - jack(a)suse.cz
+
+- patches.fixes/jfs-releasepage.patch: JFS: Fix multiple errors
+ in metapage_releasepage (177890).
+
+-------------------------------------------------------------------
+Thu May 25 14:17:11 CEST 2006 - garloff(a)suse.de
+
+- Update kabi to SLE10RC2 and enable change tracking.
+
+-------------------------------------------------------------------
kernel-debug.changes: same change
kernel-default.changes: same change
kernel-dummy.changes: same change
kernel-iseries64.changes: same change
kernel-kdump.changes: same change
kernel-ppc64.changes: same change
kernel-s390.changes: same change
kernel-smp.changes: same change
kernel-source.changes: same change
kernel-syms.changes: same change
kernel-um.changes: same change
kernel-xen.changes: same change
kernel-xenpae.changes: same change
New:
----
needed_space_in_mb
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kernel-bigsmp.spec ++++++
--- /var/tmp/diff_new_pack.QE3L0q/_old 2006-05-31 11:39:51.000000000 +0200
+++ /var/tmp/diff_new_pack.QE3L0q/_new 2006-05-31 11:39:51.000000000 +0200
@@ -21,7 +21,7 @@
BuildRequires: python
%endif
Version: 2.6.16.18
-Release: 1
+Release: 2
Summary: Kernel with Multiprocessor Support and PAE
License: GPL
Group: System/Kernel
@@ -100,7 +100,7 @@
%define tolerate_unknown_new_config_options 0
# kABI change tolerance (default in maintenance should be 4, 8 or 15;
# see scripts/kabi-checks)
-%define tolerate_kabi_changes 31
+%define tolerate_kabi_changes 4
%(chmod +x %_sourcedir/{arch-symbols,guards,config-subst,check-for-config-changes,check-supported-list,built-in-where,find-provides,make-symsets,find-types,kabi-checks,install-configs})
@@ -111,7 +111,7 @@
-Source Timestamp: 2006/05/24 16:52:45 UTC
+Source Timestamp: 2006/05/31 06:52:41 UTC
%prep
if ! [ -e %_sourcedir/linux-2.6.16.tar.bz2 ]; then
@@ -446,6 +446,41 @@
%files -f kernel.files
%changelog -n kernel-bigsmp
+* Wed May 31 2006 - hare(a)suse.de
+- patches.drivers/open-iscsi-svn.diff:
+ Fix kernel hang on target reset (#176151)
+* Mon May 29 2006 - ak(a)suse.de
+- patches.arch/x86_64-compat-stack-rnd: Fix stack/mmap
+ randomization for compat tasks (177108).
+* Mon May 29 2006 - perex(a)suse.de
+- patches.suse/bonding-sysfs: Delete. (157936)
+* Mon May 29 2006 - perex(a)suse.de
+- patches.suse/bonding-sysfs: Allow loading of bonding module
+ with max_bonds=0 (157936).
+- patches.suse/netfilter-ipt_LOG-mac: LTC23987-iptables LOG
+ output shows too long MAC info (176921).
+* Mon May 29 2006 - olh(a)suse.de
+- add patches.drivers/ibmveth-flexbuf.patch
+ change buffer pools dynamically (169074 - LTC23397)
+* Mon May 29 2006 - olh(a)suse.de
+- add patches.arch/ppc-kdump-soft-reset-64bit-mode.patch
+ force 64bit mode in system_reset_fwnmi for POWER4 (159713 - LTC22581)
+* Mon May 29 2006 - hare(a)suse.de
+- add patches.fixes/dm-suspend-resume-events
+ Send online/offline events for dm devices (175972)
+* Sat May 27 2006 - jack(a)suse.cz
+- patches.fixes/jfs-releasepage.patch: JFS: Fix multiple errors
+ in metapage_releasepage (177890).
+* Fri May 26 2006 - olh(a)suse.de
+- add patches.drivers/s2io-udp_rr.patch
+ fix netperf UDP_RR hangs (176892 - LTC23863)
+* Fri May 26 2006 - jbeulich(a)novell.com
+- patches.xen/xen-x86_64-halt.patch: Use halt() instead of raw
+ inline assembly. (177511).
+* Fri May 26 2006 - neilb(a)suse.de
+- patches.fixes/nfsd-dmapi-aware: Make NFSD DMAPI aware (74107, 173874).
+* Thu May 25 2006 - garloff(a)suse.de
+- Update kabi to SLE10RC2 and enable change tracking.
* Wed May 24 2006 - agruen(a)suse.de
- Fix the logic that detects when to build a debug package so that
it works in the OpenSUSE build service.
kernel-debug.spec: same change
kernel-default.spec: same change
++++++ kernel-dummy.spec ++++++
--- /var/tmp/diff_new_pack.QE3L0q/_old 2006-05-31 11:39:51.000000000 +0200
+++ /var/tmp/diff_new_pack.QE3L0q/_new 2006-05-31 11:39:51.000000000 +0200
@@ -17,7 +17,7 @@
Summary: Internal dummy package for synchronizing release numbers
Group: System/Kernel
Version: 2.6.16.18
-Release: 1
+Release: 2
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
@@ -27,7 +27,7 @@
--------
Andreas Gruenbacher <agruen(a)suse.de>
-Source Timestamp: 2006/05/24 16:52:45 UTC
+Source Timestamp: 2006/05/31 06:52:41 UTC
%install
@@ -40,6 +40,41 @@
/etc/dummy
%changelog -n kernel-dummy
+* Wed May 31 2006 - hare(a)suse.de
+- patches.drivers/open-iscsi-svn.diff:
+ Fix kernel hang on target reset (#176151)
+* Mon May 29 2006 - ak(a)suse.de
+- patches.arch/x86_64-compat-stack-rnd: Fix stack/mmap
+ randomization for compat tasks (177108).
+* Mon May 29 2006 - perex(a)suse.de
+- patches.suse/bonding-sysfs: Delete. (157936)
+* Mon May 29 2006 - perex(a)suse.de
+- patches.suse/bonding-sysfs: Allow loading of bonding module
+ with max_bonds=0 (157936).
+- patches.suse/netfilter-ipt_LOG-mac: LTC23987-iptables LOG
+ output shows too long MAC info (176921).
+* Mon May 29 2006 - olh(a)suse.de
+- add patches.drivers/ibmveth-flexbuf.patch
+ change buffer pools dynamically (169074 - LTC23397)
+* Mon May 29 2006 - olh(a)suse.de
+- add patches.arch/ppc-kdump-soft-reset-64bit-mode.patch
+ force 64bit mode in system_reset_fwnmi for POWER4 (159713 - LTC22581)
+* Mon May 29 2006 - hare(a)suse.de
+- add patches.fixes/dm-suspend-resume-events
+ Send online/offline events for dm devices (175972)
+* Sat May 27 2006 - jack(a)suse.cz
+- patches.fixes/jfs-releasepage.patch: JFS: Fix multiple errors
+ in metapage_releasepage (177890).
+* Fri May 26 2006 - olh(a)suse.de
+- add patches.drivers/s2io-udp_rr.patch
+ fix netperf UDP_RR hangs (176892 - LTC23863)
+* Fri May 26 2006 - jbeulich(a)novell.com
+- patches.xen/xen-x86_64-halt.patch: Use halt() instead of raw
+ inline assembly. (177511).
+* Fri May 26 2006 - neilb(a)suse.de
+- patches.fixes/nfsd-dmapi-aware: Make NFSD DMAPI aware (74107, 173874).
+* Thu May 25 2006 - garloff(a)suse.de
+- Update kabi to SLE10RC2 and enable change tracking.
* Wed May 24 2006 - agruen(a)suse.de
- Fix the logic that detects when to build a debug package so that
it works in the OpenSUSE build service.
++++++ kernel-iseries64.spec ++++++
--- /var/tmp/diff_new_pack.QE3L0q/_old 2006-05-31 11:39:51.000000000 +0200
+++ /var/tmp/diff_new_pack.QE3L0q/_new 2006-05-31 11:39:51.000000000 +0200
@@ -21,7 +21,7 @@
BuildRequires: python
%endif
Version: 2.6.16.18
-Release: 1
+Release: 2
Summary: 64-Bit Kernel for iSeries
License: GPL
Group: System/Kernel
@@ -103,7 +103,7 @@
%define tolerate_unknown_new_config_options 0
# kABI change tolerance (default in maintenance should be 4, 8 or 15;
# see scripts/kabi-checks)
-%define tolerate_kabi_changes 31
+%define tolerate_kabi_changes 4
%(chmod +x %_sourcedir/{arch-symbols,guards,config-subst,check-for-config-changes,check-supported-list,built-in-where,find-provides,make-symsets,find-types,kabi-checks,install-configs})
@@ -112,7 +112,7 @@
-Source Timestamp: 2006/05/24 16:52:45 UTC
+Source Timestamp: 2006/05/31 06:52:41 UTC
%prep
if ! [ -e %_sourcedir/linux-2.6.16.tar.bz2 ]; then
@@ -447,6 +447,41 @@
%files -f kernel.files
%changelog -n kernel-iseries64
+* Wed May 31 2006 - hare(a)suse.de
+- patches.drivers/open-iscsi-svn.diff:
+ Fix kernel hang on target reset (#176151)
+* Mon May 29 2006 - ak(a)suse.de
+- patches.arch/x86_64-compat-stack-rnd: Fix stack/mmap
+ randomization for compat tasks (177108).
+* Mon May 29 2006 - perex(a)suse.de
+- patches.suse/bonding-sysfs: Delete. (157936)
+* Mon May 29 2006 - perex(a)suse.de
+- patches.suse/bonding-sysfs: Allow loading of bonding module
+ with max_bonds=0 (157936).
+- patches.suse/netfilter-ipt_LOG-mac: LTC23987-iptables LOG
+ output shows too long MAC info (176921).
+* Mon May 29 2006 - olh(a)suse.de
+- add patches.drivers/ibmveth-flexbuf.patch
+ change buffer pools dynamically (169074 - LTC23397)
+* Mon May 29 2006 - olh(a)suse.de
+- add patches.arch/ppc-kdump-soft-reset-64bit-mode.patch
+ force 64bit mode in system_reset_fwnmi for POWER4 (159713 - LTC22581)
+* Mon May 29 2006 - hare(a)suse.de
+- add patches.fixes/dm-suspend-resume-events
+ Send online/offline events for dm devices (175972)
+* Sat May 27 2006 - jack(a)suse.cz
+- patches.fixes/jfs-releasepage.patch: JFS: Fix multiple errors
+ in metapage_releasepage (177890).
+* Fri May 26 2006 - olh(a)suse.de
+- add patches.drivers/s2io-udp_rr.patch
+ fix netperf UDP_RR hangs (176892 - LTC23863)
+* Fri May 26 2006 - jbeulich(a)novell.com
+- patches.xen/xen-x86_64-halt.patch: Use halt() instead of raw
+ inline assembly. (177511).
+* Fri May 26 2006 - neilb(a)suse.de
+- patches.fixes/nfsd-dmapi-aware: Make NFSD DMAPI aware (74107, 173874).
+* Thu May 25 2006 - garloff(a)suse.de
+- Update kabi to SLE10RC2 and enable change tracking.
* Wed May 24 2006 - agruen(a)suse.de
- Fix the logic that detects when to build a debug package so that
it works in the OpenSUSE build service.
kernel-kdump.spec: same change
++++++ kernel-ppc64.spec ++++++
--- /var/tmp/diff_new_pack.QE3L0q/_old 2006-05-31 11:39:51.000000000 +0200
+++ /var/tmp/diff_new_pack.QE3L0q/_new 2006-05-31 11:39:51.000000000 +0200
@@ -20,7 +20,7 @@
BuildRequires: python
%endif
Version: 2.6.16.18
-Release: 1
+Release: 2
Summary: Kernel for ppc64 Systems
License: GPL, LGPL
Group: System/Kernel
@@ -104,7 +104,7 @@
%define tolerate_unknown_new_config_options 0
# kABI change tolerance (default in maintenance should be 4, 8 or 15;
# see scripts/kabi-checks)
-%define tolerate_kabi_changes 31
+%define tolerate_kabi_changes 4
%(chmod +x %_sourcedir/{arch-symbols,guards,config-subst,check-for-config-changes,check-supported-list,built-in-where,find-provides,make-symsets,find-types,kabi-checks,install-configs})
@@ -126,7 +126,7 @@
Tom Gall <tom_gall(a)vnet.ibm.com>
see /usr/src/linux-pmac-benh/CREDITS for more details.
-Source Timestamp: 2006/05/24 16:52:45 UTC
+Source Timestamp: 2006/05/31 06:52:41 UTC
%prep
if ! [ -e %_sourcedir/linux-2.6.16.tar.bz2 ]; then
@@ -461,6 +461,41 @@
%files -f kernel.files
%changelog -n kernel-ppc64
+* Wed May 31 2006 - hare(a)suse.de
+- patches.drivers/open-iscsi-svn.diff:
+ Fix kernel hang on target reset (#176151)
+* Mon May 29 2006 - ak(a)suse.de
+- patches.arch/x86_64-compat-stack-rnd: Fix stack/mmap
+ randomization for compat tasks (177108).
+* Mon May 29 2006 - perex(a)suse.de
+- patches.suse/bonding-sysfs: Delete. (157936)
+* Mon May 29 2006 - perex(a)suse.de
+- patches.suse/bonding-sysfs: Allow loading of bonding module
+ with max_bonds=0 (157936).
+- patches.suse/netfilter-ipt_LOG-mac: LTC23987-iptables LOG
+ output shows too long MAC info (176921).
+* Mon May 29 2006 - olh(a)suse.de
+- add patches.drivers/ibmveth-flexbuf.patch
+ change buffer pools dynamically (169074 - LTC23397)
+* Mon May 29 2006 - olh(a)suse.de
+- add patches.arch/ppc-kdump-soft-reset-64bit-mode.patch
+ force 64bit mode in system_reset_fwnmi for POWER4 (159713 - LTC22581)
+* Mon May 29 2006 - hare(a)suse.de
+- add patches.fixes/dm-suspend-resume-events
+ Send online/offline events for dm devices (175972)
+* Sat May 27 2006 - jack(a)suse.cz
+- patches.fixes/jfs-releasepage.patch: JFS: Fix multiple errors
+ in metapage_releasepage (177890).
+* Fri May 26 2006 - olh(a)suse.de
+- add patches.drivers/s2io-udp_rr.patch
+ fix netperf UDP_RR hangs (176892 - LTC23863)
+* Fri May 26 2006 - jbeulich(a)novell.com
+- patches.xen/xen-x86_64-halt.patch: Use halt() instead of raw
+ inline assembly. (177511).
+* Fri May 26 2006 - neilb(a)suse.de
+- patches.fixes/nfsd-dmapi-aware: Make NFSD DMAPI aware (74107, 173874).
+* Thu May 25 2006 - garloff(a)suse.de
+- Update kabi to SLE10RC2 and enable change tracking.
* Wed May 24 2006 - agruen(a)suse.de
- Fix the logic that detects when to build a debug package so that
it works in the OpenSUSE build service.
++++++ kernel-s390.spec ++++++
--- /var/tmp/diff_new_pack.QE3L0q/_old 2006-05-31 11:39:51.000000000 +0200
+++ /var/tmp/diff_new_pack.QE3L0q/_new 2006-05-31 11:39:51.000000000 +0200
@@ -21,7 +21,7 @@
BuildRequires: python
%endif
Version: 2.6.16.18
-Release: 1
+Release: 2
Summary: The Standard Kernel
License: GPL
Group: System/Kernel
@@ -100,7 +100,7 @@
%define tolerate_unknown_new_config_options 0
# kABI change tolerance (default in maintenance should be 4, 8 or 15;
# see scripts/kabi-checks)
-%define tolerate_kabi_changes 31
+%define tolerate_kabi_changes 4
%(chmod +x %_sourcedir/{arch-symbols,guards,config-subst,check-for-config-changes,check-supported-list,built-in-where,find-provides,make-symsets,find-types,kabi-checks,install-configs})
@@ -109,7 +109,7 @@
-Source Timestamp: 2006/05/24 16:52:45 UTC
+Source Timestamp: 2006/05/31 06:52:41 UTC
%prep
if ! [ -e %_sourcedir/linux-2.6.16.tar.bz2 ]; then
@@ -444,6 +444,41 @@
%files -f kernel.files
%changelog -n kernel-s390
+* Wed May 31 2006 - hare(a)suse.de
+- patches.drivers/open-iscsi-svn.diff:
+ Fix kernel hang on target reset (#176151)
+* Mon May 29 2006 - ak(a)suse.de
+- patches.arch/x86_64-compat-stack-rnd: Fix stack/mmap
+ randomization for compat tasks (177108).
+* Mon May 29 2006 - perex(a)suse.de
+- patches.suse/bonding-sysfs: Delete. (157936)
+* Mon May 29 2006 - perex(a)suse.de
+- patches.suse/bonding-sysfs: Allow loading of bonding module
+ with max_bonds=0 (157936).
+- patches.suse/netfilter-ipt_LOG-mac: LTC23987-iptables LOG
+ output shows too long MAC info (176921).
+* Mon May 29 2006 - olh(a)suse.de
+- add patches.drivers/ibmveth-flexbuf.patch
+ change buffer pools dynamically (169074 - LTC23397)
+* Mon May 29 2006 - olh(a)suse.de
+- add patches.arch/ppc-kdump-soft-reset-64bit-mode.patch
+ force 64bit mode in system_reset_fwnmi for POWER4 (159713 - LTC22581)
+* Mon May 29 2006 - hare(a)suse.de
+- add patches.fixes/dm-suspend-resume-events
+ Send online/offline events for dm devices (175972)
+* Sat May 27 2006 - jack(a)suse.cz
+- patches.fixes/jfs-releasepage.patch: JFS: Fix multiple errors
+ in metapage_releasepage (177890).
+* Fri May 26 2006 - olh(a)suse.de
+- add patches.drivers/s2io-udp_rr.patch
+ fix netperf UDP_RR hangs (176892 - LTC23863)
+* Fri May 26 2006 - jbeulich(a)novell.com
+- patches.xen/xen-x86_64-halt.patch: Use halt() instead of raw
+ inline assembly. (177511).
+* Fri May 26 2006 - neilb(a)suse.de
+- patches.fixes/nfsd-dmapi-aware: Make NFSD DMAPI aware (74107, 173874).
+* Thu May 25 2006 - garloff(a)suse.de
+- Update kabi to SLE10RC2 and enable change tracking.
* Wed May 24 2006 - agruen(a)suse.de
- Fix the logic that detects when to build a debug package so that
it works in the OpenSUSE build service.
kernel-smp.spec: same change
++++++ kernel-source.spec ++++++
--- /var/tmp/diff_new_pack.QE3L0q/_old 2006-05-31 11:39:51.000000000 +0200
+++ /var/tmp/diff_new_pack.QE3L0q/_new 2006-05-31 11:39:51.000000000 +0200
@@ -25,7 +25,7 @@
%endif
PreReq: /sbin/insserv /usr/bin/grep /bin/sed /bin/uname /bin/mkdir /bin/cat /bin/ln /bin/rm /etc/rc.status
Version: 2.6.16.18
-Release: 1
+Release: 2
Source0: http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.16.tar.bz2
Source1: functions.sh
Source2: source-post.sh
@@ -93,7 +93,7 @@
see /usr/src/linux/CREDITS for more details.
-Source Timestamp: 2006/05/24 16:52:45 UTC
+Source Timestamp: 2006/05/31 06:52:41 UTC
%prep
if ! [ -e %_sourcedir/linux-2.6.16.tar.bz2 ]; then
@@ -274,6 +274,41 @@
%files -f kernel-source.files
%changelog -n kernel-source
+* Wed May 31 2006 - hare(a)suse.de
+- patches.drivers/open-iscsi-svn.diff:
+ Fix kernel hang on target reset (#176151)
+* Mon May 29 2006 - ak(a)suse.de
+- patches.arch/x86_64-compat-stack-rnd: Fix stack/mmap
+ randomization for compat tasks (177108).
+* Mon May 29 2006 - perex(a)suse.de
+- patches.suse/bonding-sysfs: Delete. (157936)
+* Mon May 29 2006 - perex(a)suse.de
+- patches.suse/bonding-sysfs: Allow loading of bonding module
+ with max_bonds=0 (157936).
+- patches.suse/netfilter-ipt_LOG-mac: LTC23987-iptables LOG
+ output shows too long MAC info (176921).
+* Mon May 29 2006 - olh(a)suse.de
+- add patches.drivers/ibmveth-flexbuf.patch
+ change buffer pools dynamically (169074 - LTC23397)
+* Mon May 29 2006 - olh(a)suse.de
+- add patches.arch/ppc-kdump-soft-reset-64bit-mode.patch
+ force 64bit mode in system_reset_fwnmi for POWER4 (159713 - LTC22581)
+* Mon May 29 2006 - hare(a)suse.de
+- add patches.fixes/dm-suspend-resume-events
+ Send online/offline events for dm devices (175972)
+* Sat May 27 2006 - jack(a)suse.cz
+- patches.fixes/jfs-releasepage.patch: JFS: Fix multiple errors
+ in metapage_releasepage (177890).
+* Fri May 26 2006 - olh(a)suse.de
+- add patches.drivers/s2io-udp_rr.patch
+ fix netperf UDP_RR hangs (176892 - LTC23863)
+* Fri May 26 2006 - jbeulich(a)novell.com
+- patches.xen/xen-x86_64-halt.patch: Use halt() instead of raw
+ inline assembly. (177511).
+* Fri May 26 2006 - neilb(a)suse.de
+- patches.fixes/nfsd-dmapi-aware: Make NFSD DMAPI aware (74107, 173874).
+* Thu May 25 2006 - garloff(a)suse.de
+- Update kabi to SLE10RC2 and enable change tracking.
* Wed May 24 2006 - agruen(a)suse.de
- Fix the logic that detects when to build a debug package so that
it works in the OpenSUSE build service.
++++++ kernel-syms.spec ++++++
--- /var/tmp/diff_new_pack.QE3L0q/_old 2006-05-31 11:39:51.000000000 +0200
+++ /var/tmp/diff_new_pack.QE3L0q/_new 2006-05-31 11:39:51.000000000 +0200
@@ -49,7 +49,7 @@
Summary: Kernel Symbol Versions (modversions)
Group: Development/Sources
Version: 2.6.16.18
-Release: 1
+Release: 2
Requires: linux
Requires: kernel-source = 2.6.16.18-%release
Source11: arch-symbols
@@ -84,7 +84,7 @@
see /usr/src/linux/CREDITS for more details.
-Source Timestamp: 2006/05/24 16:52:45 UTC
+Source Timestamp: 2006/05/31 06:52:41 UTC
%install
@@ -127,6 +127,41 @@
/boot/symsets-*-*.tar.gz
%changelog -n kernel-syms
+* Wed May 31 2006 - hare(a)suse.de
+- patches.drivers/open-iscsi-svn.diff:
+ Fix kernel hang on target reset (#176151)
+* Mon May 29 2006 - ak(a)suse.de
+- patches.arch/x86_64-compat-stack-rnd: Fix stack/mmap
+ randomization for compat tasks (177108).
+* Mon May 29 2006 - perex(a)suse.de
+- patches.suse/bonding-sysfs: Delete. (157936)
+* Mon May 29 2006 - perex(a)suse.de
+- patches.suse/bonding-sysfs: Allow loading of bonding module
+ with max_bonds=0 (157936).
+- patches.suse/netfilter-ipt_LOG-mac: LTC23987-iptables LOG
+ output shows too long MAC info (176921).
+* Mon May 29 2006 - olh(a)suse.de
+- add patches.drivers/ibmveth-flexbuf.patch
+ change buffer pools dynamically (169074 - LTC23397)
+* Mon May 29 2006 - olh(a)suse.de
+- add patches.arch/ppc-kdump-soft-reset-64bit-mode.patch
+ force 64bit mode in system_reset_fwnmi for POWER4 (159713 - LTC22581)
+* Mon May 29 2006 - hare(a)suse.de
+- add patches.fixes/dm-suspend-resume-events
+ Send online/offline events for dm devices (175972)
+* Sat May 27 2006 - jack(a)suse.cz
+- patches.fixes/jfs-releasepage.patch: JFS: Fix multiple errors
+ in metapage_releasepage (177890).
+* Fri May 26 2006 - olh(a)suse.de
+- add patches.drivers/s2io-udp_rr.patch
+ fix netperf UDP_RR hangs (176892 - LTC23863)
+* Fri May 26 2006 - jbeulich(a)novell.com
+- patches.xen/xen-x86_64-halt.patch: Use halt() instead of raw
+ inline assembly. (177511).
+* Fri May 26 2006 - neilb(a)suse.de
+- patches.fixes/nfsd-dmapi-aware: Make NFSD DMAPI aware (74107, 173874).
+* Thu May 25 2006 - garloff(a)suse.de
+- Update kabi to SLE10RC2 and enable change tracking.
* Wed May 24 2006 - agruen(a)suse.de
- Fix the logic that detects when to build a debug package so that
it works in the OpenSUSE build service.
++++++ kernel-um.spec ++++++
--- /var/tmp/diff_new_pack.QE3L0q/_old 2006-05-31 11:39:51.000000000 +0200
+++ /var/tmp/diff_new_pack.QE3L0q/_new 2006-05-31 11:39:51.000000000 +0200
@@ -21,7 +21,7 @@
BuildRequires: python
%endif
Version: 2.6.16.18
-Release: 1
+Release: 2
Summary: The User Mode Linux kernel.
License: GPL
Group: System/Kernel
@@ -100,7 +100,7 @@
%define tolerate_unknown_new_config_options 0
# kABI change tolerance (default in maintenance should be 4, 8 or 15;
# see scripts/kabi-checks)
-%define tolerate_kabi_changes 31
+%define tolerate_kabi_changes 4
%(chmod +x %_sourcedir/{arch-symbols,guards,config-subst,check-for-config-changes,check-supported-list,built-in-where,find-provides,make-symsets,find-types,kabi-checks,install-configs})
@@ -112,7 +112,7 @@
-Source Timestamp: 2006/05/24 16:52:45 UTC
+Source Timestamp: 2006/05/31 06:52:41 UTC
%prep
if ! [ -e %_sourcedir/linux-2.6.16.tar.bz2 ]; then
@@ -447,6 +447,41 @@
%files -f kernel.files
%changelog -n kernel-um
+* Wed May 31 2006 - hare(a)suse.de
+- patches.drivers/open-iscsi-svn.diff:
+ Fix kernel hang on target reset (#176151)
+* Mon May 29 2006 - ak(a)suse.de
+- patches.arch/x86_64-compat-stack-rnd: Fix stack/mmap
+ randomization for compat tasks (177108).
+* Mon May 29 2006 - perex(a)suse.de
+- patches.suse/bonding-sysfs: Delete. (157936)
+* Mon May 29 2006 - perex(a)suse.de
+- patches.suse/bonding-sysfs: Allow loading of bonding module
+ with max_bonds=0 (157936).
+- patches.suse/netfilter-ipt_LOG-mac: LTC23987-iptables LOG
+ output shows too long MAC info (176921).
+* Mon May 29 2006 - olh(a)suse.de
+- add patches.drivers/ibmveth-flexbuf.patch
+ change buffer pools dynamically (169074 - LTC23397)
+* Mon May 29 2006 - olh(a)suse.de
+- add patches.arch/ppc-kdump-soft-reset-64bit-mode.patch
+ force 64bit mode in system_reset_fwnmi for POWER4 (159713 - LTC22581)
+* Mon May 29 2006 - hare(a)suse.de
+- add patches.fixes/dm-suspend-resume-events
+ Send online/offline events for dm devices (175972)
+* Sat May 27 2006 - jack(a)suse.cz
+- patches.fixes/jfs-releasepage.patch: JFS: Fix multiple errors
+ in metapage_releasepage (177890).
+* Fri May 26 2006 - olh(a)suse.de
+- add patches.drivers/s2io-udp_rr.patch
+ fix netperf UDP_RR hangs (176892 - LTC23863)
+* Fri May 26 2006 - jbeulich(a)novell.com
+- patches.xen/xen-x86_64-halt.patch: Use halt() instead of raw
+ inline assembly. (177511).
+* Fri May 26 2006 - neilb(a)suse.de
+- patches.fixes/nfsd-dmapi-aware: Make NFSD DMAPI aware (74107, 173874).
+* Thu May 25 2006 - garloff(a)suse.de
+- Update kabi to SLE10RC2 and enable change tracking.
* Wed May 24 2006 - agruen(a)suse.de
- Fix the logic that detects when to build a debug package so that
it works in the OpenSUSE build service.
kernel-xen.spec: same change
kernel-xenpae.spec: same change
++++++ build-source-timestamp ++++++
--- kernel-source/build-source-timestamp 2006-05-24 18:53:42.000000000 +0200
+++ kernel-source/build-source-timestamp 2006-05-31 09:16:59.000000000 +0200
@@ -1 +1 @@
-2006/05/24 16:52:45 UTC
+2006/05/31 06:52:41 UTC
++++++ config.tar.bz2 ++++++
++++++ kabi.tar.bz2 ++++++
++++ 118782 lines of diff (skipped)
++++++ minmem ++++++
--- kernel-source/minmem 2006-05-25 01:17:45.000000000 +0200
+++ kernel-source/minmem 2006-05-31 09:17:46.000000000 +0200
@@ -1 +1 @@
-514000
+1048576
++++++ novell-kmp.tar.bz2 ++++++
++++++ patches.arch.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.arch/ppc-kdump-soft-reset-64bit-mode.patch new/patches.arch/ppc-kdump-soft-reset-64bit-mode.patch
--- old/patches.arch/ppc-kdump-soft-reset-64bit-mode.patch 1970-01-01 01:00:00.000000000 +0100
+++ new/patches.arch/ppc-kdump-soft-reset-64bit-mode.patch 2006-05-29 10:59:41.000000000 +0200
@@ -0,0 +1,66 @@
+Subject: force 64bit mode in system_reset_fwnmi for broken POWER4 firmware
+From: Olaf Hering <olh(a)suse.de>
+References: 159713 - LTC22581
+
+http://ozlabs.org/pipermail/linuxppc-dev/2006-May/023133.html
+
+A softreset via HMC will not enable 64bit mode on the cpu if the
+cpu happens to be in 32bit mode at the time of the exception.
+The stackpointer points to userspace, EXCEPTION_PROLOG_COMMON
+will get into 'bad_stack'. The cpu remains in 32bit mode, but the code
+cant deal with it.
+This happens on JS20 and POWER4, but not on JS21 and POWER5.
+
+Signed-off-by: Olaf Hering <olh(a)suse.de>
+
+Index: linux-2.6/arch/powerpc/kernel/head_64.S
+===================================================================
+--- linux-2.6.orig/arch/powerpc/kernel/head_64.S
++++ linux-2.6/arch/powerpc/kernel/head_64.S
+@@ -211,6 +211,29 @@ exception_marker:
+ ori reg,reg,(label)@l; /* virt addr of handler ... */
+ #endif
+
++#define EXCEPTION_PROLOG_PSERIES_BROKEN_POWER4_FIRMWARE(area, label) \
++ mfspr r13,SPRN_SPRG3; /* get paca address into r13 */ \
++ std r9,area+EX_R9(r13); /* save r9 - r12 */ \
++ std r10,area+EX_R10(r13); \
++ std r11,area+EX_R11(r13); \
++ std r12,area+EX_R12(r13); \
++ mfspr r9,SPRN_SPRG1; \
++ std r9,area+EX_R13(r13); \
++ mfcr r9; \
++ clrrdi r12,r13,32; /* get high part of &label */ \
++ mfmsr r10; \
++ li r11,5; /* MSR_SF_LG|MSR_ISF_LG */ \
++ rldicr r11,r11,61,2; /* (5 << 61) */ \
++ or r10,r10,r11; \
++ mfspr r11,SPRN_SRR0; /* save SRR0 */ \
++ LOAD_HANDLER(r12,label) \
++ ori r10,r10,MSR_IR|MSR_DR|MSR_RI; \
++ mtspr SPRN_SRR0,r12; \
++ mfspr r12,SPRN_SRR1; /* and SRR1 */ \
++ mtspr SPRN_SRR1,r10; \
++ rfid; \
++ b . /* prevent speculative execution */
++
+ #define EXCEPTION_PROLOG_PSERIES(area, label) \
+ mfspr r13,SPRN_SPRG3; /* get paca address into r13 */ \
+ std r9,area+EX_R9(r13); /* save r9 - r12 */ \
+@@ -600,14 +623,14 @@ slb_miss_user_pseries:
+ system_reset_fwnmi:
+ HMT_MEDIUM
+ mtspr SPRN_SPRG1,r13 /* save r13 */
+- EXCEPTION_PROLOG_PSERIES(PACA_EXGEN, system_reset_common)
++ EXCEPTION_PROLOG_PSERIES_BROKEN_POWER4_FIRMWARE(PACA_EXGEN, system_reset_common)
+
+ .globl machine_check_fwnmi
+ .align 7
+ machine_check_fwnmi:
+ HMT_MEDIUM
+ mtspr SPRN_SPRG1,r13 /* save r13 */
+- EXCEPTION_PROLOG_PSERIES(PACA_EXMC, machine_check_common)
++ EXCEPTION_PROLOG_PSERIES_BROKEN_POWER4_FIRMWARE(PACA_EXMC, machine_check_common)
+
+ #ifdef CONFIG_PPC_ISERIES
+ /*** ISeries-LPAR interrupt handlers ***/
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.arch/x86_64-compat-stack-rnd new/patches.arch/x86_64-compat-stack-rnd
--- old/patches.arch/x86_64-compat-stack-rnd 1970-01-01 01:00:00.000000000 +0100
+++ new/patches.arch/x86_64-compat-stack-rnd 2006-05-29 16:17:10.000000000 +0200
@@ -0,0 +1,45 @@
+Subject: Fix stack/mmap randomization for compat tasks
+From: ak(a)suse.de
+References: 177108
+Patch-mainline: 2.6.17
+
+ia32_setup_arg_pages would ignore the passed in random stack top
+and use its own static value.
+
+Now it uses the 8bit of randomness native i386 would use too.
+
+This indirectly fixes mmap randomization for 32bit processes too,
+which depends on the stack randomization.
+
+Should also give slightly better virtual cache colouring and
+possibly better performance with HyperThreading.
+
+Signed-off-by: Andi Kleen <ak(a)suse.de>
+
+---
+ arch/x86_64/ia32/ia32_binfmt.c | 4 ++--
+ include/asm-x86_64/elf.h | 2 +-
+ 2 files changed, 3 insertions(+), 3 deletions(-)
+
+Index: linux/arch/x86_64/ia32/ia32_binfmt.c
+===================================================================
+--- linux.orig/arch/x86_64/ia32/ia32_binfmt.c
++++ linux/arch/x86_64/ia32/ia32_binfmt.c
+@@ -339,7 +339,7 @@ int ia32_setup_arg_pages(struct linux_bi
+ struct mm_struct *mm = current->mm;
+ int i, ret;
+
+- stack_base = IA32_STACK_TOP - MAX_ARG_PAGES * PAGE_SIZE;
++ stack_base = stack_top - MAX_ARG_PAGES * PAGE_SIZE;
+ mm->arg_start = bprm->p + stack_base;
+
+ bprm->p += stack_base;
+@@ -357,7 +357,7 @@ int ia32_setup_arg_pages(struct linux_bi
+ {
+ mpnt->vm_mm = mm;
+ mpnt->vm_start = PAGE_MASK & (unsigned long) bprm->p;
+- mpnt->vm_end = IA32_STACK_TOP;
++ mpnt->vm_end = stack_top;
+ if (executable_stack == EXSTACK_ENABLE_X)
+ mpnt->vm_flags = VM_STACK_FLAGS | VM_EXEC;
+ else if (executable_stack == EXSTACK_DISABLE_X)
++++++ patches.drivers.tar.bz2 ++++++
++++ 1716 lines of diff (skipped)
++++++ patches.fixes.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.fixes/dm-suspend-resume-events new/patches.fixes/dm-suspend-resume-events
--- old/patches.fixes/dm-suspend-resume-events 1970-01-01 01:00:00.000000000 +0100
+++ new/patches.fixes/dm-suspend-resume-events 2006-05-29 10:32:26.000000000 +0200
@@ -0,0 +1,18 @@
+--- linux-2.6.16/drivers/md/dm.c.orig 2006-05-23 12:18:09.000000000 +0200
++++ linux-2.6.16/drivers/md/dm.c 2006-05-26 14:09:16.000000000 +0200
+@@ -1201,6 +1201,7 @@ int dm_suspend(struct mapped_device *md,
+ dm_table_postsuspend_targets(map);
+
+ set_bit(DMF_SUSPENDED, &md->flags);
++ kobject_uevent(&md->disk->kobj, KOBJ_OFFLINE);
+
+ r = 0;
+
+@@ -1247,6 +1248,7 @@ int dm_resume(struct mapped_device *md)
+
+ dm_table_unplug_all(map);
+
++ kobject_uevent(&md->disk->kobj, KOBJ_ONLINE);
+ r = 0;
+
+ out:
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.fixes/jfs-releasepage.patch new/patches.fixes/jfs-releasepage.patch
--- old/patches.fixes/jfs-releasepage.patch 1970-01-01 01:00:00.000000000 +0100
+++ new/patches.fixes/jfs-releasepage.patch 2006-05-26 06:32:00.000000000 +0200
@@ -0,0 +1,64 @@
+From: Dave Kleikamp <shaggy(a)austin.ibm.com>
+Subject: JFS: Fix multiple errors in metapage_releasepage
+Patch-mainline: 2.6.17-rc5
+References: 177890
+
+It looks like metapage_releasepage was making in invalid assumption that
+the releasepage method would not be called on a dirty page. Instead of
+issuing a warning and releasing the metapage, it should return 0, indicating
+that the private data for the page cannot be released.
+
+I also realized that metapage_releasepage had the return code all wrong. If
+it is successful in releasing the private data, it should return 1, otherwise
+it needs to return 0.
+
+Signed-off-by: Dave Kleikamp <shaggy(a)austin.ibm.com>
+Acked-by: Jan Kara <jack(a)suse.cz>
+
+diff -urp linux-2.6.16/fs/jfs/jfs_metapage.c linux/fs/jfs/jfs_metapage.c
+--- linux-2.6.16/fs/jfs/jfs_metapage.c 2006-03-19 23:53:29.000000000 -0600
++++ linux/fs/jfs/jfs_metapage.c 2006-05-22 10:43:05.000000000 -0500
+@@ -543,7 +543,7 @@ add_failed:
+ static int metapage_releasepage(struct page *page, gfp_t gfp_mask)
+ {
+ struct metapage *mp;
+- int busy = 0;
++ int ret = 1;
+ unsigned int offset;
+
+ for (offset = 0; offset < PAGE_CACHE_SIZE; offset += PSIZE) {
+@@ -553,30 +553,20 @@ static int metapage_releasepage(struct p
+ continue;
+
+ jfs_info("metapage_releasepage: mp = 0x%p", mp);
+- if (mp->count || mp->nohomeok) {
++ if (mp->count || mp->nohomeok ||
++ test_bit(META_dirty, &mp->flag)) {
+ jfs_info("count = %ld, nohomeok = %d", mp->count,
+ mp->nohomeok);
+- busy = 1;
++ ret = 0;
+ continue;
+ }
+- wait_on_page_writeback(page);
+- //WARN_ON(test_bit(META_dirty, &mp->flag));
+- if (test_bit(META_dirty, &mp->flag)) {
+- dump_mem("dirty mp in metapage_releasepage", mp,
+- sizeof(struct metapage));
+- dump_mem("page", page, sizeof(struct page));
+- dump_stack();
+- }
+ if (mp->lsn)
+ remove_from_logsync(mp);
+ remove_metapage(page, mp);
+ INCREMENT(mpStat.pagefree);
+ free_metapage(mp);
+ }
+- if (busy)
+- return -1;
+-
+- return 0;
++ return ret;
+ }
+
+ static int metapage_invalidatepage(struct page *page, unsigned long offset)
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.fixes/nfsd-dmapi-aware new/patches.fixes/nfsd-dmapi-aware
--- old/patches.fixes/nfsd-dmapi-aware 1970-01-01 01:00:00.000000000 +0100
+++ new/patches.fixes/nfsd-dmapi-aware 2006-05-31 09:03:25.000000000 +0200
@@ -0,0 +1,169 @@
+From: Greg Banks
+Subject: Make NFSD DMAPI aware
+References: 74107, 173874
+Patch-mainline: obstruction...
+
+G'day,
+
+The NFSv3 protocol specifies an error, NFS3ERR_JUKEBOX, which a server
+should return when an I/O operation will take a very long time.
+This causes a different pattern of retries in clients, and avoids
+a number of serious problems associated with I/Os which take longer
+than an RPC timeout. The Linux knfsd server has code to generate the
+jukebox error and many NFS clients are known to have working code to
+handle it.
+
+One scenario in which a server should emit the JUKEBOX error is when
+a file data which the client is attempting to access is managed by
+an HSM (Hierarchical Storage Manager) and is not present on the disk
+and needs to be brought in from tape. Due to the nature of tapes this
+operation can take minutes rather than the milliseconds normally seen
+for local file data.
+
+Currently the Linux knfsd handles this situation poorly. A READ NFS
+call will cause the nfsd thread handling it to block until the file
+is available, without sending a reply to the NFS client. After a
+few seconds the client retries, and this second READ call causes
+another nfsd to block behind the first one. A few seconds later and
+the client's retries have blocked *all* the nfsd threads, and all NFS
+service from the server stops until the original file arrives on disk.
+
+WRITEs and SETATTRs which truncate the file are marginally better, in
+that the knfsd dupcache will catch the retries and drop them without
+blocking an nfsd (the dupcache *will* catch the retries because the
+cache entry remains in RC_INPROG state and is not reused until the
+first call finishes). However the first call still blocks, so given
+WRITEs to enough offline files the server can still be locked up.
+
+There are also client-side implications, depending on the client
+implementation. For example, on a Linux client an RPC retry loop uses
+an RPC request slot, so reads from enough separate offline files can
+lock up a mountpoint.
+
+This patch seeks to remedy the interaction between knfsd and HSMs by
+providing mechanisms to allow knfsd to tell an underlying filesystem
+(which supports HSMs) not to block for reads, writes and truncates
+of offline files. It's a port of a Linux 2.4 patch used in SGI's
+ProPack distro for the last 12 months. The patch:
+
+* provides a new ATTR_NO_BLOCK flag which the kernel can
+ use to tell a filesystem's inode_ops->setattr() operation not
+ to block when truncating an offline file. XFS already obeys
+ this flag (inside a #ifdef)
+
+* changes knfsd to provide ATTR_NO_BLOCK when it does the VFS
+ calls to implement the SETATTR NFS call.
+
+* changes knfsd to supply the O_NONBLOCK flag in the temporary
+ struct file it uses for VFS reads and writes, in order to ask
+ the filesystem not to block when reading or writing an offline
+ file. XFS already obeys this new semantic for O_NONBLOCK
+ (and in SLES9 so does JFS).
+
+* adds code to translate the -EAGAIN the filesystem returns when
+ it would have blocked, to the -ETIMEDOUT that knfsd expects.
+
+
+Signed-off-by: Greg Banks <gnb(a)melbourne.sgi.com>
+(SLES9 patch Acked-by: okir(a)suse.de)
+Signed-off-by: NeilBrown <neilb(a)suse.de>
+
+ fs/nfsd/vfs.c | 33 +++++++++++++++++++++++++++++++--
+ include/linux/fs.h | 1 +
+ 2 files changed, 32 insertions(+), 2 deletions(-)
+
+Acked-by:
+
+Index: linux/fs/nfsd/vfs.c
+===================================================================
+--- linux.orig/fs/nfsd/vfs.c 2006-05-03 21:52:16.680687646 +1000
++++ linux/fs/nfsd/vfs.c 2006-05-03 22:03:36.850613571 +1000
+@@ -327,6 +327,16 @@ nfsd_setattr(struct svc_rqst *rqstp, str
+ goto out_nfserr;
+ }
+ DQUOT_INIT(inode);
++
++
++ /*
++ * Tell a Hierarchical Storage Manager (e.g. via DMAPI) to
++ * return EAGAIN when an action would take minutes instead of
++ * milliseconds so that NFS can reply to the client with
++ * NFSERR_JUKEBOX instead of blocking an nfsd thread.
++ */
++ if (rqstp->rq_vers >= 3)
++ iap->ia_valid |= ATTR_NO_BLOCK;
+ }
+
+ imode = inode->i_mode;
+@@ -349,6 +359,9 @@ nfsd_setattr(struct svc_rqst *rqstp, str
+ if (!check_guard || guardtime == inode->i_ctime.tv_sec) {
+ fh_lock(fhp);
+ err = notify_change(dentry, iap);
++ /* to get NFSERR_JUKEBOX on the wire, need -ETIMEDOUT */
++ if (err == -EAGAIN)
++ err = -ETIMEDOUT;
+ err = nfserrno(err);
+ fh_unlock(fhp);
+ }
+@@ -834,6 +847,10 @@ nfsd_vfs_read(struct svc_rqst *rqstp, st
+ if (ra && ra->p_set)
+ file->f_ra = ra->p_ra;
+
++ /* Support HSMs -- see comment in nfsd_setattr() */
++ if (rqstp->rq_vers >= 3)
++ file->f_flags |= O_NONBLOCK;
++
+ if (file->f_op->sendfile) {
+ svc_pushback_unused_pages(rqstp);
+ err = file->f_op->sendfile(file, &offset, *count,
+@@ -859,8 +876,12 @@ nfsd_vfs_read(struct svc_rqst *rqstp, st
+ *count = err;
+ err = 0;
+ fsnotify_access(file->f_dentry);
+- } else
++ } else {
++ /* to get NFSERR_JUKEBOX on the wire, need -ETIMEDOUT */
++ if (err == -EAGAIN)
++ err = -ETIMEDOUT;
+ err = nfserrno(err);
++ }
+ out:
+ return err;
+ }
+@@ -918,6 +939,10 @@ nfsd_vfs_write(struct svc_rqst *rqstp, s
+ if (stable && !EX_WGATHER(exp))
+ file->f_flags |= O_SYNC;
+
++ /* Support HSMs -- see comment in nfsd_setattr() */
++ if (rqstp->rq_vers >= 3)
++ file->f_flags |= O_NONBLOCK;
++
+ /* Write the data. */
+ oldfs = get_fs(); set_fs(KERNEL_DS);
+ err = vfs_writev(file, (struct iovec __user *)vec, vlen, &offset);
+@@ -970,8 +995,12 @@ nfsd_vfs_write(struct svc_rqst *rqstp, s
+ dprintk("nfsd: write complete err=%d\n", err);
+ if (err >= 0)
+ err = 0;
+- else
++ else {
++ /* to get NFSERR_JUKEBOX on the wire, need -ETIMEDOUT */
++ if (err == -EAGAIN)
++ err = -ETIMEDOUT;
+ err = nfserrno(err);
++ }
+ out:
+ return err;
+ }
+Index: linux/include/linux/fs.h
+===================================================================
+--- linux.orig/include/linux/fs.h 2006-05-03 21:52:36.509039333 +1000
++++ linux/include/linux/fs.h 2006-05-03 22:03:36.851590000 +1000
+@@ -265,6 +265,7 @@ typedef void (dio_iodone_t)(struct kiocb
+ #define ATTR_KILL_SUID 2048
+ #define ATTR_KILL_SGID 4096
+ #define ATTR_FILE 8192
++#define ATTR_NO_BLOCK 32768 /* Return EAGAIN and don't block on long truncates */
+
+ /*
+ * This is the Inode Attributes structure, used for notify_change(). It
++++++ patches.kernel.org.tar.bz2 ++++++
++++++ patches.rpmify.tar.bz2 ++++++
++++++ patches.suse.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.suse/netfilter-ipt_LOG-mac new/patches.suse/netfilter-ipt_LOG-mac
--- old/patches.suse/netfilter-ipt_LOG-mac 1970-01-01 01:00:00.000000000 +0100
+++ new/patches.suse/netfilter-ipt_LOG-mac 2006-05-29 11:17:40.000000000 +0200
@@ -0,0 +1,28 @@
+From: Jaroslav Kysela <perex(a)suse.cz>
+Subject: LTC23987-iptables LOG output shows too long MAC info
+References: 176921
+
+LTC23987-iptables LOG output shows too long MAC info for qeth VLAN interface
+
+Signed-off-by: Jaroslav Kysela <perex(a)suse.cz>
+
+--- linux-2.6.16.orig/net/ipv4/netfilter/ipt_LOG.c 2006-03-20 06:53:29.000000000 +0100
++++ linux-2.6.16/net/ipv4/netfilter/ipt_LOG.c 2006-05-26 12:05:08.000000000 +0200
+@@ -395,12 +395,12 @@ ipt_log_packet(unsigned int pf,
+ printk("MAC=");
+ if (skb->dev && skb->dev->hard_header_len
+ && skb->mac.raw != (void*)skb->nh.iph) {
+- int i;
++ int i, len;
+ unsigned char *p = skb->mac.raw;
+- for (i = 0; i < skb->dev->hard_header_len; i++,p++)
+- printk("%02x%c", *p,
+- i==skb->dev->hard_header_len - 1
+- ? ' ':':');
++ len = (int)((unsigned char *)skb->nh.iph - p);
++ len = min((int)skb->dev->hard_header_len, len);
++ for (i = 0; i < len; i++,p++)
++ printk("%02x%c", *p, i==len - 1 ? ' ':':');
+ } else
+ printk(" ");
+ }
++++++ patches.uml.tar.bz2 ++++++
++++++ patches.xen.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/patches.xen/xen-x86_64-halt.patch new/patches.xen/xen-x86_64-halt.patch
--- old/patches.xen/xen-x86_64-halt.patch 1970-01-01 01:00:00.000000000 +0100
+++ new/patches.xen/xen-x86_64-halt.patch 2006-05-26 09:47:08.000000000 +0200
@@ -0,0 +1,17 @@
+From: jbeulich(a)novell.com
+Subject: Use halt() instead of raw inline assembly.
+References: 177511
+
+Index: head-2006-05-19/arch/x86_64/kernel/smp-xen.c
+===================================================================
+--- head-2006-05-19.orig/arch/x86_64/kernel/smp-xen.c 2006-05-19 10:26:04.000000000 +0200
++++ head-2006-05-19/arch/x86_64/kernel/smp-xen.c 2006-05-23 14:44:13.000000000 +0200
+@@ -488,7 +488,7 @@ static void smp_really_stop_cpu(void *du
+ {
+ smp_stop_cpu();
+ for (;;)
+- asm("hlt");
++ halt();
+ }
+
+ void smp_send_stop(void)
++++++ series.conf ++++++
--- kernel-source/series.conf 2006-05-24 18:53:59.000000000 +0200
+++ kernel-source/series.conf 2006-05-31 09:17:26.000000000 +0200
@@ -118,6 +118,7 @@
patches.arch/x86_64-hotadd-fixes
patches.arch/x86_64-empty-node0
patches.arch/x86_64-bad-addr-boundary
+ patches.arch/x86_64-compat-stack-rnd
# for i386/x86-64
patches.arch/tune-generic
@@ -176,6 +177,7 @@
patches.arch/ppc-kdump-iommu-init-fix.patch
patches.arch/ppc-kdump-incorrect_might_sleep_in__get_user-put_user.patch
patches.arch/ppc-kdump-disable-eeh-and-numa.patch
+ patches.arch/ppc-kdump-soft-reset-64bit-mode.patch
patches.arch/ppc-poison_percpu.patch
@@ -418,6 +420,7 @@
patches.suse/netfilter-ipv4options
patches.suse/netfilter-conntrack-sinzero
+ patches.suse/netfilter-ipt_LOG-mac
########################################################
#
@@ -487,6 +490,9 @@
patches.drivers/e100-pci-err-recovery.patch
+ patches.drivers/s2io-udp_rr.patch
+ patches.drivers/ibmveth-flexbuf.patch
+
# Latest net/ieee80211 patches submitted upstream
patches.drivers/ieee802.11-2
patches.drivers/ieee802.11-4
@@ -809,11 +815,15 @@
+andrea patches.fixes/anon_vma_lock
patches.suse/security-cap-def
+# These do not apply cleanly at the moment...
+garloff patches.suse/security-reorder-stubs
+garloff patches.suse/security-clean-stubs
+garloff patches.suse/security-avoid-indir-call
+garloff patches.suse/security-likely-cap
+garloff patches.suse/security-se-enabled
+# ... so rather than fixing the above I'm using this one,
+# which does roughly the same, and was reviewed. --okir
+- patches.suse/security-disabled-optimize-cap-default
+sles patches.fixes/bigsmp-floppy-apic
@@ -1184,6 +1194,12 @@
# bug #176697
patches.fixes/iosapic-move-irq
+ # bug 177890
+ patches.fixes/jfs-releasepage.patch
+
+ patches.fixes/nfsd-dmapi-aware
+ patches.fixes/dm-suspend-resume-events
+
# PLEASE KEEP THESE PATCHES AT THE END OF series.conf
# (as all other arch specific patches should be kept at the end
# for obvious reasons.)
@@ -1269,6 +1285,7 @@
patches.xen/xen-xenbus_be-gpl.patch
patches.xen/xen-blkfront-getgeo.patch
patches.xen/xen-blkback-missing-media.patch
+ patches.xen/xen-x86_64-halt.patch
# enhancements
patches.xen/xen-i386-panic-no-reboot
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
1
0
Hello community,
here is the log from the commit of package kdebluetooth
checked in at Wed May 31 11:37:17 CEST 2006.
--------
--- KDE/kdebluetooth/kdebluetooth.changes 2006-05-17 14:41:12.000000000 +0200
+++ kdebluetooth/kdebluetooth.changes 2006-05-31 10:11:42.000000000 +0200
@@ -1,0 +2,5 @@
+Tue May 30 07:34:55 CEST 2006 - adrian(a)suse.de
+
+- fix build for < 10.1
+
+-------------------------------------------------------------------
@@ -4 +9 @@
-- fix build against openobex 1.2
+- fix build against openobex 1.2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kdebluetooth.spec ++++++
--- /var/tmp/diff_new_pack.O4EGCb/_old 2006-05-31 11:36:56.000000000 +0200
+++ /var/tmp/diff_new_pack.O4EGCb/_new 2006-05-31 11:36:56.000000000 +0200
@@ -12,12 +12,15 @@
Name: kdebluetooth
BuildRequires: bluez-libs gtk-devel kdebase3 kdelibs3-devel kdepim3-devel openobex-devel
+%if %suse_version < 1010
+BuildRequires: kdepim3-sync
+%endif
URL: http://kde-bluetooth.sourceforge.net
License: GPL
Group: Hardware/Other
Summary: Bluetooth Support for KDE
Version: 0.0.svn20060413
-Release: 8
+Release: 9
BuildRoot: %{_tmppath}/%{name}-%{version}-build
# createPackage.sh -ab trunk/extragear/pim -a kdebluetooth -is extragear-pim -av 0.0.svn20061413 --package bzip2 --pofiles kbluelock kbluepin kbluetoothdcm kbluetoothd kbthandsfree kbtobexclient kbtsearch kbtserialchat khciconfig kioclient libkbluetooth
Source0: %name-%version.tar.bz2
@@ -76,7 +79,11 @@
%suse_update_desktop_file kcm_kbluetoothd
%suse_update_desktop_file kcm_btpaired
%suse_update_desktop_file -r kbluetoothd System Applet
+%if %suse_version < 1010
+%suse_update_desktop_file -r kbtobexclient Utility Telephony
+%else
%suse_update_desktop_file -G "OBEX File Transfer" -N "KBluetooth Client" -r kbtobexclient Utility Telephony
+%endif
%if 0
%suse_update_desktop_file kbtserialchat TerminalEmulator
%endif
@@ -113,6 +120,8 @@
/opt/kde3/share/locale
%changelog -n kdebluetooth
+* Tue May 30 2006 - adrian(a)suse.de
+- fix build for < 10.1
* Wed May 17 2006 - dmueller(a)suse.de
- fix build against openobex 1.2
* Thu Apr 13 2006 - stbinner(a)suse.de
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
1
0
Hello community,
here is the log from the commit of package ifolder3
checked in at Wed May 31 11:36:27 CEST 2006.
--------
--- ifolder3/ifolder3.changes 2006-05-22 16:26:04.000000000 +0200
+++ ifolder3/ifolder3.changes 2006-05-31 11:34:13.000000000 +0200
@@ -1,0 +2,5 @@
+Wed May 31 11:33:55 CEST 2006 - ro(a)suse.de
+
+- remove bogus "obsoletes" line in specfile
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ifolder3.spec ++++++
--- /var/tmp/diff_new_pack.8qLqQO/_old 2006-05-31 11:36:17.000000000 +0200
+++ /var/tmp/diff_new_pack.8qLqQO/_new 2006-05-31 11:36:17.000000000 +0200
@@ -24,9 +24,8 @@
Requires: eel
Requires: gconf-sharp2
Requires: gnome-sharp2
-Obsoletes: %{name} < %{version}
Version: 3.4.6142.1
-Release: 1
+Release: 2
Summary: File Sharing and Collaboration Tool
Source: ifolder3-3.4.%{buildnum}.1.tar.gz
Patch0: ifolder3-fixes.patch
@@ -109,6 +108,8 @@
/usr/share/applications/ifolder.desktop
%changelog -n ifolder3
+* Wed May 31 2006 - ro(a)suse.de
+- remove bogus "obsoletes" line in specfile
* Mon May 22 2006 - jhargadon(a)novell.com
- fix for invalid/updated certificate problem
- Added latest help files
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
1
0
Hello community,
here is the log from the commit of package zmd
checked in at Wed May 31 03:07:19 CEST 2006.
--------
--- zmd/zmd.changes 2006-05-25 19:40:50.000000000 +0200
+++ zmd/zmd.changes 2006-05-31 02:46:57.000000000 +0200
@@ -1,0 +2,38 @@
+Wed May 31 02:41:18 CEST 2006 - maw(a)suse.de
+
+- New source drop (r29403) which:
+- Adds new exceptions for key and digest errors
+- Supports FTP service autodetection (#178832)
+- Detects FTP errors correctly if the requested file size request
+ fails
+- Detects if a helper process exited due to a signal
+- Blocks sbutdowns while helpers are running (#178144)
+- Before restarting, nukes the pid file so when we start up we
+ don't think another zmd is running (partial fix for #178218)
+- Implements a key whitelist, exposed over remoting, to control
+ zmd's behavior when the helpers raise a security error/event.
+- Changes the key/digest related parsing functions to use the new
+ exception types and place them in the progress objects for the
+ clients to handle. Also, sets KEYRING_CALLBACK for a few of the
+ zypp helpers to turn on key/digest checking
+- Throws ResolvableNotFoundException if ResolvableInfo ->
+ Resolvable conversion fails. This should happen very rarely
+ and only if a service is removed after a resolvable from the
+ service is sent to the client and after client responds
+ with it. Or, while the service is refreshing. (partial fix
+ for #176640)
+- Corrects the CanMount url; the NU service was automatically
+ selected for YUM services as well
+- Parses key/digest status from the backend helpers
+- Adds database schema version. When opening the database and
+ there is either a schema version mismatch or the database is
+ corrupted, delete the database and create it again. (#165819
+ and #175592)
+
+-------------------------------------------------------------------
+Thu May 25 20:01:03 CEST 2006 - maw(a)suse.de
+
+- New source drop (r29091) which:
+- Further fixes restart on update. #178218
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ zmd.spec ++++++
--- /var/tmp/diff_new_pack.d8IKOp/_old 2006-05-31 03:06:43.000000000 +0200
+++ /var/tmp/diff_new_pack.d8IKOp/_new 2006-05-31 03:06:43.000000000 +0200
@@ -14,7 +14,7 @@
BuildRequires: dbus-1-mono log4net mono-basic mono-data-sqlite mono-devel perl-XML-Parser rpm-devel sqlite-devel
URL: http://www.novell.com
Version: 7.1.1.0
-Release: 44
+Release: 45
License: LGPL
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Source0: %{name}-%{version}.tar.bz2
@@ -159,6 +159,38 @@
# %{_libdir}/monodoc/sources/*
%changelog -n zmd
+* Wed May 31 2006 - maw(a)suse.de
+- New source drop (r29403) which:
+- Adds new exceptions for key and digest errors
+- Supports FTP service autodetection (#178832)
+- Detects FTP errors correctly if the requested file size request
+ fails
+- Detects if a helper process exited due to a signal
+- Blocks sbutdowns while helpers are running (#178144)
+- Before restarting, nukes the pid file so when we start up we
+ don't think another zmd is running (partial fix for #178218)
+- Implements a key whitelist, exposed over remoting, to control
+ zmd's behavior when the helpers raise a security error/event.
+- Changes the key/digest related parsing functions to use the new
+ exception types and place them in the progress objects for the
+ clients to handle. Also, sets KEYRING_CALLBACK for a few of the
+ zypp helpers to turn on key/digest checking
+- Throws ResolvableNotFoundException if ResolvableInfo ->
+ Resolvable conversion fails. This should happen very rarely
+ and only if a service is removed after a resolvable from the
+ service is sent to the client and after client responds
+ with it. Or, while the service is refreshing. (partial fix
+ for #176640)
+- Corrects the CanMount url; the NU service was automatically
+ selected for YUM services as well
+- Parses key/digest status from the backend helpers
+- Adds database schema version. When opening the database and
+ there is either a schema version mismatch or the database is
+ corrupted, delete the database and create it again. (#165819
+ and #175592)
+* Thu May 25 2006 - maw(a)suse.de
+- New source drop (r29091) which:
+- Further fixes restart on update. #178218
* Thu May 25 2006 - maw(a)suse.de
- Added a patch (sleep-interval.patch) to make zmd go to sleep
after 30 minutes of inactivity instead of 5.
++++++ zmd-7.1.1.0.tar.bz2 ++++++
++++ 2548 lines of diff (skipped)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
1
0
Hello community,
here is the log from the commit of package zen-updater
checked in at Wed May 31 03:06:35 CEST 2006.
--------
--- zen-updater/zen-updater.changes 2006-05-22 23:34:22.000000000 +0200
+++ zen-updater/zen-updater.changes 2006-05-31 02:53:27.000000000 +0200
@@ -1,0 +2,12 @@
+Wed May 31 02:51:46 CEST 2006 - maw(a)suse.de
+
+- New source drop (r29404) which:
+- Fixes a few dialog spacing issues
+- Re-factors resolution/transaction stuff so all resolvables
+ are resolved/transacted together
+- Implements ITransactionEventHandler and adds links for filtering
+ available types shown (#174736, #177903, and #178015)
+- Fixes #177609, #179500, and #175109
+- Adds support for handling key/digest related errors.
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ zen-updater.spec ++++++
--- /var/tmp/diff_new_pack.pNernJ/_old 2006-05-31 03:06:27.000000000 +0200
+++ /var/tmp/diff_new_pack.pNernJ/_new 2006-05-31 03:06:27.000000000 +0200
@@ -14,7 +14,7 @@
BuildRequires: glib-sharp2 gtk-sharp2 gtk2-devel log4net mono-basic mono-data-sqlite mono-devel perl-XML-Parser update-desktop-files zmd-devel
URL: http://novell.com/
Version: 7.1.0
-Release: 53
+Release: 54
License: LGPL
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Source0: %name-%version.tar.bz2
@@ -70,6 +70,15 @@
%{_mandir}/*/*
%changelog -n zen-updater
+* Wed May 31 2006 - maw(a)suse.de
+- New source drop (r29404) which:
+- Fixes a few dialog spacing issues
+- Re-factors resolution/transaction stuff so all resolvables
+ are resolved/transacted together
+- Implements ITransactionEventHandler and adds links for filtering
+ available types shown (#174736, #177903, and #178015)
+- Fixes #177609, #179500, and #175109
+- Adds support for handling key/digest related errors.
* Mon May 22 2006 - maw(a)suse.de
- New source drop (r28694) which:
- Accepts pkg catalog:pkg or pkg.rpm on the command line for
++++++ zen-updater-7.1.0.tar.bz2 ++++++
++++ 40067 lines of diff (skipped)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
1
0
Hello community,
here is the log from the commit of package rug
checked in at Wed May 31 03:06:20 CEST 2006.
--------
--- rug/rug.changes 2006-05-22 23:22:01.000000000 +0200
+++ rug/rug.changes 2006-05-31 02:50:11.000000000 +0200
@@ -1,0 +2,9 @@
+Wed May 31 02:49:20 CEST 2006 - maw(a)suse.de
+
+- New source drop (r29084) which:
+- Removes some debug spew that was inadvertently left in a
+ previous commit
+- Handles catalogs with empty 'DisplayName's (#178646)
+- Adds key commands kl, ka, and kd.
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ rug.spec ++++++
--- /var/tmp/diff_new_pack.m3nfdP/_old 2006-05-31 03:05:55.000000000 +0200
+++ /var/tmp/diff_new_pack.m3nfdP/_new 2006-05-31 03:05:55.000000000 +0200
@@ -14,7 +14,7 @@
BuildRequires: gtkdoc mono-basic mono-data-sqlite mono-devel zmd-devel
URL: http://www.novell.com
Version: 7.1.1.0
-Release: 19
+Release: 20
License: GPL
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Summary: Command Line Client for zmd
@@ -78,6 +78,12 @@
%_mandir/*/*/*.gz
%changelog -n rug
+* Wed May 31 2006 - maw(a)suse.de
+- New source drop (r29084) which:
+- Removes some debug spew that was inadvertently left in a
+ previous commit
+- Handles catalogs with empty 'DisplayName's (#178646)
+- Adds key commands kl, ka, and kd.
* Mon May 22 2006 - maw(a)suse.de
- New source drop (r28766) which:
- Eats "permission denied" exception if the argument isn't a
++++++ rug-7.1.1.0.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/rug-7.1.1.0/src/Catalogs.cs new/rug-7.1.1.0/src/Catalogs.cs
--- old/rug-7.1.1.0/src/Catalogs.cs 2006-05-15 17:16:15.000000000 +0200
+++ new/rug-7.1.1.0/src/Catalogs.cs 2006-05-26 17:32:34.000000000 +0200
@@ -80,11 +80,6 @@
string displayNameInitials = GetInitials (displayName, true);
string displayNameInitialsAlt = GetInitials (displayName, false);
- Console.WriteLine ("'{0}' '{1}' '{2}' '{3}' '{4}' '{5}'",
- name, displayName,
- nameInitials, nameInitialsAlt,
- displayNameInitials, displayNameInitialsAlt);
-
if (info.Name == catalog || info.DisplayName == catalog ||
name == catalogLower || displayName == catalogLower ||
nameInitials == catalogLower || nameInitialsAlt == catalogLower ||
@@ -110,6 +105,9 @@
}
private static string GetInitials (string c, bool replaceDots) {
+ if (c == null || c == String.Empty)
+ return null;
+
if (replaceDots)
c = c.Replace ('.', ' ');
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/rug-7.1.1.0/src/ChangeLog new/rug-7.1.1.0/src/ChangeLog
--- old/rug-7.1.1.0/src/ChangeLog 2006-05-22 17:18:46.000000000 +0200
+++ new/rug-7.1.1.0/src/ChangeLog 2006-05-26 17:32:34.000000000 +0200
@@ -1,3 +1,16 @@
+2006-05-25 Tambet Ingo <tambet(a)ximian.com>
+
+ * Catalogs.cs: Remove some debug spew I forgot to take out from the
+ previous commit. Handle catalogs with empty DisplayName.
+ Fixes #178646.
+
+2006-05-23 Dan Mills <thunder(a)ximian.com>
+
+ * Makefile.am: Add KeyCommands.cs.
+
+ * KeyCommands.cs: Adds key-list (kl), key-add (ka), and key-delete
+ (kd) to manage trusted keys.
+
2006-05-22 Tambet Ingo <tambet(a)ximian.com>
* PackageCommands.cs (FindLocalPackage): Eat "permission denied"
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/rug-7.1.1.0/src/KeyCommands.cs new/rug-7.1.1.0/src/KeyCommands.cs
--- old/rug-7.1.1.0/src/KeyCommands.cs 1970-01-01 01:00:00.000000000 +0100
+++ new/rug-7.1.1.0/src/KeyCommands.cs 2006-05-23 20:46:17.000000000 +0200
@@ -0,0 +1,174 @@
+/*
+ * Copyright (c) 2005 Novell, Inc. All Rights Reserved.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of version 2 of the GNU General Public License
+ * as published by the Free Software Foundation.
+ *
+ * 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, contact Novell, Inc.
+ *
+ * To contact Novell about this file by physical or electronic mail,
+ * you may find current contact information at www.novell.com.
+ *
+ */
+
+using System;
+using System.Collections;
+using Novell.Zenworks.Zmd.Public;
+using Novell.Zenworks.Zmd.Packaging.Public;
+using Novell.Zenworks.Utility;
+
+namespace Novell.Zenworks.Rug {
+
+ class KeyWhitelistCommand : Command {
+
+ private IKeyManager keyManager = null;
+
+ protected IKeyManager KeyManager {
+ get {
+ if (keyManager == null)
+ keyManager = (IKeyManager) Activate ("IKeyManager", typeof (IKeyManager));
+ return keyManager;
+ }
+ }
+ }
+
+ class KeyListCommand : KeyWhitelistCommand {
+
+ public override string Name {
+ get { return "key-list"; }
+ }
+
+ public override string Description {
+ get { return GetString ("Display whitelisted keys for a service"); }
+ }
+
+ public override string Category {
+ get { return GetString ("Security"); }
+ }
+
+ public override string[] Aliases {
+ get { return new string[] { "kl" }; }
+ }
+
+ public override void Execute () {
+ IPreferenceManager prefs = (IPreferenceManager) Activate ("IPreferenceManager",
+ typeof (IPreferenceManager));
+ string level = (string) prefs.GetValue ("security-level");
+ if (level != "signature") {
+ Error (GetString ("Signature verification is not enabled."));
+ }
+
+ IKey[] keys = KeyManager.Keys;
+
+ if (keys.Length == 0) {
+ Error (GetString ("No whitelisted keys found."));
+ return;
+ }
+
+ Formatter formatter = new Formatter (GetString ("Name"), GetString ("ID"), GetString ("Fingerprint"));
+ foreach (IKey key in keys) {
+ formatter.AddRow (key.Name, key.Id, key.Fingerprint);
+ }
+
+ Console.WriteLine (formatter);
+ }
+ }
+
+ class KeyAddCommand : KeyWhitelistCommand {
+
+ public override string Name {
+ get { return "key-add"; }
+ }
+
+ public override string Description {
+ get { return GetString ("Add to the list of whitelisted keys for a service"); }
+ }
+
+ public override string Category {
+ get { return GetString ("Security"); }
+ }
+
+ public override string[] Aliases {
+ get { return new string[] { "ka" }; }
+ }
+
+ public override string Arguments {
+ get { return "<keyname> <keyid>"; }
+ }
+
+ public override void Execute () {
+ if (this.RemainingArguments.Length < 3) {
+ Error (GetString ("A name, id, and fingerprint are required. You may use blank values (\"\") for some if desired."));
+ return;
+ }
+ if (this.RemainingArguments.Length > 3) {
+ Error (GetString ("Too many arguments."));
+ return;
+ }
+
+ KeyManager.Add (RemainingArguments[0], RemainingArguments[1], RemainingArguments[2]);
+
+ Console.WriteLine (GetString ("Key added."));
+ }
+ }
+
+ class KeyDeleteCommand : KeyWhitelistCommand {
+
+ public override string Name {
+ get { return "key-delete"; }
+ }
+
+ public override string Description {
+ get { return GetString ("Remove from the list of whitelisted keys for a service"); }
+ }
+
+ public override string Category {
+ get { return GetString ("Security"); }
+ }
+
+ public override string[] Aliases {
+ get { return new string[] { "kd" }; }
+ }
+
+ public override string Arguments {
+ get { return "<keyid>"; }
+ }
+
+ public override void Execute () {
+ if (this.RemainingArguments.Length < 1) {
+ Error (GetString ("No key was specified."));
+ return;
+ }
+ if (this.RemainingArguments.Length == 2) {
+ Error (GetString ("Must specify either one argument (matches anything with that string), or three (matches one key exactly)."));
+ return;
+ }
+ if (this.RemainingArguments.Length > 3) {
+ Error (GetString ("Too many arguments."));
+ return;
+ }
+
+ IKey k;
+ if (this.RemainingArguments.Length == 1) {
+ k = KeyManager.LookupKey (RemainingArguments[0]);
+ } else {
+ k = KeyManager.LookupKey (RemainingArguments[0], RemainingArguments[1], RemainingArguments[2]);
+ }
+
+ if (k == null) {
+ Error (GetString ("Could not find key."));
+ return;
+ }
+
+ KeyManager.Remove (k);
+ Console.WriteLine (GetString ("Key removed."));
+ }
+ }
+}
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/rug-7.1.1.0/src/Makefile.am new/rug-7.1.1.0/src/Makefile.am
--- old/rug-7.1.1.0/src/Makefile.am 2006-04-10 14:42:58.000000000 +0200
+++ new/rug-7.1.1.0/src/Makefile.am 2006-05-23 20:46:17.000000000 +0200
@@ -16,6 +16,7 @@
Command.cs \
DaemonHelper.cs \
Formatter.cs \
+ KeyCommands.cs \
LogCommands.cs \
PackageCommands.cs \
CommandLineParser.cs \
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/rug-7.1.1.0/src/Makefile.in new/rug-7.1.1.0/src/Makefile.in
--- old/rug-7.1.1.0/src/Makefile.in 2006-05-16 00:07:04.000000000 +0200
+++ new/rug-7.1.1.0/src/Makefile.in 2006-05-26 17:32:56.000000000 +0200
@@ -198,6 +198,7 @@
Command.cs \
DaemonHelper.cs \
Formatter.cs \
+ KeyCommands.cs \
LogCommands.cs \
PackageCommands.cs \
CommandLineParser.cs \
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
1
0
Hello community,
here is the log from the commit of package ctags
checked in at Wed May 31 03:05:48 CEST 2006.
--------
--- ctags/ctags.changes 2006-03-07 23:20:08.000000000 +0100
+++ ctags/ctags.changes 2006-05-31 03:05:04.000000000 +0200
@@ -1,0 +2,24 @@
+Tue May 30 15:10:42 CEST 2006 - schwab(a)suse.de
+
+- Update to ctags 5.6
+ * Reformatted code for independence of tab stop setting.
+ * Changed default configuration to disable installation of etags links.
+ * Changed --langmap to first unmap each supplied extension from other languages.
+ * Added support for ASP constants [ASP, Patch #961842].
+ * Added support for GNU make extensions [Make].
+ * Added .mk as extension recognized as a make language file [Make].
+ * Added missing help for list-maps options [Bug #1201826].
+ * Added new extension field "typeref" [thanks to Bram Moolenaar].
+ * Extended functionality of Ruby parser with patch from Elliot Hughes [Ruby].
+ * Fixed creation of TAGS file with etags-include but no files [Bug #941233].
+ * Fixed problem reading last line of list file (-L) without final newline.
+ * Fixed infinite loop that could occur on files without final newline [C, Java].
+ * Fixed incorrect tag for first field of table [SQL].
+ * Fixed missing tags for functions beginning with underscore [Sh].
+ * Fixed missing tags for functions with variable arg list [C, Bug #1201689].
+ * Fixed parsing problem with parentheses in argument list [C, Bug #1085585].
+ * Fixed problem in preprocessor directive handling [C, Bug #1086609].
+- Update etags to 17.17.
+ * added allow-duplicates
+
+-------------------------------------------------------------------
Old:
----
ctags-5.5.4-ycp-parser.diff
ctags-5.5.4.diff
ctags-5.5.4.tar.gz
etags-17.14-gnuctags-allow-duplicates.diff
etags-17.14.diff
etags-17.14.tar.gz
New:
----
ctags-5.6.diff
ctags-5.6.tar.gz
ctags-ycp-parser.diff
etags-17.17.diff
etags-17.17.tar.gz
etags-gnuctags-allow-duplicates.diff
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ctags.spec ++++++
--- /var/tmp/diff_new_pack.I92QMx/_old 2006-05-31 03:05:41.000000000 +0200
+++ /var/tmp/diff_new_pack.I92QMx/_new 2006-05-31 03:05:41.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package ctags (Version 2006.3.7)
+# spec file for package ctags (Version 2006.5.31)
#
# Copyright (c) 2006 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
@@ -14,19 +14,19 @@
License: GPL
Group: Development/Tools/Navigators
Autoreqprov: on
-%define exuberant_ver 5.5.4
-%define emacs_ver 17.14
-Version: 2006.3.7
+%define exuberant_ver 5.6
+%define emacs_ver 17.17
+Version: 2006.5.31
Release: 1
Summary: A Program to Generate Tag Files for Use with vi and Other Editors
-URL: http://ctags.sourceforge.net
+URL: http://ctags.sourceforge.net/
Source0: ftp://ftp.sourceforge.net/pub/sourceforge/ctags/ctags-%{exuberant_ver}.tar.…
Source1: etags-%{emacs_ver}.tar.gz
Source2: README.SuSE
Patch0: ctags-%{exuberant_ver}.diff
-Patch1: ctags-%{exuberant_ver}-ycp-parser.diff
+Patch1: ctags-ycp-parser.diff
Patch2: etags-%{emacs_ver}.diff
-Patch3: etags-%{emacs_ver}-gnuctags-allow-duplicates.diff
+Patch3: etags-gnuctags-allow-duplicates.diff
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
@@ -58,10 +58,7 @@
CC=gcc
CFLAGS="$RPM_OPT_FLAGS -Wall"
export CFLAGS CC
- ./configure ${RPM_ARCH}-suse-linux \
- --prefix=/usr \
- --mandir='%{_mandir}' \
- --disable-etags
+./configure --prefix=/usr --mandir=%{_mandir} --disable-etags
make
cd ../etags-%{emacs_ver}
CFLAGS="$CFLAGS -I../ctags-%{exuberant_ver}"
@@ -71,12 +68,11 @@
%install
make install prefix=$RPM_BUILD_ROOT/usr mandir=$RPM_BUILD_ROOT%{_mandir}
-mkdir -p $RPM_BUILD_ROOT%{_defaultdocdir}/ctags/Exuberant_Ctags
-install -m 644 COPYING EXTENDING.html FAQ README $RPM_BUILD_ROOT%{_defaultdocdir}/ctags/Exuberant_Ctags
-install -m 644 %{S:2} $RPM_BUILD_ROOT%{_defaultdocdir}/ctags
+mkdir -p $RPM_BUILD_ROOT%{_docdir}/ctags/Exuberant_Ctags
+install -m 644 COPYING EXTENDING.html FAQ README $RPM_BUILD_ROOT%{_docdir}/ctags/Exuberant_Ctags
+install -m 644 %{S:2} $RPM_BUILD_ROOT%{_docdir}/ctags
cd ../etags-%{emacs_ver}
-install -m 0755 etags gnuctags $RPM_BUILD_ROOT/usr/bin
-rm -f $RPM_BUILD_ROOT%{_mandir}/man1/etags.1*
+install -m 755 etags gnuctags $RPM_BUILD_ROOT/usr/bin
install -m 644 etags.1 $RPM_BUILD_ROOT%{_mandir}/man1
ln -sf etags.1.gz $RPM_BUILD_ROOT%{_mandir}/man1/gnuctags.1.gz
@@ -88,20 +84,33 @@
/usr/bin/ctags
/usr/bin/gnuctags
/usr/bin/etags
-%doc %{_mandir}/man1/ctags.1.gz
-%doc %{_mandir}/man1/gnuctags.1.gz
-%doc %{_mandir}/man1/etags.1.gz
-%dir %{_defaultdocdir}/ctags
-%docdir %{_defaultdocdir}/ctags
-%dir %{_defaultdocdir}/ctags/Exuberant_Ctags
-%docdir %{_defaultdocdir}/ctags/Exuberant_Ctags
-%doc %{_defaultdocdir}/ctags/Exuberant_Ctags/COPYING
-%doc %{_defaultdocdir}/ctags/Exuberant_Ctags/EXTENDING.html
-%doc %{_defaultdocdir}/ctags/Exuberant_Ctags/FAQ
-%doc %{_defaultdocdir}/ctags/Exuberant_Ctags/README
-%doc %{_defaultdocdir}/ctags/README.SuSE
+%{_mandir}/man1/ctags.1.gz
+%{_mandir}/man1/gnuctags.1.gz
+%{_mandir}/man1/etags.1.gz
+%{_docdir}/ctags
%changelog -n ctags
+* Tue May 30 2006 - schwab(a)suse.de
+- Update to ctags 5.6
+ * Reformatted code for independence of tab stop setting.
+ * Changed default configuration to disable installation of etags links.
+ * Changed --langmap to first unmap each supplied extension from other languages.
+ * Added support for ASP constants [ASP, Patch #961842].
+ * Added support for GNU make extensions [Make].
+ * Added .mk as extension recognized as a make language file [Make].
+ * Added missing help for list-maps options [Bug #1201826].
+ * Added new extension field "typeref" [thanks to Bram Moolenaar].
+ * Extended functionality of Ruby parser with patch from Elliot Hughes [Ruby].
+ * Fixed creation of TAGS file with etags-include but no files [Bug #941233].
+ * Fixed problem reading last line of list file (-L) without final newline.
+ * Fixed infinite loop that could occur on files without final newline [C, Java].
+ * Fixed incorrect tag for first field of table [SQL].
+ * Fixed missing tags for functions beginning with underscore [Sh].
+ * Fixed missing tags for functions with variable arg list [C, Bug #1201689].
+ * Fixed parsing problem with parentheses in argument list [C, Bug #1085585].
+ * Fixed problem in preprocessor directive handling [C, Bug #1086609].
+- Update etags to 17.17.
+ * added allow-duplicates
* Tue Mar 07 2006 - od(a)suse.de
- wrote and added a YCP parser based on the C code parser
(ctags-5.5.4-ycp-parser.diff)
++++++ README.SuSE ++++++
--- ctags/README.SuSE 2006-03-07 23:20:08.000000000 +0100
+++ ctags/README.SuSE 2006-05-30 16:21:17.000000000 +0200
@@ -10,7 +10,6 @@
ctags -e etags from Darren Hiebert, supports e.g. Eiffel
gnuctags ctags from Emacs sources, supports e.g. Lisp
etags etags from Emacs sources, supports e.g. Lisp
- gctags ctags included in package global, supports e.g. Yacc
The version of Darren Hiebert is also called the Exuberant Ctags.
++++++ ctags-5.5.4-ycp-parser.diff -> ctags-5.6.diff ++++++
--- ctags/ctags-5.5.4-ycp-parser.diff 2006-03-07 23:20:08.000000000 +0100
+++ ctags/ctags-5.6.diff 2001-12-14 15:41:50.000000000 +0100
@@ -1,483 +1,61 @@
- c.c | 317 ++++++++++++++++++++++++++++++++++++++------------------------
- parsers.h | 3
- 2 files changed, 200 insertions(+), 120 deletions(-)
-
-Index: c.c
-===================================================================
---- c.c.orig 2004-02-28 16:37:52.000000000 +0100
-+++ c.c 2006-03-03 19:50:51.000000000 +0100
-@@ -61,35 +61,36 @@ typedef enum eException {
- */
- typedef enum eKeywordId {
- KEYWORD_NONE = -1,
-- KEYWORD_ATTRIBUTE, KEYWORD_ABSTRACT,
-- KEYWORD_BOOLEAN, KEYWORD_BYTE, KEYWORD_BAD_STATE, KEYWORD_BAD_TRANS,
-- KEYWORD_BIND, KEYWORD_BIND_VAR, KEYWORD_BIT,
-+ KEYWORD_ATTRIBUTE, KEYWORD_ABSTRACT, KEYWORD_ANY,
-+ KEYWORD_BOOLEAN, KEYWORD_BYTE, KEYWORD_BYTEBLOCK, KEYWORD_BAD_STATE,
-+ KEYWORD_BAD_TRANS,
-+ KEYWORD_BIND, KEYWORD_BIND_VAR, KEYWORD_BIT, KEYWORD_BLOCK,
- KEYWORD_CASE, KEYWORD_CATCH, KEYWORD_CHAR, KEYWORD_CLASS, KEYWORD_CONST,
- KEYWORD_CONSTRAINT, KEYWORD_COVERAGE_BLOCK, KEYWORD_COVERAGE_DEF,
-- KEYWORD_DEFAULT, KEYWORD_DELEGATE, KEYWORD_DO, KEYWORD_DOUBLE,
-- KEYWORD_ELSE, KEYWORD_ENUM, KEYWORD_EXPLICIT, KEYWORD_EXTERN,
-+ KEYWORD_DEFAULT, KEYWORD_DECLARATION, KEYWORD_DELEGATE, KEYWORD_DO, KEYWORD_DOUBLE,
-+ KEYWORD_ELSE, KEYWORD_ENUM, KEYWORD_EXPLICIT, KEYWORD_EXPRESSION, KEYWORD_EXTERN,
- KEYWORD_EXTENDS, KEYWORD_EVENT,
- KEYWORD_FINAL, KEYWORD_FLOAT, KEYWORD_FOR, KEYWORD_FRIEND, KEYWORD_FUNCTION,
- KEYWORD_GOTO,
- KEYWORD_IF, KEYWORD_IMPLEMENTS, KEYWORD_IMPORT, KEYWORD_INLINE, KEYWORD_INT,
- KEYWORD_INOUT, KEYWORD_INPUT, KEYWORD_INTEGER, KEYWORD_INTERFACE,
-- KEYWORD_INTERNAL,
-- KEYWORD_LOCAL, KEYWORD_LONG,
-+ KEYWORD_INTERNAL, KEYWORD_LIST,
-+ KEYWORD_LOCAL, KEYWORD_LOCALE, KEYWORD_LONG, KEYWORD_MAP,
- KEYWORD_M_BAD_STATE, KEYWORD_M_BAD_TRANS, KEYWORD_M_STATE, KEYWORD_M_TRANS,
- KEYWORD_MUTABLE,
- KEYWORD_NAMESPACE, KEYWORD_NEW, KEYWORD_NEWCOV, KEYWORD_NATIVE,
- KEYWORD_OPERATOR, KEYWORD_OUTPUT, KEYWORD_OVERLOAD, KEYWORD_OVERRIDE,
-- KEYWORD_PACKED, KEYWORD_PORT, KEYWORD_PACKAGE, KEYWORD_PRIVATE,
-- KEYWORD_PROGRAM, KEYWORD_PROTECTED, KEYWORD_PUBLIC,
-+ KEYWORD_PACKED, KEYWORD_PATH, KEYWORD_PORT, KEYWORD_PACKAGE, KEYWORD_PRIVATE,
-+ KEYWORD_PROGRAM, KEYWORD_PROTECTED, KEYWORD_PUBLIC, KEYWORD_REPEAT,
- KEYWORD_REGISTER, KEYWORD_RETURN,
- KEYWORD_SHADOW, KEYWORD_STATE,
- KEYWORD_SHORT, KEYWORD_SIGNED, KEYWORD_STATIC, KEYWORD_STRING,
-- KEYWORD_STRUCT, KEYWORD_SWITCH, KEYWORD_SYNCHRONIZED,
-- KEYWORD_TASK, KEYWORD_TEMPLATE, KEYWORD_THIS, KEYWORD_THROW,
-+ KEYWORD_STRUCT, KEYWORD_SWITCH, KEYWORD_SYNCHRONIZED, KEYWORD_SYMBOL,
-+ KEYWORD_TASK, KEYWORD_TEMPLATE, KEYWORD_TERM, KEYWORD_THIS, KEYWORD_THROW,
- KEYWORD_THROWS, KEYWORD_TRANSIENT, KEYWORD_TRANS, KEYWORD_TRANSITION,
- KEYWORD_TRY, KEYWORD_TYPEDEF, KEYWORD_TYPENAME,
-- KEYWORD_UINT, KEYWORD_ULONG, KEYWORD_UNION, KEYWORD_UNSIGNED, KEYWORD_USHORT,
-- KEYWORD_USING,
-+ KEYWORD_UINT, KEYWORD_ULONG, KEYWORD_UNION, KEYWORD_UNSIGNED, KEYWORD_UNTIL,
-+ KEYWORD_USHORT, KEYWORD_USING,
- KEYWORD_VIRTUAL, KEYWORD_VOID, KEYWORD_VOLATILE,
- KEYWORD_WCHAR_T, KEYWORD_WHILE
- } keywordId;
-@@ -100,7 +101,7 @@ typedef enum eKeywordId {
- typedef struct sKeywordDesc {
- const char *name;
- keywordId id;
-- short isValid [5]; /* indicates languages for which kw is valid */
-+ short isValid [6]; /* indicates languages for which kw is valid */
- } keywordDesc;
-
- /* Used for reporting the type of object parsed by nextToken ().
-@@ -135,6 +136,7 @@ typedef enum eTagScope {
-
- typedef enum eDeclaration {
- DECL_NONE,
-+ DECL_BLOCK, /* YCP unnamed block */
- DECL_BASE, /* base type (default) */
- DECL_CLASS,
- DECL_ENUM,
-@@ -257,6 +259,7 @@ static langType Lang_cpp;
- static langType Lang_csharp;
- static langType Lang_java;
- static langType Lang_vera;
-+static langType Lang_ycp;
- static vString *Signature;
- static boolean CollectingSignature;
-
-@@ -350,109 +353,137 @@ static kindOption VeraKinds [] = {
- { FALSE, 'x', "externvar", "external variable declarations"}
- };
-
-+/* Used to index into the YCPKinds table. */
-+typedef enum {
-+ YK_UNDEFINED = -1,
-+ YK_FUNCTION, YK_PROTOTYPE,
-+ YK_LOCAL,
-+ YK_VARIABLE
-+} ycpKind;
-+
-+static kindOption YCPKinds [] = {
-+ { TRUE, 'f', "function", "function definitions"},
-+ { FALSE, 'p', "prototype", "function prototypes"},
-+ { FALSE, 'l', "local", "local variables"},
-+ { TRUE, 'v', "variable", "variable definitions"},
-+};
-+
- static const keywordDesc KeywordTable [] = {
-- /* C++ */
-- /* ANSI C | C# Java */
-- /* | | | | Vera */
-- /* keyword keyword ID | | | | | */
-- { "__attribute__", KEYWORD_ATTRIBUTE, { 1, 1, 1, 0, 0 } },
-- { "abstract", KEYWORD_ABSTRACT, { 0, 0, 1, 1, 0 } },
-- { "bad_state", KEYWORD_BAD_STATE, { 0, 0, 0, 0, 1 } },
-- { "bad_trans", KEYWORD_BAD_TRANS, { 0, 0, 0, 0, 1 } },
-- { "bind", KEYWORD_BIND, { 0, 0, 0, 0, 1 } },
-- { "bind_var", KEYWORD_BIND_VAR, { 0, 0, 0, 0, 1 } },
-- { "bit", KEYWORD_BIT, { 0, 0, 0, 0, 1 } },
-- { "boolean", KEYWORD_BOOLEAN, { 0, 0, 0, 1, 0 } },
-- { "byte", KEYWORD_BYTE, { 0, 0, 0, 1, 0 } },
-- { "case", KEYWORD_CASE, { 1, 1, 1, 1, 0 } },
-- { "catch", KEYWORD_CATCH, { 0, 1, 1, 0, 0 } },
-- { "char", KEYWORD_CHAR, { 1, 1, 1, 1, 0 } },
-- { "class", KEYWORD_CLASS, { 0, 1, 1, 1, 1 } },
-- { "const", KEYWORD_CONST, { 1, 1, 1, 1, 0 } },
-- { "constraint", KEYWORD_CONSTRAINT, { 0, 0, 0, 0, 1 } },
-- { "coverage_block", KEYWORD_COVERAGE_BLOCK, { 0, 0, 0, 0, 1 } },
-- { "coverage_def", KEYWORD_COVERAGE_DEF, { 0, 0, 0, 0, 1 } },
-- { "do", KEYWORD_DO, { 1, 1, 1, 1, 0 } },
-- { "default", KEYWORD_DEFAULT, { 1, 1, 1, 1, 0 } },
-- { "delegate", KEYWORD_DELEGATE, { 0, 0, 1, 0, 0 } },
-- { "double", KEYWORD_DOUBLE, { 1, 1, 1, 1, 0 } },
-- { "else", KEYWORD_ELSE, { 1, 1, 0, 1, 0 } },
-- { "enum", KEYWORD_ENUM, { 1, 1, 1, 0, 1 } },
-- { "event", KEYWORD_EVENT, { 0, 0, 1, 0, 1 } },
-- { "explicit", KEYWORD_EXPLICIT, { 0, 1, 1, 0, 0 } },
-- { "extends", KEYWORD_EXTENDS, { 0, 0, 0, 1, 1 } },
-- { "extern", KEYWORD_EXTERN, { 1, 1, 1, 0, 1 } },
-- { "final", KEYWORD_FINAL, { 0, 0, 0, 1, 0 } },
-- { "float", KEYWORD_FLOAT, { 1, 1, 1, 1, 0 } },
-- { "for", KEYWORD_FOR, { 1, 1, 1, 1, 0 } },
-- { "friend", KEYWORD_FRIEND, { 0, 1, 0, 0, 0 } },
-- { "function", KEYWORD_FUNCTION, { 0, 0, 0, 0, 1 } },
-- { "goto", KEYWORD_GOTO, { 1, 1, 1, 1, 0 } },
-- { "if", KEYWORD_IF, { 1, 1, 1, 1, 0 } },
-- { "implements", KEYWORD_IMPLEMENTS, { 0, 0, 0, 1, 0 } },
-- { "import", KEYWORD_IMPORT, { 0, 0, 0, 1, 0 } },
-- { "inline", KEYWORD_INLINE, { 0, 1, 0, 0, 0 } },
-- { "inout", KEYWORD_INOUT, { 0, 0, 0, 0, 1 } },
-- { "input", KEYWORD_INPUT, { 0, 0, 0, 0, 1 } },
-- { "int", KEYWORD_INT, { 1, 1, 1, 1, 0 } },
-- { "integer", KEYWORD_INTEGER, { 0, 0, 0, 0, 1 } },
-- { "interface", KEYWORD_INTERFACE, { 0, 0, 1, 1, 1 } },
-- { "internal", KEYWORD_INTERNAL, { 0, 0, 1, 0, 0 } },
-- { "local", KEYWORD_LOCAL, { 0, 0, 0, 0, 1 } },
-- { "long", KEYWORD_LONG, { 1, 1, 1, 1, 0 } },
-- { "m_bad_state", KEYWORD_M_BAD_STATE, { 0, 0, 0, 0, 1 } },
-- { "m_bad_trans", KEYWORD_M_BAD_TRANS, { 0, 0, 0, 0, 1 } },
-- { "m_state", KEYWORD_M_STATE, { 0, 0, 0, 0, 1 } },
-- { "m_trans", KEYWORD_M_TRANS, { 0, 0, 0, 0, 1 } },
-- { "mutable", KEYWORD_MUTABLE, { 0, 1, 0, 0, 0 } },
-- { "namespace", KEYWORD_NAMESPACE, { 0, 1, 1, 0, 0 } },
-- { "native", KEYWORD_NATIVE, { 0, 0, 0, 1, 0 } },
-- { "new", KEYWORD_NEW, { 0, 1, 1, 1, 0 } },
-- { "newcov", KEYWORD_NEWCOV, { 0, 0, 0, 0, 1 } },
-- { "operator", KEYWORD_OPERATOR, { 0, 1, 1, 0, 0 } },
-- { "output", KEYWORD_OUTPUT, { 0, 0, 0, 0, 1 } },
-- { "overload", KEYWORD_OVERLOAD, { 0, 1, 0, 0, 0 } },
-- { "override", KEYWORD_OVERRIDE, { 0, 0, 1, 0, 0 } },
-- { "package", KEYWORD_PACKAGE, { 0, 0, 0, 1, 0 } },
-- { "packed", KEYWORD_PACKED, { 0, 0, 0, 0, 1 } },
-- { "port", KEYWORD_PORT, { 0, 0, 0, 0, 1 } },
-- { "private", KEYWORD_PRIVATE, { 0, 1, 1, 1, 0 } },
-- { "program", KEYWORD_PROGRAM, { 0, 0, 0, 0, 1 } },
-- { "protected", KEYWORD_PROTECTED, { 0, 1, 1, 1, 1 } },
-- { "public", KEYWORD_PUBLIC, { 0, 1, 1, 1, 1 } },
-- { "register", KEYWORD_REGISTER, { 1, 1, 0, 0, 0 } },
-- { "return", KEYWORD_RETURN, { 1, 1, 1, 1, 0 } },
-- { "shadow", KEYWORD_SHADOW, { 0, 0, 0, 0, 1 } },
-- { "short", KEYWORD_SHORT, { 1, 1, 1, 1, 0 } },
-- { "signed", KEYWORD_SIGNED, { 1, 1, 0, 0, 0 } },
-- { "state", KEYWORD_STATE, { 0, 0, 0, 0, 1 } },
-- { "static", KEYWORD_STATIC, { 1, 1, 1, 1, 1 } },
-- { "string", KEYWORD_STRING, { 0, 0, 1, 0, 1 } },
-- { "struct", KEYWORD_STRUCT, { 1, 1, 1, 0, 0 } },
-- { "switch", KEYWORD_SWITCH, { 1, 1, 1, 1, 0 } },
-- { "synchronized", KEYWORD_SYNCHRONIZED, { 0, 0, 0, 1, 0 } },
-- { "task", KEYWORD_TASK, { 0, 0, 0, 0, 1 } },
-- { "template", KEYWORD_TEMPLATE, { 0, 1, 0, 0, 0 } },
-- { "this", KEYWORD_THIS, { 0, 1, 1, 1, 0 } },
-- { "throw", KEYWORD_THROW, { 0, 1, 1, 1, 0 } },
-- { "throws", KEYWORD_THROWS, { 0, 0, 0, 1, 0 } },
-- { "trans", KEYWORD_TRANS, { 0, 0, 0, 0, 1 } },
-- { "transition", KEYWORD_TRANSITION, { 0, 0, 0, 0, 1 } },
-- { "transient", KEYWORD_TRANSIENT, { 0, 0, 0, 1, 0 } },
-- { "try", KEYWORD_TRY, { 0, 1, 1, 0, 0 } },
-- { "typedef", KEYWORD_TYPEDEF, { 1, 1, 1, 0, 1 } },
-- { "typename", KEYWORD_TYPENAME, { 0, 1, 0, 0, 0 } },
-- { "uint", KEYWORD_UINT, { 0, 0, 1, 0, 0 } },
-- { "ulong", KEYWORD_ULONG, { 0, 0, 1, 0, 0 } },
-- { "union", KEYWORD_UNION, { 1, 1, 0, 0, 0 } },
-- { "unsigned", KEYWORD_UNSIGNED, { 1, 1, 1, 0, 0 } },
-- { "ushort", KEYWORD_USHORT, { 0, 0, 1, 0, 0 } },
-- { "using", KEYWORD_USING, { 0, 1, 1, 0, 0 } },
-- { "virtual", KEYWORD_VIRTUAL, { 0, 1, 1, 0, 1 } },
-- { "void", KEYWORD_VOID, { 1, 1, 1, 1, 1 } },
-- { "volatile", KEYWORD_VOLATILE, { 1, 1, 1, 1, 0 } },
-- { "wchar_t", KEYWORD_WCHAR_T, { 1, 1, 1, 0, 0 } },
-- { "while", KEYWORD_WHILE, { 1, 1, 1, 1, 0 } }
-+ /* C++ YCP */
-+ /* ANSI C | C# Java | */
-+ /* | | | | Vera */
-+ /* keyword keyword ID | | | | | | */
-+ { "__attribute__", KEYWORD_ATTRIBUTE, { 1, 1, 1, 0, 0, 0 } },
-+ { "abstract", KEYWORD_ABSTRACT, { 0, 0, 1, 1, 0, 0 } },
-+ { "any", KEYWORD_ANY, { 0, 0, 0, 0, 0, 1 } },
-+ { "bad_state", KEYWORD_BAD_STATE, { 0, 0, 0, 0, 1, 0 } },
-+ { "bad_trans", KEYWORD_BAD_TRANS, { 0, 0, 0, 0, 1, 0 } },
-+ { "bind", KEYWORD_BIND, { 0, 0, 0, 0, 1, 0 } },
-+ { "bind_var", KEYWORD_BIND_VAR, { 0, 0, 0, 0, 1, 0 } },
-+ { "bit", KEYWORD_BIT, { 0, 0, 0, 0, 1, 0 } },
-+ { "block", KEYWORD_BLOCK, { 0, 0, 0, 0, 0, 1 } },
-+ { "boolean", KEYWORD_BOOLEAN, { 0, 0, 0, 1, 0, 1 } },
-+ { "byte", KEYWORD_BYTE, { 0, 0, 0, 1, 0, 0 } },
-+ { "byteblock", KEYWORD_BYTEBLOCK, { 0, 0, 0, 0, 0, 1 } },
-+ { "case", KEYWORD_CASE, { 1, 1, 1, 1, 0, 0 } },
-+ { "catch", KEYWORD_CATCH, { 0, 1, 1, 0, 0, 0 } },
-+ { "char", KEYWORD_CHAR, { 1, 1, 1, 1, 0, 0 } },
-+ { "class", KEYWORD_CLASS, { 0, 1, 1, 1, 1, 0 } },
-+ { "const", KEYWORD_CONST, { 1, 1, 1, 1, 0, 0 } },
-+ { "constraint", KEYWORD_CONSTRAINT, { 0, 0, 0, 0, 1, 0 } },
-+ { "coverage_block", KEYWORD_COVERAGE_BLOCK, { 0, 0, 0, 0, 1, 0 } },
-+ { "coverage_def", KEYWORD_COVERAGE_DEF, { 0, 0, 0, 0, 1, 0 } },
-+ { "declaration", KEYWORD_DECLARATION, { 0, 0, 0, 0, 0, 1 } },
-+ { "do", KEYWORD_DO, { 1, 1, 1, 1, 0, 1 } },
-+ { "default", KEYWORD_DEFAULT, { 1, 1, 1, 1, 0, 0 } },
-+ { "delegate", KEYWORD_DELEGATE, { 0, 0, 1, 0, 0, 0 } },
-+ { "double", KEYWORD_DOUBLE, { 1, 1, 1, 1, 0, 0 } },
-+ { "else", KEYWORD_ELSE, { 1, 1, 0, 1, 0, 1 } },
-+ { "enum", KEYWORD_ENUM, { 1, 1, 1, 0, 1, 1 } },
-+ { "event", KEYWORD_EVENT, { 0, 0, 1, 0, 1, 0 } },
-+ { "explicit", KEYWORD_EXPLICIT, { 0, 1, 1, 0, 0, 0 } },
-+ { "expression", KEYWORD_EXPRESSION, { 0, 0, 0, 0, 0, 1 } },
-+ { "extends", KEYWORD_EXTENDS, { 0, 0, 0, 1, 1, 0 } },
-+ { "extern", KEYWORD_EXTERN, { 1, 1, 1, 0, 1, 0 } },
-+ { "final", KEYWORD_FINAL, { 0, 0, 0, 1, 0, 1 } },
-+ { "float", KEYWORD_FLOAT, { 1, 1, 1, 1, 0, 1 } },
-+ { "for", KEYWORD_FOR, { 1, 1, 1, 1, 0, 0 } },
-+ { "friend", KEYWORD_FRIEND, { 0, 1, 0, 0, 0, 0 } },
-+ { "function", KEYWORD_FUNCTION, { 0, 0, 0, 0, 1, 0 } },
-+ { "goto", KEYWORD_GOTO, { 1, 1, 1, 1, 0, 0 } },
-+ { "if", KEYWORD_IF, { 1, 1, 1, 1, 0, 1 } },
-+ { "implements", KEYWORD_IMPLEMENTS, { 0, 0, 0, 1, 0, 0 } },
-+ { "import", KEYWORD_IMPORT, { 0, 0, 0, 1, 0, 1 } },
-+ { "inline", KEYWORD_INLINE, { 0, 1, 0, 0, 0, 0 } },
-+ { "inout", KEYWORD_INOUT, { 0, 0, 0, 0, 1, 0 } },
-+ { "input", KEYWORD_INPUT, { 0, 0, 0, 0, 1, 0 } },
-+ { "int", KEYWORD_INT, { 1, 1, 1, 1, 0, 0 } },
-+ { "integer", KEYWORD_INTEGER, { 0, 0, 0, 0, 1, 1 } },
-+ { "interface", KEYWORD_INTERFACE, { 0, 0, 1, 1, 1, 0 } },
-+ { "internal", KEYWORD_INTERNAL, { 0, 0, 1, 0, 0, 0 } },
-+ { "list", KEYWORD_LIST, { 0, 0, 0, 0, 0, 1 } },
-+ { "local", KEYWORD_LOCAL, { 0, 0, 0, 0, 1, 0 } },
-+ { "locale", KEYWORD_LOCALE, { 0, 0, 0, 0, 0, 1 } },
-+ { "long", KEYWORD_LONG, { 1, 1, 1, 1, 0, 0 } },
-+ { "map", KEYWORD_MAP, { 0, 0, 0, 0, 0, 1 } },
-+ { "m_bad_state", KEYWORD_M_BAD_STATE, { 0, 0, 0, 0, 1, 0 } },
-+ { "m_bad_trans", KEYWORD_M_BAD_TRANS, { 0, 0, 0, 0, 1, 0 } },
-+ { "m_state", KEYWORD_M_STATE, { 0, 0, 0, 0, 1, 0 } },
-+ { "m_trans", KEYWORD_M_TRANS, { 0, 0, 0, 0, 1, 0 } },
-+ { "mutable", KEYWORD_MUTABLE, { 0, 1, 0, 0, 0, 0 } },
-+ { "namespace", KEYWORD_NAMESPACE, { 0, 1, 1, 0, 0, 0 } },
-+ { "native", KEYWORD_NATIVE, { 0, 0, 0, 1, 0, 0 } },
-+ { "new", KEYWORD_NEW, { 0, 1, 1, 1, 0, 0 } },
-+ { "newcov", KEYWORD_NEWCOV, { 0, 0, 0, 0, 1, 0 } },
-+ { "operator", KEYWORD_OPERATOR, { 0, 1, 1, 0, 0, 0 } },
-+ { "output", KEYWORD_OUTPUT, { 0, 0, 0, 0, 1, 0 } },
-+ { "overload", KEYWORD_OVERLOAD, { 0, 1, 0, 0, 0, 0 } },
-+ { "override", KEYWORD_OVERRIDE, { 0, 0, 1, 0, 0, 0 } },
-+ { "package", KEYWORD_PACKAGE, { 0, 0, 0, 1, 0, 0 } },
-+ { "packed", KEYWORD_PACKED, { 0, 0, 0, 0, 1, 0 } },
-+ { "path", KEYWORD_PATH, { 0, 0, 0, 0, 0, 1 } },
-+ { "port", KEYWORD_PORT, { 0, 0, 0, 0, 1, 0 } },
-+ { "private", KEYWORD_PRIVATE, { 0, 1, 1, 1, 0, 0 } },
-+ { "program", KEYWORD_PROGRAM, { 0, 0, 0, 0, 1, 0 } },
-+ { "protected", KEYWORD_PROTECTED, { 0, 1, 1, 1, 1, 0 } },
-+ { "public", KEYWORD_PUBLIC, { 0, 1, 1, 1, 1, 0 } },
-+ { "repeat", KEYWORD_REPEAT, { 0, 0, 0, 0, 0, 1 } },
-+ { "register", KEYWORD_REGISTER, { 1, 1, 0, 0, 0, 0 } },
-+ { "return", KEYWORD_RETURN, { 1, 1, 1, 1, 0, 1 } },
-+ { "shadow", KEYWORD_SHADOW, { 0, 0, 0, 0, 1, 0 } },
-+ { "short", KEYWORD_SHORT, { 1, 1, 1, 1, 0, 0 } },
-+ { "signed", KEYWORD_SIGNED, { 1, 1, 0, 0, 0, 0 } },
-+ { "state", KEYWORD_STATE, { 0, 0, 0, 0, 1, 0 } },
-+ { "static", KEYWORD_STATIC, { 1, 1, 1, 1, 1, 0 } },
-+ { "string", KEYWORD_STRING, { 0, 0, 1, 0, 1, 1 } },
-+ { "struct", KEYWORD_STRUCT, { 1, 1, 1, 0, 0, 0 } },
-+ { "switch", KEYWORD_SWITCH, { 1, 1, 1, 1, 0, 0 } },
-+ { "synchronized", KEYWORD_SYNCHRONIZED, { 0, 0, 0, 1, 0, 0 } },
-+ { "symbol", KEYWORD_SYMBOL, { 0, 0, 0, 0, 0, 1 } },
-+ { "task", KEYWORD_TASK, { 0, 0, 0, 0, 1, 0 } },
-+ { "template", KEYWORD_TEMPLATE, { 0, 1, 0, 0, 0, 0 } },
-+ { "term", KEYWORD_TERM, { 0, 0, 0, 0, 0, 1 } },
-+ { "this", KEYWORD_THIS, { 0, 1, 1, 1, 0, 0 } },
-+ { "throw", KEYWORD_THROW, { 0, 1, 1, 1, 0, 0 } },
-+ { "throws", KEYWORD_THROWS, { 0, 0, 0, 1, 0, 0 } },
-+ { "trans", KEYWORD_TRANS, { 0, 0, 0, 0, 1, 0 } },
-+ { "transition", KEYWORD_TRANSITION, { 0, 0, 0, 0, 1, 0 } },
-+ { "transient", KEYWORD_TRANSIENT, { 0, 0, 0, 1, 0, 0 } },
-+ { "try", KEYWORD_TRY, { 0, 1, 1, 0, 0, 0 } },
-+ { "typedef", KEYWORD_TYPEDEF, { 1, 1, 1, 0, 1, 0 } },
-+ { "typename", KEYWORD_TYPENAME, { 0, 1, 0, 0, 0, 0 } },
-+ { "uint", KEYWORD_UINT, { 0, 0, 1, 0, 0, 0 } },
-+ { "ulong", KEYWORD_ULONG, { 0, 0, 1, 0, 0, 0 } },
-+ { "union", KEYWORD_UNION, { 1, 1, 0, 0, 0, 0 } },
-+ { "unsigned", KEYWORD_UNSIGNED, { 1, 1, 1, 0, 0, 0 } },
-+ { "until", KEYWORD_UNTIL, { 0, 0, 0, 0, 0, 1 } },
-+ { "ushort", KEYWORD_USHORT, { 0, 0, 1, 0, 0, 0 } },
-+ { "using", KEYWORD_USING, { 0, 1, 1, 0, 0, 0 } },
-+ { "virtual", KEYWORD_VIRTUAL, { 0, 1, 1, 0, 1, 0 } },
-+ { "void", KEYWORD_VOID, { 1, 1, 1, 1, 1, 1 } },
-+ { "volatile", KEYWORD_VOLATILE, { 1, 1, 1, 1, 0, 0 } },
-+ { "wchar_t", KEYWORD_WCHAR_T, { 1, 1, 1, 0, 0, 0 } },
-+ { "while", KEYWORD_WHILE, { 1, 1, 1, 1, 0, 1 } }
- };
-
- /*
-@@ -867,6 +898,20 @@ static veraKind veraTagKind (const tagTy
- return result;
- }
-
-+static ycpKind ycpTagKind (const tagType type) {
-+ ycpKind result = YK_UNDEFINED;
-+ switch (type)
-+ {
-+ case TAG_FUNCTION: result = YK_FUNCTION; break;
-+ case TAG_PROTOTYPE: result = YK_PROTOTYPE; break;
-+ case TAG_LOCAL: result = YK_LOCAL; break;
-+ case TAG_VARIABLE: result = YK_VARIABLE; break;
-+
-+ default: Assert ("Bad YCP tag type" == NULL); break;
-+ }
-+ return result;
-+}
+--- ctags.1
++++ ctags.1 2001/12/14 14:41:12
+@@ -9,12 +9,29 @@
+ .TP 6
+ \fBctags\fP [\fBoptions\fP] [\fIfile(s)\fP]
+ .TP 6
+-\fBetags\fP [\fBoptions\fP] [\fIfile(s)\fP]
++\fBctags\fP \fB-e\fP [\fBoptions\fP] [\fIfile(s)\fP]
+
++.SH NOTE
++There are three different versions of the
++\fBctags\fP program on SuSE Linux.
++Besides this one you might want to use either
++.BR gnuctags (1),
++supporting wide variety of programming languages
++and originaly distributed with emacs, or
++.BR gctags (1),
++which comes with
++.BR global (1)
++and supports for example Yacc.
++
++For use with
++.BR emacs (1)
++the best choice is perhaps
++.BR etags (1),
++but it's also possible to use \fBctags\ \-e\fP,
++as described herein, since it supports for example Eiffel.
+
+ .SH "DESCRIPTION"
+-The \fBctags\fP and \fBetags\fP programs (hereinafter collectively referred to
+-as \fBctags\fP, except where distinguished) generate an index (or "tag") file
++The \fBctags\fP program generates an index (or "tag") file
+ for a variety of language objects found in \fIfile(s)\fP.
+ This tag file allows these items to be quickly and easily located by a text
+ editor or other utility. A "tag" signifies a language object for which an
+@@ -1484,7 +1501,7 @@
+ .TP 8
+ .B ETAGS
+ Similar to the \fBCTAGS\fP variable above, this variable, if found, will be
+-read when \fBetags\fP starts. If this variable is not found, \fBetags\fP will
++read when \fBctags\ \-e\fP starts. If this variable is not found, \fBctags\ \-e\fP will
+ try to use \fBCTAGS\fP instead.
+
+ .TP 8
+@@ -1535,9 +1552,15 @@
+ The default tag file created by \fBctags\fP.
+ .TP
+ .I TAGS
+-The default tag file created by \fBetags\fP.
++The default tag file created by \fBctags -e\fP.
+
+ .SH "SEE ALSO"
++.BR etags (1),
++.BR gctags (1),
++.BR global (1),
++.BR gnuctags (1).
+
- static const char *tagName (const tagType type)
- {
- const char* result;
-@@ -906,6 +951,8 @@ static boolean includeTag (const tagType
- result = JavaKinds [javaTagKind (type)].enabled;
- else if (isLanguage (Lang_vera))
- result = VeraKinds [veraTagKind (type)].enabled;
-+ else if (isLanguage (Lang_ycp))
-+ result = YCPKinds [ycpTagKind (type)].enabled;
- else
- result = CKinds [cTagKind (type)].enabled;
- return result;
-@@ -1005,7 +1052,7 @@ static void addOtherFields (tagEntryInfo
-
- static void addContextSeparator (vString *const scope)
- {
-- if (isLanguage (Lang_c) || isLanguage (Lang_cpp))
-+ if (isLanguage (Lang_c) || isLanguage (Lang_cpp) || isLanguage (Lang_ycp))
- vStringCatS (scope, "::");
- else if (isLanguage (Lang_java) || isLanguage (Lang_csharp))
- vStringCatS (scope, ".");
-@@ -1658,9 +1705,11 @@ static void processToken (tokenInfo *con
-
- case KEYWORD_NONE: processName (st); break;
- case KEYWORD_ABSTRACT: st->implementation = IMP_ABSTRACT; break;
-+ case KEYWORD_ANY: st->declaration = DECL_BASE; break;
- case KEYWORD_ATTRIBUTE: skipParens (); initToken (token); break;
- case KEYWORD_BIND: st->declaration = DECL_BASE; break;
- case KEYWORD_BIT: st->declaration = DECL_BASE; break;
-+ case KEYWORD_BYTEBLOCK: st->declaration = DECL_BASE; break;
- case KEYWORD_CATCH: skipParens (); skipBraces (); break;
- case KEYWORD_CHAR: st->declaration = DECL_BASE; break;
- case KEYWORD_CLASS: st->declaration = DECL_CLASS; break;
-@@ -1679,11 +1728,15 @@ static void processToken (tokenInfo *con
- case KEYWORD_INT: st->declaration = DECL_BASE; break;
- case KEYWORD_INTEGER: st->declaration = DECL_BASE; break;
- case KEYWORD_INTERFACE: st->declaration = DECL_INTERFACE; break;
-+ case KEYWORD_LIST: st->declaration = DECL_BASE; break;
- case KEYWORD_LOCAL: setAccess (st, ACCESS_LOCAL); break;
-+ case KEYWORD_LOCALE: st->declaration = DECL_BASE; break;
- case KEYWORD_LONG: st->declaration = DECL_BASE; break;
-+ case KEYWORD_MAP: st->declaration = DECL_BASE; break;
- case KEYWORD_NAMESPACE: st->declaration = DECL_NAMESPACE; break;
- case KEYWORD_OPERATOR: readOperator (st); break;
- case KEYWORD_PACKAGE: readPackage (st); break;
-+ case KEYWORD_PATH: st->declaration = DECL_BASE; break;
- case KEYWORD_PRIVATE: setAccess (st, ACCESS_PRIVATE); break;
- case KEYWORD_PROGRAM: st->declaration = DECL_PROGRAM; break;
- case KEYWORD_PROTECTED: setAccess (st, ACCESS_PROTECTED); break;
-@@ -1693,7 +1746,9 @@ static void processToken (tokenInfo *con
- case KEYWORD_SIGNED: st->declaration = DECL_BASE; break;
- case KEYWORD_STRING: st->declaration = DECL_BASE; break;
- case KEYWORD_STRUCT: st->declaration = DECL_STRUCT; break;
-+ case KEYWORD_SYMBOL: st->declaration = DECL_BASE; break;
- case KEYWORD_TASK: st->declaration = DECL_TASK; break;
-+ case KEYWORD_TERM: st->declaration = DECL_BASE; break;
- case KEYWORD_THROWS: discardTypeList (token); break;
- case KEYWORD_UNION: st->declaration = DECL_UNION; break;
- case KEYWORD_UNSIGNED: st->declaration = DECL_BASE; break;
-@@ -1732,7 +1787,9 @@ static void processToken (tokenInfo *con
-
- case KEYWORD_FOR:
- case KEYWORD_IF:
-+ case KEYWORD_REPEAT:
- case KEYWORD_SWITCH:
-+ case KEYWORD_UNTIL:
- case KEYWORD_WHILE:
- {
- int c = skipToNonWhite ();
-@@ -2204,7 +2261,7 @@ static void addContext (statementInfo *c
- {
- if (vStringLength (st->context->name) > 0)
- {
-- if (isLanguage (Lang_c) || isLanguage (Lang_cpp))
-+ if (isLanguage (Lang_c) || isLanguage (Lang_cpp) || isLanguage (Lang_ycp))
- vStringCatS (st->context->name, "::");
- else if (isLanguage (Lang_java) || isLanguage (Lang_csharp))
- vStringCatS (st->context->name, ".");
-@@ -2520,7 +2577,10 @@ static void nest (statementInfo *const s
- st->inFunction = TRUE;
- /* fall through */
- default:
-- if (includeTag (TAG_LOCAL, FALSE))
-+ if (isLanguage (Lang_ycp) && ! st->haveQualifyingName) {
-+ st->declaration = DECL_BLOCK;
-+ createTags (nestLevel, st);
-+ } else if (includeTag (TAG_LOCAL, FALSE))
- createTags (nestLevel, st);
- else
- skipToMatch ("{}");
-@@ -2561,6 +2621,7 @@ static void tagCheck (statementInfo *con
- }
- }
- else if (isContextualStatement (st) ||
-+ st->declaration == DECL_BLOCK ||
- st->declaration == DECL_NAMESPACE ||
- st->declaration == DECL_PROGRAM)
- {
-@@ -2709,6 +2770,12 @@ static void initializeVeraParser (const
- buildKeywordHash (language, 4);
- }
-
-+static void initializeYcpParser (const langType language)
-+{
-+ Lang_ycp = language;
-+ buildKeywordHash (language, 5);
-+}
-+
- extern parserDefinition* CParser (void)
- {
- static const char *const extensions [] = { "c", NULL };
-@@ -2775,4 +2842,16 @@ extern parserDefinition* VeraParser (voi
- return def;
- }
-
-+extern parserDefinition* YcpParser (void)
-+{
-+ static const char *const extensions [] = { "ycp", NULL };
-+ parserDefinition* def = parserNew ("YCP");
-+ def->kinds = YCPKinds;
-+ def->kindCount = KIND_COUNT (YCPKinds);
-+ def->extensions = extensions;
-+ def->parser2 = findCTags;
-+ def->initialize = initializeYcpParser;
-+ return def;
-+}
-+
- /* vi:set tabstop=8 shiftwidth=4 noexpandtab: */
-Index: parsers.h
-===================================================================
---- parsers.h.orig 2006-02-17 13:33:10.000000000 +0100
-+++ parsers.h 2006-02-17 13:35:18.000000000 +0100
-@@ -48,7 +48,8 @@
- VeraParser, \
- VerilogParser, \
- VimParser, \
-- YaccParser
-+ YaccParser, \
-+ YcpParser
-
- #endif /* _PARSERS_H */
++.PP
+ The official Exuberant Ctags web site at:
+ .RS
++++++ ctags-5.5.4.tar.gz -> ctags-5.6.tar.gz ++++++
++++ 37772 lines of diff (skipped)
++++++ ctags-ycp-parser.diff ++++++
--- c.c
+++ c.c
@@ -61,35 +61,39 @@
*/
typedef enum eKeywordId {
KEYWORD_NONE = -1,
- KEYWORD_ATTRIBUTE, KEYWORD_ABSTRACT,
- KEYWORD_BOOLEAN, KEYWORD_BYTE, KEYWORD_BAD_STATE, KEYWORD_BAD_TRANS,
- KEYWORD_BIND, KEYWORD_BIND_VAR, KEYWORD_BIT,
+ KEYWORD_ATTRIBUTE, KEYWORD_ABSTRACT, KEYWORD_ANY,
+ KEYWORD_BOOLEAN, KEYWORD_BYTE, KEYWORD_BYTEBLOCK, KEYWORD_BAD_STATE,
+ KEYWORD_BAD_TRANS,
+ KEYWORD_BIND, KEYWORD_BIND_VAR, KEYWORD_BIT, KEYWORD_BLOCK,
KEYWORD_CASE, KEYWORD_CATCH, KEYWORD_CHAR, KEYWORD_CLASS, KEYWORD_CONST,
KEYWORD_CONSTRAINT, KEYWORD_COVERAGE_BLOCK, KEYWORD_COVERAGE_DEF,
- KEYWORD_DEFAULT, KEYWORD_DELEGATE, KEYWORD_DELETE, KEYWORD_DO,
+ KEYWORD_DEFAULT, KEYWORD_DECLARATION, KEYWORD_DELEGATE, KEYWORD_DELETE,
+ KEYWORD_DO,
KEYWORD_DOUBLE,
- KEYWORD_ELSE, KEYWORD_ENUM, KEYWORD_EXPLICIT, KEYWORD_EXTERN,
+ KEYWORD_ELSE, KEYWORD_ENUM, KEYWORD_EXPLICIT, KEYWORD_EXPRESSION,
+ KEYWORD_EXTERN,
KEYWORD_EXTENDS, KEYWORD_EVENT,
KEYWORD_FINAL, KEYWORD_FLOAT, KEYWORD_FOR, KEYWORD_FRIEND, KEYWORD_FUNCTION,
KEYWORD_GOTO,
KEYWORD_IF, KEYWORD_IMPLEMENTS, KEYWORD_IMPORT, KEYWORD_INLINE, KEYWORD_INT,
KEYWORD_INOUT, KEYWORD_INPUT, KEYWORD_INTEGER, KEYWORD_INTERFACE,
KEYWORD_INTERNAL,
- KEYWORD_LOCAL, KEYWORD_LONG,
+ KEYWORD_LIST, KEYWORD_LOCAL, KEYWORD_LOCALE, KEYWORD_LONG,
KEYWORD_M_BAD_STATE, KEYWORD_M_BAD_TRANS, KEYWORD_M_STATE, KEYWORD_M_TRANS,
- KEYWORD_MUTABLE,
+ KEYWORD_MAP, KEYWORD_MUTABLE,
KEYWORD_NAMESPACE, KEYWORD_NEW, KEYWORD_NEWCOV, KEYWORD_NATIVE,
KEYWORD_OPERATOR, KEYWORD_OUTPUT, KEYWORD_OVERLOAD, KEYWORD_OVERRIDE,
- KEYWORD_PACKED, KEYWORD_PORT, KEYWORD_PACKAGE, KEYWORD_PRIVATE,
- KEYWORD_PROGRAM, KEYWORD_PROTECTED, KEYWORD_PUBLIC,
+ KEYWORD_PACKED, KEYWORD_PATH, KEYWORD_PORT, KEYWORD_PACKAGE,
+ KEYWORD_PRIVATE,
+ KEYWORD_PROGRAM, KEYWORD_PROTECTED, KEYWORD_PUBLIC, KEYWORD_REPEAT,
KEYWORD_REGISTER, KEYWORD_RETURN,
KEYWORD_SHADOW, KEYWORD_STATE,
KEYWORD_SHORT, KEYWORD_SIGNED, KEYWORD_STATIC, KEYWORD_STRING,
- KEYWORD_STRUCT, KEYWORD_SWITCH, KEYWORD_SYNCHRONIZED,
- KEYWORD_TASK, KEYWORD_TEMPLATE, KEYWORD_THIS, KEYWORD_THROW,
+ KEYWORD_STRUCT, KEYWORD_SWITCH, KEYWORD_SYNCHRONIZED, KEYWORD_SYMBOL,
+ KEYWORD_TASK, KEYWORD_TEMPLATE, KEYWORD_TERM, KEYWORD_THIS, KEYWORD_THROW,
KEYWORD_THROWS, KEYWORD_TRANSIENT, KEYWORD_TRANS, KEYWORD_TRANSITION,
KEYWORD_TRY, KEYWORD_TYPEDEF, KEYWORD_TYPENAME,
- KEYWORD_UINT, KEYWORD_ULONG, KEYWORD_UNION, KEYWORD_UNSIGNED, KEYWORD_USHORT,
+ KEYWORD_UINT, KEYWORD_ULONG, KEYWORD_UNION, KEYWORD_UNSIGNED, KEYWORD_UNTIL, KEYWORD_USHORT,
KEYWORD_USING,
KEYWORD_VIRTUAL, KEYWORD_VOID, KEYWORD_VOLATILE,
KEYWORD_WCHAR_T, KEYWORD_WHILE
@@ -101,7 +105,7 @@
typedef struct sKeywordDesc {
const char *name;
keywordId id;
- short isValid [5]; /* indicates languages for which kw is valid */
+ short isValid [6]; /* indicates languages for which kw is valid */
} keywordDesc;
/* Used for reporting the type of object parsed by nextToken ().
@@ -137,6 +141,7 @@
typedef enum eDeclaration {
DECL_NONE,
DECL_BASE, /* base type (default) */
+ DECL_BLOCK, /* YCP unnamed block */
DECL_CLASS,
DECL_ENUM,
DECL_EVENT,
@@ -258,6 +263,7 @@
static langType Lang_csharp;
static langType Lang_java;
static langType Lang_vera;
+static langType Lang_ycp;
static vString *Signature;
static boolean CollectingSignature;
@@ -354,110 +360,138 @@
{ FALSE, 'x', "externvar", "external variable declarations"}
};
+/* Used to index into the YCPKinds table. */
+typedef enum {
+ YK_UNDEFINED = -1,
+ YK_FUNCTION, YK_PROTOTYPE,
+ YK_LOCAL,
+ YK_VARIABLE
+} ycpKind;
+
+static kindOption YCPKinds [] = {
+ { TRUE, 'f', "function", "function definitions"},
+ { FALSE, 'p', "prototype", "function prototypes"},
+ { FALSE, 'l', "local", "local variables"},
+ { TRUE, 'v', "variable", "variable definitions"},
+};
+
static const keywordDesc KeywordTable [] = {
- /* C++ */
- /* ANSI C | C# Java */
- /* | | | | Vera */
- /* keyword keyword ID | | | | | */
- { "__attribute__", KEYWORD_ATTRIBUTE, { 1, 1, 1, 0, 0 } },
- { "abstract", KEYWORD_ABSTRACT, { 0, 0, 1, 1, 0 } },
- { "bad_state", KEYWORD_BAD_STATE, { 0, 0, 0, 0, 1 } },
- { "bad_trans", KEYWORD_BAD_TRANS, { 0, 0, 0, 0, 1 } },
- { "bind", KEYWORD_BIND, { 0, 0, 0, 0, 1 } },
- { "bind_var", KEYWORD_BIND_VAR, { 0, 0, 0, 0, 1 } },
- { "bit", KEYWORD_BIT, { 0, 0, 0, 0, 1 } },
- { "boolean", KEYWORD_BOOLEAN, { 0, 0, 0, 1, 0 } },
- { "byte", KEYWORD_BYTE, { 0, 0, 0, 1, 0 } },
- { "case", KEYWORD_CASE, { 1, 1, 1, 1, 0 } },
- { "catch", KEYWORD_CATCH, { 0, 1, 1, 0, 0 } },
- { "char", KEYWORD_CHAR, { 1, 1, 1, 1, 0 } },
- { "class", KEYWORD_CLASS, { 0, 1, 1, 1, 1 } },
- { "const", KEYWORD_CONST, { 1, 1, 1, 1, 0 } },
- { "constraint", KEYWORD_CONSTRAINT, { 0, 0, 0, 0, 1 } },
- { "coverage_block", KEYWORD_COVERAGE_BLOCK, { 0, 0, 0, 0, 1 } },
- { "coverage_def", KEYWORD_COVERAGE_DEF, { 0, 0, 0, 0, 1 } },
- { "do", KEYWORD_DO, { 1, 1, 1, 1, 0 } },
- { "default", KEYWORD_DEFAULT, { 1, 1, 1, 1, 0 } },
- { "delegate", KEYWORD_DELEGATE, { 0, 0, 1, 0, 0 } },
- { "delete", KEYWORD_DELETE, { 0, 1, 0, 0, 0 } },
- { "double", KEYWORD_DOUBLE, { 1, 1, 1, 1, 0 } },
- { "else", KEYWORD_ELSE, { 1, 1, 0, 1, 0 } },
- { "enum", KEYWORD_ENUM, { 1, 1, 1, 0, 1 } },
- { "event", KEYWORD_EVENT, { 0, 0, 1, 0, 1 } },
- { "explicit", KEYWORD_EXPLICIT, { 0, 1, 1, 0, 0 } },
- { "extends", KEYWORD_EXTENDS, { 0, 0, 0, 1, 1 } },
- { "extern", KEYWORD_EXTERN, { 1, 1, 1, 0, 1 } },
- { "final", KEYWORD_FINAL, { 0, 0, 0, 1, 0 } },
- { "float", KEYWORD_FLOAT, { 1, 1, 1, 1, 0 } },
- { "for", KEYWORD_FOR, { 1, 1, 1, 1, 0 } },
- { "friend", KEYWORD_FRIEND, { 0, 1, 0, 0, 0 } },
- { "function", KEYWORD_FUNCTION, { 0, 0, 0, 0, 1 } },
- { "goto", KEYWORD_GOTO, { 1, 1, 1, 1, 0 } },
- { "if", KEYWORD_IF, { 1, 1, 1, 1, 0 } },
- { "implements", KEYWORD_IMPLEMENTS, { 0, 0, 0, 1, 0 } },
- { "import", KEYWORD_IMPORT, { 0, 0, 0, 1, 0 } },
- { "inline", KEYWORD_INLINE, { 0, 1, 0, 0, 0 } },
- { "inout", KEYWORD_INOUT, { 0, 0, 0, 0, 1 } },
- { "input", KEYWORD_INPUT, { 0, 0, 0, 0, 1 } },
- { "int", KEYWORD_INT, { 1, 1, 1, 1, 0 } },
- { "integer", KEYWORD_INTEGER, { 0, 0, 0, 0, 1 } },
- { "interface", KEYWORD_INTERFACE, { 0, 0, 1, 1, 1 } },
- { "internal", KEYWORD_INTERNAL, { 0, 0, 1, 0, 0 } },
- { "local", KEYWORD_LOCAL, { 0, 0, 0, 0, 1 } },
- { "long", KEYWORD_LONG, { 1, 1, 1, 1, 0 } },
- { "m_bad_state", KEYWORD_M_BAD_STATE, { 0, 0, 0, 0, 1 } },
- { "m_bad_trans", KEYWORD_M_BAD_TRANS, { 0, 0, 0, 0, 1 } },
- { "m_state", KEYWORD_M_STATE, { 0, 0, 0, 0, 1 } },
- { "m_trans", KEYWORD_M_TRANS, { 0, 0, 0, 0, 1 } },
- { "mutable", KEYWORD_MUTABLE, { 0, 1, 0, 0, 0 } },
- { "namespace", KEYWORD_NAMESPACE, { 0, 1, 1, 0, 0 } },
- { "native", KEYWORD_NATIVE, { 0, 0, 0, 1, 0 } },
- { "new", KEYWORD_NEW, { 0, 1, 1, 1, 0 } },
- { "newcov", KEYWORD_NEWCOV, { 0, 0, 0, 0, 1 } },
- { "operator", KEYWORD_OPERATOR, { 0, 1, 1, 0, 0 } },
- { "output", KEYWORD_OUTPUT, { 0, 0, 0, 0, 1 } },
- { "overload", KEYWORD_OVERLOAD, { 0, 1, 0, 0, 0 } },
- { "override", KEYWORD_OVERRIDE, { 0, 0, 1, 0, 0 } },
- { "package", KEYWORD_PACKAGE, { 0, 0, 0, 1, 0 } },
- { "packed", KEYWORD_PACKED, { 0, 0, 0, 0, 1 } },
- { "port", KEYWORD_PORT, { 0, 0, 0, 0, 1 } },
- { "private", KEYWORD_PRIVATE, { 0, 1, 1, 1, 0 } },
- { "program", KEYWORD_PROGRAM, { 0, 0, 0, 0, 1 } },
- { "protected", KEYWORD_PROTECTED, { 0, 1, 1, 1, 1 } },
- { "public", KEYWORD_PUBLIC, { 0, 1, 1, 1, 1 } },
- { "register", KEYWORD_REGISTER, { 1, 1, 0, 0, 0 } },
- { "return", KEYWORD_RETURN, { 1, 1, 1, 1, 0 } },
- { "shadow", KEYWORD_SHADOW, { 0, 0, 0, 0, 1 } },
- { "short", KEYWORD_SHORT, { 1, 1, 1, 1, 0 } },
- { "signed", KEYWORD_SIGNED, { 1, 1, 0, 0, 0 } },
- { "state", KEYWORD_STATE, { 0, 0, 0, 0, 1 } },
- { "static", KEYWORD_STATIC, { 1, 1, 1, 1, 1 } },
- { "string", KEYWORD_STRING, { 0, 0, 1, 0, 1 } },
- { "struct", KEYWORD_STRUCT, { 1, 1, 1, 0, 0 } },
- { "switch", KEYWORD_SWITCH, { 1, 1, 1, 1, 0 } },
- { "synchronized", KEYWORD_SYNCHRONIZED, { 0, 0, 0, 1, 0 } },
- { "task", KEYWORD_TASK, { 0, 0, 0, 0, 1 } },
- { "template", KEYWORD_TEMPLATE, { 0, 1, 0, 0, 0 } },
- { "this", KEYWORD_THIS, { 0, 1, 1, 1, 0 } },
- { "throw", KEYWORD_THROW, { 0, 1, 1, 1, 0 } },
- { "throws", KEYWORD_THROWS, { 0, 0, 0, 1, 0 } },
- { "trans", KEYWORD_TRANS, { 0, 0, 0, 0, 1 } },
- { "transition", KEYWORD_TRANSITION, { 0, 0, 0, 0, 1 } },
- { "transient", KEYWORD_TRANSIENT, { 0, 0, 0, 1, 0 } },
- { "try", KEYWORD_TRY, { 0, 1, 1, 0, 0 } },
- { "typedef", KEYWORD_TYPEDEF, { 1, 1, 1, 0, 1 } },
- { "typename", KEYWORD_TYPENAME, { 0, 1, 0, 0, 0 } },
- { "uint", KEYWORD_UINT, { 0, 0, 1, 0, 0 } },
- { "ulong", KEYWORD_ULONG, { 0, 0, 1, 0, 0 } },
- { "union", KEYWORD_UNION, { 1, 1, 0, 0, 0 } },
- { "unsigned", KEYWORD_UNSIGNED, { 1, 1, 1, 0, 0 } },
- { "ushort", KEYWORD_USHORT, { 0, 0, 1, 0, 0 } },
- { "using", KEYWORD_USING, { 0, 1, 1, 0, 0 } },
- { "virtual", KEYWORD_VIRTUAL, { 0, 1, 1, 0, 1 } },
- { "void", KEYWORD_VOID, { 1, 1, 1, 1, 1 } },
- { "volatile", KEYWORD_VOLATILE, { 1, 1, 1, 1, 0 } },
- { "wchar_t", KEYWORD_WCHAR_T, { 1, 1, 1, 0, 0 } },
- { "while", KEYWORD_WHILE, { 1, 1, 1, 1, 0 } }
+ /* C++ YCP */
+ /* ANSI C | C# Java | */
+ /* | | | | Vera */
+ /* keyword keyword ID | | | | | | */
+ { "__attribute__", KEYWORD_ATTRIBUTE, { 1, 1, 1, 0, 0, 0 } },
+ { "abstract", KEYWORD_ABSTRACT, { 0, 0, 1, 1, 0, 0 } },
+ { "any", KEYWORD_ANY, { 0, 0, 0, 0, 0, 1 } },
+ { "bad_state", KEYWORD_BAD_STATE, { 0, 0, 0, 0, 1, 0 } },
+ { "bad_trans", KEYWORD_BAD_TRANS, { 0, 0, 0, 0, 1, 0 } },
+ { "bind", KEYWORD_BIND, { 0, 0, 0, 0, 1, 0 } },
+ { "bind_var", KEYWORD_BIND_VAR, { 0, 0, 0, 0, 1, 0 } },
+ { "bit", KEYWORD_BIT, { 0, 0, 0, 0, 1, 0 } },
+ { "block", KEYWORD_BLOCK, { 0, 0, 0, 0, 0, 1 } },
+ { "boolean", KEYWORD_BOOLEAN, { 0, 0, 0, 1, 0, 1 } },
+ { "byte", KEYWORD_BYTE, { 0, 0, 0, 1, 0, 0 } },
+ { "byteblock", KEYWORD_BYTEBLOCK, { 0, 0, 0, 0, 0, 1 } },
+ { "case", KEYWORD_CASE, { 1, 1, 1, 1, 0, 0 } },
+ { "catch", KEYWORD_CATCH, { 0, 1, 1, 0, 0, 0 } },
+ { "char", KEYWORD_CHAR, { 1, 1, 1, 1, 0, 0 } },
+ { "class", KEYWORD_CLASS, { 0, 1, 1, 1, 1, 0 } },
+ { "const", KEYWORD_CONST, { 1, 1, 1, 1, 0, 0 } },
+ { "constraint", KEYWORD_CONSTRAINT, { 0, 0, 0, 0, 1, 0 } },
+ { "coverage_block", KEYWORD_COVERAGE_BLOCK, { 0, 0, 0, 0, 1, 0 } },
+ { "coverage_def", KEYWORD_COVERAGE_DEF, { 0, 0, 0, 0, 1, 0 } },
+ { "declaration", KEYWORD_DECLARATION, { 0, 0, 0, 0, 0, 1 } },
+ { "do", KEYWORD_DO, { 1, 1, 1, 1, 0, 1 } },
+ { "default", KEYWORD_DEFAULT, { 1, 1, 1, 1, 0, 0 } },
+ { "delegate", KEYWORD_DELEGATE, { 0, 0, 1, 0, 0, 0 } },
+ { "delete", KEYWORD_DELETE, { 0, 1, 0, 0, 0, 0 } },
+ { "double", KEYWORD_DOUBLE, { 1, 1, 1, 1, 0, 0 } },
+ { "else", KEYWORD_ELSE, { 1, 1, 0, 1, 0, 1 } },
+ { "enum", KEYWORD_ENUM, { 1, 1, 1, 0, 1, 1 } },
+ { "event", KEYWORD_EVENT, { 0, 0, 1, 0, 1, 0 } },
+ { "explicit", KEYWORD_EXPLICIT, { 0, 1, 1, 0, 0, 0 } },
+ { "expression", KEYWORD_EXPRESSION, { 0, 0, 0, 0, 0, 1 } },
+ { "extends", KEYWORD_EXTENDS, { 0, 0, 0, 1, 1, 0 } },
+ { "extern", KEYWORD_EXTERN, { 1, 1, 1, 0, 1, 0 } },
+ { "final", KEYWORD_FINAL, { 0, 0, 0, 1, 0, 1 } },
+ { "float", KEYWORD_FLOAT, { 1, 1, 1, 1, 0, 1 } },
+ { "for", KEYWORD_FOR, { 1, 1, 1, 1, 0, 0 } },
+ { "friend", KEYWORD_FRIEND, { 0, 1, 0, 0, 0, 0 } },
+ { "function", KEYWORD_FUNCTION, { 0, 0, 0, 0, 1, 0 } },
+ { "goto", KEYWORD_GOTO, { 1, 1, 1, 1, 0, 0 } },
+ { "if", KEYWORD_IF, { 1, 1, 1, 1, 0, 1 } },
+ { "implements", KEYWORD_IMPLEMENTS, { 0, 0, 0, 1, 0, 0 } },
+ { "import", KEYWORD_IMPORT, { 0, 0, 0, 1, 0, 1 } },
+ { "inline", KEYWORD_INLINE, { 0, 1, 0, 0, 0, 0 } },
+ { "inout", KEYWORD_INOUT, { 0, 0, 0, 0, 1, 0 } },
+ { "input", KEYWORD_INPUT, { 0, 0, 0, 0, 1, 0 } },
+ { "int", KEYWORD_INT, { 1, 1, 1, 1, 0, 0 } },
+ { "integer", KEYWORD_INTEGER, { 0, 0, 0, 0, 1, 1 } },
+ { "interface", KEYWORD_INTERFACE, { 0, 0, 1, 1, 1, 0 } },
+ { "internal", KEYWORD_INTERNAL, { 0, 0, 1, 0, 0, 0 } },
+ { "list", KEYWORD_LIST, { 0, 0, 0, 0, 0, 1 } },
+ { "local", KEYWORD_LOCAL, { 0, 0, 0, 0, 1, 0 } },
+ { "locale", KEYWORD_LOCALE, { 0, 0, 0, 0, 0, 1 } },
+ { "long", KEYWORD_LONG, { 1, 1, 1, 1, 0, 0 } },
+ { "m_bad_state", KEYWORD_M_BAD_STATE, { 0, 0, 0, 0, 1, 0 } },
+ { "m_bad_trans", KEYWORD_M_BAD_TRANS, { 0, 0, 0, 0, 1, 0 } },
+ { "m_state", KEYWORD_M_STATE, { 0, 0, 0, 0, 1, 0 } },
+ { "m_trans", KEYWORD_M_TRANS, { 0, 0, 0, 0, 1, 0 } },
+ { "map", KEYWORD_MAP, { 0, 0, 0, 0, 0, 1 } },
+ { "mutable", KEYWORD_MUTABLE, { 0, 1, 0, 0, 0, 0 } },
+ { "namespace", KEYWORD_NAMESPACE, { 0, 1, 1, 0, 0, 0 } },
+ { "native", KEYWORD_NATIVE, { 0, 0, 0, 1, 0, 0 } },
+ { "new", KEYWORD_NEW, { 0, 1, 1, 1, 0, 0 } },
+ { "newcov", KEYWORD_NEWCOV, { 0, 0, 0, 0, 1, 0 } },
+ { "operator", KEYWORD_OPERATOR, { 0, 1, 1, 0, 0, 0 } },
+ { "output", KEYWORD_OUTPUT, { 0, 0, 0, 0, 1, 0 } },
+ { "overload", KEYWORD_OVERLOAD, { 0, 1, 0, 0, 0, 0 } },
+ { "override", KEYWORD_OVERRIDE, { 0, 0, 1, 0, 0, 0 } },
+ { "package", KEYWORD_PACKAGE, { 0, 0, 0, 1, 0, 0 } },
+ { "packed", KEYWORD_PACKED, { 0, 0, 0, 0, 1, 0 } },
+ { "path", KEYWORD_PATH, { 0, 0, 0, 0, 0, 1 } },
+ { "port", KEYWORD_PORT, { 0, 0, 0, 0, 1, 0 } },
+ { "private", KEYWORD_PRIVATE, { 0, 1, 1, 1, 0, 0 } },
+ { "program", KEYWORD_PROGRAM, { 0, 0, 0, 0, 1, 0 } },
+ { "protected", KEYWORD_PROTECTED, { 0, 1, 1, 1, 1, 0 } },
+ { "public", KEYWORD_PUBLIC, { 0, 1, 1, 1, 1, 0 } },
+ { "repeat", KEYWORD_REPEAT, { 0, 0, 0, 0, 0, 1 } },
+ { "register", KEYWORD_REGISTER, { 1, 1, 0, 0, 0, 0 } },
+ { "return", KEYWORD_RETURN, { 1, 1, 1, 1, 0, 1 } },
+ { "shadow", KEYWORD_SHADOW, { 0, 0, 0, 0, 1, 0 } },
+ { "short", KEYWORD_SHORT, { 1, 1, 1, 1, 0, 0 } },
+ { "signed", KEYWORD_SIGNED, { 1, 1, 0, 0, 0, 0 } },
+ { "state", KEYWORD_STATE, { 0, 0, 0, 0, 1, 0 } },
+ { "static", KEYWORD_STATIC, { 1, 1, 1, 1, 1, 0 } },
+ { "string", KEYWORD_STRING, { 0, 0, 1, 0, 1, 1 } },
+ { "struct", KEYWORD_STRUCT, { 1, 1, 1, 0, 0, 0 } },
+ { "switch", KEYWORD_SWITCH, { 1, 1, 1, 1, 0, 0 } },
+ { "synchronized", KEYWORD_SYNCHRONIZED, { 0, 0, 0, 1, 0, 0 } },
+ { "symbol", KEYWORD_SYMBOL, { 0, 0, 0, 0, 0, 1 } },
+ { "task", KEYWORD_TASK, { 0, 0, 0, 0, 1, 0 } },
+ { "template", KEYWORD_TEMPLATE, { 0, 1, 0, 0, 0, 0 } },
+ { "term", KEYWORD_TERM, { 0, 0, 0, 0, 0, 1 } },
+ { "this", KEYWORD_THIS, { 0, 1, 1, 1, 0, 0 } },
+ { "throw", KEYWORD_THROW, { 0, 1, 1, 1, 0, 0 } },
+ { "throws", KEYWORD_THROWS, { 0, 0, 0, 1, 0, 0 } },
+ { "trans", KEYWORD_TRANS, { 0, 0, 0, 0, 1, 0 } },
+ { "transition", KEYWORD_TRANSITION, { 0, 0, 0, 0, 1, 0 } },
+ { "transient", KEYWORD_TRANSIENT, { 0, 0, 0, 1, 0, 0 } },
+ { "try", KEYWORD_TRY, { 0, 1, 1, 0, 0, 0 } },
+ { "typedef", KEYWORD_TYPEDEF, { 1, 1, 1, 0, 1, 0 } },
+ { "typename", KEYWORD_TYPENAME, { 0, 1, 0, 0, 0, 0 } },
+ { "uint", KEYWORD_UINT, { 0, 0, 1, 0, 0, 0 } },
+ { "ulong", KEYWORD_ULONG, { 0, 0, 1, 0, 0, 0 } },
+ { "union", KEYWORD_UNION, { 1, 1, 0, 0, 0, 0 } },
+ { "unsigned", KEYWORD_UNSIGNED, { 1, 1, 1, 0, 0, 0 } },
+ { "until", KEYWORD_UNTIL, { 0, 0, 0, 0, 0, 1 } },
+ { "ushort", KEYWORD_USHORT, { 0, 0, 1, 0, 0, 0 } },
+ { "using", KEYWORD_USING, { 0, 1, 1, 0, 0, 0 } },
+ { "virtual", KEYWORD_VIRTUAL, { 0, 1, 1, 0, 1, 0 } },
+ { "void", KEYWORD_VOID, { 1, 1, 1, 1, 1, 1 } },
+ { "volatile", KEYWORD_VOLATILE, { 1, 1, 1, 1, 0, 0 } },
+ { "wchar_t", KEYWORD_WCHAR_T, { 1, 1, 1, 0, 0, 0 } },
+ { "while", KEYWORD_WHILE, { 1, 1, 1, 1, 0, 1 } }
};
/*
@@ -877,6 +911,21 @@
return result;
}
+static ycpKind ycpTagKind (const tagType type)
+{
+ ycpKind result = YK_UNDEFINED;
+ switch (type)
+ {
+ case TAG_FUNCTION: result = YK_FUNCTION; break;
+ case TAG_PROTOTYPE: result = YK_PROTOTYPE; break;
+ case TAG_LOCAL: result = YK_LOCAL; break;
+ case TAG_VARIABLE: result = YK_VARIABLE; break;
+
+ default: Assert ("Bad YCP tag type" == NULL); break;
+ }
+ return result;
+}
+
static const char *tagName (const tagType type)
{
const char* result;
@@ -886,6 +935,8 @@
result = JavaKinds [javaTagKind (type)].name;
else if (isLanguage (Lang_vera))
result = VeraKinds [veraTagKind (type)].name;
+ else if (isLanguage (Lang_ycp))
+ result = YCPKinds [ycpTagKind (type)].name;
else
result = CKinds [cTagKind (type)].name;
return result;
@@ -900,6 +951,8 @@
result = JavaKinds [javaTagKind (type)].letter;
else if (isLanguage (Lang_vera))
result = VeraKinds [veraTagKind (type)].letter;
+ else if (isLanguage (Lang_ycp))
+ result = YCPKinds [ycpTagKind (type)].letter;
else
result = CKinds [cTagKind (type)].letter;
return result;
@@ -955,7 +1008,8 @@
static void addContextSeparator (vString *const scope)
{
- if (isLanguage (Lang_c) || isLanguage (Lang_cpp))
+ if (isLanguage (Lang_c) || isLanguage (Lang_cpp) ||
+ isLanguage (Lang_ycp))
vStringCatS (scope, "::");
else if (isLanguage (Lang_java) || isLanguage (Lang_csharp))
vStringCatS (scope, ".");
@@ -1690,9 +1744,11 @@
case KEYWORD_NONE: processName (st); break;
case KEYWORD_ABSTRACT: st->implementation = IMP_ABSTRACT; break;
+ case KEYWORD_ANY: st->declaration = DECL_BASE; break;
case KEYWORD_ATTRIBUTE: skipParens (); initToken (token); break;
case KEYWORD_BIND: st->declaration = DECL_BASE; break;
case KEYWORD_BIT: st->declaration = DECL_BASE; break;
+ case KEYWORD_BYTEBLOCK: st->declaration = DECL_BASE; break;
case KEYWORD_CATCH: skipParens (); skipBraces (); break;
case KEYWORD_CHAR: st->declaration = DECL_BASE; break;
case KEYWORD_CLASS: st->declaration = DECL_CLASS; break;
@@ -1711,11 +1767,15 @@
case KEYWORD_INT: st->declaration = DECL_BASE; break;
case KEYWORD_INTEGER: st->declaration = DECL_BASE; break;
case KEYWORD_INTERFACE: st->declaration = DECL_INTERFACE; break;
+ case KEYWORD_LIST: st->declaration = DECL_BASE; break;
case KEYWORD_LOCAL: setAccess (st, ACCESS_LOCAL); break;
+ case KEYWORD_LOCALE: st->declaration = DECL_BASE; break;
case KEYWORD_LONG: st->declaration = DECL_BASE; break;
+ case KEYWORD_MAP: st->declaration = DECL_BASE; break;
case KEYWORD_NAMESPACE: st->declaration = DECL_NAMESPACE; break;
case KEYWORD_OPERATOR: readOperator (st); break;
case KEYWORD_PACKAGE: readPackage (st); break;
+ case KEYWORD_PATH: st->declaration = DECL_BASE; break;
case KEYWORD_PRIVATE: setAccess (st, ACCESS_PRIVATE); break;
case KEYWORD_PROGRAM: st->declaration = DECL_PROGRAM; break;
case KEYWORD_PROTECTED: setAccess (st, ACCESS_PROTECTED); break;
@@ -1725,7 +1785,9 @@
case KEYWORD_SIGNED: st->declaration = DECL_BASE; break;
case KEYWORD_STRING: st->declaration = DECL_BASE; break;
case KEYWORD_STRUCT: st->declaration = DECL_STRUCT; break;
+ case KEYWORD_SYMBOL: st->declaration = DECL_BASE; break;
case KEYWORD_TASK: st->declaration = DECL_TASK; break;
+ case KEYWORD_TERM: st->declaration = DECL_BASE; break;
case KEYWORD_THROWS: discardTypeList (token); break;
case KEYWORD_UNION: st->declaration = DECL_UNION; break;
case KEYWORD_UNSIGNED: st->declaration = DECL_BASE; break;
@@ -1764,7 +1826,9 @@
case KEYWORD_FOR:
case KEYWORD_IF:
+ case KEYWORD_REPEAT:
case KEYWORD_SWITCH:
+ case KEYWORD_UNTIL:
case KEYWORD_WHILE:
{
int c = skipToNonWhite ();
@@ -2253,7 +2317,8 @@
{
if (vStringLength (st->context->name) > 0)
{
- if (isLanguage (Lang_c) || isLanguage (Lang_cpp))
+ if (isLanguage (Lang_c) || isLanguage (Lang_cpp) ||
+ isLanguage (Lang_ycp))
vStringCatS (st->context->name, "::");
else if (isLanguage (Lang_java) || isLanguage (Lang_csharp))
vStringCatS (st->context->name, ".");
@@ -2569,7 +2634,12 @@
st->inFunction = TRUE;
/* fall through */
default:
- if (includeTag (TAG_LOCAL, FALSE))
+ if (isLanguage (Lang_ycp) && ! st->haveQualifyingName)
+ {
+ st->declaration = DECL_BLOCK;
+ createTags (nestLevel, st);
+ }
+ else if (includeTag (TAG_LOCAL, FALSE))
createTags (nestLevel, st);
else
skipToMatch ("{}");
@@ -2610,6 +2680,7 @@
}
}
else if (isContextualStatement (st) ||
+ st->declaration == DECL_BLOCK ||
st->declaration == DECL_NAMESPACE ||
st->declaration == DECL_PROGRAM)
{
@@ -2769,6 +2840,12 @@
buildKeywordHash (language, 4);
}
+static void initializeYcpParser (const langType language)
+{
+ Lang_ycp = language;
+ buildKeywordHash (language, 5);
+}
+
extern parserDefinition* CParser (void)
{
static const char *const extensions [] = { "c", NULL };
@@ -2835,4 +2912,16 @@
return def;
}
+extern parserDefinition* YcpParser (void)
+{
+ static const char *const extensions [] = { "ycp", NULL };
+ parserDefinition* def = parserNew ("YCP");
+ def->kinds = YCPKinds;
+ def->kindCount = KIND_COUNT (YCPKinds);
+ def->extensions = extensions;
+ def->parser2 = findCTags;
+ def->initialize = initializeYcpParser;
+ return def;
+}
+
/* vi:set tabstop=4 shiftwidth=4 noexpandtab: */
--- parsers.h
+++ parsers.h
@@ -48,7 +48,8 @@
VeraParser, \
VerilogParser, \
VimParser, \
- YaccParser
+ YaccParser, \
+ YcpParser
#endif /* _PARSERS_H */
++++++ etags-17.14-gnuctags-allow-duplicates.diff -> etags-17.17.diff ++++++
--- ctags/etags-17.14-gnuctags-allow-duplicates.diff 2006-03-07 23:20:08.000000000 +0100
+++ ctags/etags-17.17.diff 2005-10-18 14:29:41.000000000 +0200
@@ -1,98 +1,152 @@
- etags.1 | 10 ++++++++--
- etags.c | 15 +++++++++++++--
- 2 files changed, 21 insertions(+), 4 deletions(-)
-
-Index: etags.1
-===================================================================
---- etags.1.orig 2005-12-05 17:08:37.000000000 +0100
-+++ etags.1 2005-12-07 14:11:24.000000000 +0100
-@@ -26,12 +26,12 @@ etags, gnuctags \- generate tag file for
+--- etags.1
++++ etags.1
+@@ -9,7 +9,7 @@
+ ..
+
+ .SH NAME
+-etags, ctags \- generate tag file for Emacs, vi
++etags, gnuctags \- generate tag file for Emacs, vi
+ .SH SYNOPSIS
+ .hy 0
+ .na
+@@ -26,7 +26,7 @@
[\|\-\-help\|] [\|\-\-version\|]
\fIfile\fP .\|.\|.
--\fBgnuctags\fP [\|\-aCdgImRVh\|] [\|\-BtTuvwx\|] [\|\-l \fIlanguage\fP\|]
-+\fBgnuctags\fP [\|\-aCdgImRVh\|] [\|\-ABtTuvwx\|] [\|\-l \fIlanguage\fP\|]
+-\fBctags\fP [\|\-aCdgImRVh\|] [\|\-BtTuvwx\|] [\|\-l \fIlanguage\fP\|]
++\fBgnuctags\fP [\|\-aCdgImRVh\|] [\|\-BtTuvwx\|] [\|\-l \fIlanguage\fP\|]
.if n .br
[\|\-o \fItagfile\fP\|] [\|\-r \fIregexp\fP\|]
[\|\-\-parse\-stdin=\fIfile\fP\|]
- .br
--[\|\-\-append\|] [\|\-\-backward\-search\|]
-+[\|\-\-allow\-duplicates\|] [\|\-\-append\|] [\|\-\-backward\-search\|]
- [\|\-\-cxref\|] [\|\-\-defines\|] [\|\-\-forward\-search\|]
- [\|\-\-globals\|] [\|\-\-ignore\-indentation\|]
- [\|\-\-language=\fIlanguage\fP\|] [\|\-\-members\|]
-@@ -75,6 +75,12 @@ by gnuctags;
+@@ -46,7 +46,7 @@
+ The \|\fBetags\fP\| program is used to create a tag table file, in a format
+ understood by
+ .BR emacs ( 1 )\c
+-\&; the \|\fBctags\fP\| program is used to create a similar table in a
++\&; the \|\fBgnuctags\fP\| program is used to create a similar table in a
+ format understood by
+ .BR vi ( 1 )\c
+ \&. Both forms of the program understand
+@@ -56,7 +56,7 @@
+ most assembler\-like syntaxes.
+ Both forms read the files specified on the command line, and write a tag
+ table (defaults: \fBTAGS\fP for \fBetags\fP, \fBtags\fP for
+-\fBctags\fP) in the current working directory.
++\fBgnuctags\fP) in the current working directory.
+ Files specified with relative file names will be recorded in the tag
+ table with file names relative to the directory where the tag table
+ resides. If the tag table is in /dev, however, the file names are made
+@@ -71,7 +71,7 @@
+ language, overriding guesses based on filename extensions.
+ .SH OPTIONS
+ Some options make sense only for the \fBvi\fP style tag files produced
+-by ctags;
++by gnuctags;
\fBetags\fP does not recognize them.
The programs accept unambiguous abbreviations for long option names.
.TP
-+.B \-A, \-\-allow\-duplicates
-+Create entries for duplicate tags. Some editors accept tags files with
-+entries for duplicate tags.
+@@ -85,7 +85,7 @@
+ the delimiter `\|\fB?\fP\|', to search \fIbackwards\fP through files.
+ The default is to use the delimiter `\|\fB/\fP\|', to search \fIforwards\fP
+ through files.
+-Only \fBctags\fP accepts this option.
++Only \fBgnuctags\fP accepts this option.
+ .TP
+ .B \-\-declarations
+ In C and derived languages, create tags for function declarations,
+@@ -94,24 +94,24 @@
+ .B \-d, \-\-defines
+ Create tag entries for C preprocessor constant definitions
+ and enum constants, too. Since this is the default behavior of
+-\fBetags\fP, only \fBctags\fP accepts this option.
++\fBetags\fP, only \fBgnuctags\fP accepts this option.
+ .TP
+ .B \-D, \-\-no\-defines
+ Do not create tag entries for C preprocessor constant definitions
+ and enum constants.
+ This may make the tags file much smaller if many header files are tagged.
+-Since this is the default behavior of \fBctags\fP, only \fBetags\fP
++Since this is the default behavior of \fBgnuctags\fP, only \fBetags\fP
+ accepts this option.
+ .TP
+ .B \-\-globals
+ Create tag entries for global variables in C, C++, Objective C, Java,
+ and Perl.
+-Since this is the default behavior of \fBetags\fP, only \fBctags\fP
+Since this is the default behavior of \fBetags\fP, only \fBgnuctags\fP
-+accepts this option.
-+.TP
- .B \-a, \-\-append
- Append to existing tag file. (For \fBvi\fP-format tag files, see also
- \fB\-\-update\fP.)
-Index: etags.c
-===================================================================
---- etags.c.orig 2005-09-28 10:17:48.000000000 +0200
-+++ etags.c 2005-12-07 14:39:03.000000000 +0100
-@@ -457,6 +457,7 @@ static char
- *midtk = "ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz$0123456789";
-
- static bool append_to_tagfile; /* -a: append to tags */
-+static bool allow_duplicates; /* -A: allow duplicate tags */
- /* The next four default to TRUE for etags, but to FALSE for ctags. */
- static bool typedefs; /* -t: create tags for C and Ada typedefs */
- static bool typedefs_or_cplusplus; /* -T: create tags for C typedefs, level */
-@@ -511,6 +512,7 @@ static struct option longopts[] =
- { "version", no_argument, NULL, 'V' },
-
- #if CTAGS /* Ctags options */
-+ { "allow-duplicates", no_argument, NULL, 'A' },
- { "backward-search", no_argument, NULL, 'B' },
- { "cxref", no_argument, NULL, 'x' },
- { "defines", no_argument, NULL, 'd' },
-@@ -889,6 +891,12 @@ linked with GNU getopt.");
- Absolute names are stored in the output file as they are.\n\
- Relative ones are stored relative to the output file's directory.\n");
-
-+ if (CTAGS)
-+ {
-+ puts ("-A, --allow-duplicates\n\
-+ Allow duplicate tag entries.");
-+ }
-+
- puts ("-a, --append\n\
- Append tag entries to existing tags file.");
-
-@@ -1197,7 +1205,7 @@ main (argc, argv)
- optstring += 1; /* remove the initial '-' */
- optstring = concat (optstring,
- "aCf:Il:o:SVhH",
-- (CTAGS) ? "BxdtTuvw" : "Di:");
-+ (CTAGS) ? "ABxdtTuvw" : "Di:");
+ accepts this option.
+ .TP
+ .B \-\-no\-globals
+ Do not tag global variables. Typically this reduces the file size by
+-one fourth. Since this is the default behavior of \fBctags\fP, only
++one fourth. Since this is the default behavior of \fBgnuctags\fP, only
+ \fBetags\fP accepts this option.
+ .TP
+ \fB\-i\fP \fIfile\fP, \fB\-\-include=\fIfile\fP
+@@ -168,7 +168,7 @@
+ where \fItagregexp\fP is used to match the tag. It should not match
+ useless characters. If the match is such that more characters than
+ needed are unavoidably matched by \fItagregexp\fP, it may be useful to
+-add a \fInameregexp\fP, to narrow down the tag scope. \fBctags\fP
++add a \fInameregexp\fP, to narrow down the tag scope. \fBgnuctags\fP
+ ignores regexps without a \fInameregexp\fP. The syntax of regexps is
+ the same as in emacs. The following character escape sequences are
+ supported: \\a, \\b, \\d, \\e, \\f, \\n, \\r, \\t, \\v, which
+@@ -224,7 +224,7 @@
- while ((opt = getopt_long (argc, argv, optstring, longopts, NULL)) != EOF)
- switch (opt)
-@@ -1281,6 +1289,7 @@ main (argc, argv)
- case 'i': included_files[nincluded_files++] = optarg; break;
+ .br
+ A regexp can be preceded by {\fIlang\fP}, thus restricting it to match
+-lines of files of the specified language. Use \fBetags --help\fP to obtain
++lines of files of the specified language. Use \fBetags \-\-help\fP to obtain
+ a list of the recognised languages. This feature is particularly useful inside
+ \fBregex files\fP. A regex file contains one regex per line. Empty lines,
+ and those lines beginning with space or tab are ignored. Lines beginning
+@@ -243,12 +243,12 @@
+ .TP
+ .B \-t, \-\-typedefs
+ Record typedefs in C code as tags. Since this is the default behavior
+-of \fBetags\fP, only \fBctags\fP accepts this option.
++of \fBetags\fP, only \fBgnuctags\fP accepts this option.
+ .TP
+ .B \-T, \-\-typedefs\-and\-c++
+ Generate tag entries for typedefs, struct, enum, and union tags, and
+ C++ member functions. Since this is the default behavior
+-of \fBetags\fP, only \fBctags\fP accepts this option.
++of \fBetags\fP, only \fBgnuctags\fP accepts this option.
+ .TP
+ .B \-u, \-\-update
+ Update tag entries for \fIfiles\fP specified on command line, leaving
+@@ -256,11 +256,11 @@
+ by deleting the existing entries for the given files and then
+ rewriting the new entries at the end of the tags file. It is often
+ faster to simply rebuild the entire tag file than to use this.
+-Only \fBctags\fP accepts this option.
++Only \fBgnuctags\fP accepts this option.
+ .TP
+ .B \-v, \-\-vgrind
+ Instead of generating a tag file, write index (in \fBvgrind\fP format)
+-to standard output. Only \fBctags\fP accepts this option.
++to standard output. Only \fBgnuctags\fP accepts this option.
+ .TP
+ .B \-w, \-\-no\-warn
+ Suppress warning messages about duplicate entries. The \fBetags\fP
+@@ -269,7 +269,7 @@
+ .TP
+ .B \-x, \-\-cxref
+ Instead of generating a tag file, write a cross reference (in
+-\fBcxref\fP format) to standard output. Only \fBctags\fP accepts this option.
++\fBcxref\fP format) to standard output. Only \fBgnuctags\fP accepts this option.
+ .TP
+ .B \-h, \-H, \-\-help
+ Print usage information. Followed by one or more \-\-language=LANG
+@@ -283,8 +283,10 @@
+ `\|\fBemacs\fP\|' entry in \fBinfo\fP; \fIGNU Emacs Manual\fP, Richard
+ Stallman.
+ .br
++.BR ctags ( 1 ),
+ .BR cxref ( 1 ),
+ .BR emacs ( 1 ),
++.BR gnuctags ( 1 ),
+ .BR vgrind ( 1 ),
+ .BR vi ( 1 ).
- /* Ctags options. */
-+ case 'A': allow_duplicates = TRUE; break;
- case 'B': searchar = '?'; break;
- case 'd': constantypedefs = TRUE; break;
- case 't': typedefs = TRUE; break;
-@@ -2193,8 +2202,10 @@ add_node (np, cur_node_p)
- /*
- * If this tag name matches an existing one, then
- * do not add the node, but maybe print a warning.
-+ * If duplicates are allowed, continue looking for
-+ * a node with a branch where we can insert this node.
- */
-- if (!dif)
-+ if (!allow_duplicates && !dif)
- {
- if (np->fdp == cur_node->fdp)
- {
++++++ etags-17.14.tar.gz -> etags-17.17.tar.gz ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/etags-17.14/etags.1 new/etags-17.17/etags.1
--- old/etags-17.14/etags.1 2005-09-28 10:17:48.000000000 +0200
+++ new/etags-17.17/etags.1 2006-02-06 14:24:21.000000000 +0100
@@ -1,5 +1,5 @@
.\" Copyright (C) 1992, 2001, 2002, 2003, 2004,
-.\" 2005 Free Software Foundation, Inc.
+.\" 2005, 2006 Free Software Foundation, Inc.
.\" See section COPYING for conditions for redistribution
.TH etags 1 "23nov2001" "GNU Tools" "GNU Tools"
.de BP
@@ -292,7 +292,7 @@
Copyright
.if t \(co
.if n (c)
-1999, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
+1999, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
.PP
Permission is granted to make and distribute verbatim copies of this
document provided the copyright notice and this permission notice are
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/etags-17.14/etags.c new/etags-17.17/etags.c
--- old/etags-17.14/etags.c 2005-09-28 10:17:48.000000000 +0200
+++ new/etags-17.17/etags.c 2006-05-03 10:23:10.000000000 +0200
@@ -1,7 +1,7 @@
/* Tags file maker to go with GNU Emacs -*- coding: latin-1 -*-
Copyright (C) 1984, 1987, 1988, 1989, 1993, 1994, 1995,
1998, 1999, 2000, 2001, 2002, 2003, 2004,
- 2005 Free Software Foundation, Inc. and Ken Arnold
+ 2005, 2006 Free Software Foundation, Inc. and Ken Arnold
This file is not considered part of GNU Emacs.
@@ -41,7 +41,7 @@
* configuration file containing regexp definitions for etags.
*/
-char pot_etags_version[] = "@(#) pot revision number is 17.14";
+char pot_etags_version[] = "@(#) pot revision number is 17.17";
#define TRUE 1
#define FALSE 0
@@ -477,6 +477,11 @@
static bool ignoreindent; /* -I: ignore indentation in C */
static bool packages_only; /* --packages-only: in Ada, only tag packages*/
+/* STDIN is defined in LynxOS system headers */
+#ifdef STDIN
+# undef STDIN
+#endif
+
#define STDIN 0x1001 /* returned by getopt_long on --parse-stdin */
static bool parsing_stdin; /* --parse-stdin used */
@@ -853,7 +858,7 @@
print_version ()
{
printf ("%s (%s %s)\n", (CTAGS) ? "ctags" : "etags", EMACS_NAME, VERSION);
- puts ("Copyright (C) 2002 Free Software Foundation, Inc. and Ken Arnold");
+ puts ("Copyright (C) 2006 Free Software Foundation, Inc. and Ken Arnold");
puts ("This program is distributed under the same terms as Emacs");
exit (EXIT_SUCCESS);
@@ -989,9 +994,9 @@
if (CTAGS)
{
puts ("-v, --vgrind\n\
- Generates an index of items intended for human consumption,\n\
- similar to the output of vgrind. The index is sorted, and\n\
- gives the page number of each item.");
+ Print on the standard output an index of items intended for\n\
+ human consumption, similar to the output of vgrind. The index\n\
+ is sorted, and gives the page number of each item.");
puts ("-w, --no-warn\n\
Suppress warning messages about entries defined in multiple\n\
files.");
@@ -1423,7 +1428,8 @@
if (!CTAGS || cxref_style)
{
- put_entries (nodehead); /* write the remaining tags (ETAGS) */
+ /* Write the remaining tags to tagf (ETAGS) or stdout (CXREF). */
+ put_entries (nodehead);
free_tree (nodehead);
nodehead = NULL;
if (!CTAGS)
@@ -1437,10 +1443,11 @@
while (nincluded_files-- > 0)
fprintf (tagf, "\f\n%s,include\n", *included_files++);
+
+ if (fclose (tagf) == EOF)
+ pfatal (tagfile);
}
- if (fclose (tagf) == EOF)
- pfatal (tagfile);
exit (EXIT_SUCCESS);
}
@@ -4536,6 +4543,7 @@
lb.buffer, cp - lb.buffer + 1, lineno, linecharno);
}
}
+ free (package);
}
@@ -5434,6 +5442,8 @@
last[len] = '\0';
}
}
+ if (last != NULL)
+ free (last);
}
@@ -5590,7 +5600,11 @@
else if (cp[0] == '-') /* attribute, e.g. "-define" */
{
erlang_attribute (cp);
- last = NULL;
+ if (last != NULL)
+ {
+ free (last);
+ last = NULL;
+ }
}
else if ((len = erlang_func (cp, last)) > 0)
{
@@ -5607,6 +5621,8 @@
last[len] = '\0';
}
}
+ if (last != NULL)
+ free (last);
}
@@ -6880,7 +6896,6 @@
/*
* Local Variables:
- * c-indentation-style: gnu
* indent-tabs-mode: t
* tab-width: 8
* fill-column: 79
++++++ etags-gnuctags-allow-duplicates.diff ++++++
etags.1 | 10 ++++++++--
etags.c | 15 +++++++++++++--
2 files changed, 21 insertions(+), 4 deletions(-)
Index: etags.1
===================================================================
--- etags.1.orig 2005-12-05 17:08:37.000000000 +0100
+++ etags.1 2005-12-07 14:11:24.000000000 +0100
@@ -26,12 +26,12 @@ etags, gnuctags \- generate tag file for
[\|\-\-help\|] [\|\-\-version\|]
\fIfile\fP .\|.\|.
-\fBgnuctags\fP [\|\-aCdgImRVh\|] [\|\-BtTuvwx\|] [\|\-l \fIlanguage\fP\|]
+\fBgnuctags\fP [\|\-aCdgImRVh\|] [\|\-ABtTuvwx\|] [\|\-l \fIlanguage\fP\|]
.if n .br
[\|\-o \fItagfile\fP\|] [\|\-r \fIregexp\fP\|]
[\|\-\-parse\-stdin=\fIfile\fP\|]
.br
-[\|\-\-append\|] [\|\-\-backward\-search\|]
+[\|\-\-allow\-duplicates\|] [\|\-\-append\|] [\|\-\-backward\-search\|]
[\|\-\-cxref\|] [\|\-\-defines\|] [\|\-\-forward\-search\|]
[\|\-\-globals\|] [\|\-\-ignore\-indentation\|]
[\|\-\-language=\fIlanguage\fP\|] [\|\-\-members\|]
@@ -75,6 +75,12 @@ by gnuctags;
\fBetags\fP does not recognize them.
The programs accept unambiguous abbreviations for long option names.
.TP
+.B \-A, \-\-allow\-duplicates
+Create entries for duplicate tags. Some editors accept tags files with
+entries for duplicate tags.
+Since this is the default behavior of \fBetags\fP, only \fBgnuctags\fP
+accepts this option.
+.TP
.B \-a, \-\-append
Append to existing tag file. (For \fBvi\fP-format tag files, see also
\fB\-\-update\fP.)
Index: etags.c
===================================================================
--- etags.c.orig 2005-09-28 10:17:48.000000000 +0200
+++ etags.c 2005-12-07 14:39:03.000000000 +0100
@@ -457,6 +457,7 @@ static char
*midtk = "ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz$0123456789";
static bool append_to_tagfile; /* -a: append to tags */
+static bool allow_duplicates; /* -A: allow duplicate tags */
/* The next four default to TRUE for etags, but to FALSE for ctags. */
static bool typedefs; /* -t: create tags for C and Ada typedefs */
static bool typedefs_or_cplusplus; /* -T: create tags for C typedefs, level */
@@ -511,6 +512,7 @@ static struct option longopts[] =
{ "version", no_argument, NULL, 'V' },
#if CTAGS /* Ctags options */
+ { "allow-duplicates", no_argument, NULL, 'A' },
{ "backward-search", no_argument, NULL, 'B' },
{ "cxref", no_argument, NULL, 'x' },
{ "defines", no_argument, NULL, 'd' },
@@ -889,6 +891,12 @@ linked with GNU getopt.");
Absolute names are stored in the output file as they are.\n\
Relative ones are stored relative to the output file's directory.\n");
+ if (CTAGS)
+ {
+ puts ("-A, --allow-duplicates\n\
+ Allow duplicate tag entries.");
+ }
+
puts ("-a, --append\n\
Append tag entries to existing tags file.");
@@ -1197,7 +1205,7 @@ main (argc, argv)
optstring += 1; /* remove the initial '-' */
optstring = concat (optstring,
"aCf:Il:o:SVhH",
- (CTAGS) ? "BxdtTuvw" : "Di:");
+ (CTAGS) ? "ABxdtTuvw" : "Di:");
while ((opt = getopt_long (argc, argv, optstring, longopts, NULL)) != EOF)
switch (opt)
@@ -1281,6 +1289,7 @@ main (argc, argv)
case 'i': included_files[nincluded_files++] = optarg; break;
/* Ctags options. */
+ case 'A': allow_duplicates = TRUE; break;
case 'B': searchar = '?'; break;
case 'd': constantypedefs = TRUE; break;
case 't': typedefs = TRUE; break;
@@ -2193,8 +2202,10 @@ add_node (np, cur_node_p)
/*
* If this tag name matches an existing one, then
* do not add the node, but maybe print a warning.
+ * If duplicates are allowed, continue looking for
+ * a node with a branch where we can insert this node.
*/
- if (!dif)
+ if (!allow_duplicates && !dif)
{
if (np->fdp == cur_node->fdp)
{
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
1
0
Hello community,
here is the log from the commit of package gstreamer010-plugins-good
checked in at Wed May 31 03:03:20 CEST 2006.
--------
--- GNOME/gstreamer010-plugins-good/gstreamer010-plugins-good.changes 2006-04-10 15:21:06.000000000 +0200
+++ gstreamer010-plugins-good/gstreamer010-plugins-good.changes 2006-05-31 02:57:52.000000000 +0200
@@ -1,0 +2,6 @@
+Wed May 31 02:56:30 CEST 2006 - hpj(a)suse.de
+
+- Added backported ID3v2 muxer element, required for Banshee
+ tagging. Fixes part of Novell bug #132801.
+
+-------------------------------------------------------------------
New:
----
gst-plugins-good-0.10.2-taglib-backport.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ gstreamer010-plugins-good.spec ++++++
--- /var/tmp/diff_new_pack.zwKaZG/_old 2006-05-31 03:02:07.000000000 +0200
+++ /var/tmp/diff_new_pack.zwKaZG/_new 2006-05-31 03:02:07.000000000 +0200
@@ -12,7 +12,7 @@
Name: gstreamer010-plugins-good
#!BuildIgnore: gstreamer
-BuildRequires: aalib-devel cairo-devel esound-devel flac-devel gconf2-devel gstreamer010-plugins-base-devel gtkdoc ladspa libavc1394-devel libcaca libcaca-devel libcdio-devel libdv-devel libjpeg-devel liboil-devel libshout-devel libtheora-devel libvorbis-devel pyxml sgml-skel speex-devel
+BuildRequires: aalib-devel cairo-devel esound-devel flac-devel gcc-c++ gconf2-devel gstreamer010-plugins-base-devel gtkdoc ladspa libavc1394-devel libcaca libcaca-devel libcdio-devel libdv-devel libjpeg-devel liboil-devel libshout-devel libtheora-devel libvorbis-devel pyxml sgml-skel speex-devel taglib-devel
%ifarch %ix86 ppc x86_64
BuildRequires: valgrind
%endif
@@ -21,7 +21,7 @@
Group: System/GUI/GNOME
Autoreqprov: on
Version: 0.10.2
-Release: 9
+Release: 16
%define gst_branch 0.10
Source: %{_name}-%{version}.tar.bz2
URL: http://gstreamer.freedesktop.org/
@@ -33,6 +33,7 @@
%endif
PreReq: filesystem
Requires: gstreamer010 = %(rpm -q --queryformat '%{VERSION}' gstreamer010)
+Patch1: gst-plugins-good-0.10.2-taglib-backport.patch
%description
GStreamer is a streaming media framework, based on graphs of filters
@@ -158,6 +159,7 @@
%define _includedir %_prefix/include
%prep
%setup -n %{_name}-%{version}
+%patch1 -p1
%build
%{?suse_update_config:%{suse_update_config}}
@@ -224,6 +226,7 @@
%{_libdir}/gstreamer-%{gst_branch}/libgstpng.so
%{_libdir}/gstreamer-%{gst_branch}/libgstrtp.so
%{_libdir}/gstreamer-%{gst_branch}/libgstrtsp.so
+%{_libdir}/gstreamer-%{gst_branch}/libgsttaglib.so
%{_libdir}/gstreamer-%{gst_branch}/libgstudp.so
%{_libdir}/gstreamer-%{gst_branch}/libgstvideoflip.so
%{_libdir}/gstreamer-%{gst_branch}/libgstvideomixer.so
@@ -244,6 +247,9 @@
%{_libdir}/gstreamer-%{gst_branch}/libgstvideobox.so
%changelog -n gstreamer010-plugins-good
+* Wed May 31 2006 - hpj(a)suse.de
+- Added backported ID3v2 muxer element, required for Banshee
+ tagging. Fixes part of Novell bug #132801.
* Mon Apr 10 2006 - jpr(a)suse.de
- Move some more plugins to and extras package
* Fri Apr 07 2006 - jpr(a)suse.de
++++++ gst-plugins-good-0.10.2-taglib-backport.patch ++++++
++++ 969 lines (skipped)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
1
0
Hello community,
here is the log from the commit of package exim
checked in at Wed May 31 03:01:59 CEST 2006.
--------
--- exim/exim.changes 2006-03-08 17:17:42.000000000 +0100
+++ exim/exim.changes 2006-05-30 16:15:09.000000000 +0200
@@ -1,0 +2,34 @@
+Tue May 30 16:07:30 CEST 2006 - poeml(a)suse.de
+
+- upstream 4.62
+ . The ${readsocket expansion item now supports Internet domain sockets as well
+ as Unix domain sockets.
+ . If a redirect router sets up file or pipe deliveries for more than one
+ incoming address, and the relevant transport has batch_max set greater than
+ one, a batch delivery now occurs.
+ . The appendfile transport has a new option called maildirfolder_create_regex.
+ . An option called disable_ipv6, to disable the use of IPv6 completely.
+ . An increase in the number of ACL variables to 20 of each type.
+ . A change to use $auth1, $auth2, and $auth3 in authenticators instead of $1,
+ $2, $3, (though those are still set) because the numeric variables get used
+ for other things in complicated expansions.
+ . The default for rfc1413_query_timeout has been changed from 30s to 5s.
+ . It is possible to use setclassresources() on some BSD OS to control the
+ resources used in pipe deliveries.
+ . A new ACL modifier called add_header, which can be used with any verb.
+ . More errors are detectable in retry rules.
+ . Support for SQLite.
+ . Support for IGNOREQUOTA in LMTP.
+ . Extensions to the "submission mode" features.
+ . Support for Client SMTP Authorization (CSA).
+ . Support for ratelimiting hosts and users.
+ . New expansion items to help with the BATV "prvs" scheme.
+ . A "match_ip" condition, that matches an IP address against a list.
+ - numerous bug fixes and minor changes
+- add eximstats-html subpackage, which, if installed and enabled in
+ /etc/sysconfig/exim, puts HTML reports of the 'eximstats' log
+ analyzer into /srv/www/eximstats
+- try to adapt BuildRequires and suse specific rpm macros to build
+ on Fedora Core
+
+-------------------------------------------------------------------
Old:
----
exim-4.22-rfc1413_query_timeout.diff
exim-4.51-external-pcre.diff
exim-4.51.tar.bz2
New:
----
exim-4.60-external-pcre.diff
exim-4.62.tar.bz2
eximstats-html-update.py
eximstats.conf
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ exim.spec ++++++
--- /var/tmp/diff_new_pack.2lOt1S/_old 2006-05-31 02:59:51.000000000 +0200
+++ /var/tmp/diff_new_pack.2lOt1S/_new 2006-05-31 02:59:51.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package exim (Version 4.51)
+# spec file for package exim (Version 4.62)
#
# Copyright (c) 2006 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
@@ -11,19 +11,24 @@
# norootforbuild
Name: exim
-BuildRequires: db-devel openldap2-devel pcre-devel tcpd-devel xorg-x11-devel
+BuildRequires: db-devel openldap2-devel pcre-devel
+%if %{?suse_version:1}%{?!suse_version:0}
+BuildRequires: tcpd-devel xorg-x11-devel
+%else
+BuildRequires: libXaw-devel libXext-devel libXt-devel openssl-devel tcp_wrappers xorg-x11-server-sdk
+%endif
URL: http://www.exim.org/
Conflicts: sendmail sendmail-tls postfix
License: GPL
Group: Productivity/Networking/Email/Servers
Autoreqprov: on
provides: smtp_daemon
-%if %suse_version > 800
+%if %{?suse_version:%suse_version}%{?!suse_version:0} > 800
Requires: logrotate
PreReq: %insserv_prereq %fillup_prereq /usr/sbin/useradd fileutils textutils
%endif
-Version: 4.51
-Release: 12
+Version: 4.62
+Release: 1
Summary: The Exim Mail Transfer Agent, a Replacement for sendmail
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Source: exim-%{version}.tar.bz2
@@ -32,12 +37,17 @@
Source11: exim.rc
Source12: permissions.exim
Source20: http://www.logic.univie.ac.at/~ametzler/debian/exim4manpages/exim4-manpages…
+Source30: eximstats-html-update.py
+Source31: eximstats.conf
Patch: exim-4.12-tail.patch
-Patch1: exim-4.22-rfc1413_query_timeout.diff
-Patch2: exim-4.51-external-pcre.diff
+Patch2: exim-4.60-external-pcre.diff
%package -n eximon
Summary: Eximon, an graphical frontend to administer Exim's mail queue
Group: Productivity/Networking/Email/Servers
+%package -n eximstats-html
+Summary: Create HTML reports of exim logs
+Group: Productivity/Networking/Email/Servers
+Requires: perl-GD perl-GDGraph perl-GDTextUtil
%description
Exim is a mail transport agent (MTA) developed at the University of
@@ -67,12 +77,35 @@
--------
Philip Hazel <ph10(a)cus.cam.ac.uk>
+
+%description -n eximstats-html
+If this package is installed alongside the exim MTA, and you enable
+EXIM_REPORT_WEEKLY_HTML in /etc/sysconfig/exim, logrotate/cron will
+create HTML reports in /srv/www/eximstats.
+
+You can edit /etc/apache2/conf.d/eximstats.conf to configure your
+webserver for the reports.
+
+The script /usr/sbin/eximstats-html-update.py can create the reports
+for log files that were rotated in the past. (You would only run this
+once, if at all. The rest is done by logrotate / cron.)
+
+
+
+Authors:
+--------
+ Philip Hazel <ph10(a)cus.cam.ac.uk>
+
%prep
%setup -q
%patch
-%patch1 -p1
%patch2 -p1
bzcat %{S:30} | patch -p1
+# build with fPIE/pie on SUSE 10.0 or newer, or on any other platform
+%if %{?suse_version:%suse_version}%{?!suse_version:99999} > 930
+fPIE="-fPIE"
+pie="-pie"
+%endif
cat <<-EOF > Local/Makefile
# see src/EDITME for comments.
BIN_DIRECTORY=/usr/sbin
@@ -173,14 +206,14 @@
SUPPORT_MOVE_FROZEN_MESSAGES=yes
HAVE_IPV6=YES
- CFLAGS=$RPM_OPT_FLAGS -Wall -fno-strict-aliasing -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DLDAP_DEPRECATED -fPIE
- EXTRALIBS=-ldl -L/usr/X11R6/%{_lib} -pie
+ CFLAGS=$RPM_OPT_FLAGS -Wall -fno-strict-aliasing -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DLDAP_DEPRECATED $fPIE
+ EXTRALIBS=-ldl -L/usr/X11R6/%{_lib} $pie
EOF
touch Local/eximon.conf
rm -f doc/*.{orig,txt~}
%build
-%if %suse_version <= 800
+%if %{?suse_version:%suse_version}%{?!suse_version:99999} <= 800
/usr/sbin/useradd -o -g mail -u 8 -s /bin/false -c "Mailer daemon" -d /var/spool/clientmqueue mail 2> /dev/null || :
%endif
make
@@ -243,11 +276,17 @@
gzip -9 doc/*.txt
# since 10.0, the permissions file is packaged in the 'permissions' package
-%if %suse_version < 1000
-install -o root -g root -m 0755 -d $RPM_BUILD_ROOT/etc/permissions.d
-install -o root -g root -m 0644 $RPM_SOURCE_DIR/permissions.exim $RPM_BUILD_ROOT/etc/permissions.d/exim
+%if %{?suse_version:%suse_version}%{?!suse_version:99999} < 1000
+install -m 0755 -d $RPM_BUILD_ROOT/etc/permissions.d
+install -m 0644 $RPM_SOURCE_DIR/permissions.exim $RPM_BUILD_ROOT/etc/permissions.d/exim
%endif
-%if %suse_version <= 800
+# eximstats-html files
+mkdir -p $RPM_BUILD_ROOT/srv/www/eximstats
+mkdir -p $RPM_BUILD_ROOT/etc/apache2/conf.d/
+cp -p $RPM_SOURCE_DIR/eximstats.conf $RPM_BUILD_ROOT/etc/apache2/conf.d/
+install -m 0755 $RPM_SOURCE_DIR/eximstats-html-update.py $RPM_BUILD_ROOT/%{_sbindir}
+
+%if %{?suse_version:%suse_version}%{?!suse_version:99999} <= 800
%pre
/usr/sbin/useradd -o -g mail -u 8 -s /bin/false -c "Mailer daemon" -d /var/spool/clientmqueue mail 2> /dev/null || :
@@ -268,7 +307,7 @@
for i in var/log/exim/main.log var/log/exim/panic.log var/log/exim/reject.log; do
if ! test -e $i; then touch $i; chown mail:mail $i; chmod 640 $i ; fi
done
-%if %suse_version < 800
+%if %{?suse_version:%suse_version}%{?!suse_version:99999} < 800
echo "Updating /etc/rc.config..."
bin/cat > var/adm/fillup-templates/rc.config.exim <<-EOF
#
@@ -284,14 +323,14 @@
%{fillup_and_insserv exim}
%endif
exit 0
-%if %suse_version > 820
+%if %{?suse_version:%suse_version}%{?!suse_version:0} > 820
%preun
%stop_on_removal exim
%endif
%postun
-%if %suse_version > 820
+%if %{?suse_version:%suse_version}%{?!suse_version:0} > 820
%restart_on_update exim
%endif
%insserv_cleanup
@@ -322,7 +361,7 @@
%dir /etc/exim
%config /etc/init.d/exim
%config(noreplace) /etc/logrotate.d/exim
-%if %suse_version < 1000
+%if %{?suse_version:%suse_version}%{?!suse_version:99999} < 1000
%config(noreplace) /etc/permissions.d/exim
%endif
/usr/sbin/rcexim
@@ -340,7 +379,46 @@
/usr/X11R6/bin/eximon
/usr/X11R6/bin/eximon.bin
+%files -n eximstats-html
+%defattr(-,root,root)
+%attr(0750,root,www) /srv/www/eximstats
+/etc/apache2
+/etc/apache2/conf.d
+/etc/apache2/conf.d/eximstats.conf
+%{_sbindir}/eximstats-html-update.py
+
%changelog -n exim
+* Tue May 30 2006 - poeml(a)suse.de
+- upstream 4.62
+ . The ${readsocket expansion item now supports Internet domain sockets as well
+ as Unix domain sockets.
+ . If a redirect router sets up file or pipe deliveries for more than one
+ incoming address, and the relevant transport has batch_max set greater than
+ one, a batch delivery now occurs.
+ . The appendfile transport has a new option called maildirfolder_create_regex.
+ . An option called disable_ipv6, to disable the use of IPv6 completely.
+ . An increase in the number of ACL variables to 20 of each type.
+ . A change to use $auth1, $auth2, and $auth3 in authenticators instead of $1,
+ $2, $3, (though those are still set) because the numeric variables get used
+ for other things in complicated expansions.
+ . The default for rfc1413_query_timeout has been changed from 30s to 5s.
+ . It is possible to use setclassresources() on some BSD OS to control the
+ resources used in pipe deliveries.
+ . A new ACL modifier called add_header, which can be used with any verb.
+ . More errors are detectable in retry rules.
+ . Support for SQLite.
+ . Support for IGNOREQUOTA in LMTP.
+ . Extensions to the "submission mode" features.
+ . Support for Client SMTP Authorization (CSA).
+ . Support for ratelimiting hosts and users.
+ . New expansion items to help with the BATV "prvs" scheme.
+ . A "match_ip" condition, that matches an IP address against a list.
+- numerous bug fixes and minor changes
+- add eximstats-html subpackage, which, if installed and enabled in
+ /etc/sysconfig/exim, puts HTML reports of the 'eximstats' log
+ analyzer into /srv/www/eximstats
+- try to adapt BuildRequires and suse specific rpm macros to build
+ on Fedora Core
* Wed Mar 08 2006 - poeml(a)suse.de
- build as non-root user
* Wed Jan 25 2006 - mls(a)suse.de
++++++ exim-4.51-external-pcre.diff -> exim-4.60-external-pcre.diff ++++++
--- exim/exim-4.51-external-pcre.diff 2005-09-02 15:55:18.000000000 +0200
+++ exim/exim-4.60-external-pcre.diff 2006-04-28 17:20:04.000000000 +0200
@@ -1,12 +1,19 @@
-
-
-link exim against external pcre library
-
-
-diff -uNr exim-4.51.orig/OS/Makefile-Base exim-4.51/OS/Makefile-Base
---- exim-4.51.orig/OS/Makefile-Base 2005-05-04 13:35:39.000000000 +0200
-+++ exim-4.51/OS/Makefile-Base 2005-09-02 15:37:32.390490965 +0200
-@@ -96,7 +96,7 @@
+diff -uNr exim-4.60.orig/exim_monitor/em_hdr.h exim-4.60/exim_monitor/em_hdr.h
+--- exim-4.60.orig/exim_monitor/em_hdr.h 2005-11-28 11:57:32.000000000 +0100
++++ exim-4.60/exim_monitor/em_hdr.h 2006-03-24 08:30:25.497181713 +0100
+@@ -87,7 +87,7 @@
+
+ /* Regular expression include */
+
+-#include "pcre/pcre.h"
++#include <pcre.h>
+
+ /* Includes from the main source of Exim. We need to have MAXPACKET defined for
+ the benefit of structs.h. One of these days I should tidy up this interface so
+diff -uNr exim-4.60.orig/OS/Makefile-Base exim-4.60/OS/Makefile-Base
+--- exim-4.60.orig/OS/Makefile-Base 2005-11-28 11:57:32.000000000 +0100
++++ exim-4.60/OS/Makefile-Base 2006-03-24 08:31:33.352339217 +0100
+@@ -103,7 +103,7 @@
# This is the real default target for all the various exim binaries and
# scripts, once the configuring stuff is done.
@@ -15,7 +22,7 @@
exigrep eximstats exipick exiqgrep exiqsumm \
transport-filter.pl convert4r3 convert4r4 \
exim_checkaccess \
-@@ -306,7 +306,7 @@
+@@ -314,7 +314,7 @@
local_scan.o $(EXIM_PERL) $(OBJ_WITH_CONTENT_SCAN) \
$(OBJ_WITH_OLD_DEMIME) $(OBJ_EXPERIMENTAL)
@@ -24,46 +31,36 @@
routers/routers.a transports/transports.a \
$(OBJ_EXIM) version.c
@echo " "
-@@ -315,7 +315,7 @@
- $(CC) -c $(CFLAGS) $(INCLUDE) $(IPV6_INCLUDE) $(TLS_INCLUDE) version.c
+@@ -325,7 +325,7 @@
rm -f exim
- $(PURIFY) $(LNCC) -o exim $(LFLAGS) $(OBJ_EXIM) version.o \
+ @echo "$(LNCC) -o exim"
+ $(FE)$(PURIFY) $(LNCC) -o exim $(LFLAGS) $(OBJ_EXIM) version.o \
- pcre/libpcre.a \
-+ -lpcre \
++ -lpcre \
routers/routers.a transports/transports.a lookups/lookups.a \
auths/auths.a \
$(LIBRESOLV) $(LIBS) $(LIBS_EXIM) $(IPV6_LIBS) $(EXTRALIBS) \
-@@ -418,12 +418,12 @@
+@@ -429,14 +429,14 @@
OBJ_MONBIN = util-spool_in.o util-store.o util-string.o tod.o tree.o $(MONBIN)
-eximon.bin: $(EXIMON_EDITME) eximon $(OBJ_MONBIN) pcre/libpcre.a \
+eximon.bin: $(EXIMON_EDITME) eximon $(OBJ_MONBIN) \
../exim_monitor/em_version.c
- $(CC) -o em_version.o -c \
+ @echo "$(CC) exim_monitor/em_version.c"
+ $(FE)$(CC) -o em_version.o -c \
$(CFLAGS) $(XINCLUDE) -I. ../exim_monitor/em_version.c
- $(PURIFY) $(LNCC) -o eximon.bin em_version.o $(LFLAGS) $(XLFLAGS) \
+ @echo "$(LNCC) -o eximon.bin"
+ $(FE)$(PURIFY) $(LNCC) -o eximon.bin em_version.o $(LFLAGS) $(XLFLAGS) \
- $(OBJ_MONBIN) -lXaw -lXmu -lXt -lXext -lX11 pcre/libpcre.a \
+ $(OBJ_MONBIN) -lXaw -lXmu -lXt -lXext -lX11 -lpcre \
$(LIBS) $(LIBS_EXIMON) $(EXTRALIBS) $(EXTRALIBS_EXIMON) -lc
@if [ x"$(STRIP_COMMAND)" != x"" ]; then \
echo $(STRIP_COMMAND) eximon.bin; \
-diff -uNr exim-4.51.orig/exim_monitor/em_hdr.h exim-4.51/exim_monitor/em_hdr.h
---- exim-4.51.orig/exim_monitor/em_hdr.h 2005-05-04 13:35:40.000000000 +0200
-+++ exim-4.51/exim_monitor/em_hdr.h 2005-09-02 15:37:32.398489578 +0200
-@@ -87,7 +87,7 @@
-
- /* Regular expression include */
-
--#include "pcre/pcre.h"
-+#include <pcre.h>
-
- /* Includes from the main source of Exim. We need to have MAXPACKET defined for
- the benefit of structs.h. One of these days I should tidy up this interface so
-diff -uNr exim-4.51.orig/src/exim.h exim-4.51/src/exim.h
---- exim-4.51.orig/src/exim.h 2005-05-04 13:35:39.000000000 +0200
-+++ exim-4.51/src/exim.h 2005-09-02 15:37:32.408487843 +0200
-@@ -379,7 +379,7 @@
+diff -uNr exim-4.60.orig/src/exim.h exim-4.60/src/exim.h
+--- exim-4.60.orig/src/exim.h 2005-11-28 11:57:32.000000000 +0100
++++ exim-4.60/src/exim.h 2006-03-24 08:30:25.515178572 +0100
+@@ -414,7 +414,7 @@
/* The header from the PCRE regex package */
@@ -71,4 +68,4 @@
+#include <pcre.h>
/* Exim includes are in several files. Note that local_scan.h #includes
- mytypes.h and store.h, so we don't need to mention them explicitly. */
+ config.h, mytypes.h, and store.h, so we don't need to mention them explicitly.
++++++ exim-4.51.tar.bz2 -> exim-4.62.tar.bz2 ++++++
++++ 102677 lines of diff (skipped)
++++++ exim.logrotate ++++++
--- exim/exim.logrotate 2003-11-18 15:51:21.000000000 +0100
+++ exim/exim.logrotate 2006-04-28 17:20:07.000000000 +0200
@@ -11,9 +11,15 @@
cd /var/log/exim
test -f /etc/sysconfig/exim && source /etc/sysconfig/exim
if test "$EXIM_REPORT_WEEKLY" = yes; then
- report=weekly_report-`date +%Y%m%d`
+ day=`date +%Y%m%d`
+ report=weekly_report-$day
+ eximstatsdir=/srv/www/eximstats/$day
touch $report; chmod 640 $report; chown :mail $report
eximstats main.log > $report
+ if test "$EXIM_REPORT_WEEKLY_HTML" = yes; then
+ mkdir $eximstatsdir
+ eximstats -html -charts -chartdir $eximstatsdir main.log > $eximstatsdir/index.html
+ fi
if ! test -e no_report_mail -a "$EXIM_REPORT_WEEKLY_SEND" = yes; then mail -s "$(sed -n '2{p;q;}' < $report) ($(hostname))" postmaster < $report; fi
if test -f $report.gz; then old $report.gz; fi
gzip -f -9 $report
++++++ sysconfig.exim ++++++
--- exim/sysconfig.exim 2003-11-19 11:15:19.000000000 +0100
+++ exim/sysconfig.exim 2006-04-28 17:20:07.000000000 +0200
@@ -23,8 +23,16 @@
## Type: yesno
## Default: "no"
#
+# Create HTML reports (see the EXIM_REPORT_WEEKLY setting) in
+# /srv/www/eximstats?
+# needs the eximstats-html package to be installed
+#
+EXIM_REPORT_WEEKLY_HTML="no"
+
+## Type: yesno
+## Default: "no"
+#
# Send the reports (see the EXIM_REPORT_WEEKLY setting) via mail to
# postmaster?
#
EXIM_REPORT_WEEKLY_SEND="no"
-
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
1
0
Hello community,
here is the log from the commit of package aranym
checked in at Wed May 31 02:59:29 CEST 2006.
--------
--- aranym/aranym.changes 2006-05-15 17:48:41.000000000 +0200
+++ aranym/aranym.changes 2006-05-31 02:33:49.000000000 +0200
@@ -1,0 +2,5 @@
+Tue May 30 10:46:05 CEST 2006 - schwab(a)suse.de
+
+- Fix definition of fixed size integers.
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ aranym.spec ++++++
--- /var/tmp/diff_new_pack.LCx22U/_old 2006-05-31 02:59:06.000000000 +0200
+++ /var/tmp/diff_new_pack.LCx22U/_new 2006-05-31 02:59:06.000000000 +0200
@@ -15,7 +15,7 @@
URL: http://aranym.atari.org/
Summary: ARAnyM (Atari Running on Any Machine)
Version: 0.9.3beta
-Release: 1
+Release: 2
Group: System/Emulators/Other
License: GPL, LGPL
Source: %{name}-%{version}.tar.gz
@@ -133,6 +133,8 @@
%{_datadir}/aranym
%changelog -n aranym
+* Tue May 30 2006 - schwab(a)suse.de
+- Fix definition of fixed size integers.
* Mon May 15 2006 - schwab(a)suse.de
- Update to aranym 0.9.3beta.
ARAnyM can now output via OpenGL and features TrueType fonts
++++++ aranym-0.9.3beta.diff ++++++
--- /var/tmp/diff_new_pack.LCx22U/_old 2006-05-31 02:59:07.000000000 +0200
+++ /var/tmp/diff_new_pack.LCx22U/_new 2006-05-31 02:59:07.000000000 +0200
@@ -49,6 +49,19 @@
// Return packet
send(0xfc);
+--- natfeat/atari_rootsec.h
++++ natfeat/atari_rootsec.h
+@@ -12,8 +12,8 @@
+ */
+
+ #define u8 unsigned char
+-#define u16 unsigned short
+-#define u32 unsigned long
++#define u16 uint16
++#define u32 uint32
+
+ struct partition_info
+ {
--- rtc.cpp
+++ rtc.cpp
@@ -161,7 +161,7 @@
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
1
0