Linux网络编程--协议的名称以及类型等处理
来源:互联网 发布:淘宝哪个店能寄到韩国 编辑:程序博客网 时间:2024/06/10 19:35
为了网络编程的便捷,系统提供了一组用于查询协议的值以及名称的函数,本篇文章主要介绍协议族函数的使用方法和注意事项。
下面用一段代码介绍函数的使用方法:
#include <netdb.h>#include <stdio.h> /* 显示协议的项目 */void display_protocol(struct protoent *pt){ int i = 0; if(pt){/*合法的指针*/ printf("protocol name:%s,",pt->p_name);/*协议的官方名称*/ if(pt->p_aliases){/*别名不为空*/ printf("alias name:");/*显示别名*/ while(pt->p_aliases[i]){/*列表没到结尾*/ printf("%s ",pt->p_aliases[i]); /*显示当前别名*/ i++;/*下一个别名*/ } } printf(",value:%d\n",pt->p_proto); /*协议值*/ }}int main(int argc, char *argv[]){ int i = 0; /* 要查询的协议名称 */ const char *const protocol_name[]={ "ip", "icmp", "igmp", "ggp", "ipencap", "st", "tcp", "egp", "igp", "pup", "udp", "hmp", "xns-idp", "rdp", "iso-tp4", "xtp", "ddp", "idpr-cmtp", "ipv6", "ipv6-route", "ipv6-frag", "idrp", "rsvp", "gre", "esp", "ah", "skip", "ipv6-icmp", "ipv6-nonxt", "ipv6-opts", "rspf", "vmtp", "eigrp", "ospf", "ax.25", "ipip", "etherip", "encap", "pim", "ipcomp", "vrrp", "l2tp", "isis", "sctp", "fc", NULL}; setprotoent(1);/*在使用函数getprotobyname时不关闭文件/etc/protocols*/ while(protocol_name[i]!=NULL){/*没有到数组protocol_name的结尾*/ struct protoent *pt = getprotobyname((const char*)&protocol_name[i][0]);/*查询协议*/ if(pt){/*成功*/ display_protocol(pt); /*显示协议项目*/ } i++;/*移到数组protocol_name的下一个*/ }; endprotoent();/*关闭文件/etc/protocols*/ return 0; }
大家可以运行程序,对比下图系统给出的协议名称和数值进行对比。
1 0
- Linux网络编程--协议的名称以及类型等处理
- Linux 网络协议栈协议的处理
- Linux网络协议栈协议的处理
- Linux 网络协议栈协议的处理
- Linux网络编程协议
- linux 网络编程----网络协议
- 【WebService】CXF处理javaBean等复合类型以及Map等复杂类型的数据
- 【WebService】CXF处理javaBean等复合类型以及Map等复杂类型的数据
- 获取iOS项目名称及版本号以及网络类型的方法
- Linux网路编程网络基础之网络‘协议的概念
- Linux 网络编程 IP协议
- linux网络编程--UDP协议
- [Linux C编程]网络协议
- 网络的各种协议类型
- linux网络协议栈分析笔记7-VLAN的处理
- linux 网络编程之----网络协议
- 【Linux网络编程】 网络协议入门
- 编程思想和网络协议处理
- 使用ScrollView包裹布局,快速将布局变为可上下滑动
- 发送邮件页面
- 知识点滴(一) c#副屏设置以及读写ini文件的方法
- ural 1003 Parity 并查集
- 斑马打印机 password 处理
- Linux网络编程--协议的名称以及类型等处理
- Ibatis $与#的区别
- spring配置例子
- hdoj3001Travelling【状压dp 类TSP】
- compareHist函数
- Java ByteBuffer 使用实例
- 解决SpringMVC中文乱码问题以及配置不生效问题
- 几篇不错的文章
- MYSQL的事务处理功能