• 大小: 813KB
    文件类型: .gz
    金币: 1
    下载: 0 次
    发布日期: 2021-05-29
  • 语言: 其他
  • 标签: libpcap-1.9.  linux  

资源简介

linux下libpcap-1.9.0的源码。可以在Linux下编译。参考Readme文件。

资源截图

代码片段和文件信息

/*
 * Copyright (c) 1992 1993 1994 1995 1996
 * The Regents of the University of California.  All rights reserved.
 *
 * Redistribution and use in source and binary forms with or without
 * modification are permitted provided that: (1) source code distributions
 * retain the above copyright notice and this paragraph in its entirety (2)
 * distributions including binary code include the above copyright notice and
 * this paragraph in its entirety in the documentation or other materials
 * provided with the distribution and (3) all advertising materials mentioning
 * features or use of this software display the following acknowledgement:
 * ‘‘This product includes software developed by the University of California
 * Lawrence Berkeley Laboratory and its contributors.‘‘ Neither the name of
 * the University nor the names of its contributors may be used to endorse
 * or promote products derived from this software without specific prior
 * written permission.
 * THIS SOFTWARE IS PROVIDED ‘‘AS IS‘‘ AND WITHOUT ANY EXPRESS OR IMPLIED
 * WARRANTIES INCLUDING WITHOUT LIMITATION THE IMPLIED WARRANTIES OF
 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
 */

#ifdef HAVE_CONFIG_H
#include 
#endif

#include 
#include 

#include “optimize.h“

void
bpf_dump(const struct bpf_program *p int option)
{
const struct bpf_insn *insn;
int i;
int n = p->bf_len;

insn = p->bf_insns;
if (option > 2) {
printf(“%d\n“ n);
for (i = 0; i < n; ++insn ++i) {
printf(“%u %u %u %u\n“ insn->code
       insn->jt insn->jf insn->k);
}
return ;
}
if (option > 1) {
for (i = 0; i < n; ++insn ++i)
printf(“{ 0x%x %d %d 0x%08x }\n“
       insn->code insn->jt insn->jf insn->k);
return;
}
for (i = 0; i < n; ++insn ++i) {
#ifdef BDEBUG
if (i < NBIDS && bids[i] > 0)
printf(“[%02d]“ bids[i] - 1);
else
printf(“ -- “);
#endif
puts(bpf_image(insn i));
}
}

评论

共有 条评论