diff --git a/lib/sockunion.c b/lib/sockunion.c
index a636c64..e79f034 100644
--- a/lib/sockunion.c
+++ b/lib/sockunion.c
@@ -582,14 +582,14 @@
 
   if (name.sa.sa_family == AF_INET)
     {
-      su = XCALLOC (MTYPE_TMP, sizeof (union sockunion));
+      su = XCALLOC (MTYPE_SOCKUNION, sizeof (union sockunion));
       memcpy (su, &name, sizeof (struct sockaddr_in));
       return su;
     }
 #ifdef HAVE_IPV6
   if (name.sa.sa_family == AF_INET6)
     {
-      su = XCALLOC (MTYPE_TMP, sizeof (union sockunion));
+      su = XCALLOC (MTYPE_SOCKUNION, sizeof (union sockunion));
       memcpy (su, &name, sizeof (struct sockaddr_in6));
 
       if (IN6_IS_ADDR_V4MAPPED (&su->sin6.sin6_addr))
@@ -636,14 +636,14 @@
 
   if (name.sa.sa_family == AF_INET)
     {
-      su = XCALLOC (MTYPE_TMP, sizeof (union sockunion));
+      su = XCALLOC (MTYPE_SOCKUNION, sizeof (union sockunion));
       memcpy (su, &name, sizeof (struct sockaddr_in));
       return su;
     }
 #ifdef HAVE_IPV6
   if (name.sa.sa_family == AF_INET6)
     {
-      su = XCALLOC (MTYPE_TMP, sizeof (union sockunion));
+      su = XCALLOC (MTYPE_SOCKUNION, sizeof (union sockunion));
       memcpy (su, &name, sizeof (struct sockaddr_in6));
 
       if (IN6_IS_ADDR_V4MAPPED (&su->sin6.sin6_addr))
