C语言设置和取得socket状态的相关函数用法介绍_第1页
C语言设置和取得socket状态的相关函数用法介绍_第2页
C语言设置和取得socket状态的相关函数用法介绍_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

本文格式为Word版,下载可任意编辑——C语言设置和取得socket状态的相关函数用法介绍C语言setsockopt函数:设置socket状态

头文件:

定义函数:

intsetsockoptints,intlevel,intoptname,constvoid*optval,,socklen_toptlen;

函数说明:setsockopt用来设置参数s所指定的socket状态.参数level代表欲设置的网络层,一般设成SOL_SOCKET以存取socket层.参数optname代表欲设置的选项,有以下几种数值:

SO_DEBUG开启或关闭排错模式

SO_REUSEADDR允许在bind过程中本地地址可重复使用

SO_TYPE返回socket形态.

SO_ERROR返回socket已发生的错误理由

SO_DONTROUTE送出的数据包不要利用路由设备来传输.

SO_BROADCAST使用播送方式传送

SO_SNDBUF设置送出的暂存区大小

SO_RCVBUF设置接收的暂存区大小

SO_KEEPALIVE定期确定连线是否已终止.

SO_OOBINLINE当接收到OOB数据时会连忙送至标准输入设备

SO_LINGER确保数据安好且稳当的传送出去.

参数optval代表欲设置的值,参数optlen那么为optval的长度.

返回值:告成那么返回0,若有错误那么返回-1,错误理由存于errno.

附加说明:

1、EBADF参数s并非合法的socket处理代码

2、ENOTSOCK参数s为一文件描述词,非socket

3、ENOPROTOOPT参数optname指定的选项不正确.

4、EFAULT参数optval指针指向无法存取的内存空间.

C语言getsockopt函数:取得socket状态

头文件:

#include#include

定义函数:

intgetsockoptints,intlevel,intoptname,void*optval,socklen_t*optlen;

函数说明:getsockopt会将参数s所指定的socket状态返回.参数optname代表欲取得何种选项状态,而参数optval那么指向欲保存结果的内存地址,参数optlen那么为该空间的大小.参数level、optname请参考setsockopt.

返回值:告成那么返回0,若有错误那么返回-1,错误理由存于errno

错误代码:

1、EBADF参数s并非合法的socket处理代码

2、ENOTSOCK参数s为一文件描述词,非socket

3、ENOPROTOOPT参数optname指定的选项不正确

4、EFAULT参数optval指针指向无法存取的内存空间

范例

#include#includemainints;intoptval;intoptlen=sizeofint;ifs=socketAF_INET,SOCK_STREAM,00perrorsocket;getsockopts,SOL_SOCKET,SO_TYPE,optval,optlen;p

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论