aboutsummaryrefslogtreecommitdiffstats
path: root/epan/emem.c
diff options
context:
space:
mode:
authoretxrab <etxrab@f5534014-38df-0310-8fa8-9805f1628bb7>2010-01-20 06:37:56 +0000
committeretxrab <etxrab@f5534014-38df-0310-8fa8-9805f1628bb7>2010-01-20 06:37:56 +0000
commitae2ab8146d88b79fb97d592fb72c44862ad620e6 (patch)
tree344989a92e40cb628798c3fe8f87fdb8dab6d6cf /epan/emem.c
parent588a24503125c0cae9aefe010c9d793cd68e6599 (diff)
From Jakub Zawadzki:
Fix some bugs after merge. Part of Bug: https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=4140 git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@31586 f5534014-38df-0310-8fa8-9805f1628bb7
Diffstat (limited to 'epan/emem.c')
-rw-r--r--epan/emem.c12
1 files changed, 4 insertions, 8 deletions
diff --git a/epan/emem.c b/epan/emem.c
index b907f55e40..56c5ccd992 100644
--- a/epan/emem.c
+++ b/epan/emem.c
@@ -233,11 +233,8 @@ ep_check_canary_integrity(const char* fmt, ...)
if (! intense_canary_checking ) return;
- here[126] = '\0';
- here[127] = '\0';
-
va_start(ap,fmt);
- g_vsnprintf(here, 126,fmt, ap);
+ g_vsnprintf(here, sizeof(here), fmt, ap);
va_end(ap);
for (npc = ep_packet_mem.free_list; npc != NULL; npc = npc->next) {
@@ -248,12 +245,11 @@ ep_check_canary_integrity(const char* fmt, ...)
/* XXX, check if canary_last is inside allocated memory? */
if (npc->canary_last == (void *) -1)
- g_error("Memory corrupted");
+ g_error("Per-packet memory corrupted\nbetween: %s\nand: %s", there, here);
}
}
- strncpy(there,here,126);
-
+ g_strlcpy(there, here, sizeof(there));
}
#endif
@@ -300,7 +296,7 @@ se_init_chunk(void)
{
se_packet_mem.free_list = NULL;
se_packet_mem.used_list = NULL;
- ep_packet_mem.trees = NULL;
+ se_packet_mem.trees = NULL;
se_packet_mem.debug_use_chunks = (getenv("WIRESHARK_DEBUG_SE_NO_CHUNKS") == NULL);
se_packet_mem.debug_use_canary = se_packet_mem.debug_use_chunks && (getenv("WIRESHARK_DEBUG_SE_USE_CANARY") != NULL);