连接子例程

用途

让协议堆栈管理两个使用 TCP 的套接字。

语法

#include < sys/types.h >
#include < sys/socket.h >

整数拼接 (socket1, socket2,标志)
英特 socket1, Socket2;
英特 标志;

描述

splice 子例程将允许 TCP 管理两个处于已连接状态的套接字,从而使调用者能够将数据从一个套接字移动到另一个套接字。 splice 子例程成功返回后,调用者需要关闭两个套接字。

这两个套接字的类型应该是 SOCK_STREAM 和协议 IPPROTO_TCP。 指定零协议也将起作用。

参数

描述
socket1, socket2 指定已通过成功 connect () 或 accept () 的套接字。
标志 设置为零。 当前已忽略。

返回值

描述
重大安全事件数量 指示成功完成。
-1 指示错误。 具体错误由 errno 指示。

错误代码

描述
EBADF socket1socket2 无效。
ENOTSOCK socket1socket2 引用的是文件,而不是套接字。
EOPNOTSUPP socket1socket2 的类型不是 SOCK_STREAM
EINVAL 参数无效。
EEXIST socket1socket2 已拼接。
ENOTCONN socket1socket2 未处于已连接状态。
电弧炉辅助系统 此子例程不支持 socket1socket2 地址系列。