2005-10-26 Paul Jakma <paul.jakma@sun.com>

* (general) Cleanup a some calls to XFREE,strdup, etc. to use
	  the memory.h macros.
	* memtypes.c: Add MTYPE_IF_RMAP_NAME, MTYPE_PQUEUE,
	  MTYPE_PQUEUE_DATA and MTYPE_HOST.
	* memtypes.h: update auto-built file.
	* if_rmap.c: Use MTYPE_IF_RMAP_NAME.
	* pqueue.c: Use the two MTYPE_PQUEUE mtypes for allocations.
This commit is contained in:
paul 2005-10-26 05:05:16 +00:00
parent 216565ab68
commit 0241684ea7
7 changed files with 44 additions and 26 deletions

View File

@ -1,3 +1,13 @@
2005-10-26 Paul Jakma <paul.jakma@sun.com>
* (general) Cleanup a some calls to XFREE,strdup, etc. to use
the memory.h macros.
* memtypes.c: Add MTYPE_IF_RMAP_NAME, MTYPE_PQUEUE,
MTYPE_PQUEUE_DATA and MTYPE_HOST.
* memtypes.h: update auto-built file.
* if_rmap.c: Use MTYPE_IF_RMAP_NAME.
* pqueue.c: Use the two MTYPE_PQUEUE mtypes for allocations.
2005-10-20 Andrew J. Schorr <ajschorr@alumni.princeton.edu> 2005-10-20 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
* sockopt.c: (setsockopt_multicast_ipv4) If IP_ADD_MEMBERSHIP * sockopt.c: (setsockopt_multicast_ipv4) If IP_ADD_MEMBERSHIP

View File

@ -495,7 +495,7 @@ DEFUN (no_interface_desc,
ifp = vty->index; ifp = vty->index;
if (ifp->desc) if (ifp->desc)
XFREE (0, ifp->desc); XFREE (MTYPE_TMP, ifp->desc);
ifp->desc = NULL; ifp->desc = NULL;
return CMD_SUCCESS; return CMD_SUCCESS;

View File

@ -47,12 +47,12 @@ static void
if_rmap_free (struct if_rmap *if_rmap) if_rmap_free (struct if_rmap *if_rmap)
{ {
if (if_rmap->ifname) if (if_rmap->ifname)
free (if_rmap->ifname); XFREE (MTYPE_IF_RMAP_NAME, if_rmap->ifname);
if (if_rmap->routemap[IF_RMAP_IN]) if (if_rmap->routemap[IF_RMAP_IN])
free (if_rmap->routemap[IF_RMAP_IN]); XFREE (MTYPE_IF_RMAP_NAME, if_rmap->routemap[IF_RMAP_IN]);
if (if_rmap->routemap[IF_RMAP_OUT]) if (if_rmap->routemap[IF_RMAP_OUT])
free (if_rmap->routemap[IF_RMAP_OUT]); XFREE (MTYPE_IF_RMAP_NAME, if_rmap->routemap[IF_RMAP_OUT]);
XFREE (MTYPE_IF_RMAP, if_rmap); XFREE (MTYPE_IF_RMAP, if_rmap);
} }
@ -90,7 +90,7 @@ if_rmap_hash_alloc (void *arg)
struct if_rmap *if_rmap; struct if_rmap *if_rmap;
if_rmap = if_rmap_new (); if_rmap = if_rmap_new ();
if_rmap->ifname = strdup (ifarg->ifname); if_rmap->ifname = XSTRDUP (MTYPE_IF_RMAP_NAME, ifarg->ifname);
return if_rmap; return if_rmap;
} }
@ -140,14 +140,16 @@ if_rmap_set (const char *ifname, enum if_rmap_type type,
if (type == IF_RMAP_IN) if (type == IF_RMAP_IN)
{ {
if (if_rmap->routemap[IF_RMAP_IN]) if (if_rmap->routemap[IF_RMAP_IN])
free (if_rmap->routemap[IF_RMAP_IN]); XFREE (MTYPE_IF_RMAP_NAME, if_rmap->routemap[IF_RMAP_IN]);
if_rmap->routemap[IF_RMAP_IN] = strdup (routemap_name); if_rmap->routemap[IF_RMAP_IN]
= XSTRDUP (MTYPE_IF_RMAP_NAME, routemap_name);
} }
if (type == IF_RMAP_OUT) if (type == IF_RMAP_OUT)
{ {
if (if_rmap->routemap[IF_RMAP_OUT]) if (if_rmap->routemap[IF_RMAP_OUT])
free (if_rmap->routemap[IF_RMAP_OUT]); XFREE (MTYPE_IF_RMAP_NAME, if_rmap->routemap[IF_RMAP_OUT]);
if_rmap->routemap[IF_RMAP_OUT] = strdup (routemap_name); if_rmap->routemap[IF_RMAP_OUT]
= XSTRDUP (MTYPE_IF_RMAP_NAME, routemap_name);
} }
if (if_rmap_add_hook) if (if_rmap_add_hook)
@ -173,7 +175,7 @@ if_rmap_unset (const char *ifname, enum if_rmap_type type,
if (strcmp (if_rmap->routemap[IF_RMAP_IN], routemap_name) != 0) if (strcmp (if_rmap->routemap[IF_RMAP_IN], routemap_name) != 0)
return 0; return 0;
free (if_rmap->routemap[IF_RMAP_IN]); XFREE (MTYPE_IF_RMAP_NAME, if_rmap->routemap[IF_RMAP_IN]);
if_rmap->routemap[IF_RMAP_IN] = NULL; if_rmap->routemap[IF_RMAP_IN] = NULL;
} }
@ -184,7 +186,7 @@ if_rmap_unset (const char *ifname, enum if_rmap_type type,
if (strcmp (if_rmap->routemap[IF_RMAP_OUT], routemap_name) != 0) if (strcmp (if_rmap->routemap[IF_RMAP_OUT], routemap_name) != 0)
return 0; return 0;
free (if_rmap->routemap[IF_RMAP_OUT]); XFREE (MTYPE_IF_RMAP_NAME, if_rmap->routemap[IF_RMAP_OUT]);
if_rmap->routemap[IF_RMAP_OUT] = NULL; if_rmap->routemap[IF_RMAP_OUT] = NULL;
} }

