acl  3.5.3.0
acl_connect.h 文件参考
+ acl_connect.h 的引用(Include)关系图:
+ 此图展示该文件直接或间接的被哪些文件引用了:

浏览源代码.

类型定义

typedef int(* acl_connect_fn) (int, const struct sockaddr *, socklen_t)
 

函数

ACL_API int acl_sane_connect (ACL_SOCKET sock, const struct sockaddr *sa, socklen_t len)
 
ACL_API int acl_timed_connect (ACL_SOCKET fd, const struct sockaddr *sa, socklen_t len, int timeout)
 
ACL_API int acl_timed_connect_ms (ACL_SOCKET fd, const struct sockaddr *sa, socklen_t len, int timeout)
 
ACL_API ACL_SOCKET acl_inet_connect (const char *addr, int blocking, int timeout)
 
ACL_API ACL_SOCKET acl_inet_connect_ex (const char *addr, int blocking, int timeout, int *h_error)
 
ACL_API ACL_SOCKET acl_inet_timed_connect (const char *addr, int blocking, int timeout, int *h_error)
 
ACL_API void acl_set_connect (acl_connect_fn fn)
 

类型定义说明

◆ acl_connect_fn

typedef int(* acl_connect_fn) (int, const struct sockaddr *, socklen_t)

在文件 acl_connect.h115 行定义.

函数说明

◆ acl_inet_connect()

ACL_API ACL_SOCKET acl_inet_connect ( const char *  addr,
int  blocking,
int  timeout 
)

远程连接网络服务器地址

参数
addr{const char*} 远程服务器的监听地址,如:192.168.0.1|80, 如果需 要绑定本地的地址,则格式为: remote_addr@local_ip, 如: www.sina.com|80@60.28.250.199
blocking{int} 阻塞模式还是非阻塞模式, ACL_BLOCKING 或 ACL_NON_BLOCKING
timeout{int} 连接超时时间,如果 blocking 为 ACL_NON_BLOCKING 则该值将被忽略
返回
{ACL_SOCKET} 如果返回 ACL_SOCKET_INVALID 表示连接失败

◆ acl_inet_connect_ex()

ACL_API ACL_SOCKET acl_inet_connect_ex ( const char *  addr,
int  blocking,
int  timeout,
int *  h_error 
)

远程连接网络服务器地址

参数
addr{const char*} 远程服务器的监听地址,如:192.168.0.1|80, 当本机有多个网卡地址且想通过某个指定网卡连接服务器时的地址格式: remote_ip|remote_port@local_ip,如:211.150.111.12|80@192.168.1.1
blocking{int} 阻塞模式还是非阻塞模式, ACL_BLOCKING 或 ACL_NON_BLOCKING
timeout{int} 连接超时时间(秒级),如果 blocking 为 ACL_NON_BLOCKING 则该值将被忽略
h_error{int*} 当连接失败时存储失败原因错误号
返回
{ACL_SOCKET} 如果返回 ACL_SOCKET_INVALID 表示连接失败

◆ acl_inet_timed_connect()

ACL_API ACL_SOCKET acl_inet_timed_connect ( const char *  addr,
int  blocking,
int  timeout,
int *  h_error 
)

远程连接网络服务器地址

参数
addr{const char*} 远程服务器的监听地址,如:192.168.0.1|80, 当本机有多个网卡地址且想通过某个指定网卡连接服务器时的地址格式: remote_ip|remote_port@local_ip,如:211.150.111.12|80@192.168.1.1
blocking{int} 阻塞模式还是非阻塞模式, ACL_BLOCKING 或 ACL_NON_BLOCKING
timeout{int} 连接超时时间(毫秒级),如果 blocking 为 ACL_NON_BLOCKING 则该值将被忽略
h_error{int*} 当连接失败时存储失败原因错误号
返回
{ACL_SOCKET} 如果返回 ACL_SOCKET_INVALID 表示连接失败

◆ acl_sane_connect()

ACL_API int acl_sane_connect ( ACL_SOCKET  sock,
const struct sockaddr *  sa,
socklen_t  len 
)

远程连接服务器

参数
sock{ACL_SOCKET} 套接字,在UNIX平台下还可以是域套接字
sa{const struct sockaddr*} 服务器监听地址
len{socklen_t} sa 的地址长度
返回
{int} 0: 连接成功; -1: 连接失败

◆ acl_set_connect()

ACL_API void acl_set_connect ( acl_connect_fn  fn)

◆ acl_timed_connect()

ACL_API int acl_timed_connect ( ACL_SOCKET  fd,
const struct sockaddr *  sa,
socklen_t  len,
int  timeout 
)

带超时时间地远程连接服务器

参数
fd{ACL_SOCKET} 套接字,在UNIX平台下还可以是域套接字
sa{const struct sockaddr*} 服务器监听地址
len{socklen_t} sa 的地址长度
timeout{int} 连接超时时间(秒级)
返回
{int} 0: 连接成功; -1: 连接失败

◆ acl_timed_connect_ms()

ACL_API int acl_timed_connect_ms ( ACL_SOCKET  fd,
const struct sockaddr *  sa,
socklen_t  len,
int  timeout 
)

带超时时间地远程连接服务器

参数
fd{ACL_SOCKET} 套接字,在UNIX平台下还可以是域套接字
sa{const struct sockaddr*} 服务器监听地址
len{socklen_t} sa 的地址长度
timeout{int} 连接超时时间(毫秒级)
返回
{int} 0: 连接成功; -1: 连接失败