TuyaOS
tkl_network.h
1
11#ifndef __TKL_NETWORK_H__
12#define __TKL_NETWORK_H__
13
14#include "tuya_cloud_types.h"
15
16#ifdef __cplusplus
17extern "C" {
18#endif
19
29TUYA_ERRNO tkl_net_get_errno(VOID);
30
41OPERATE_RET tkl_net_fd_set(CONST INT_T fd, TUYA_FD_SET_T* fds);
42
53OPERATE_RET tkl_net_fd_clear(CONST INT_T fd, TUYA_FD_SET_T* fds);
54
65OPERATE_RET tkl_net_fd_isset(CONST INT_T fd, TUYA_FD_SET_T* fds);
66
76OPERATE_RET tkl_net_fd_zero(TUYA_FD_SET_T* fds);
77
91 INT_T tkl_net_select(CONST INT_T maxfd, TUYA_FD_SET_T *readfds, TUYA_FD_SET_T *writefds, TUYA_FD_SET_T *errorfds, CONST UINT_T ms_timeout);
92
102INT_T tkl_net_get_nonblock(CONST INT_T fd);
103
114OPERATE_RET tkl_net_set_block(CONST INT_T fd, CONST BOOL_T block);
115
125TUYA_ERRNO tkl_net_close(CONST INT_T fd);
126
137TUYA_ERRNO tkl_net_shutdown(CONST INT_T fd, CONST INT_T how);
138
148INT_T tkl_net_socket_create(CONST TUYA_PROTOCOL_TYPE_E type);
149
161TUYA_ERRNO tkl_net_connect(CONST INT_T fd, CONST TUYA_IP_ADDR_T addr, CONST UINT16_T port);
162
174TUYA_ERRNO tkl_net_connect_raw(CONST INT_T fd, VOID *p_socket_addr, CONST INT_T len);
175
187TUYA_ERRNO tkl_net_bind(CONST INT_T fd, CONST TUYA_IP_ADDR_T addr, CONST UINT16_T port);
188
199TUYA_ERRNO tkl_net_listen(CONST INT_T fd, CONST INT_T backlog);
200
212TUYA_ERRNO tkl_net_accept(CONST INT_T fd, TUYA_IP_ADDR_T *addr, UINT16_T *port);
213
225TUYA_ERRNO tkl_net_send(CONST INT_T fd, CONST VOID *buf, CONST UINT_T nbytes);
226
240TUYA_ERRNO tkl_net_send_to(CONST INT_T fd, CONST VOID *buf, CONST UINT_T nbytes, CONST TUYA_IP_ADDR_T addr,CONST UINT16_T port);
241
253TUYA_ERRNO tkl_net_recv(CONST INT_T fd, VOID *buf, CONST UINT_T nbytes);
254
267INT_T tkl_net_recv_nd_size(CONST INT_T fd, VOID *buf, CONST UINT_T buf_size, CONST UINT_T nd_size);
268
282TUYA_ERRNO tkl_net_recvfrom(CONST INT_T fd, VOID *buf, CONST UINT_T nbytes, TUYA_IP_ADDR_T *addr, UINT16_T *port);
283
294OPERATE_RET tkl_net_gethostbyname(CONST CHAR_T *domain, TUYA_IP_ADDR_T *addr);
295
306OPERATE_RET tkl_net_socket_bind(CONST INT_T fd, CONST CHAR_T *ip);
307
317OPERATE_RET tkl_net_set_cloexec(CONST INT_T fd);
318
329OPERATE_RET tkl_net_get_socket_ip(CONST INT_T fd, TUYA_IP_ADDR_T *addr);
330
340TUYA_IP_ADDR_T tkl_net_str2addr(CONST CHAR_T *ip_str);
341
351CHAR_T* tkl_net_addr2str(CONST TUYA_IP_ADDR_T ipaddr);
352
366OPERATE_RET tkl_net_setsockopt(CONST INT_T fd, CONST TUYA_OPT_LEVEL level, CONST TUYA_OPT_NAME optname, CONST VOID_T *optval, CONST INT_T optlen);
367
381OPERATE_RET tkl_net_getsockopt(CONST INT_T fd, CONST TUYA_OPT_LEVEL level, CONST TUYA_OPT_NAME optname, VOID_T *optval, INT_T *optlen);
382
383#ifdef __cplusplus
384}
385#endif
386
387#endif // __TAL_NETWORK_H__
388
Definition: tuya_cloud_types.h:1055