Changeset d242ea8
- Timestamp:
- 02/07/07 16:46:43 (14 years ago)
- Branches:
- 4.0.1-hotfixes, cachetimestamps, develop, dpdk-ndag, etsilive, getfragoff, help, libtrace4, master, ndag_format, pfring, rc-4.0.1, rc-4.0.2, rc-4.0.3, rc-4.0.4, ringdecrementfix, ringperformance, ringtimestampfixes
- Children:
- 43ab7b3
- Parents:
- 205809b
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
lib/trace.c
r205809b rd242ea8 975 975 976 976 if (filter->filterstring && ! filter->flag) { 977 pcap_t *pcap ;977 pcap_t *pcap = NULL; 978 978 libtrace_linktype_t linktype=trace_get_link_type(packet); 979 979 if (linktype==(libtrace_linktype_t)-1) { … … 985 985 if (libtrace_to_pcap_dlt(linktype) == ~1U) { 986 986 trace_set_err(packet->trace,TRACE_ERR_BAD_PACKET, 987 "Unknown pcap equiv ilent linktype");987 "Unknown pcap equivalent linktype"); 988 988 return -1; 989 989 } … … 992 992 1500U); 993 993 /* build filter */ 994 assert(pcap); 994 995 if (pcap_compile( pcap, &filter->filter, filter->filterstring, 995 996 1, 0)) { 997 trace_set_err(packet->trace,TRACE_ERR_BAD_PACKET, 998 "Unable to compile the filter \"%s\": %s", 999 filter->filterstring, 1000 pcap_geterr(pcap)); 996 1001 pcap_close(pcap); 997 trace_set_err(packet->trace,TRACE_ERR_BAD_PACKET,998 "Packet has no payload");999 1002 return -1; 1000 1003 } -
tools/tracestats/tracestats.c
rd5a27e8 rd242ea8 100 100 101 101 for(i=0;i<filter_count;++i) { 102 if(trace_apply_filter(filters[i].filter,packet)) { 102 if (filters[i].filter == NULL) 103 continue; 104 if(trace_apply_filter(filters[i].filter,packet) > 0) { 103 105 ++filters[i].count; 104 106 filters[i].bytes+=trace_get_wire_length(packet); 107 } 108 if (trace_is_err(trace)) { 109 trace_perror(trace, "trace_apply_filter"); 110 fprintf(stderr, "Removing filter from filterlist\n"); 111 filters[i].filter = NULL; 105 112 } 106 113 } … … 110 117 } 111 118 119 printf("%-30s\t%12s\t%12s\t%7s\n","filter","count","bytes","%"); 112 120 for(i=0;i<filter_count;++i) { 113 121 printf("%30s:\t%12"PRIu64"\t%12"PRIu64"\t%7.03f\n",filters[i].expr,filters[i].count,filters[i].bytes,filters[i].count*100.0/count); … … 165 173 } 166 174 167 printf("%-30s\t%12s\t%12s\t%7s\n","filter","count","bytes","%");168 175 for(i=optind;i<argc;++i) { 169 176 run_trace(argv[i]); -
tools/tracestats/tracesummary
r130a0e4 rd242ea8 5 5 fi 6 6 7 exec tracestats --filter 'not ip and not ip6' \ 8 --filter 'ip6' \ 9 --filter 'ip' \ 7 exec tracestats 8 # XXX: Fix the formatting for these filters 9 --filter 'not ether proto \ip and not ether proto 0x86dd' \ 10 --filter 'ether proto 0x86dd' \ 11 --filter 'ether proto \ip' \ 10 12 --filter tcp \ 11 13 --filter udp \
Note: See TracChangeset
for help on using the changeset viewer.