荔园在线
荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀
[回到开始]
[上一篇][下一篇]
发信人: jjk (kernel), 信区: Linux
标 题: 和我一起学libpcap(2.1)(转寄)
发信站: 荔园晨风BBS站 (Sat Mar 2 22:39:21 2002), 转信
【 以下文字转载自 jjk 的信箱 】
【 原文由 jjksam@smth.org 所发表 】
发信人: doggy (不能回家好无聊), 信区: Linux
标 题: 和我一起学libpcap(2.1)(转寄)
发信站: BBS 水木清华站 (Mon Feb 4 04:54:27 2002)
本文版权所有:doggy(chaujy@x263.net) 欢迎转载
2.使用进阶篇
刚才我们对程序的要求是能编译通过,能运行成功
现在我们让这个程序实用点吧
2.1 其它几个函数介绍
这几个函数的特点是简单但无关紧要
现在我们隆重退出
char * pcap_lookupdev ( char * errbuf );
这个函数就是查找本机上的网络接口设备,我机器上就返回"eth0",
在pcap_open_live之前用,没什么意思吧,反正我是不爱用它
int pcap_lookupnet(char *, bpf_u_int32 *, bpf_u_int32 *, char *);
第一个参数就是pcap_lookupdev返回的接口名,二三参数都是32位无符号数,
分别是IP网段和掩码,最后那个参数还是ebuf
int pcap_datalink(pcap_t *);
它返回你的网络类型,如 DLT_EN10MB 就是10M以太网
让人ft的是这些常量定义不在pcap.h中,在哪?自己找找吧;-)
int pcap_snapshot(pcap_t *);
返回最长抓多少字节,就是我们在pcap_open_live中第二个参数设置的
int pcap_stats(pcap_t *, struct pcap_stat *);
计数,共抓了多少过滤掉了多少,看看struct pcap_stat的定义就明白了
struct pcap_stat {
u_int ps_recv; /* number of packets received */
u_int ps_drop; /* number of packets dropped */
u_int ps_ifdrop; /* drops by interface XXX not yet supported */
};
int pcap_major_version(pcap_t *);
int pcap_minor_version(pcap_t *);
版本号,你有用么?
--
我宁愿尝试两个人的磨合
也不要继续一个人的寂寞
※ 来源:·BBS 水木清华站 smth.org·[FROM: 166.111.169.39]
--
※ 转载:·荔园晨风BBS站 bbs.szu.edu.cn·[FROM: 192.168.0.146]
[回到开始]
[上一篇][下一篇]
荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店