Some network macro's have been removed from 2.6.19+ kernels.
James Newell
jnewell at wgate.com
Fri Mar 2 19:15:48 UTC 2007
It appears IFA_RTA, IFA_PAYLOAD, IFLA_RTA, IFLA_PAYLOAD network macros
used by ipaddress.c, and ll_map.c were removed by the 2.6.19+ kernel. A
compiler built using the new kernel headers will fail to build busybox
1.2.2. If this has already been found, and fixed in later releases
please ignore.
Thanks,
Jim
Index: networking/libiproute/ipaddress.c
===================================================================
--- networking/libiproute/ipaddress.c (revision 55)
+++ networking/libiproute/ipaddress.c (working copy)
@@ -19,6 +19,7 @@
#include <net/if.h>
#include <net/if_arp.h>
+#include <linux/if_addr.h>
#include "rt_names.h"
#include "utils.h"
Index: include/libbb.h
===================================================================
--- include/libbb.h (revision 55)
+++ include/libbb.h (working copy)
@@ -31,6 +31,22 @@
#include <termios.h>
#include <unistd.h>
+#ifndef IFA_RTA
+#define IFA_RTA(r) ((struct rtattr*)(((char*)(r)) +
NLMSG_ALIGN(sizeof(struct ifaddrmsg))))
+#endif
+
+#ifndef IFA_PAYLOAD
+#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))))
+#endif
+
+#ifndef IFLA_PAYLOAD
+#define IFLA_PAYLOAD(n) NLMSG_PAYLOAD(n,sizeof(struct ifinfomsg))
+#endif
+
#ifdef CONFIG_SELINUX
#include <selinux/selinux.h>
#endif
More information about the busybox
mailing list