Skip to content

tk_socket_t

概述

函数

函数名称说明
tk_socket_bind绑定到指定端口。
tk_socket_bind_ex绑定到指定IP和端口。
tk_socket_close关闭socket句柄。
tk_socket_deinittcp/udp 平台~初始化。
tk_socket_get_client_ip获取客户端IP。
tk_socket_get_client_ip_str获取客户端IP。
tk_socket_get_self_ip获取本地IP。
tk_socket_get_self_ip_str获取本地IP。
tk_socket_inittcp/udp 平台初始化。
tk_socket_last_io_has_error判断最后一次IO操作是否正常。
tk_socket_recv接收数据。
tk_socket_recvfrom从指定地址接收数据。
tk_socket_resolve解析主机名,并初始化addr对象。
tk_socket_send发送数据。
tk_socket_sendto发送数据到指定地址。
tk_socket_set_blocking设置为阻塞或非阻塞模式。
tk_socket_wait_for_data等待数据。

tk_socket_bind 函数

  • 函数功能:

绑定到指定端口。

  • 函数原型:
ret_t tk_socket_bind (int sock, int port);
  • 参数说明:
参数类型说明
返回值ret_t返回RET_OK表示成功,否则表示失败。
sockintsocket句柄。
portint端口号。

tk_socket_bind_ex 函数

  • 函数功能:

绑定到指定IP和端口。

  • 函数原型:
ret_t tk_socket_bind_ex (int sock, const char* ip, int port);
  • 参数说明:
参数类型说明
返回值ret_t返回RET_OK表示成功,否则表示失败。
sockintsocket句柄。
ipconst char*IP地址(可以为NULL)。
portint端口号。

tk_socket_close 函数

  • 函数功能:

关闭socket句柄。

  • 函数原型:
ret_t tk_socket_close (int sock);
  • 参数说明:
参数类型说明
返回值ret_t返回RET_OK表示成功,否则表示失败。
sockintsocket句柄。

tk_socket_deinit 函数

  • 函数功能:

tcp/udp 平台~初始化。

  • 函数原型:
ret_t tk_socket_deinit ();
  • 参数说明:
参数类型说明
返回值ret_t返回RET_OK表示成功,否则表示失败。

tk_socket_get_client_ip 函数

  • 函数功能:

获取客户端IP。

  • 函数原型:
uint32_t tk_socket_get_client_ip (int sockfd);
  • 参数说明:
参数类型说明
返回值uint32_t返回客户端IP。
sockfdintsocket句柄。

tk_socket_get_client_ip_str 函数

  • 函数功能:

获取客户端IP。

  • 函数原型:
const char* tk_socket_get_client_ip_str (int sockfd, char* ip, int len);
  • 参数说明:
参数类型说明
返回值const char*返回IP地址。
sockfdintsocket句柄。
ipchar*存放IP地址的内存。
lenint存放IP地址的内存的长度。

tk_socket_get_self_ip 函数

  • 函数功能:

获取本地IP。

  • 函数原型:
uint32_t tk_socket_get_self_ip (int sockfd);
  • 参数说明:
参数类型说明
返回值uint32_t返回本地IP。
sockfdintsocket句柄。

tk_socket_get_self_ip_str 函数

  • 函数功能:

获取本地IP。

  • 函数原型:
const char* tk_socket_get_self_ip_str (int sockfd, char* ip, int len);
  • 参数说明:
参数类型说明
返回值const char*返回IP地址。
sockfdintsocket句柄。
ipchar*存放IP地址的内存。
lenint存放IP地址的内存的长度。

tk_socket_init 函数

  • 函数功能:

tcp/udp 平台初始化。

  • 函数原型:
ret_t tk_socket_init ();
  • 参数说明:
参数类型说明
返回值ret_t返回RET_OK表示成功,否则表示失败。

tk_socket_last_io_has_error 函数

  • 函数功能:

判断最后一次IO操作是否正常。

  • 函数原型:
bool_t tk_socket_last_io_has_error ();
  • 参数说明:
参数类型说明
返回值bool_t返回TRUE表示有错误,否则表示正常。

tk_socket_recv 函数

  • 函数功能:

接收数据。

  • 函数原型:
int32_t tk_socket_recv (int sock, void* buffer, uint32_t size, int flags);
  • 参数说明:
参数类型说明
返回值int32_t返回实际接收的字节数。
sockintsocket句柄。
buffervoid*用于返回数据的缓冲区。
sizeuint32_t缓冲区大小。
flagsint标志。

tk_socket_recvfrom 函数

  • 函数功能:

从指定地址接收数据。

  • 函数原型:
int32_t tk_socket_recvfrom (int sock, void* buffer, uint32_t size, int flags, struct sockaddr* dest_addr, uint32_t* dest_len);
  • 参数说明:
参数类型说明
返回值int32_t返回实际接收的字节数。
sockintsocket句柄。
buffervoid*用于返回数据的缓冲区。
sizeuint32_t缓冲区大小。
flagsint标志。
dest_addrstruct sockaddr*目标地址。
dest_lenuint32_t*目标地址长度。

tk_socket_resolve 函数

  • 函数功能:

解析主机名,并初始化addr对象。

  • 函数原型:
struct sockaddr* tk_socket_resolve (const char* host, int port, struct sockaddr_in* addr);
  • 参数说明:
参数类型说明
返回值struct sockaddr*返回地址对象。
hostconst char*主机名。
portint端口号。
addrstruct sockaddr_in*地址对象。

tk_socket_send 函数

  • 函数功能:

发送数据。

  • 函数原型:
int32_t tk_socket_send (int sock, const void* buffer, uint32_t size, int flags);
  • 参数说明:
参数类型说明
返回值int32_t返回实际发送的字节数。
sockintsocket句柄。
bufferconst void*数据缓冲区。
sizeuint32_t数据长度。
flagsint标志。

tk_socket_sendto 函数

  • 函数功能:

发送数据到指定地址。

  • 函数原型:
int32_t tk_socket_sendto (int sock, const void* buffer, uint32_t size, int flags, const struct sockaddr* dest_addr, uint32_t dest_len);
  • 参数说明:
参数类型说明
返回值int32_t返回实际发送的字节数。
sockintsocket句柄。
bufferconst void*数据缓冲区。
sizeuint32_t数据长度。
flagsint标志。
dest_addrconst struct sockaddr*目标地址。
dest_lenuint32_t目标地址长度。

tk_socket_set_blocking 函数

  • 函数功能:

设置为阻塞或非阻塞模式。

  • 函数原型:
ret_t tk_socket_set_blocking (int sock, bool_t blocking);
  • 参数说明:
参数类型说明
返回值ret_t返回RET_OK表示成功,否则表示失败。
sockintsocket句柄。
blockingbool_t是否阻塞。

tk_socket_wait_for_data 函数

  • 函数功能:

等待数据。

  • 函数原型:
ret_t tk_socket_wait_for_data (int sock, uint32_t timeout_ms);
  • 参数说明:
参数类型说明
返回值ret_t返回RET_OK表示成功,否则表示失败。
sockintsocket句柄。
timeout_msuint32_t等待时间(毫秒)。