View File

@ -6,7 +6,7 @@
* The script is sensitive to the format (though not whitespace), see * The script is sensitive to the format (though not whitespace), see
* the top of memtypes.awk for more details. * the top of memtypes.awk for more details.
* *
* $Id: memtypes.c,v 1.8 2005/10/18 04:20:33 paul Exp $ * $Id: memtypes.c,v 1.9 2005/10/26 05:05:16 paul Exp $
*/ */
#include "zebra.h" #include "zebra.h"
@ -60,6 +60,7 @@ struct memory_list memory_list_lib[] =
{ MTYPE_KEY, "Key" }, { MTYPE_KEY, "Key" },
{ MTYPE_KEYCHAIN, "Key chain" }, { MTYPE_KEYCHAIN, "Key chain" },
{ MTYPE_IF_RMAP, "Interface route map" }, { MTYPE_IF_RMAP, "Interface route map" },
{ MTYPE_IF_RMAP_NAME, "I.f. route map name", },
{ MTYPE_SOCKUNION, "Socket union" }, { MTYPE_SOCKUNION, "Socket union" },
{ MTYPE_PRIVS, "Privilege information" }, { MTYPE_PRIVS, "Privilege information" },
{ MTYPE_ZLOG, "Logging" }, { MTYPE_ZLOG, "Logging" },
@ -67,6 +68,9 @@ struct memory_list memory_list_lib[] =
{ MTYPE_WORK_QUEUE, "Work queue" }, { MTYPE_WORK_QUEUE, "Work queue" },
{ MTYPE_WORK_QUEUE_ITEM, "Work queue item" }, { MTYPE_WORK_QUEUE_ITEM, "Work queue item" },
{ MTYPE_WORK_QUEUE_NAME, "Work queue name string" }, { MTYPE_WORK_QUEUE_NAME, "Work queue name string" },
{ MTYPE_PQUEUE, "Priority queue" },
{ MTYPE_PQUEUE_DATA, "Priority queue data" },
{ MTYPE_HOST, "Host config" },
{ -1, NULL }, { -1, NULL },
}; };

View File

