[ARGUS] Patch for man records
Peter Van Epp
vanepp at sfu.ca
Sat Aug 7 20:19:05 EDT 2004
Indeed, it isn't the byte count but rather the sequence number and
there is a "d" (signed) format that I expect should be "u" for both that and
the number of flows. Both are specific to mar records so shouldn't affect
anything else neither should ever be negative. As well we should put the man
format in a man page somewhere (if its there I couldn't see it):
07 Aug 04 15:59:36 man 229.97.122.203 v2.0 -973267286 31291
startime indicator major_version nextMrSequenceNum flows
1129401 102 556049277 57179 CON
pktsRcvd pktsDrop bytesRcvd dst.bytes ahdr.cause
new:
05 Apr 04 08:09:36 man 229.97.122.203 v2.0 1 0 0 0 0 0 STA
07 Aug 04 15:59:36 man 229.97.122.203 v2.0 3321700010 31291 1129401 102 556049277 57179 CON
Bytes received against byte transmitted seems odd (assuming thats what
the counts mean in this context) as well. I'll have to poke at that on one of
the test files that I have tcpdump count output for and see whats up.
Peter Van Epp / Operations and Technical Support
Simon Fraser University, Burnaby, B.C. Canada
Here is a diff against argus-clients-2.0.6.fixes.1:
*** common/argus_util.c.orig Sat Aug 7 15:03:50 2004
--- common/argus_util.c Sat Aug 7 17:10:32 2004
***************
*** 1537,1543 ****
struct ArgusFlow *flow;
if (argus->ahdr.type & ARGUS_MAR) {
! sprintf (&buf[strlen(buf)], "%*d ", hfield, argus->argus_mar.nextMrSequenceNum);
} else {
flow = &argus->argus_far.flow;
--- 1537,1543 ----
struct ArgusFlow *flow;
if (argus->ahdr.type & ARGUS_MAR) {
! sprintf (&buf[strlen(buf)], "%*u ", hfield, argus->argus_mar.nextMrSequenceNum);
} else {
flow = &argus->argus_far.flow;
***************
*** 1650,1656 ****
ArgusPrintDstPort (char *buf, struct ArgusRecord *argus)
{
if (argus->ahdr.type & ARGUS_MAR) {
! sprintf (&buf[strlen(buf)], "%-*d", pfield + 1, argus->argus_mar.flows);
} else {
struct ArgusFlow *flow = &argus->argus_far.flow;
--- 1650,1656 ----
ArgusPrintDstPort (char *buf, struct ArgusRecord *argus)
{
if (argus->ahdr.type & ARGUS_MAR) {
! sprintf (&buf[strlen(buf)], "%-*u", pfield + 1, argus->argus_mar.flows);
} else {
struct ArgusFlow *flow = &argus->argus_far.flow;
More information about the argus
mailing list