From 4a600f8777f3fa0f673b47ccc8a0ba9cf6634249 Mon Sep 17 00:00:00 2001 From: Guilherme Maciel Ferreira Date: Fri, 8 Mar 2013 16:50:51 -0300 Subject: [PATCH] traceroute: free some memory allocated by xzalloc() Signed-off-by: Guilherme Maciel Ferreira Signed-off-by: Denys Vlasenko --- networking/traceroute.c | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/networking/traceroute.c b/networking/traceroute.c index 6b7b2eb..0c18d6c 100644 --- a/networking/traceroute.c +++ b/networking/traceroute.c @@ -805,6 +805,7 @@ common_traceroute_main(int op, char **argv) char *waittime_str; char *pausemsecs_str; char *first_ttl_str; + char *dest_str; #if ENABLE_FEATURE_TRACEROUTE_SOURCE_ROUTE llist_t *source_route_list = NULL; int lsrr = 0; @@ -1059,8 +1060,12 @@ common_traceroute_main(int op, char **argv) xsetgid(getgid()); xsetuid(getuid()); - printf("traceroute to %s (%s)", argv[0], - xmalloc_sockaddr2dotted_noport(&dest_lsa->u.sa)); + dest_str = xmalloc_sockaddr2dotted_noport(&dest_lsa->u.sa); + printf("traceroute to %s (%s)", argv[0], dest_str); + if (ENABLE_FEATURE_CLEAN_UP) { + free(dest_str); + } + if (op & OPT_SOURCE) printf(" from %s", source); printf(", %d hops max, %d byte packets\n", max_ttl, packlen); @@ -1216,6 +1221,12 @@ common_traceroute_main(int op, char **argv) } } + if (ENABLE_FEATURE_CLEAN_UP) { + free(to); + free(lastaddr); + free(from_lsa); + } + return 0; } -- 2.7.4