mirror of
https://github.com/openharmony/third_party_libnl.git
synced 2026-07-21 16:05:23 -04:00
746bbba3e5
The __kernel_sa_family_t type is not present on older systems (e.g., RHEL 6), and libnl3 will not built without it. Copy /usr/include/linux/socket.h from a RHEL7 system to include/linux-private/linux/socket.h so that it will be found by the build system. Fortunately, this socket.h is small and self-contained; it contains very little (and does not #include any other files) beyond necessary type. https://github.com/thom311/libnl/pull/107 Signed-off-by: Jeff Squyres <jsquyres@cisco.com> Signed-off-by: Thomas Haller <thaller@redhat.com>
22 lines
738 B
C
22 lines
738 B
C
#ifndef _LINUX_SOCKET_H
|
|
#define _LINUX_SOCKET_H
|
|
|
|
/*
|
|
* Desired design of maximum size and alignment (see RFC2553)
|
|
*/
|
|
#define _K_SS_MAXSIZE 128 /* Implementation specific max size */
|
|
#define _K_SS_ALIGNSIZE (__alignof__ (struct sockaddr *))
|
|
/* Implementation specific desired alignment */
|
|
|
|
typedef unsigned short __kernel_sa_family_t;
|
|
|
|
struct __kernel_sockaddr_storage {
|
|
__kernel_sa_family_t ss_family; /* address family */
|
|
/* Following field(s) are implementation specific */
|
|
char __data[_K_SS_MAXSIZE - sizeof(unsigned short)];
|
|
/* space to achieve desired size, */
|
|
/* _SS_MAXSIZE value minus size of ss_family */
|
|
} __attribute__ ((aligned(_K_SS_ALIGNSIZE))); /* force desired alignment */
|
|
|
|
#endif /* _LINUX_SOCKET_H */
|