* sysdeps/unix/sysv/linux/netlinkaccess.h: Include linux/if_addr.h fedora-glibc-2_5_90-12
authorjakub <jakub>
Sun, 10 Dec 2006 10:51:10 +0000 (10:51 +0000)
committerjakub <jakub>
Sun, 10 Dec 2006 10:51:10 +0000 (10:51 +0000)
if IFA_MAX is not defined.
(IFA_RTA, IFA_PAYLOAD, IFLA_RTA, IFLA_PAYLOAD): Define if not
defined.
* sysdeps/unix/sysv/linux/check_pf.c: Include netlinkaccess.h
instead of asm/types.h, linux/netlink.h and linux/rtnetlink.h.

ChangeLog
fedora/glibc.spec.in
sysdeps/unix/sysv/linux/check_pf.c
sysdeps/unix/sysv/linux/netlinkaccess.h

index 0e8507a..6e5f01a 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2006-12-10  Jakub Jelinek  <jakub@redhat.com>
+
+       * sysdeps/unix/sysv/linux/netlinkaccess.h: Include linux/if_addr.h
+       if IFA_MAX is not defined.
+       (IFA_RTA, IFA_PAYLOAD, IFLA_RTA, IFLA_PAYLOAD): Define if not
+       defined.
+       * sysdeps/unix/sysv/linux/check_pf.c: Include netlinkaccess.h
+       instead of asm/types.h, linux/netlink.h and linux/rtnetlink.h.
+
 2006-12-09  Ulrich Drepper  <drepper@redhat.com>
 
        [BZ #3632]
index 7d39fbc..96fd4ac 100644 (file)
@@ -1555,6 +1555,7 @@ rm -f *.filelist*
   nis_list and nis_lookup (#209155)
 - fix ttyname and ttyname_r with invalid file descriptor (#218276)
 - cs_CZ LC_TIME fixes (#218438)
+- fix build with 2.6.19+ headers (#217723)
 
 * Fri Dec  1 2006 Jakub Jelinek <jakub@redhat.com> 2.5.90-10
 - fix x86-64 restore_rt unwind info
index 13ccd7a..ebe4d69 100644 (file)
 #include <unistd.h>
 #include <sys/socket.h>
 
-#include <asm/types.h>
-#include <linux/netlink.h>
-#include <linux/rtnetlink.h>
-
 #include <not-cancel.h>
 #include <kernel-features.h>
 
+#include "netlinkaccess.h"
 
 #ifndef IFA_F_TEMPORARY
 # define IFA_F_TEMPORARY IFA_F_SECONDARY
index 92310b7..48903d3 100644 (file)
 
 #include <kernel-features.h>
 
+#ifndef IFA_MAX
+/* 2.6.19 kernel headers helpfully removed some macros and
+   moved lots of stuff into new headers, some of which aren't
+   included by linux/rtnetlink.h.  */
+#include <linux/if_addr.h>
+#endif
+
+#ifndef IFA_RTA
+# define IFA_RTA(r) \
+  ((struct rtattr*) ((char*)(r) + NLMSG_ALIGN (sizeof (struct ifaddrmsg))))
+# define IFA_PAYLOAD(n) NLMSG_PAYLOAD (n, sizeof (struct ifaddrmsg))
+#endif
+
+#ifndef IFLA_RTA
+# define IFLA_RTA(r) \
+  ((struct rtattr*) ((char*)(r) + NLMSG_ALIGN (sizeof (struct ifinfomsg))))
+# define IFLA_PAYLOAD(n) NLMSG_PAYLOAD (n, sizeof (struct ifinfomsg))
+#endif
 
 struct netlink_res
 {