--- /dev/null
+diff -Naur linux-headers-2.6.19.orig/include/linux/if_addr.h linux-headers-2.6.19/include/linux/if_addr.h
+--- linux-headers-2.6.19.orig/include/linux/if_addr.h 2006-11-29 13:57:37.000000000 -0800
++++ linux-headers-2.6.19/include/linux/if_addr.h 2006-11-30 08:28:48.000000000 -0800
+@@ -52,4 +52,7 @@
+ __u32 tstamp; /* updated timestamp, hundredths of seconds */
+ };
+
++#define IFA_RTA(r) ((struct rtattr*)(((char*)(r)) + NLMSG_ALIGN(sizeof(struct ifaddrmsg))))
++#define IFA_PAYLOAD(n) NLMSG_PAYLOAD(n,sizeof(struct ifaddrmsg))
++
+ #endif
+diff -Naur linux-headers-2.6.19.orig/include/linux/if_link.h linux-headers-2.6.19/include/linux/if_link.h
+--- linux-headers-2.6.19.orig/include/linux/if_link.h 2006-11-29 13:57:37.000000000 -0800
++++ linux-headers-2.6.19/include/linux/if_link.h 2006-11-30 08:28:48.000000000 -0800
+@@ -82,6 +82,9 @@
+
+ #define IFLA_MAX (__IFLA_MAX - 1)
+
++#define IFLA_RTA(r) ((struct rtattr*)(((char*)(r)) + NLMSG_ALIGN(sizeof(struct ifinfomsg))))
++#define IFLA_PAYLOAD(n) NLMSG_PAYLOAD(n,sizeof(struct ifinfomsg))
++
+ /* ifi_flags.
+
+ IFF_* flags.
+diff -Naur linux-headers-2.6.19.orig/include/linux/rtnetlink.h linux-headers-2.6.19/include/linux/rtnetlink.h
+--- linux-headers-2.6.19.orig/include/linux/rtnetlink.h 2006-11-29 13:57:37.000000000 -0800
++++ linux-headers-2.6.19/include/linux/rtnetlink.h 2006-11-30 08:28:48.000000000 -0800
+@@ -2,6 +2,7 @@
+ #define __LINUX_RTNETLINK_H
+
+ #include <linux/netlink.h>
++#include <linux/if_addr.h>
+ #include <linux/if_link.h>
+
+ /****