@ -52,6 +52,7 @@ enum
MTYPE_KEY, MTYPE_KEY,
MTYPE_KEYCHAIN, MTYPE_KEYCHAIN,
MTYPE_IF_RMAP, MTYPE_IF_RMAP,
MTYPE_IF_RMAP_NAME,
MTYPE_SOCKUNION, MTYPE_SOCKUNION,
MTYPE_PRIVS, MTYPE_PRIVS,
MTYPE_ZLOG, MTYPE_ZLOG,
@ -59,6 +60,9 @@ enum
MTYPE_WORK_QUEUE, MTYPE_WORK_QUEUE,
MTYPE_WORK_QUEUE_ITEM, MTYPE_WORK_QUEUE_ITEM,
MTYPE_WORK_QUEUE_NAME, MTYPE_WORK_QUEUE_NAME,
MTYPE_PQUEUE,
MTYPE_PQUEUE_DATA,
MTYPE_HOST,
MTYPE_RTADV_PREFIX, MTYPE_RTADV_PREFIX,
MTYPE_VRF, MTYPE_VRF,
MTYPE_VRF_NAME, MTYPE_VRF_NAME,

View File

@ -20,6 +20,7 @@ Boston, MA 02111-1307, USA. */
#include <zebra.h> #include <zebra.h>
#include "memory.h"
#include "pqueue.h" #include "pqueue.h"
/* priority queue using heap sort */ /* priority queue using heap sort */
@ -110,12 +111,10 @@ pqueue_create (void)
{ {
struct pqueue *queue; struct pqueue *queue;
queue = (struct pqueue *) malloc (sizeof (struct pqueue)); queue = XCALLOC (MTYPE_PQUEUE, sizeof (struct pqueue));
memset (queue, 0, sizeof (struct pqueue));
queue->array = (void **) queue->array = XCALLOC (MTYPE_PQUEUE_DATA,
malloc (DATA_SIZE * PQUEUE_INIT_ARRAYSIZE); DATA_SIZE * PQUEUE_INIT_ARRAYSIZE);
memset (queue->array, 0, DATA_SIZE * PQUEUE_INIT_ARRAYSIZE);
queue->array_size = PQUEUE_INIT_ARRAYSIZE; queue->array_size = PQUEUE_INIT_ARRAYSIZE;
/* By default we want nothing to happen when a node changes. */ /* By default we want nothing to happen when a node changes. */
@ -126,8 +125,8 @@ pqueue_create (void)
void void
pqueue_delete (struct pqueue *queue) pqueue_delete (struct pqueue *queue)
{ {
free (queue->array); XFREE (MTYPE_PQUEUE_DATA, queue->array);
free (queue); XFREE (MTYPE_PQUEUE, queue);
} }
static int static int
@ -135,14 +134,13 @@ pqueue_expand (struct pqueue *queue)
{ {
void **newarray; void **newarray;
newarray = (void **) malloc (queue->array_size * DATA_SIZE * 2); newarray = XCALLOC (MTYPE_PQUEUE_DATA, queue->array_size * DATA_SIZE * 2);
if (newarray == NULL) if (newarray == NULL)
return 0; return 0;
memset (newarray, 0, queue->array_size * DATA_SIZE * 2);
memcpy (newarray, queue->array, queue->array_size * DATA_SIZE); memcpy (newarray, queue->array, queue->array_size * DATA_SIZE);
free (queue->array); XFREE (MTYPE_PQUEUE_DATA, queue->array);
queue->array = newarray; queue->array = newarray;
queue->array_size *= 2; queue->array_size *= 2;

View File

@ -314,7 +314,7 @@ route_map_index_delete (struct route_map_index *index, int notify)
/* Free 'char *nextrm' if not NULL */ /* Free 'char *nextrm' if not NULL */
if (index->nextrm) if (index->nextrm)
free (index->nextrm); XFREE (MTYPE_ROUTE_MAP_NAME, index->nextrm);
/* Execute event hook. */ /* Execute event hook. */
if (route_map_master.event_hook && notify) if (route_map_master.event_hook && notify)
@ -1175,8 +1175,8 @@ DEFUN (rmap_call,
if (index) if (index)
{ {
if (index->nextrm) if (index->nextrm)
free (index->nextrm); XFREE (MTYPE_ROUTE_MAP_NAME, index->nextrm);
index->nextrm = strdup (argv[0]); index->nextrm = XSTRDUP (MTYPE_ROUTE_MAP_NAME, argv[0]);
} }
return CMD_SUCCESS; return CMD_SUCCESS;
} }
@ -1193,7 +1193,7 @@ DEFUN (no_rmap_call,
if (index->nextrm) if (index->nextrm)
{ {
free (index->nextrm); XFREE (MTYPE_ROUTE_MAP_NAME, index->nextrm);
index->nextrm = NULL; index->nextrm = NULL;
} }