Merge "Fix libnl so users can compile with old-style and uapi kernel headers."
diff --git a/netlink/handlers.h b/netlink/handlers.h
index f373f58..747229e 100644
--- a/netlink/handlers.h
+++ b/netlink/handlers.h
@@ -16,7 +16,9 @@
 #include <stdint.h>
 #include <sys/types.h>
 #include <netlink/netlink-compat.h>
-#include <netlink/netlink-kernel.h>
+
+/* We can use bionic's <linux/netlink.h>. */
+#include <linux/netlink.h>
 
 #ifdef __cplusplus
 extern "C" {
diff --git a/netlink/netlink-kernel.h b/netlink/netlink-kernel.h
deleted file mode 100644
index a0f5535..0000000
--- a/netlink/netlink-kernel.h
+++ /dev/null
@@ -1,196 +0,0 @@
-#ifndef __LINUX_NETLINK_H
-#define __LINUX_NETLINK_H
-
-/**
- * Netlink socket address
- * @ingroup nl
- */
-struct sockaddr_nl
-{
-	/** socket family (AF_NETLINK) */
-	sa_family_t     nl_family;
-
-	/** Padding (unused) */
-	unsigned short  nl_pad;
-
-	/** Unique process ID  */
-	uint32_t        nl_pid;
-
-	/** Multicast group subscriptions */
-	uint32_t        nl_groups;
-};
-
-/**
- * Netlink message header
- * @ingroup msg
- */
-struct nlmsghdr
-{
-	/**
-	 * Length of message including header.
-	 */
-	uint32_t	nlmsg_len;
-
-	/**
-	 * Message type (content type)
-	 */
-	uint16_t	nlmsg_type;
-
-	/**
-	 * Message flags
-	 */
-	uint16_t	nlmsg_flags;
-
-	/**
-	 * Sequence number
-	 */
-	uint32_t	nlmsg_seq;
-
-	/**
-	 * Netlink PID of the proccess sending the message.
-	 */
-	uint32_t	nlmsg_pid;
-};
-
-/**
- * @name Standard message flags
- * @{
- */
-
-/**
- * Must be set on all request messages (typically from user space to
- * kernel space).
- * @ingroup msg
- */
-#define NLM_F_REQUEST		1
-
-/**
- * Indicates the message is part of a multipart message terminated
- * by NLMSG_DONE.
- */
-#define NLM_F_MULTI		2
-
-/**
- * Request for an acknowledgment on success.
- */
-#define NLM_F_ACK		4
-
-/**
- * Echo this request
- */
-#define NLM_F_ECHO		8
-
-/** @} */
-
-/**
- * @name Additional message flags for GET requests
- * @{
- */
-
-/**
- * Return the complete table instead of a single entry.
- * @ingroup msg
- */
-#define NLM_F_ROOT	0x100
-
-/**
- * Return all entries matching criteria passed in message content.
- */
-#define NLM_F_MATCH	0x200
-
-/**
- * Return an atomic snapshot of the table being referenced. This
- * may require special privileges because it has the potential to
- * interrupt service in the FE for a longer time.
- */
-#define NLM_F_ATOMIC	0x400
-
-/**
- * Dump all entries
- */
-#define NLM_F_DUMP	(NLM_F_ROOT|NLM_F_MATCH)
-
-/** @} */
-
-/**
- * @name Additional messsage flags for NEW requests
- * @{
- */
-
-/**
- * Replace existing matching config object with this request.
- * @ingroup msg
- */
-#define NLM_F_REPLACE	0x100
-
-/**
- * Don't replace the config object if it already exists.
- */
-#define NLM_F_EXCL	0x200
-
-/**
- * Create config object if it doesn't already exist.
- */
-#define NLM_F_CREATE	0x400
-
-/**
- * Add to the end of the object list.
- */
-#define NLM_F_APPEND	0x800
-
-/** @} */
-
-/**
- * @name Standard Message types
- * @{
- */
-
-/**
- * No operation, message must be ignored
- * @ingroup msg
- */
-#define NLMSG_NOOP		0x1
-
-/**
- * The message signals an error and the payload contains a nlmsgerr
- * structure. This can be looked at as a NACK and typically it is
- * from FEC to CPC.
- */
-#define NLMSG_ERROR		0x2
-
-/**
- * Message terminates a multipart message.
- */
-#define NLMSG_DONE		0x3
-
-/**
- * The message signals that data got lost
- */
-#define NLMSG_OVERRUN		0x4
-
-/**
- * Lower limit of reserved message types
- */
-#define NLMSG_MIN_TYPE		0x10
-
-/** @} */
-
-/**
- * Netlink error message
- * @ingroup msg
- */
-struct nlmsgerr
-{
-	/** Error code (errno number) */
-	int		error;
-
-	/** Original netlink message causing the error */
-	struct nlmsghdr	msg;
-};
-
-struct nl_pktinfo
-{
-	__u32	group;
-};
-
-#endif	/* __LINUX_NETLINK_H */