ioctl函数详细jieshao )

ioctl函数详细jieshao )

ID:48315122

大小:55.00 KB

页数:5页

时间:2020-01-13

ioctl函数详细jieshao )_第1页
ioctl函数详细jieshao )_第2页
ioctl函数详细jieshao )_第3页
ioctl函数详细jieshao )_第4页
ioctl函数详细jieshao )_第5页
资源描述:

《ioctl函数详细jieshao )》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、ioctl函数详细说明ioctl函数 本函数影响由fd参数引用的一个打开的文件。 #includeintioctl(intfd,intrequest,.../*void*arg*/);返回0:成功   -1:出错 第三个参数总是一个指针,但指针的类型依赖于request参数。我们可以把和网络相关的请求划分为6类:套接口操作文件操作接口操作ARP高速缓存操作路由表操作流系统下表列出了网络相关ioctl请求的request参数以及arg地址必须指向的数据类型: 类别Request说明数据类型套接口SIOCATMARKSIOCS

2、PGRPSIOCGPGRP是否位于带外标记设置套接口的进程ID或进程组ID获取套接口的进程ID或进程组IDintintint 文 件  FIONBINFIOASYNCFIONREADFIOSETOWNFIOGETOWN 设置/清除非阻塞I/O标志设置/清除信号驱动异步I/O标志获取接收缓存区中的字节数设置文件的进程ID或进程组ID获取文件的进程ID或进程组IDintintintintint    SIOCGIFCONFSIOCSIFADDRSIOCGIFADDRSIOCSIFFLAGS获取所有接口的清单设置接口地址获取接口地址设置接口标志st

3、ructifconfstructifreqstructifreqstructifreq接口          SIOCGIFFLAGSSIOCSIFDSTADDRSIOCGIFDSTADDRSIOCGIFBRDADDRSIOCSIFBRDADDRSIOCGIFNETMASKSIOCSIFNETMASKSIOCGIFMETRICSIOCSIFMETRICSIOCGIFMTUSIOCxxx获取接口标志设置点到点地址获取点到点地址获取广播地址设置广播地址获取子网掩码设置子网掩码获取接口的测度设置接口的测度获取接口MTU(还有很多取决于系统的实现)s

4、tructifreqstructifreqstructifreqstructifreqstructifreqstructifreqstructifreqstructifreqstructifreqstructifreq ARPSIOCSARPSIOCGARPSIOCDARP创建/修改ARP表项获取ARP表项删除ARP表项structarpreqstructarpreqstructarpreq路由SIOCADDRTSIOCDELRT增加路径删除路径structrtentrystructrtentry流I_xxx    套接口操作:明确用于套接口

5、操作的ioctl请求有三个,它们都要求ioctl的第三个参数是指向某个整数的一个指针。 SIOCATMARK:   如果本套接口的的度指针当前位于带外标记,那就通过由第三个参数指向的整数返回一个非0值;否则返回一个0值。POSIX以函数sockatmark替换本请求。SIOCGPGRP:      通过第三个参数指向的整数返回本套接口的进程ID或进程组ID,该ID指定针对本套接口的SIGIO或SIGURG信号的接收进程。本请求和fcntl的F_GETOWN命令等效,POSIX标准化的是fcntl函数。SIOCSPGRP:    把本套接口的进

6、程ID或者进程组ID设置成第三个参数指向的整数,该ID指定针对本套接口的SIGIO或SIGURG信号的接收进程,本请求和fcntl的F_SETOWN命令等效,POSIX标准化的是fcntl操作。 文件操作:以下5个请求都要求ioctl的第三个参数指向一个整数。 FIONBIO:       根据ioctl的第三个参数指向一个0或非0值分别清除或设置本套接口的非阻塞标志。本请求和O_NONBLOCK文件状态标志等效,而该标志通过fcntl的F_SETFL命令清除或设置。 FIOASYNC:     根据iocl的第三个参数指向一个0值或非0值分

7、别清除或设置针对本套接口的信号驱动异步I/O标志,它决定是否收取针对本套接口的异步I/O信号(SIGIO)。本请求和O_ASYNC文件状态标志等效,而该标志可以通过fcntl的F_SETFL命令清除或设置。 FIONREAD:    通过由ioctl的第三个参数指向的整数返回当前在本套接口接收缓冲区中的字节数。本特性同样适用于文件,管道和终端。 FIOSETOWN:   对于套接口和SIOCSPGRP等效。FIOGETOWN:   对于套接口和SIOCGPGRP等效。 接口配置:得到系统中所有接口由SIOCGIFCONF请求完成,该请求使用i

8、fconf结构,ifconf又使用ifreq结构,如下所示: Structifconf{   intifc_len;                //缓冲区的大小

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。