没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
Socket 函数集(linux) 收藏
accept(接受 socket 连线)
相关函
数
,,,
表头文
件
定义函
数
int accept(int s,struct sockaddr * addr,int *
addrlen);
函数说
明
用来接受参数 的 连线。参数 的 必需
先经 、函数处理过,当有连线进来时 会返
回一个新的 处理代码,往后的数据传送与读取就是经由新
的 处理,而原来参数 的 能继续使用 来
接受新的连线要求。连线成功时,参数 所指的结构会被系统
填入远程主机的地址数据,参数 为 的结构长
度。关于结构 的定义请参考 。
返回值 成功则返回新的 处理代码,失败返回,错误原因存于
中。
错误代
码
EBADF 参数 非合法 处理代码。
EFAULT 参数 指针指向无法存取的内存空间。
ENOTSOCK 参数 为一文件描述词,非 。
EOPNOTSUPP 指定的 并非 !"#$%。
EPERM 防火墙拒绝此连线。
ENOBUFS 系统的缓冲内存不足。
ENOMEM 核心内存不足。
范例 参考 。
bind(对 socket 定位)
相关函
数
,,,
表头文
件
定义函
数
int bind(int sockfd,struct sockaddr * my_addr,int
addrlen);
函数说
明
用来设置给参数 & 的 一个名称。此名称由参
数 ' 指向一 结构,对于不同的
' 定义了一个通用的数据结构。
(
) &'*
+,-*
.*
&'为调用 ()时的 ' 参数,即 $/ 0000
值。
最多使用 , 个字符长度。
此 结构会因使用不同的 ' 而有不同结构
定义,例如使用 $/ 12#!',其 结构定义便
为
(
) &'*
3 *
*
) 4+5-*
.*
(
67 *
.*
&'即为 &'
为使用的 编号
为 18地址
4未使用。
参数说
明
为 的结构长度。
返回值 成功则返回 9,失败返回,错误原因存于 中。
错误代
码
EBADF 参数 &非合法 处理代码。
EACCESS 权限不足
ENOTSOCK 参数 & 为一文件描述词,非 。
范例 参考
connect(建立 socket 连线)
相关函
数
,,
表头文
件
定义函
数
int connect (int sockfd,struct sockaddr *
serv_addr,int addrlen);
函数说
明
用来将参数 &的 连至参数 : 指
定的网络地址。结构 请参考 。参数 为
的结构长度。
返回值 成功则返回 9,失败返回,错误原因存于 中。
错误代
码
EBADF 参数 &非合法 处理代码
EFAULT 参数 : 指针指向无法存取的内存空间
ENOTSOCK 参数 & 为一文件描述词,非 。
EISCONN 参数 & 的 已是连线状态
ECONNREFUSED 连线要求被 : 端拒绝。
ETIMEDOUT 企图连线的操作超过限定时间仍未有响应。
ENETUNREACH 无法传送数据包至指定的主机。
EAFNOSUPPORT 结构的 &' 不正确。
EALREADY 为不可阻断且先前的连线操作还未完成。
范例 ;利用 的 !8
;此程序会连线 !8:,并将键盘输入的字符串传送给
:。
;!8: 范例请参考 ()。
;
&
<
=8"!76,
=#">#" 18?7@99A
'
(
*
*
B+7C3-*
&D$/ 12#!E !"#$%E99
(
?A*
0*
.
<
;填写 结构;
4FE4&*
&'D$/ 12#!*
D8"!*
D #">#" 18*;尝试连线;
&EFE4&9
(
?A*
0*
.
<
;接收由 : 端传来的信息;
:EBE4&BE9*
&?GHAEB*
I
(
4BE4&B*
;从标准输入设备取得字符串;
!J12 /1K#2EBE4&B*
;将字符串传给 : 端;
&EBE4&BE99
(
?A*
0*
.
.
.
执行
L
M':N
1'N;键盘输入;
;O中断程序;
endprotoent(结束网络协议数据的读取)
剩余25页未读,继续阅读
资源评论
- yuwuyang1102014-10-28可以对比看看 但是写的我觉没有想象中的好
MeAndJack
- 粉丝: 210
- 资源: 28
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功