--- Begin Message ---
- To: Debian Bug Tracking System <submit@bugs.debian.org>
- Subject: <bsd/stdio.h> header protection breaks <stdio.h> when using libbsd overlay
- From: Robert Millan <rmh@debian.org>
- Date: Sat, 18 Jun 2011 18:37:13 +0200
- Message-id: <20110618163713.45238.13835.reportbug@dimoni>
Package: libbsd-dev
Version: 0.3.0-1
Severity: important
Tags: patch
See attached test case. Header protection in <bsd/stdio.h> may prevent
glibc <stdio.h> from being included in normal mode.
I recommend moving all header inclussions in libbsd out of the header
protected scope. Example attached for stdio.h but similar problems
may exist in other headers.
rmh@dimoni:/tmp$ gcc test.c -o test && ./test
hi
rmh@dimoni:/tmp$ gcc test.c -o test $(pkg-config --cflags libbsd-overlay) && ./test
In file included from /usr/include/grp.h:55:0,
from test.c:1:
test.c: In function �ain�
test.c:7:3: warning: incompatible implicit declaration of built-in function �printf�[enabled by default]
test.c:7:12: error: �tdout�undeclared (first use in this function)
test.c:7:12: note: each undeclared identifier is reported only once for each function it appears in
-- System Information:
Debian Release: wheezy/sid
APT prefers unstable
APT policy: (500, 'unstable')
Architecture: kfreebsd-amd64 (x86_64)
Kernel: kFreeBSD 8.2-1-amd64
Locale: LANG=ca_AD.UTF-8, LC_CTYPE=ca_AD.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Versions of packages libbsd-dev depends on:
ii libbsd0 0.3.0-1 utility functions from BSD systems
libbsd-dev recommends no packages.
libbsd-dev suggests no packages.
-- no debconf information
#include <grp.h> /* this drags in <bsd/stdio.h> in __need_FILE mode */
#include <stdio.h> /* we're including <bsd/stdio.h>, but nothing happens due to header protection */
main ()
{
fprintf (stdout, "hi\n");
}
--- /usr/include/bsd/stdio.h~ 2011-06-18 18:35:26.310898171 +0200
+++ /usr/include/bsd/stdio.h 2011-06-18 18:35:05.635106136 +0200
@@ -24,18 +24,18 @@
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-#ifndef LIBBSD_STDIO_H
-#define LIBBSD_STDIO_H
-
-#include <sys/cdefs.h>
-#include <sys/types.h>
-
#ifdef LIBBSD_OVERLAY
#include_next <stdio.h>
#else
#include <stdio.h>
#endif
+#include <sys/cdefs.h>
+#include <sys/types.h>
+
+#ifndef LIBBSD_STDIO_H
+#define LIBBSD_STDIO_H
+
__BEGIN_DECLS
const char *fmtcheck(const char *, const char *);
--- End Message ---
--- Begin Message ---
Source: libbsd
Source-Version: 0.4.0-1
We believe that the bug you reported is fixed in the latest version of
libbsd, which is due to be installed in the Debian FTP archive:
libbsd-dev_0.4.0-1_amd64.deb
to main/libb/libbsd/libbsd-dev_0.4.0-1_amd64.deb
libbsd0-dbg_0.4.0-1_amd64.deb
to main/libb/libbsd/libbsd0-dbg_0.4.0-1_amd64.deb
libbsd0-udeb_0.4.0-1_amd64.udeb
to main/libb/libbsd/libbsd0-udeb_0.4.0-1_amd64.udeb
libbsd0_0.4.0-1_amd64.deb
to main/libb/libbsd/libbsd0_0.4.0-1_amd64.deb
libbsd_0.4.0-1.debian.tar.gz
to main/libb/libbsd/libbsd_0.4.0-1.debian.tar.gz
libbsd_0.4.0-1.dsc
to main/libb/libbsd/libbsd_0.4.0-1.dsc
libbsd_0.4.0.orig.tar.gz
to main/libb/libbsd/libbsd_0.4.0.orig.tar.gz
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 630907@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.
Debian distribution maintenance software
pp.
Guillem Jover <guillem@debian.org> (supplier of updated libbsd 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 ftpmaster@debian.org)
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Format: 1.8
Date: Tue, 29 May 2012 08:11:13 +0200
Source: libbsd
Binary: libbsd-dev libbsd0 libbsd0-udeb libbsd0-dbg
Architecture: source amd64
Version: 0.4.0-1
Distribution: unstable
Urgency: low
Maintainer: Debian GNU/kFreeBSD <debian-bsd@lists.debian.org>
Changed-By: Guillem Jover <guillem@debian.org>
Description:
libbsd-dev - utility functions from BSD systems - development files
libbsd0 - utility functions from BSD systems - shared library
libbsd0-dbg - utility functions from BSD systems - debugging symbols
libbsd0-udeb - utility functions from BSD systems - shared library (udeb)
Closes: 580372 630907 634955 635377 635379 640895 657772 665997 668705
Changes:
libbsd (0.4.0-1) unstable; urgency=low
.
* New upstream release. (Closes: #668705)
- Autoconfiscated, supports cross-building natively. (Closes: #665997)
- Provide endian encoding/decoding inline functions. (Closes: #635377)
- Provide expand_number(). (Closes: #635379)
- Ship <nlist.h> under /usr/include/bsd/. (Closes: #634955, #657772)
- Ship <libutil.h> under /usr/include/bsd/. (Closes: #640895)
- Fix header protections when using the overlay. (Closes: #630907)
- Fix .so symlinks to be relative even when the .so.N shared library
is on a different directory. (Closes: #580372)
- Remove all deprecated headers and inclusions.
* Avoid leaving the system w/o an <nlist.h> previously owned by either
libelfg0-dev or libelf-dev when upgrading from old libsd-dev versions
which used to Replace them, by restoring <nlist.h> from <bsd/nlist.h>.
Checksums-Sha1:
335e03cdd8471cefedcd5b8551447564e1ce7728 1469 libbsd_0.4.0-1.dsc
87290f6ba92f773a3bfd7221f6ab561cbf88eba6 441567 libbsd_0.4.0.orig.tar.gz
08a54bb6ee11cf9f281747372c702d4277b4766f 8974 libbsd_0.4.0-1.debian.tar.gz
8a18008a755a0d61e79f44b61c1e6a7c4e45dc68 134520 libbsd-dev_0.4.0-1_amd64.deb
0717d525cd186afcc2563bb812e66fbe144fbc9d 54678 libbsd0_0.4.0-1_amd64.deb
42185c514e7e4814d8b2beae3b7859e51cd5b5a6 18826 libbsd0-udeb_0.4.0-1_amd64.udeb
6616be60e5bb90c31eb60bd8b6fbc4fe4a64ec96 36102 libbsd0-dbg_0.4.0-1_amd64.deb
Checksums-Sha256:
3060d7bd2c1b2c28a515872b2a63c6959b068a3657a15cb87d35a6459f5bb8ea 1469 libbsd_0.4.0-1.dsc
a285d7108462b913ac49142e46bab2d7e16902cabfacf77ef1101233f472fcb7 441567 libbsd_0.4.0.orig.tar.gz
4b9f389afa224f4c6634a1e6feb9716b957ca3818e217ecbfca6781d03f77acc 8974 libbsd_0.4.0-1.debian.tar.gz
66d637feba28c744bf8aded7138b2ea473d9ea385ef31471a5ed796cda1146c1 134520 libbsd-dev_0.4.0-1_amd64.deb
1e445894035a2de5c3650ef93fcd1eba18f486045117f137ac871cda037f1e72 54678 libbsd0_0.4.0-1_amd64.deb
91232c55f2ca3921b898803606141e977baaa500c563fa3210bbe8a17bd50c0a 18826 libbsd0-udeb_0.4.0-1_amd64.udeb
d8420751912307f5361e0be3f13da79f8abca365a3ed86c9a87f93467f343520 36102 libbsd0-dbg_0.4.0-1_amd64.deb
Files:
bfff6f2dcb6a6ec722a046df5b90b278 1469 libs optional libbsd_0.4.0-1.dsc
e61dee73c9e5bd5e6e6f281ac8fae325 441567 libs optional libbsd_0.4.0.orig.tar.gz
523b6bb337c40ce791c2cef9ac8b79af 8974 libs optional libbsd_0.4.0-1.debian.tar.gz
2b5991b6ee51a59cde43f7b69d0734d1 134520 libdevel optional libbsd-dev_0.4.0-1_amd64.deb
67fd550c835a8c468d6d721608a6eea4 54678 libs optional libbsd0_0.4.0-1_amd64.deb
7249bf90659fac25035a34a2fa3de8dc 18826 debian-installer optional libbsd0-udeb_0.4.0-1_amd64.udeb
dc694b858361789ddcf256e8122ddedf 36102 debug extra libbsd0-dbg_0.4.0-1_amd64.deb
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)
iEYEARECAAYFAk/EcQ8ACgkQuW9ciZ2SjJttUACg3FmtdIhPyxqYtKIEWZZSsoyO
/WEAn2Rt10PLX//4vh/usVpmqCTaTqqx
=bwUO
-----END PGP SIGNATURE-----
--- End Message ---