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_ */
|