aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/libs/linux-headers/linux/socket.h
blob: 1213052d415b70ec5ec56b375307f6b9f56f936e (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 
#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 */ 
 
typedef unsigned short __kernel_sa_family_t; 
 
/* 
 * The definition uses anonymous union and struct in order to control the 
 * default alignment. 
 */ 
struct __kernel_sockaddr_storage { 
	union { 
		struct { 
			__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 */ 
		}; 
		void *__align; /* implementation specific desired alignment */ 
	}; 
}; 
 
#endif /* _LINUX_SOCKET_H */