cc [flags…] –I /usr/cluster/include file –L /usr/cluster/lib –l dsdev#include <rgm/libdsdev.h> scha_err_t scds_simple_net_probe(scds_handle_t handle, scds_netaddr_t addr, time_t timeout, scds_fmsock_status_t *status, int count);
scds_simple_net_probe() 函数是 scds_fm_net_connect(3HA) 和 scds_fm_net_disconnect(3HA) 的包装函数。对于具有多个映射的主机,scds_simple_net_probe() 可处理提供的 hostname 的 IPv4 地址和 IPv6 地址。
您可以通过使用 scds_get_netaddr_list(3HA) 检索资源的网络地址列表。
连接到 IPv4 目标的状态或与 IPv4 目标断开连接的状态将存储在 scds_fmsock_status_t 数组的第一个成员中。第二个成员包含 IPv6 目标的状态。如果提供给此函数的 hostname 不包含 IPv4 或 IPv6 映射,则相应的状态将设置为 SCDS_FMSOCK_NA 。
支持以下参数:
由 scds_initialize(3HA) 返回的句柄。
指定进程侦听的 hostname、TCP 端口号和协议标识符。
等待成功连接的超时值(秒)。每个套接字(IPv4 或 IPv6)都将获得相同的超时时间,且这些超时将并行进行。
类型 scds_fmsock_status_t 的 SCDS_MAX_IPADDR_TYPES 成员的数组。数组中的每个成员都保存一个状态。此参数是由此函数设置的输出参数。
socklist 数组中成员的数量。将此参数设置为 SCDS_MAX_IPADDR_TYPES。
scds_simple_net_probe() 函数返回以下值:
该函数成功。
调用该函数时的参数无效。
由于超时、拒绝连接或其他错误,至少有一个连接操作失败。检查设置为 SCDS_FMSOCK_ERR 的 socklist 数组的所有成员的 err 字段以确定确切的错误。
至少有一个连接或断开连接操作失败。可以检查 scds_fmsock_status_t 数组以确定该失败是 IPv4 目标、IPv6 目标还是这两者中的失败。
表明函数执行成功。
表明执行函数时发生内部错误。
表明连接请求被服务器拒绝。
表明连接请求超时。
头文件
库
有关下列属性的说明,请参见 attributes(5):
|
scds_fm_net_connect(3HA)、scds_fm_net_disconnect(3HA)、scds_get_netaddr_list(3HA)、scds_initialize(3HA)、scds_simple_probe(3HA)、scha_calls(3HA)、attributes(5)