1 //===-- Definition of struct msghdr ---------------------------------------===// 2 // 3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4 // See https://llvm.org/LICENSE.txt for license information. 5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6 // 7 //===----------------------------------------------------------------------===// 8 9 #ifndef LLVM_LIBC_TYPES_STRUCT_MSGHDR_H 10 #define LLVM_LIBC_TYPES_STRUCT_MSGHDR_H 11 12 #include "size_t.h" 13 #include "socklen_t.h" 14 #include "struct_iovec.h" 15 16 struct msghdr { 17 void *msg_name; /* Optional address */ 18 socklen_t msg_namelen; /* Size of address */ 19 struct iovec *msg_iov; /* Scatter/gather array */ 20 size_t msg_iovlen; /* # elements in msg_iov */ 21 void *msg_control; /* Ancillary data, see below */ 22 size_t msg_controllen; /* Ancillary data buffer len */ 23 int msg_flags; /* Flags (unused) */ 24 }; 25 26 #endif // LLVM_LIBC_TYPES_STRUCT_MSGHDR_H 27