Skip to content

Commit 9dc9cee

Browse files
committed
stat add flexiable interface
1 parent 457859d commit 9dc9cee

File tree

2 files changed

+17
-3
lines changed

2 files changed

+17
-3
lines changed

stat.c

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -57,9 +57,10 @@ void printPacketArray(char *dst, uchar *src) {
5757
snprintf(dst + strlen(dst), 5, "%x ", src[i]);
5858
}
5959
}
60+
/* print Last 10(count) packet */
61+
void printLastPacketInfo(int count) {
62+
ASSERT(count >= 0);
6063

61-
/**/
62-
void printPacketInfo() {
6364
/*
6465
* ---------|-------
6566
* <---1----- <---2--
@@ -78,9 +79,16 @@ void printPacketInfo() {
7879
G_packet[i].incoming,
7980
buffer);
8081
i--;
82+
count--;
83+
if (count == 0) {
84+
return;
85+
}
8186
}
8287

83-
for (i = LAST_PACKETS_NUM - 1; i > G_pos - 1 ; i--) {
88+
for (i = LAST_PACKETS_NUM - 1; i > G_pos - 1 ; i--, count--) {
89+
if (count == 0) {
90+
return;
91+
}
8492
memset(buffer, 0, PAYLOAD_SNAPSHOT_LEN + 4 + 1);
8593
printPacketArray(buffer, (uchar*)G_packet[i].payload);
8694
dump(L_OK, "datalen:%u seq:%u dport:%u sport:%u incoming:%c\npacket:\n%s\n",
@@ -92,3 +100,7 @@ void printPacketInfo() {
92100
buffer);
93101
}
94102
}
103+
104+
void printPacketInfo() {
105+
printLastPacketInfo(LAST_PACKETS_NUM);
106+
}

stat.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,3 +3,5 @@ void addPacketInfo(char incoming, uint32 datalen, uint32 tcp_seq,
33
uint16 dport, uint16 sport, char *payload);
44

55
void printPacketInfo();
6+
7+
void printLastPacketInfo(int count);

0 commit comments

Comments
 (0)