Alexey Samsonov 3fb55b6872
[libc] Add <sys/un.h> header. (#182622)
`sockaddr_un` structure is supposed to be provided by the `<sys/un.h>`
header. Add this header to llvm-libc, and move the declaration of
`sockaddr_un` there from `<sys/socket.h>`. See
https://man7.org/linux/man-pages/man0/sys_un.h.0p.html

Add proxy headers for the `<sys/socket.h>` macro (like `AF_UNIX`) and
for the `struct sockaddr_un` so that the tests can be more hermetic and
avoid system header inclusion.
2026-03-08 06:22:36 +00:00

119 lines
2.3 KiB
YAML

header: sys/socket.h
header_template: socket.h.def
macros: []
types:
- type_name: struct_sockaddr
- type_name: socklen_t
- type_name: sa_family_t
- type_name: struct_msghdr
- type_name: struct_iovec
- type_name: size_t
- type_name: ssize_t
enums: []
objects: []
functions:
- name: accept
standards:
- POSIX
return_type: int
arguments:
- type: int
- type: sockaddr *__restrict
- type: socklen_t *__restrict
- name: bind
standards:
- POSIX
return_type: int
arguments:
- type: int
- type: const struct sockaddr *
- type: socklen_t
- name: connect
standards:
- POSIX
return_type: int
arguments:
- type: int
- type: const struct sockaddr *
- type: socklen_t
- name: listen
standards:
- POSIX
return_type: int
arguments:
- type: int
- type: int
- name: recv
standards:
- POSIX
return_type: ssize_t
arguments:
- type: int
- type: void *
- type: size_t
- type: int
- name: recvfrom
standards:
- POSIX
return_type: ssize_t
arguments:
- type: int
- type: void *
- type: size_t
- type: int
- type: struct sockaddr *__restrict
- type: socklen_t *__restrict
- name: recvmsg
standards:
- POSIX
return_type: ssize_t
arguments:
- type: int
- type: struct msghdr *
- type: int
- name: send
standards:
- POSIX
return_type: ssize_t
arguments:
- type: int
- type: const void*
- type: size_t
- type: int
- name: sendmsg
standards:
- POSIX
return_type: ssize_t
arguments:
- type: int
- type: const struct msghdr *
- type: int
- name: sendto
standards:
- POSIX
return_type: ssize_t
arguments:
- type: int
- type: const void *
- type: size_t
- type: int
- type: const struct sockaddr *
- type: socklen_t
- name: socket
standards:
- POSIX
return_type: int
arguments:
- type: int
- type: int
- type: int
- name: socketpair
standards:
- posix
return_type: int
arguments:
- type: int
- type: int
- type: int
- type: int*