Your message dated Tue, 03 Aug 2010 08:52:21 +0000
with message-id <[email protected]>
and subject line Bug#438345: fixed in fam 2.7.0-17
has caused the Debian Bug report #438345,
regarding FamErrlist ABI and API could be improved to allow extension or other
implementations
to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)
--
438345: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=438345
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: fam
Version: 2.7.0-13
Severity: minor
Tags: patch
Hi,
The FamErrlist API and ABI are not really future proof: each time the
number of error messages changes, even if this is safe ABI wise, the
binaries linked with a differently sized symbol will cause warnings
with the new library (or with a different implementation such as
gamin).
A better API would be:
char *fam_strerror(int fam_errnum)
(this would hide the size of the error array from the ABI and would
allow checking fam_errnum for allowed values)
I've attached a patch which changes the ABI signature (but remains ABI
compatible) by reserving 100 error messages in the FamErrlist[] array.
After applying this patch, I will be able to patch gamin to avoid the
linker warning when apps try using FamErrlist[].
Could you please apply this patch in Debian and perhaps forward the
patch and the API addition proposal upstream?
Thanks!
-- System Information:
Debian Release: lenny/sid
APT prefers unstable
APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: i386 (i686)
Kernel: Linux 2.6.22-1-686 (SMP w/2 CPU cores)
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Versions of packages fam depends on:
ii libc6 2.6.1-1 GNU C Library: Shared libraries
ii libgcc1 1:4.2.1-4 GCC support library
ii libstdc++6 4.2.1-4 The GNU Standard C++ Library v3
ii lsb-base 3.1-24 Linux Standard Base 3.1 init scrip
ii portmap 6.0-4 The RPC portmapper
fam recommends no packages.
--
Loïc Minier
--- fam-2.7.0/lib/fam.c++ 2003-01-18 15:18:12.000000000 +0100
+++ fam-2.7.0/lib/fam.c++ 2007-08-16 14:17:30.000000000 +0200
@@ -46,7 +46,14 @@
#define LOCALHOSTNUMBER 0x7f000001 // Internet number for loopback.
// Error variables - XXX currently not dealt with
-#define FAM_NUM_ERRORS 1
+// Debian specific change: Make the public symbol size 100 instead of 1 to
+// avoid errors when using binaries built against another version of the
+// library: if the size changes (for example when error messages are added
+// or when switching from the fam to the gamin implementation), the linker
+// warns that the FamErrlist sizes don't match, even if this isn't problematic
+// (as FAMErrno is set by the lib at runtime based on the messages it knows
+// about)
+#define FAM_NUM_ERRORS 100
int FAMErrno;
char *FamErrlist[FAM_NUM_ERRORS];
--- End Message ---
--- Begin Message ---
Source: fam
Source-Version: 2.7.0-17
We believe that the bug you reported is fixed in the latest version of
fam, which is due to be installed in the Debian FTP archive:
fam_2.7.0-17.diff.gz
to main/f/fam/fam_2.7.0-17.diff.gz
fam_2.7.0-17.dsc
to main/f/fam/fam_2.7.0-17.dsc
fam_2.7.0-17_i386.deb
to main/f/fam/fam_2.7.0-17_i386.deb
libfam-dev_2.7.0-17_i386.deb
to main/f/fam/libfam-dev_2.7.0-17_i386.deb
libfam0_2.7.0-17_i386.deb
to main/f/fam/libfam0_2.7.0-17_i386.deb
libfam0c102_2.7.0-17_all.deb
to main/f/fam/libfam0c102_2.7.0-17_all.deb
A summary of the changes between this version and the previous one is
attached.
Thank you for reporting the bug, which will now be closed. If you
have further comments please address them to [email protected],
and the maintainer will reopen the bug report if appropriate.
Debian distribution maintenance software
pp.
Chuan-kai Lin <[email protected]> (supplier of updated fam package)
(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing [email protected])
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Format: 1.8
Date: Mon, 02 Aug 2010 21:25:43 -0700
Source: fam
Binary: fam libfam0 libfam0c102 libfam-dev
Architecture: source all i386
Version: 2.7.0-17
Distribution: unstable
Urgency: low
Maintainer: Chuan-kai Lin <[email protected]>
Changed-By: Chuan-kai Lin <[email protected]>
Description:
fam - File Alteration Monitor
libfam-dev - Client library to control the FAM daemon - development files
libfam0 - Client library to control the FAM daemon
libfam0c102 - Dummy package for libfam0
Closes: 438345
Changes:
fam (2.7.0-17) unstable; urgency=low
.
* Increase the number of declared error message slots (FAM_NUM_ERRORS)
using patch by Loïc Minier (closes: #438345)
* Use a variable of type (const char *) to receive the return value of
strstr to avoid build failure with gcc 4.4 due to the "Strict
null-terminated sequence utilities" feature
* Bump to Standards-Version 3.9.0.0 (no change necessary)
* Add debian/source/format (1.0)
Checksums-Sha1:
a376de4e518108f0a41ecf76b7d7ad389223721e 1058 fam_2.7.0-17.dsc
680b03081b014246425f5b722fdb832ee254393e 28056 fam_2.7.0-17.diff.gz
70611c993bdef718e8e69806880146dd19e145b4 13838 libfam0c102_2.7.0-17_all.deb
8f0ca5248223848936e69457080f64620883c892 74762 fam_2.7.0-17_i386.deb
888e14dfa02a21b5ed594377c2298f0dbfef60b8 28920 libfam0_2.7.0-17_i386.deb
417d148952c46cf204763f1814d8992cdc78d568 38762 libfam-dev_2.7.0-17_i386.deb
Checksums-Sha256:
3619d23323c4292140885b59a0b014b24eec6b00f233df05878da2af6e0fe4ec 1058
fam_2.7.0-17.dsc
2362384d1fbde5dcbccf70f617aedbcae44d3f826a5b9df1331b070da1e0d5c2 28056
fam_2.7.0-17.diff.gz
961e52cb4dcbb6a72baf955b72300bcaa9bbada88b30450b0fcd6ad89f640fb3 13838
libfam0c102_2.7.0-17_all.deb
3602982e19fa564a4744bf57faa2f2331c5ecf70c9504fbe5fdbb7ac4dab209a 74762
fam_2.7.0-17_i386.deb
2c4c72d0be5f93c0dc5c4bc31a073b6812f4bc8526b2e1c11d711410f567398b 28920
libfam0_2.7.0-17_i386.deb
0f79e8e77d2d6534afd35f57941f1f89c006a4fa0dbd1b02d97c545863093d02 38762
libfam-dev_2.7.0-17_i386.deb
Files:
c1cf6daae435e80a7742b8c97bd5885d 1058 admin optional fam_2.7.0-17.dsc
c8aed169ee1c21c7444f16601573501b 28056 admin optional fam_2.7.0-17.diff.gz
e76ffbfc4eec6214e2003cea8c5cb298 13838 libs optional
libfam0c102_2.7.0-17_all.deb
3a8663ebe137b2a90c71f1c6461cfab9 74762 admin optional fam_2.7.0-17_i386.deb
529c208133a07b1d97bfdbf475d33d45 28920 libs optional libfam0_2.7.0-17_i386.deb
f9ee65f7ff442528f96df1c96687f151 38762 libdevel optional
libfam-dev_2.7.0-17_i386.deb
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)
iEYEARECAAYFAkxXna4ACgkQqq7AEt0PYmhmGgCfZqMW8qai1Zc3Vq7pTckL1hEh
5KkAoMhVMc4mk8qSjKS4KHt5o9TvGoW1
=xlal
-----END PGP SIGNATURE-----
--- End Message ---