www.pudn.com > pcap_filter.rar > pcap_filter.c


/* 
 * Copyright (c) 1999, 2000 
 *	Politecnico di Torino.  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 Politecnico 
 * di Torino, 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. 
 */ 

#include 
#include 

#include 

#define MAX_PRINT 80
#define MAX_LINE 16


void dispatcher_handler(u_char *, 
	const struct pcap_pkthdr *, const u_char *);
void usage();

void main(int argc, char **argv) {
  pcap_t *fp;
  char error[PCAP_ERRBUF_SIZE];
  char *device=NULL;
  char *ifilename=NULL;
  char *ofilename=NULL;
  char *filter=NULL;
  int i=0;
  pcap_dumper_t *dumpfile;
  struct bpf_program fcode;
  bpf_u_int32 SubNet,NetMask;
  
  if (argc == 1)
  {
	  usage(); 
	  return;
  }
  
  for(i=1;i