Nikolay Sivov : netstat: No need to allocate fixed length stats structs.
Alexandre Julliard
julliard at winehq.org
Tue Apr 30 12:51:27 CDT 2013
Module: wine
Branch: master
Commit: 423d5f29e8d3cb9906d0663047c4dd51ed581f02
URL: http://source.winehq.org/git/wine.git/?a=commit;h=423d5f29e8d3cb9906d0663047c4dd51ed581f02
Author: Nikolay Sivov <nsivov at codeweavers.com>
Date: Tue Apr 30 13:26:43 2013 +0400
netstat: No need to allocate fixed length stats structs.
---
programs/netstat/netstat.c | 40 ++++++++++++++++------------------------
1 files changed, 16 insertions(+), 24 deletions(-)
diff --git a/programs/netstat/netstat.c b/programs/netstat/netstat.c
index b7fee0e..23f2b40 100644
--- a/programs/netstat/netstat.c
+++ b/programs/netstat/netstat.c
@@ -274,25 +274,21 @@ static void NETSTAT_tcp_table(void)
static void NETSTAT_tcp_stats(void)
{
- PMIB_TCPSTATS stats;
+ MIB_TCPSTATS stats;
- stats = (PMIB_TCPSTATS)HeapAlloc(GetProcessHeap(), 0, sizeof(MIB_TCPSTATS));
-
- if (GetTcpStatistics(stats) == NO_ERROR)
+ if (GetTcpStatistics(&stats) == NO_ERROR)
{
NETSTAT_wprintf(fmtnn, NETSTAT_load_message(IDS_TCP_STAT));
NETSTAT_wprintf(fmtn);
- NETSTAT_wprintf(fmttcpstat, NETSTAT_load_message(IDS_TCP_ACTIVE_OPEN), stats->dwActiveOpens);
- NETSTAT_wprintf(fmttcpstat, NETSTAT_load_message(IDS_TCP_PASSIV_OPEN), stats->dwPassiveOpens);
- NETSTAT_wprintf(fmttcpstat, NETSTAT_load_message(IDS_TCP_FAILED_CONN), stats->dwAttemptFails);
- NETSTAT_wprintf(fmttcpstat, NETSTAT_load_message(IDS_TCP_RESET_CONN), stats->dwEstabResets);
- NETSTAT_wprintf(fmttcpstat, NETSTAT_load_message(IDS_TCP_CURR_CONN), stats->dwCurrEstab);
- NETSTAT_wprintf(fmttcpstat, NETSTAT_load_message(IDS_TCP_SEGM_RECV), stats->dwInSegs);
- NETSTAT_wprintf(fmttcpstat, NETSTAT_load_message(IDS_TCP_SEGM_SENT), stats->dwOutSegs);
- NETSTAT_wprintf(fmttcpstat, NETSTAT_load_message(IDS_TCP_SEGM_RETRAN), stats->dwRetransSegs);
+ NETSTAT_wprintf(fmttcpstat, NETSTAT_load_message(IDS_TCP_ACTIVE_OPEN), stats.dwActiveOpens);
+ NETSTAT_wprintf(fmttcpstat, NETSTAT_load_message(IDS_TCP_PASSIV_OPEN), stats.dwPassiveOpens);
+ NETSTAT_wprintf(fmttcpstat, NETSTAT_load_message(IDS_TCP_FAILED_CONN), stats.dwAttemptFails);
+ NETSTAT_wprintf(fmttcpstat, NETSTAT_load_message(IDS_TCP_RESET_CONN), stats.dwEstabResets);
+ NETSTAT_wprintf(fmttcpstat, NETSTAT_load_message(IDS_TCP_CURR_CONN), stats.dwCurrEstab);
+ NETSTAT_wprintf(fmttcpstat, NETSTAT_load_message(IDS_TCP_SEGM_RECV), stats.dwInSegs);
+ NETSTAT_wprintf(fmttcpstat, NETSTAT_load_message(IDS_TCP_SEGM_SENT), stats.dwOutSegs);
+ NETSTAT_wprintf(fmttcpstat, NETSTAT_load_message(IDS_TCP_SEGM_RETRAN), stats.dwRetransSegs);
}
-
- HeapFree(GetProcessHeap(), 0, stats);
}
static void NETSTAT_udp_table(void)
@@ -325,21 +321,17 @@ static void NETSTAT_udp_table(void)
static void NETSTAT_udp_stats(void)
{
- PMIB_UDPSTATS stats;
+ MIB_UDPSTATS stats;
- stats = (PMIB_UDPSTATS)HeapAlloc(GetProcessHeap(), 0, sizeof(MIB_UDPSTATS));
-
- if (GetUdpStatistics(stats) == NO_ERROR)
+ if (GetUdpStatistics(&stats) == NO_ERROR)
{
NETSTAT_wprintf(fmtnn, NETSTAT_load_message(IDS_UDP_STAT));
NETSTAT_wprintf(fmtn);
- NETSTAT_wprintf(fmtudpstat, NETSTAT_load_message(IDS_UDP_DGRAMS_RECV), stats->dwInDatagrams);
- NETSTAT_wprintf(fmtudpstat, NETSTAT_load_message(IDS_UDP_NO_PORTS), stats->dwNoPorts);
- NETSTAT_wprintf(fmtudpstat, NETSTAT_load_message(IDS_UDP_RECV_ERRORS), stats->dwInErrors);
- NETSTAT_wprintf(fmtudpstat, NETSTAT_load_message(IDS_UDP_DGRAMS_SENT), stats->dwOutDatagrams);
+ NETSTAT_wprintf(fmtudpstat, NETSTAT_load_message(IDS_UDP_DGRAMS_RECV), stats.dwInDatagrams);
+ NETSTAT_wprintf(fmtudpstat, NETSTAT_load_message(IDS_UDP_NO_PORTS), stats.dwNoPorts);
+ NETSTAT_wprintf(fmtudpstat, NETSTAT_load_message(IDS_UDP_RECV_ERRORS), stats.dwInErrors);
+ NETSTAT_wprintf(fmtudpstat, NETSTAT_load_message(IDS_UDP_DGRAMS_SENT), stats.dwOutDatagrams);
}
-
- HeapFree(GetProcessHeap(), 0, stats);
}
static NETSTATPROTOCOLS NETSTAT_get_protocol(WCHAR name[])
More information about the wine-cvs
mailing list