Update the kernel headers to match external/kernel-headers.
Note that the Linux kernel handed over responsibility for most of the
socket constants to glibc some time ago. Someone had updated our
external/kernel-headers file but not regenerated the bionic headers,
so this change copies the missing stuff from the old bionic <linux/socket.h>
into <sys/socket.h>. This is what glibc does.
I've hacked a few of the other files to #include <sys/socket.h> for
backward compatibility, but even so this requires numerous other
changes to switch people over from direct inclusion of <linux/...> headers.
Change-Id: I0e4af64e631d3cef911a31d90f2f806e058278a0
diff --git a/libc/include/netinet/if_ether.h b/libc/include/netinet/if_ether.h
index 700b9db..e4317fa 100644
--- a/libc/include/netinet/if_ether.h
+++ b/libc/include/netinet/if_ether.h
@@ -25,6 +25,8 @@
* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*/
+
+#include <sys/socket.h>
#include <linux/if_ether.h>
#include <linux/if_arp.h>
#ifndef ETHER_ADDR_LEN
diff --git a/libc/include/netinet/in.h b/libc/include/netinet/in.h
index 01bf58e..c5b964e 100644
--- a/libc/include/netinet/in.h
+++ b/libc/include/netinet/in.h
@@ -29,7 +29,7 @@
#define _NETINET_IN_H_
#include <endian.h>
-#include <linux/socket.h>
+#include <sys/socket.h>
#include <linux/in.h>
#include <linux/in6.h>
#include <linux/ipv6.h>