diff options
Diffstat (limited to 'lib/memory.h')
| -rw-r--r-- | lib/memory.h | 202 | 
1 files changed, 12 insertions, 190 deletions
| diff --git a/lib/memory.h b/lib/memory.h index 3ef0f480..7b471978 100644 --- a/lib/memory.h +++ b/lib/memory.h @@ -21,201 +21,23 @@ Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  #ifndef _ZEBRA_MEMORY_H  #define _ZEBRA_MEMORY_H -/* #define MEMORY_LOG */ +#include "memtypes.h" -/* For tagging memory, below is the type of the memory. */ -enum +/* For pretty printing of memory allocate information. */ +struct memory_list  { -  MTYPE_TMP = 1, -  MTYPE_STRVEC, -  MTYPE_VECTOR, -  MTYPE_VECTOR_INDEX, -  MTYPE_LINK_LIST, -  MTYPE_LINK_NODE, -  MTYPE_THREAD, -  MTYPE_THREAD_MASTER, -  MTYPE_THREAD_STATS, -  MTYPE_THREAD_FUNCNAME, -  MTYPE_VTY, -  MTYPE_VTY_HIST, -  MTYPE_VTY_OUT_BUF, -  MTYPE_IF, -  MTYPE_IF_IRDP, -  MTYPE_CONNECTED, -  MTYPE_AS_SEG, -  MTYPE_AS_STR, -  MTYPE_AS_PATH, -  MTYPE_CLUSTER, -  MTYPE_CLUSTER_VAL, -  MTYPE_ATTR, -  MTYPE_TRANSIT, -  MTYPE_TRANSIT_VAL, -  MTYPE_BUFFER, -  MTYPE_BUFFER_DATA, -  MTYPE_STREAM, -  MTYPE_STREAM_DATA, -  MTYPE_STREAM_FIFO, -  MTYPE_PREFIX, -  MTYPE_PREFIX_IPV4, -  MTYPE_PREFIX_IPV6, -  MTYPE_HASH, -  MTYPE_HASH_INDEX, -  MTYPE_HASH_BACKET, -  MTYPE_ROUTE_TABLE, -  MTYPE_ROUTE_NODE, -  MTYPE_ACCESS_LIST, -  MTYPE_ACCESS_LIST_STR, -  MTYPE_ACCESS_FILTER, -  MTYPE_PREFIX_LIST, -  MTYPE_PREFIX_LIST_STR, -  MTYPE_PREFIX_LIST_ENTRY, -  MTYPE_ROUTE_MAP, -  MTYPE_ROUTE_MAP_NAME, -  MTYPE_ROUTE_MAP_INDEX, -  MTYPE_ROUTE_MAP_RULE, -  MTYPE_ROUTE_MAP_RULE_STR, -  MTYPE_ROUTE_MAP_COMPILED, - -  MTYPE_RIB, -   -  MTYPE_DISTRIBUTE, -  MTYPE_DISTRIBUTE_IFNAME, -  MTYPE_ZLOG, -  MTYPE_ZCLIENT, -  MTYPE_NEXTHOP, -  MTYPE_RTADV_PREFIX, -  MTYPE_IF_RMAP, -  MTYPE_SOCKUNION, -  MTYPE_STATIC_IPV4, -  MTYPE_STATIC_IPV6, - -  MTYPE_DESC, -  MTYPE_OSPF_TOP, -  MTYPE_OSPF_AREA, -  MTYPE_OSPF_AREA_RANGE, -  MTYPE_OSPF_NETWORK, -  MTYPE_OSPF_NEIGHBOR_STATIC, -  MTYPE_OSPF_IF, -  MTYPE_OSPF_NEIGHBOR, -  MTYPE_OSPF_ROUTE, -  MTYPE_OSPF_TMP, -  MTYPE_OSPF_LSA, -  MTYPE_OSPF_LSA_DATA, -  MTYPE_OSPF_LSDB, -  MTYPE_OSPF_PACKET, -  MTYPE_OSPF_FIFO, -  MTYPE_OSPF_VERTEX, -  MTYPE_OSPF_NEXTHOP, -  MTYPE_OSPF_PATH, -  MTYPE_OSPF_VL_DATA, -  MTYPE_OSPF_CRYPT_KEY, -  MTYPE_OSPF_EXTERNAL_INFO, -  MTYPE_OSPF_MESSAGE, -  MTYPE_OSPF_DISTANCE, -  MTYPE_OSPF_IF_INFO, -  MTYPE_OSPF_IF_PARAMS, - -  MTYPE_OSPF6_TOP, -  MTYPE_OSPF6_AREA, -  MTYPE_OSPF6_IF, -  MTYPE_OSPF6_NEIGHBOR, -  MTYPE_OSPF6_ROUTE, -  MTYPE_OSPF6_PREFIX, -  MTYPE_OSPF6_MESSAGE, -  MTYPE_OSPF6_LSA, -  MTYPE_OSPF6_LSA_SUMMARY, -  MTYPE_OSPF6_LSDB, -  MTYPE_OSPF6_VERTEX, -  MTYPE_OSPF6_SPFTREE, -  MTYPE_OSPF6_NEXTHOP, -  MTYPE_OSPF6_EXTERNAL_INFO, -  MTYPE_OSPF6_OTHER, - -   -  MTYPE_ISIS, -  MTYPE_ISIS_TMP, -  MTYPE_ISIS_CIRCUIT, -  MTYPE_ISIS_LSP, -  MTYPE_ISIS_ADJACENCY, -  MTYPE_ISIS_AREA, -  MTYPE_ISIS_AREA_ADDR, -  MTYPE_ISIS_TLV, -  MTYPE_ISIS_DYNHN, -  MTYPE_ISIS_SPFTREE, -  MTYPE_ISIS_VERTEX, -  MTYPE_ISIS_ROUTE_INFO, -  MTYPE_ISIS_NEXTHOP, -  MTYPE_ISIS_NEXTHOP6, - -  MTYPE_BGP, -  MTYPE_BGP_PEER, -  MTYPE_PEER_GROUP, -  MTYPE_PEER_DESC, -  MTYPE_PEER_UPDATE_SOURCE, -  MTYPE_BGP_STATIC, -  MTYPE_BGP_AGGREGATE, -  MTYPE_BGP_CONFED_LIST, -  MTYPE_BGP_NEXTHOP_CACHE, -  MTYPE_BGP_DAMP_INFO, -  MTYPE_BGP_DAMP_ARRAY, -  MTYPE_BGP_ANNOUNCE, -  MTYPE_BGP_ATTR_QUEUE, -  MTYPE_BGP_ROUTE_QUEUE, -  MTYPE_BGP_DISTANCE, -  MTYPE_BGP_ROUTE, -  MTYPE_BGP_TABLE, -  MTYPE_BGP_NODE, -  MTYPE_BGP_ADVERTISE_ATTR, -  MTYPE_BGP_ADVERTISE, -  MTYPE_BGP_ADJ_IN, -  MTYPE_BGP_ADJ_OUT, -  MTYPE_BGP_REGEXP, -  MTYPE_AS_FILTER, -  MTYPE_AS_FILTER_STR, -  MTYPE_AS_LIST, - -  MTYPE_COMMUNITY, -  MTYPE_COMMUNITY_VAL, -  MTYPE_COMMUNITY_STR, - -  MTYPE_ECOMMUNITY, -  MTYPE_ECOMMUNITY_VAL, -  MTYPE_ECOMMUNITY_STR, - -  /* community-list and extcommunity-list.  */ -  MTYPE_COMMUNITY_LIST_HANDLER, -  MTYPE_COMMUNITY_LIST, -  MTYPE_COMMUNITY_LIST_NAME, -  MTYPE_COMMUNITY_LIST_ENTRY, -  MTYPE_COMMUNITY_LIST_CONFIG, - -  MTYPE_RIP, -  MTYPE_RIP_INTERFACE, -  MTYPE_RIP_DISTANCE, -  MTYPE_RIP_OFFSET_LIST, -  MTYPE_RIP_INFO, -  MTYPE_RIP_PEER, -  MTYPE_KEYCHAIN, -  MTYPE_KEY, - -  MTYPE_RIPNG, -  MTYPE_RIPNG_ROUTE, -  MTYPE_RIPNG_AGGREGATE, -  MTYPE_RIPNG_PEER, -  MTYPE_RIPNG_OFFSET_LIST, -  MTYPE_RIPNG_RTE_DATA, - -  MTYPE_VTYSH_CONFIG, -  MTYPE_VTYSH_CONFIG_LINE, - -  MTYPE_VRF, -  MTYPE_VRF_NAME, -   -  MTYPE_PRIVS, +  int index; +  const char *format; +}; -  MTYPE_MAX +struct mlist { +  struct memory_list *list; +  const char *name;  }; +  +extern struct mlist mlists[]; +/* #define MEMORY_LOG */  #ifdef MEMORY_LOG  #define XMALLOC(mtype, size) \    mtype_zmalloc (__FILE__, __LINE__, (mtype), (size)) | 
