Line data Source code
1 0 : /* 2 : * Copyright (c) 2024 Nordic Semiconductor 3 : * 4 : * SPDX-License-Identifier: Apache-2.0 5 : */ 6 : 7 : #ifndef ZEPHYR_INCLUDE_NET_SOCKET_POLL_H_ 8 : #define ZEPHYR_INCLUDE_NET_SOCKET_POLL_H_ 9 : 10 : #include <zephyr/sys/fdtable.h> 11 : 12 : /* Setting for pollfd to avoid circular inclusion */ 13 : 14 : /** 15 : * @brief BSD Sockets compatible API 16 : * @defgroup bsd_sockets BSD Sockets compatible API 17 : * @ingroup networking 18 : * @{ 19 : */ 20 : 21 : #ifdef __cplusplus 22 : extern "C" { 23 : #endif 24 : 25 : #ifdef __DOXYGEN__ 26 : /** 27 : * @brief Definition of the monitored socket/file descriptor. 28 : * 29 : * An array of these descriptors is passed as an argument to poll(). 30 : */ 31 1 : struct zsock_pollfd { 32 1 : int fd; /**< Socket descriptor */ 33 1 : short events; /**< Requested events */ 34 1 : short revents; /**< Returned events */ 35 : }; 36 : #else 37 : #define zsock_pollfd zvfs_pollfd 38 : #endif 39 : 40 : #ifdef __cplusplus 41 : } 42 : #endif 43 : 44 : /** 45 : * @} 46 : */ 47 : 48 : #endif /* ZEPHYR_INCLUDE_NET_SOCKET_POLL_H_ */