Anssi Hannula wrote: > Thank you. The bug is in libcap header file > /usr/include/sys/capability.h > > It does evil stuff like this: > > 25 /* > 26 * Make sure we can be included from userland by preventing > 27 * capability.h from including other kernel headers > 28 */ > 29 #define _LINUX_TYPES_H > 30 #define _LINUX_FS_H > 31 #define __LINUX_COMPILER_H > 32 #define __user > 33 > 34 typedef unsigned int __u32; > 35 typedef __u32 __le32; > > This completely prevents including /usr/include/linux/types.h, etc. > > It seems my distro has a patch that removes all the above lines to > resolve this issue. I'll try contacting libcap upstream on this issue. In the meantime, attached is a workaround that contains a clear comment describing the issue. -- Anssi Hannula
Index: vdr-1.7.9/vdr.c =================================================================== --- vdr-1.7.9/vdr.c +++ vdr-1.7.9/vdr.c 2009-08-23 23:26:15.935332431 +0300 @@ -32,7 +32,6 @@ #include <pwd.h> #include <signal.h> #include <stdlib.h> -#include <sys/capability.h> #include <sys/prctl.h> #include <termios.h> #include <unistd.h> @@ -64,6 +63,9 @@ #include "tools.h" #include "transfer.h" #include "videodir.h" +// include this one last due to some versions of it being buggy: +// http://www.linuxtv.org/pipermail/vdr/2009-August/021194.html +#include <sys/capability.h> #define MINCHANNELWAIT 10 // seconds to wait between failed channel switchings #define ACTIVITYTIMEOUT 60 // seconds before starting housekeeping
_______________________________________________ vdr mailing list vdr@xxxxxxxxxxx http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr