diff options
Diffstat (limited to 'epan')
-rw-r--r-- | epan/dissectors/packet-dccp.c | 4 | ||||
-rw-r--r-- | epan/dissectors/packet-dcerpc-netlogon.c | 13 | ||||
-rw-r--r-- | epan/dissectors/packet-dcerpc-nt.c | 24 | ||||
-rw-r--r-- | epan/dissectors/packet-dcerpc-spoolss.c | 26 | ||||
-rw-r--r-- | epan/dissectors/packet-dcerpc-svcctl.c | 10 | ||||
-rw-r--r-- | epan/dissectors/packet-dcerpc.c | 33 | ||||
-rw-r--r-- | epan/dissectors/packet-dcm.c | 102 | ||||
-rw-r--r-- | epan/dissectors/packet-dcom.c | 6 | ||||
-rw-r--r-- | epan/dissectors/packet-dcp-etsi.c | 6 | ||||
-rw-r--r-- | epan/dissectors/packet-dec-dnart.c | 4 | ||||
-rw-r--r-- | epan/dissectors/packet-dect.c | 58 | ||||
-rw-r--r-- | epan/dissectors/packet-diameter.c | 29 | ||||
-rw-r--r-- | epan/dissectors/packet-dmp.c | 72 | ||||
-rw-r--r-- | epan/dissectors/packet-dmx-chan.c | 14 | ||||
-rw-r--r-- | epan/dissectors/packet-dnp.c | 6 | ||||
-rw-r--r-- | epan/dissectors/packet-dtls.c | 6 | ||||
-rw-r--r-- | epan/dissectors/packet-dtn.c | 15 |
17 files changed, 218 insertions, 210 deletions
diff --git a/epan/dissectors/packet-dccp.c b/epan/dissectors/packet-dccp.c index 7fbe6424f6..37cd9626a3 100644 --- a/epan/dissectors/packet-dccp.c +++ b/epan/dissectors/packet-dccp.c @@ -58,7 +58,7 @@ #include <epan/in_cksum.h> #include <epan/prefs.h> #include <epan/expert.h> -#include <epan/emem.h> +#include <epan/wmem/wmem.h> #include "packet-ip.h" #include <epan/conversation.h> #include <epan/tap.h> @@ -636,7 +636,7 @@ dissect_dccp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_ guint options_len = 0; e_dccphdr *dccph; - dccph = ep_new0(e_dccphdr); + dccph = wmem_new0(wmem_packet_scope(), e_dccphdr); SET_ADDRESS(&dccph->ip_src, pinfo->src.type, pinfo->src.len, pinfo->src.data); diff --git a/epan/dissectors/packet-dcerpc-netlogon.c b/epan/dissectors/packet-dcerpc-netlogon.c index c0314cbeea..17a84c87c1 100644 --- a/epan/dissectors/packet-dcerpc-netlogon.c +++ b/epan/dissectors/packet-dcerpc-netlogon.c @@ -36,6 +36,7 @@ #include <wsutil/des.h> #include <epan/packet.h> +#include <epan/wmem/wmem.h> /* for dissect_mscldap_string */ #include "packet-ldap.h" #include "packet-dcerpc.h" @@ -2505,14 +2506,14 @@ netlogon_dissect_netrserverreqchallenge_rqst(tvbuff_t *tvb, int offset, /*int oldoffset = offset;*/ netlogon_auth_vars *vars; netlogon_auth_vars *existing_vars; - netlogon_auth_key *key = (netlogon_auth_key *)se_alloc(sizeof(netlogon_auth_key)); + netlogon_auth_key *key = (netlogon_auth_key *)wmem_alloc(wmem_file_scope(), sizeof(netlogon_auth_key)); guint8 tab[8] = { 0,0,0,0,0,0,0,0}; dcerpc_info *di = (dcerpc_info *)pinfo->private_data; dcerpc_call_value *dcv = (dcerpc_call_value *)di->call_data; /* As we are not always keeping this it could be more intelligent to g_malloc it - and if we decide to keep it then transform it into se_alloc */ - vars = (netlogon_auth_vars *)se_alloc(sizeof(netlogon_auth_vars)); + and if we decide to keep it then transform it into wmem_alloc */ + vars = (netlogon_auth_vars *)wmem_alloc(wmem_file_scope(), sizeof(netlogon_auth_vars)); offset = netlogon_dissect_LOGONSRV_HANDLE(tvb, offset, pinfo, tree, drep); offset = dissect_ndr_pointer_cb( tvb, offset, pinfo, tree, drep, @@ -2522,7 +2523,7 @@ netlogon_dissect_netrserverreqchallenge_rqst(tvbuff_t *tvb, int offset, GINT_TO_POINTER(CB_STR_COL_INFO |CB_STR_SAVE | 1)); debugprintf("1)Len %d offset %d txt %s\n",(int) strlen(dcv->private_data),offset,(char*)dcv->private_data); - vars->client_name = se_strdup((const guint8 *)dcv->private_data); + vars->client_name = wmem_strdup(wmem_file_scope(), (const guint8 *)dcv->private_data); debugprintf("2)Len %d offset %d txt %s\n",(int) strlen(dcv->private_data),offset,vars->client_name); offset = dissect_dcerpc_8bytes(tvb, offset, pinfo, tree, drep, @@ -6861,7 +6862,7 @@ static guint32 get_keytab_as_list(md4_pass **p_pass_list,const char* ntlm_pass _ add_ntlm = 1; } - *p_pass_list = (md4_pass *)ep_alloc(nb_pass*sizeof(md4_pass)); + *p_pass_list = (md4_pass *)wmem_alloc(wmem_packet_scope(), nb_pass*sizeof(md4_pass)); pass_list=*p_pass_list; if(add_ntlm) { memcpy(pass_list[0].md4,&(ntlm_pass_hash.md4),sizeof(md4_pass)); @@ -7900,7 +7901,7 @@ static const value_string seal_algs[] = { static int get_seal_key(const guint8 *session_key,int key_len,guint64 sequence,guint8* seal_key) { guint8 zeros[4]; - guint8 *buf = (guint8 *)ep_alloc(key_len); + guint8 *buf = (guint8 *)wmem_alloc(wmem_packet_scope(), key_len); guint8 buf2[16]; guint8 zero_sk[16]; int i = 0; diff --git a/epan/dissectors/packet-dcerpc-nt.c b/epan/dissectors/packet-dcerpc-nt.c index 8e4d324918..8f5a1f1f67 100644 --- a/epan/dissectors/packet-dcerpc-nt.c +++ b/epan/dissectors/packet-dcerpc-nt.c @@ -33,7 +33,7 @@ #include <glib.h> #include <epan/packet.h> -#include <epan/emem.h> +#include <epan/wmem/wmem.h> #include "packet-dcerpc.h" #include "packet-dcerpc-nt.h" #include "packet-windows-common.h" @@ -665,10 +665,10 @@ static void add_pol_handle(e_ctx_hnd *policy_hnd, guint32 frame, * and put the hash value in the policy handle hash * table. */ - value = (pol_hash_value *)se_alloc(sizeof(pol_hash_value)); + value = (pol_hash_value *)wmem_alloc(wmem_file_scope(), sizeof(pol_hash_value)); value->list = pol; pol->next = NULL; - key = (pol_hash_key *)se_alloc(sizeof(pol_hash_key)); + key = (pol_hash_key *)wmem_alloc(wmem_file_scope(), sizeof(pol_hash_key)); memcpy(&key->policy_hnd, policy_hnd, sizeof(key->policy_hnd)); g_hash_table_insert(pol_hash, key, value); } else { @@ -765,7 +765,7 @@ void dcerpc_smb_store_pol_pkts(e_ctx_hnd *policy_hnd, packet_info *pinfo, /* Create a new value */ - pol = (pol_value *)se_alloc(sizeof(pol_value)); + pol = (pol_value *)wmem_alloc(wmem_file_scope(), sizeof(pol_value)); pol->open_frame = is_open ? pinfo->fd->num : 0; pol->close_frame = is_close ? pinfo->fd->num : 0; @@ -837,17 +837,17 @@ void dcerpc_store_polhnd_name(e_ctx_hnd *policy_hnd, packet_info *pinfo, if (strcmp(pol->name, name) != 0) g_warning("dcerpc_smb: pol_hash name collision %s/%s\n", value->name, name); #endif - /* pol->name is se_allocated, don't free it now */ + /* pol->name is wmem_file_scope() allocated, don't free it now */ } - pol->name = se_strdup(name); + pol->name = wmem_strdup(wmem_file_scope(), name); return; } /* Create a new value */ - pol = (pol_value *)se_alloc(sizeof(pol_value)); + pol = (pol_value *)wmem_alloc(wmem_file_scope(), sizeof(pol_value)); pol->open_frame = 0; pol->close_frame = 0; @@ -855,9 +855,9 @@ void dcerpc_store_polhnd_name(e_ctx_hnd *policy_hnd, packet_info *pinfo, pol->last_frame = 0; pol->type = 0; if (name) - pol->name = se_strdup(name); + pol->name = wmem_strdup(wmem_file_scope(), name); else - pol->name = se_strdup("<UNKNOWN>"); + pol->name = wmem_strdup(wmem_file_scope(), "<UNKNOWN>"); add_pol_handle(policy_hnd, pinfo->fd->num, pol, value); } @@ -1145,7 +1145,7 @@ PIDL_dissect_policy_hnd(tvbuff_t *tvb, gint offset, packet_info *pinfo, if(!pol_name){ pol_name="<...>"; } - pol_string=ep_strdup_printf("%s(%s)", pinfo->dcerpc_procedure_name, pol_name); + pol_string=wmem_strdup_printf(wmem_packet_scope(), "%s(%s)", pinfo->dcerpc_procedure_name, pol_name); dcerpc_store_polhnd_name(&policy_hnd, pinfo, pol_string); dcerpc_store_polhnd_type(&policy_hnd, pinfo, param&PIDL_POLHND_TYPE_MASK); } @@ -1157,7 +1157,7 @@ PIDL_dissect_policy_hnd(tvbuff_t *tvb, gint offset, packet_info *pinfo, dcv = (dcerpc_call_value *)di->call_data; if(!dcv->pol){ - dcv->pol=(e_ctx_hnd *)se_memdup(&policy_hnd, sizeof(e_ctx_hnd)); + dcv->pol=(e_ctx_hnd *)wmem_memdup(wmem_file_scope(), &policy_hnd, sizeof(e_ctx_hnd)); } } @@ -1443,7 +1443,7 @@ dissect_ndr_nt_SID(tvbuff_t *tvb, int offset, packet_info *pinfo, * so we need to make its private data have * session duration as well. */ - dcv->private_data = se_strdup(sid_str); + dcv->private_data = wmem_strdup(wmem_file_scope(), sid_str); } return offset; diff --git a/epan/dissectors/packet-dcerpc-spoolss.c b/epan/dissectors/packet-dcerpc-spoolss.c index 2c6ce07b8e..1133642b24 100644 --- a/epan/dissectors/packet-dcerpc-spoolss.c +++ b/epan/dissectors/packet-dcerpc-spoolss.c @@ -35,7 +35,7 @@ #include <string.h> #include <epan/packet.h> -#include <epan/emem.h> +#include <epan/wmem/wmem.h> #include "packet-dcerpc.h" #include "packet-dcerpc-nt.h" #include "packet-dcerpc-spoolss.h" @@ -592,7 +592,8 @@ dissect_SYSTEM_TIME(tvbuff_t *tvb, int offset, packet_info *pinfo, offset = dissect_ndr_uint16( tvb, offset, pinfo, subtree, drep, hf_time_msec, &millisecond); - str = ep_strdup_printf("%d/%02d/%02d %02d:%02d:%02d.%03d", + str = wmem_strdup_printf(wmem_packet_scope(), + "%d/%02d/%02d %02d:%02d:%02d.%03d", year, month, day, hour, minute, second, millisecond); @@ -782,7 +783,7 @@ SpoolssGetPrinterData_q(tvbuff_t *tvb, int offset, if(!pinfo->fd->flags.visited){ if(!dcv->se_data){ if(value_name){ - dcv->se_data = se_strdup(value_name); + dcv->se_data = wmem_strdup(wmem_file_scope(), value_name); } } } @@ -870,7 +871,8 @@ SpoolssGetPrinterDataEx_q(tvbuff_t *tvb, int offset, /* GetPrinterDataEx() stores the key/value in se_data */ if(!pinfo->fd->flags.visited){ if(!dcv->se_data){ - dcv->se_data = se_strdup_printf("%s==%s", + dcv->se_data = wmem_strdup_printf(wmem_file_scope(), + "%s==%s", key_name?key_name:"", value_name?value_name:""); } @@ -959,8 +961,8 @@ SpoolssSetPrinterData_q(tvbuff_t *tvb, int offset, /* GetPrinterDataEx() stores the key/value in se_data */ if(!pinfo->fd->flags.visited){ if(!dcv->se_data){ - dcv->se_data = se_strdup_printf("%s", - value_name?value_name:""); + dcv->se_data = wmem_strdup_printf(wmem_file_scope(), + "%s", value_name?value_name:""); } } @@ -2626,8 +2628,8 @@ SpoolssOpenPrinterEx_q(tvbuff_t *tvb, int offset, /* OpenPrinterEx() stores the key/value in se_data */ if(!pinfo->fd->flags.visited){ if(!dcv->se_data){ - dcv->se_data = se_strdup_printf("%s", - name?name:""); + dcv->se_data = wmem_strdup_printf(wmem_file_scope(), + "%s", name?name:""); } } @@ -2693,7 +2695,7 @@ SpoolssOpenPrinterEx_r(tvbuff_t *tvb, int offset, const char *pol_name; if (dcv->se_data){ - pol_name = ep_strdup_printf( + pol_name = wmem_strdup_printf(wmem_packet_scope(), "OpenPrinterEx(%s)", (char *)dcv->se_data); } else { pol_name = "Unknown OpenPrinterEx() handle"; @@ -3274,7 +3276,7 @@ SpoolssReplyOpenPrinter_q(tvbuff_t *tvb, int offset, if(!pinfo->fd->flags.visited){ if(!dcv->se_data){ if(name){ - dcv->se_data = se_strdup(name); + dcv->se_data = wmem_strdup(wmem_file_scope(), name); } } } @@ -3324,7 +3326,7 @@ SpoolssReplyOpenPrinter_r(tvbuff_t *tvb, int offset, const char *pol_name; if (dcv->se_data){ - pol_name = ep_strdup_printf( + pol_name = wmem_strdup_printf(wmem_packet_scope(), "ReplyOpenPrinter(%s)", (char *)dcv->se_data); } else { pol_name = "Unknown ReplyOpenPrinter() handle"; @@ -3846,7 +3848,7 @@ SpoolssAddPrinterEx_r(tvbuff_t *tvb, int offset, packet_info *pinfo, const char *pol_name; if (dcv->se_data){ - pol_name = ep_strdup_printf( + pol_name = wmem_strdup_printf(wmem_packet_scope(), "AddPrinterEx(%s)", (char *)dcv->se_data); } else { pol_name = "Unknown AddPrinterEx() handle"; diff --git a/epan/dissectors/packet-dcerpc-svcctl.c b/epan/dissectors/packet-dcerpc-svcctl.c index d524705b21..0f5d83db06 100644 --- a/epan/dissectors/packet-dcerpc-svcctl.c +++ b/epan/dissectors/packet-dcerpc-svcctl.c @@ -29,7 +29,7 @@ #include <glib.h> #include <epan/packet.h> -#include <epan/emem.h> +#include <epan/wmem/wmem.h> #include "packet-dcerpc.h" #include "packet-dcerpc-svcctl.h" #include "packet-dcerpc-nt.h" @@ -279,7 +279,7 @@ svcctl_dissect_OpenSCManager_rqst(tvbuff_t *tvb, int offset, /* OpenSCManager() stores the server\database in se_data */ if(!pinfo->fd->flags.visited){ if(!dcv->se_data){ - dcv->se_data=se_strdup_printf("%s\\%s",mn,dn); + dcv->se_data=wmem_strdup_printf(wmem_file_scope(), "%s\\%s",mn,dn); } } @@ -315,7 +315,7 @@ svcctl_dissect_OpenSCManager_reply(tvbuff_t *tvb, int offset, const char *pol_name; if (dcv->se_data){ - pol_name = ep_strdup_printf( + pol_name = wmem_strdup_printf(wmem_packet_scope(), "OpenSCManagerW(%s)", (char *)dcv->se_data); } else { pol_name = "Unknown OpenSCManagerW() handle"; @@ -365,7 +365,7 @@ svcctl_dissect_OpenSCManagerW_rqst(tvbuff_t *tvb, int offset, /* OpenSCManager() stores the server\database in se_data */ if(!pinfo->fd->flags.visited){ if(!dcv->se_data){ - dcv->se_data=se_strdup_printf("%s\\%s",mn,dn); + dcv->se_data=wmem_strdup_printf(wmem_file_scope(), "%s\\%s",mn,dn); } } @@ -401,7 +401,7 @@ svcctl_dissect_OpenSCManagerW_reply(tvbuff_t *tvb, int offset, const char *pol_name; if (dcv->se_data){ - pol_name = ep_strdup_printf( + pol_name = wmem_strdup_printf(wmem_packet_scope(), "OpenSCManagerW(%s)", (char *)dcv->se_data); } else { pol_name = "Unknown OpenSCManagerW() handle"; diff --git a/epan/dissectors/packet-dcerpc.c b/epan/dissectors/packet-dcerpc.c index 46332c74a1..150b806813 100644 --- a/epan/dissectors/packet-dcerpc.c +++ b/epan/dissectors/packet-dcerpc.c @@ -40,7 +40,6 @@ #include <epan/prefs.h> #include <epan/reassemble.h> #include <epan/tap.h> -#include <epan/emem.h> #include <epan/wmem/wmem.h> #include <epan/expert.h> #include <epan/strutil.h> @@ -1800,7 +1799,7 @@ PIDL_dissect_cvstring(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree if ((param & PIDL_STR_SAVE) && (!pinfo->fd->flags.visited)) { dcerpc_call_value *dcv = (dcerpc_call_value *)di->call_data; - dcv->private_data = se_strdup(s); + dcv->private_data = wmem_strdup(wmem_file_scope(), s); } /* Append string to upper-level proto_items */ if ((levels > 0) && tree && s && s[0]) { @@ -3084,12 +3083,12 @@ dissect_dcerpc_cn_bind(tvbuff_t *tvb, gint offset, packet_info *pinfo, dcerpc_bind_key *key; dcerpc_bind_value *value; - key = (dcerpc_bind_key *)se_alloc(sizeof (dcerpc_bind_key)); + key = (dcerpc_bind_key *)wmem_alloc(wmem_file_scope(), sizeof (dcerpc_bind_key)); key->conv = conv; key->ctx_id = ctx_id; key->smb_fid = dcerpc_get_transport_salt(pinfo); - value = (dcerpc_bind_value *)se_alloc(sizeof (dcerpc_bind_value)); + value = (dcerpc_bind_value *)wmem_alloc(wmem_file_scope(), sizeof (dcerpc_bind_value)); value->uuid = if_id; value->ver = if_ver; value->transport = trans_id; @@ -3548,7 +3547,7 @@ dcerpc_add_conv_to_bind_table(decode_dcerpc_bind_values_t *binding) 0); } - bind_value = (dcerpc_bind_value *)se_alloc(sizeof (dcerpc_bind_value)); + bind_value = (dcerpc_bind_value *)wmem_alloc(wmem_file_scope(), sizeof (dcerpc_bind_value)); bind_value->uuid = binding->uuid; bind_value->ver = binding->ver; /* For now, assume all DCE/RPC we pick from "decode as" is using @@ -3557,7 +3556,7 @@ dcerpc_add_conv_to_bind_table(decode_dcerpc_bind_values_t *binding) */ bind_value->transport = uuid_data_repr_proto; - key = (dcerpc_bind_key *)se_alloc(sizeof (dcerpc_bind_key)); + key = (dcerpc_bind_key *)wmem_alloc(wmem_file_scope(), sizeof (dcerpc_bind_key)); key->conv = conv; key->ctx_id = binding->ctx_id; key->smb_fid = binding->smb_fid; @@ -3651,7 +3650,7 @@ dissect_dcerpc_cn_rqst(tvbuff_t *tvb, gint offset, packet_info *pinfo, call_key.call_id = hdr->call_id; call_key.smb_fid = dcerpc_get_transport_salt(pinfo); if ((call_value = (dcerpc_call_value *)g_hash_table_lookup(dcerpc_cn_calls, &call_key))) { - new_matched_key = (dcerpc_matched_key *)se_alloc(sizeof (dcerpc_matched_key)); + new_matched_key = (dcerpc_matched_key *)wmem_alloc(wmem_file_scope(), sizeof (dcerpc_matched_key)); *new_matched_key = matched_key; g_hash_table_insert(dcerpc_matched, new_matched_key, call_value); value = call_value; @@ -3665,7 +3664,7 @@ dissect_dcerpc_cn_rqst(tvbuff_t *tvb, gint offset, packet_info *pinfo, the call to both the call table and the matched table */ - call_key = (dcerpc_cn_call_key *)se_alloc(sizeof (dcerpc_cn_call_key)); + call_key = (dcerpc_cn_call_key *)wmem_alloc(wmem_file_scope(), sizeof (dcerpc_cn_call_key)); call_key->conv = conv; call_key->call_id = hdr->call_id; call_key->smb_fid = dcerpc_get_transport_salt(pinfo); @@ -3676,7 +3675,7 @@ dissect_dcerpc_cn_rqst(tvbuff_t *tvb, gint offset, packet_info *pinfo, g_hash_table_remove(dcerpc_cn_calls, call_key); } - call_value = (dcerpc_call_value *)se_alloc(sizeof (dcerpc_call_value)); + call_value = (dcerpc_call_value *)wmem_alloc(wmem_file_scope(), sizeof (dcerpc_call_value)); call_value->uuid = bind_value->uuid; call_value->ver = bind_value->ver; call_value->object_uuid = obj_id; @@ -3695,7 +3694,7 @@ dissect_dcerpc_cn_rqst(tvbuff_t *tvb, gint offset, packet_info *pinfo, g_hash_table_insert(dcerpc_cn_calls, call_key, call_value); - new_matched_key = (dcerpc_matched_key *)se_alloc(sizeof (dcerpc_matched_key)); + new_matched_key = (dcerpc_matched_key *)wmem_alloc(wmem_file_scope(), sizeof (dcerpc_matched_key)); *new_matched_key = matched_key; g_hash_table_insert(dcerpc_matched, new_matched_key, call_value); value = call_value; @@ -3808,7 +3807,7 @@ dissect_dcerpc_cn_resp(tvbuff_t *tvb, gint offset, packet_info *pinfo, /* extra sanity check, only match them if the reply came after the request */ if (call_value->req_frame<pinfo->fd->num) { - new_matched_key = (dcerpc_matched_key *)se_alloc(sizeof (dcerpc_matched_key)); + new_matched_key = (dcerpc_matched_key *)wmem_alloc(wmem_file_scope(), sizeof (dcerpc_matched_key)); *new_matched_key = matched_key; g_hash_table_insert(dcerpc_matched, new_matched_key, call_value); value = call_value; @@ -3947,7 +3946,7 @@ dissect_dcerpc_cn_fault(tvbuff_t *tvb, gint offset, packet_info *pinfo, call_key.smb_fid = dcerpc_get_transport_salt(pinfo); if ((call_value = (dcerpc_call_value *)g_hash_table_lookup(dcerpc_cn_calls, &call_key))) { - new_matched_key = (dcerpc_matched_key *)se_alloc(sizeof (dcerpc_matched_key)); + new_matched_key = (dcerpc_matched_key *)wmem_alloc(wmem_file_scope(), sizeof (dcerpc_matched_key)); *new_matched_key = matched_key; g_hash_table_insert(dcerpc_matched, new_matched_key, call_value); @@ -4153,7 +4152,7 @@ dissect_dcerpc_cn_rts(tvbuff_t *tvb, gint offset, packet_info *pinfo, tf = proto_tree_add_text(dcerpc_tree, tvb, offset, tvb_length_remaining(tvb, offset), "RTS PDU: %u commands", commands_nb); cn_rts_pdu_tree = proto_item_add_subtree(tf, ett_dcerpc_cn_rts_pdu); - cmd = (guint32 *)ep_alloc(sizeof (guint32) * (commands_nb + 1)); + cmd = (guint32 *)wmem_alloc(wmem_packet_scope(), sizeof (guint32) * (commands_nb + 1)); /* Dissect commands */ for (i = 0; i < commands_nb; ++i) { @@ -5113,12 +5112,12 @@ dissect_dcerpc_dg_rqst(tvbuff_t *tvb, int offset, packet_info *pinfo, dcerpc_call_value *call_value; dcerpc_dg_call_key *call_key; - call_key = (dcerpc_dg_call_key *)se_alloc(sizeof (dcerpc_dg_call_key)); + call_key = (dcerpc_dg_call_key *)wmem_alloc(wmem_file_scope(), sizeof (dcerpc_dg_call_key)); call_key->conv = conv; call_key->seqnum = hdr->seqnum; call_key->act_id = hdr->act_id; - call_value = (dcerpc_call_value *)se_alloc(sizeof (dcerpc_call_value)); + call_value = (dcerpc_call_value *)wmem_alloc(wmem_file_scope(), sizeof (dcerpc_call_value)); call_value->uuid = hdr->if_id; call_value->ver = hdr->if_ver; call_value->object_uuid = hdr->obj_id; @@ -5135,7 +5134,7 @@ dissect_dcerpc_dg_rqst(tvbuff_t *tvb, int offset, packet_info *pinfo, g_hash_table_insert(dcerpc_dg_calls, call_key, call_value); - new_matched_key = (dcerpc_matched_key *)se_alloc(sizeof(dcerpc_matched_key)); + new_matched_key = (dcerpc_matched_key *)wmem_alloc(wmem_file_scope(), sizeof(dcerpc_matched_key)); new_matched_key->frame = pinfo->fd->num; new_matched_key->call_id = hdr->seqnum; g_hash_table_insert(dcerpc_matched, new_matched_key, call_value); @@ -5196,7 +5195,7 @@ dissect_dcerpc_dg_resp(tvbuff_t *tvb, int offset, packet_info *pinfo, call_key.act_id = hdr->act_id; if ((call_value = (dcerpc_call_value *)g_hash_table_lookup(dcerpc_dg_calls, &call_key))) { - new_matched_key = (dcerpc_matched_key *)se_alloc(sizeof (dcerpc_matched_key)); + new_matched_key = (dcerpc_matched_key *)wmem_alloc(wmem_file_scope(), sizeof (dcerpc_matched_key)); new_matched_key->frame = pinfo->fd->num; new_matched_key->call_id = hdr->seqnum; g_hash_table_insert(dcerpc_matched, new_matched_key, call_value); diff --git a/epan/dissectors/packet-dcm.c b/epan/dissectors/packet-dcm.c index 614e8ece25..0ba6208acf 100644 --- a/epan/dissectors/packet-dcm.c +++ b/epan/dissectors/packet-dcm.c @@ -218,7 +218,7 @@ #include <epan/packet.h> #include <epan/prefs.h> -#include <epan/emem.h> +#include <epan/wmem/wmem.h> #include <epan/strutil.h> #include <epan/conversation.h> #include <epan/expert.h> @@ -472,7 +472,7 @@ typedef struct dcm_state_pdv { guint32 packet_no; /* Wireshark packet number, where pdv starts */ guint32 offset; /* Offset in packet, where PDV header starts */ - gchar *desc; /* PDV description. se_alloc() */ + gchar *desc; /* PDV description. wmem_file_scope() */ guint8 pctx_id; /* Reference to used Presentation Context */ @@ -483,8 +483,8 @@ typedef struct dcm_state_pdv { gpointer data; /* Copy of PDV data without any PDU/PDV header */ guint32 data_len; /* Length of this PDV buffer. If >0, memory has been allocated */ - gchar *sop_class_uid; /* SOP Class UID. Set in 1st PDV of a DICOM object. se_alloc() */ - gchar *sop_instance_uid; /* SOP Instance UID. Set in 1st PDV of a DICOM object. se_alloc() */ + gchar *sop_class_uid; /* SOP Class UID. Set in 1st PDV of a DICOM object. wmem_file_scope() */ + gchar *sop_instance_uid; /* SOP Instance UID. Set in 1st PDV of a DICOM object. wmem_file_scope() */ /* End Export use */ gboolean is_storage; /* True, if the Data PDV is on the context of a storage SOP Class */ @@ -4001,7 +4001,7 @@ dcm_state_new(void) dcm_state_t *ds; - ds = (dcm_state_t *) se_alloc0(sizeof(dcm_state_t)); + ds = (dcm_state_t *) wmem_alloc0(wmem_file_scope(), sizeof(dcm_state_t)); return ds; } @@ -4054,7 +4054,7 @@ dcm_state_assoc_new(dcm_state_t *dcm_data, guint32 packet_no) dcm_state_assoc_t *assoc; - assoc = (dcm_state_assoc_t *) se_alloc0(sizeof(dcm_state_assoc_t)); + assoc = (dcm_state_assoc_t *) wmem_alloc0(wmem_file_scope(), sizeof(dcm_state_assoc_t)); assoc->packet_no = packet_no; /* Identifier */ /* add to the end of the list */ @@ -4108,7 +4108,7 @@ dcm_state_pctx_new(dcm_state_assoc_t *assoc, guint8 pctx_id) dcm_state_pctx_t *pctx=NULL; - pctx = (dcm_state_pctx_t *)se_alloc0(sizeof(dcm_state_pctx_t)); + pctx = (dcm_state_pctx_t *)wmem_alloc0(wmem_file_scope(), sizeof(dcm_state_pctx_t)); pctx->id = pctx_id; pctx->syntax = DCM_UNK; @@ -4158,7 +4158,7 @@ dcm_state_pdv_new(dcm_state_pctx_t *pctx, guint32 packet_no, guint32 offset) dcm_state_pdv_t *pdv = NULL; - pdv = (dcm_state_pdv_t *) se_alloc0(sizeof(dcm_state_pdv_t)); + pdv = (dcm_state_pdv_t *) wmem_alloc0(wmem_file_scope(), sizeof(dcm_state_pdv_t)); pdv->syntax = DCM_UNK; pdv->is_last_fragment = TRUE; /* Continuation PDVs are more tricky */ pdv->packet_no = packet_no; @@ -4474,7 +4474,7 @@ dcm_export_create_header(guint32 *dcm_header_len, const gchar *sop_class_uid, gc #define DCM_HEADER_MAX 512 - dcm_header=(guint8 *)ep_alloc0(DCM_HEADER_MAX); /* Slightly longer than needed */ + dcm_header=(guint8 *)wmem_alloc0(wmem_packet_scope(), DCM_HEADER_MAX); /* Slightly longer than needed */ /* The subsequent functions rely on a 0 initialized buffer */ offset=128; @@ -4576,7 +4576,7 @@ dcm_export_create_object(packet_info *pinfo, dcm_state_assoc_t *assoc, dcm_state pctx=dcm_state_pctx_get(assoc, pdv_curr->pctx_id, FALSE); if (strlen(assoc->ae_calling)>0 && strlen(assoc->ae_called)>0 ) { - hostname = ep_strdup_printf("%s <-> %s", assoc->ae_calling, assoc->ae_called); + hostname = wmem_strdup_printf(wmem_packet_scope(), "%s <-> %s", assoc->ae_calling, assoc->ae_called); } else { hostname = "AE title(s) unknown"; @@ -4586,25 +4586,25 @@ dcm_export_create_object(packet_info *pinfo, dcm_state_assoc_t *assoc, dcm_state pdv_curr->sop_class_uid && strlen(pdv_curr->sop_class_uid)>0 && pdv_curr->sop_instance_uid && strlen(pdv_curr->sop_instance_uid)>0) { - sop_class_uid = ep_strndup(pdv_curr->sop_class_uid, MAX_BUF_LEN); - sop_instance_uid = ep_strndup(pdv_curr->sop_instance_uid, MAX_BUF_LEN); + sop_class_uid = wmem_strndup(wmem_packet_scope(), pdv_curr->sop_class_uid, MAX_BUF_LEN); + sop_instance_uid = wmem_strndup(wmem_packet_scope(), pdv_curr->sop_instance_uid, MAX_BUF_LEN); /* Make sure filename does not contain invalid character. Rather conservative. Even though this should be a valid DICOM UID, apply the same filter rules in case of bogus data. */ - filename = ep_strdup_printf("%06d-%d-%s.dcm", pinfo->fd->num, cnt_same_pkt, + filename = wmem_strdup_printf(wmem_packet_scope(), "%06d-%d-%s.dcm", pinfo->fd->num, cnt_same_pkt, g_strcanon(pdv_curr->sop_instance_uid, G_CSET_A_2_Z G_CSET_a_2_z G_CSET_DIGITS "-.", '-')); } else { /* No SOP Instance or SOP Class UID found in PDV. Use wireshark ones */ - sop_class_uid = ep_strdup(WIRESHARK_MEDIA_STORAGE_SOP_CLASS_UID); - sop_instance_uid = ep_strdup_printf("%s.%d.%d", + sop_class_uid = wmem_strdup(wmem_packet_scope(), WIRESHARK_MEDIA_STORAGE_SOP_CLASS_UID); + sop_instance_uid = wmem_strdup_printf(wmem_packet_scope(), "%s.%d.%d", WIRESHARK_MEDIA_STORAGE_SOP_INSTANCE_UID_PREFIX, pinfo->fd->num, cnt_same_pkt); /* Make sure filename does not contain invalid character. Rather conservative.*/ - filename = ep_strdup_printf("%06d-%d-%s.dcm", pinfo->fd->num, cnt_same_pkt, + filename = wmem_strdup_printf(wmem_packet_scope(), "%06d-%d-%s.dcm", pinfo->fd->num, cnt_same_pkt, g_strcanon(pdv->desc, G_CSET_A_2_Z G_CSET_a_2_z G_CSET_DIGITS "-.", '-')); } @@ -4714,7 +4714,7 @@ dissect_dcm_assoc_header(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, gu offset += 32; /* 32 reserved bytes */ - buf_desc = ep_strdup_printf("A-ASSOCIATE request %s --> %s", + buf_desc = wmem_strdup_printf(wmem_packet_scope(), "A-ASSOCIATE request %s --> %s", g_strstrip(assoc->ae_calling), g_strstrip(assoc->ae_called)); offset = dissect_dcm_assoc_detail(tvb, pinfo, assoc_header_ptree, assoc, @@ -4741,7 +4741,7 @@ dissect_dcm_assoc_header(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, gu offset += 32; /* 32 reserved bytes */ - buf_desc = ep_strdup_printf("A-ASSOCIATE accept %s <-- %s", + buf_desc = wmem_strdup_printf(wmem_packet_scope(), "A-ASSOCIATE accept %s <-- %s", g_strstrip(assoc->ae_calling_resp), g_strstrip(assoc->ae_called_resp)); offset = dissect_dcm_assoc_detail(tvb, pinfo, assoc_header_ptree, assoc, @@ -4800,7 +4800,7 @@ dissect_dcm_assoc_header(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, gu offset += 3; /* Provider aborted */ - buf_desc = ep_strdup_printf("A-ASSOCIATE reject %s <-- %s (%s)", + buf_desc = wmem_strdup_printf(wmem_packet_scope(), "A-ASSOCIATE reject %s <-- %s (%s)", g_strstrip(assoc->ae_calling), g_strstrip(assoc->ae_called), reject_reason_desc); expert_add_info(pinfo, assoc_header_pitem, &ei_dcm_assoc_rejected); @@ -4857,12 +4857,12 @@ dissect_dcm_assoc_header(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, gu if (abort_source == 0) { /* User aborted */ - buf_desc = ep_strdup_printf("ABORT %s --> %s", + buf_desc = wmem_strdup_printf(wmem_packet_scope(), "ABORT %s --> %s", g_strstrip(assoc->ae_calling), g_strstrip(assoc->ae_called)); } else { /* Provider aborted, slightly more information */ - buf_desc = ep_strdup_printf("ABORT %s <-- %s (%s)", + buf_desc = wmem_strdup_printf(wmem_packet_scope(), "ABORT %s <-- %s (%s)", g_strstrip(assoc->ae_calling), g_strstrip(assoc->ae_called), abort_reason_desc); } @@ -4875,7 +4875,7 @@ dissect_dcm_assoc_header(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, gu col_append_str(pinfo->cinfo, COL_INFO, buf_desc); col_clear(pinfo->cinfo, COL_INFO); - col_set_str(pinfo->cinfo, COL_INFO, se_strdup(buf_desc)); /* requires SE not EP memory */ + col_set_str(pinfo->cinfo, COL_INFO, wmem_strdup(wmem_file_scope(), buf_desc)); /* requires SE not EP memory */ /* proto_item and proto_tree are one and the same */ proto_item_append_text(tree, ", %s", buf_desc); @@ -4913,7 +4913,7 @@ dissect_dcm_assoc_item(tvbuff_t *tvb, proto_tree *tree, guint32 offset, *item_value = NULL; *item_description = NULL; - buf_desc = (gchar *)ep_alloc0(MAX_BUF_LEN); /* Valid for this packet */ + buf_desc = (gchar *)wmem_alloc0(wmem_packet_scope(), MAX_BUF_LEN); /* Valid for this packet */ item_type = tvb_get_guint8(tvb, offset); item_len = tvb_get_ntohs(tvb, offset+2); @@ -4952,7 +4952,7 @@ dissect_dcm_assoc_item(tvbuff_t *tvb, proto_tree *tree, guint32 offset, case DCM_ITEM_VALUE_TYPE_UINT32: item_number = tvb_get_ntohl(tvb, offset+4); - *item_value = (gchar *)se_alloc0(MAX_BUF_LEN); + *item_value = (gchar *)wmem_alloc0(wmem_file_scope(), MAX_BUF_LEN); g_snprintf(*item_value, MAX_BUF_LEN, "%d", item_number); proto_item_append_text(assoc_item_pitem, "%s", *item_value); @@ -4984,7 +4984,7 @@ dissect_dcm_assoc_sopclass_extneg(tvbuff_t *tvb, proto_tree *tree, guint32 offse dcm_uid_t *sopclassuid=NULL; gchar *sopclassuid_str = NULL; - buf_desc = (gchar *)ep_alloc0(MAX_BUF_LEN); /* Valid for this packet */ + buf_desc = (gchar *)wmem_alloc0(wmem_packet_scope(), MAX_BUF_LEN); /* Valid for this packet */ item_len = tvb_get_ntohs(tvb, offset+2); sop_class_uid_len = tvb_get_ntohs(tvb, offset+4); @@ -5084,7 +5084,7 @@ dissect_dcm_assoc_role_selection(tvbuff_t *tvb, proto_tree *tree, guint32 offset guint16 item_len, sop_class_uid_len; guint8 scp_role, scu_role; - gchar *buf_desc = (gchar *)ep_alloc0(MAX_BUF_LEN); /* Used for item text */ + gchar *buf_desc = (gchar *)wmem_alloc0(wmem_packet_scope(), MAX_BUF_LEN); /* Used for item text */ dcm_uid_t *sopclassuid; gchar *sopclassuid_str; @@ -5199,7 +5199,7 @@ dissect_dcm_pctx(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, int cnt_abbs = 0; /* Number of Abstract Syntax Items */ int cnt_xfer = 0; /* Number of Transfer Syntax Items */ - buf_desc = (gchar *)ep_alloc0(MAX_BUF_LEN); /* Valid for this packet */ + buf_desc = (gchar *)wmem_alloc0(wmem_packet_scope(), MAX_BUF_LEN); /* Valid for this packet */ endpos = offset + len; @@ -5314,8 +5314,8 @@ dissect_dcm_pctx(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, if (pctx->abss_uid==NULL) { /* Permanent copy information into structure */ - pctx->abss_uid = se_strdup(pctx_abss_uid); - pctx->abss_desc = se_strdup(pctx_abss_desc); + pctx->abss_uid = wmem_strdup(wmem_file_scope(), pctx_abss_uid); + pctx->abss_desc = wmem_strdup(wmem_file_scope(), pctx_abss_desc); } /* @@ -5598,7 +5598,7 @@ dissect_dcm_pdv_header(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, (*pdv)->pctx_id = pctx_id; - desc_header=(gchar *)se_alloc0(MAX_BUF_LEN); /* Valid for this capture, since we return this buffer */ + desc_header=(gchar *)wmem_alloc0(wmem_file_scope(), MAX_BUF_LEN); /* Valid for this capture, since we return this buffer */ switch (flags) { case 0: /* 00 */ @@ -5754,7 +5754,7 @@ dissect_dcm_tag_value(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, dcm_s if (grp == 0x0000 && elm == 0x0902) { /* The error comment */ - pdv->comment = se_strdup(g_strstrip(vals)); + pdv->comment = wmem_strdup(wmem_file_scope(), g_strstrip(vals)); } } else if ((strncmp(vr, "OB", 2) == 0) || (strncmp(vr, "OF", 2) == 0) || @@ -5898,7 +5898,7 @@ dissect_dcm_tag_value(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, dcm_s /* This is a command */ g_snprintf(*tag_value, MAX_BUF_LEN, "%s", dcm_cmd2str(val16)); - pdv->command = se_strdup(*tag_value); + pdv->command = wmem_strdup(wmem_file_scope(), *tag_value); } else if (grp == 0x0000 && elm == 0x0900) { /* This is a status message. If value is not 0x0000, add an expert info */ @@ -5911,7 +5911,7 @@ dissect_dcm_tag_value(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, dcm_s pdv->is_warning = TRUE; } - pdv->status = se_strdup(status_message); + pdv->status = wmem_strdup(wmem_file_scope(), status_message); } else { @@ -6046,21 +6046,21 @@ dcm_tag_summary(guint16 grp, guint16 elm, guint32 vl, const gchar *tag_desc, con gchar *tag_sum; if (is_retired) { - desc_mod = ep_strdup_printf("(Retired) %-35.35s", tag_desc); + desc_mod = wmem_strdup_printf(wmem_packet_scope(), "(Retired) %-35.35s", tag_desc); } else { - desc_mod = ep_strdup_printf("%-45.45s", tag_desc); + desc_mod = wmem_strdup_printf(wmem_packet_scope(), "%-45.45s", tag_desc); } if (vl == 0xFFFFFFFF) { - tag_vl = ep_strdup_printf("%10.10s", "<udef>"); + tag_vl = wmem_strdup_printf(wmem_packet_scope(), "%10.10s", "<udef>"); } else { - tag_vl = ep_strdup_printf("%10u", vl); /* Show as dec */ + tag_vl = wmem_strdup_printf(wmem_packet_scope(), "%10u", vl); /* Show as dec */ } - if (is_implicit) tag_sum = ep_strdup_printf("(%04x,%04x) %s %s", grp, elm, tag_vl, desc_mod); - else tag_sum = ep_strdup_printf("(%04x,%04x) %s %s [%s]", grp, elm, tag_vl, desc_mod, vr); + if (is_implicit) tag_sum = wmem_strdup_printf(wmem_packet_scope(), "(%04x,%04x) %s %s", grp, elm, tag_vl, desc_mod); + else tag_sum = wmem_strdup_printf(wmem_packet_scope(), "(%04x,%04x) %s %s [%s]", grp, elm, tag_vl, desc_mod, vr); return tag_sum; } @@ -6109,7 +6109,7 @@ dissect_dcm_tag(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, *tag_description = NULL; /* Reset description. It's ep_ memory, so not really bad*/ - tag_value = (gchar *)ep_alloc0(MAX_BUF_LEN); + tag_value = (gchar *)wmem_alloc0(wmem_packet_scope(), MAX_BUF_LEN); /* Decode the syntax a little more */ if (pdv->syntax == DCM_EBE) is_little_endian = FALSE; @@ -6187,13 +6187,13 @@ dissect_dcm_tag(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, } else if (is_implicit) { /* Get VR from tag definition */ - vr = ep_strdup(tag_def->vr); + vr = wmem_strdup(wmem_packet_scope(), tag_def->vr); is_vl_long = TRUE; /* Implicit always has 4 byte length field */ } else { if (len_decoded_remaing >= 2) { - vr = ep_strdup(pdv->prev->open_tag.vr); + vr = wmem_strdup(wmem_packet_scope(), pdv->prev->open_tag.vr); len_decoded_remaing -= 2; } else { @@ -6430,7 +6430,7 @@ dissect_dcm_tag(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, if (pdv->open_tag.desc == NULL) { pdv->open_tag.is_value_fragmented = TRUE; - pdv->open_tag.desc = se_strdup(tag_desc); + pdv->open_tag.desc = wmem_strdup(wmem_file_scope(), tag_desc); pdv->open_tag.len_total = vl; pdv->open_tag.len_remaining = vl - vl_max; } @@ -6447,14 +6447,14 @@ dissect_dcm_tag(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, /* Store SOP Class and Instance UID in first PDV of this object */ if (grp == 0x0008 && elm == 0x0016) { - dcm_state_pdv_get_obj_start(pdv)->sop_class_uid = se_strdup(tag_value); + dcm_state_pdv_get_obj_start(pdv)->sop_class_uid = wmem_strdup(wmem_file_scope(), tag_value); } else if (grp == 0x0008 && elm == 0x0018) { - dcm_state_pdv_get_obj_start(pdv)->sop_instance_uid = se_strdup(tag_value); + dcm_state_pdv_get_obj_start(pdv)->sop_instance_uid = wmem_strdup(wmem_file_scope(), tag_value); } else if (grp == 0x0000 && elm == 0x0100) { /* This is the command tag -> overwrite existing PDV description */ - pdv->desc = se_strdup(tag_value); + pdv->desc = wmem_strdup(wmem_file_scope(), tag_value); } } @@ -6467,7 +6467,7 @@ dissect_dcm_tag(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, proto_item_append_text(tag_pitem, " %s", tag_value); if (tag_def->add_to_summary) { - *tag_description = ep_strdup(g_strstrip(tag_value)); + *tag_description = wmem_strdup(wmem_packet_scope(), g_strstrip(tag_value)); } return offset; @@ -6518,7 +6518,7 @@ dissect_dcm_tag_open(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, pdv->open_tag.is_value_fragmented = TRUE; pdv->open_tag.len_total = pdv->prev->open_tag.len_total; pdv->open_tag.len_remaining = pdv->prev->open_tag.len_remaining - tag_value_fragment_len; - pdv->open_tag.desc = se_strdup(pdv->prev->open_tag.desc); + pdv->open_tag.desc = wmem_strdup(wmem_file_scope(), pdv->prev->open_tag.desc); } pdv->is_corrupt = FALSE; @@ -6584,7 +6584,7 @@ dissect_dcm_pdv_body(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, if (pdv->is_command) { - *pdv_description = (gchar *)se_alloc0(MAX_BUF_LEN); + *pdv_description = (gchar *)wmem_alloc0(wmem_file_scope(), MAX_BUF_LEN); if (pdv->is_warning) { if (pdv->comment) { @@ -6691,7 +6691,7 @@ dissect_dcm_pdv_fragmented(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, if (next_tvb == NULL) { /* Just show this as a fragment */ - *pdv_description = (gchar *)se_alloc0(MAX_BUF_LEN); + *pdv_description = (gchar *)wmem_alloc0(wmem_file_scope(), MAX_BUF_LEN); if (head && head->reassembled_in != pinfo->fd->num) { @@ -6790,7 +6790,7 @@ dissect_dcm_pdu_data(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, endpos = offset + pdu_len; - buf_desc=(gchar *)se_alloc0(MAX_BUF_LEN); /* Valid for this capture, since we return this buffer */ + buf_desc=(gchar *)wmem_alloc0(wmem_file_scope(), MAX_BUF_LEN); /* Valid for this capture, since we return this buffer */ /* Loop through multiple PDVs */ while (offset < endpos) { diff --git a/epan/dissectors/packet-dcom.c b/epan/dissectors/packet-dcom.c index a0c7325a85..c5b75c5162 100644 --- a/epan/dissectors/packet-dcom.c +++ b/epan/dissectors/packet-dcom.c @@ -86,7 +86,7 @@ #include <glib.h> #include <epan/packet.h> -#include <epan/emem.h> +#include <epan/wmem/wmem.h> #include <epan/addr_resolv.h> #include <wsutil/inet_aton.h> #include <epan/expert.h> @@ -325,7 +325,7 @@ dcom_interface_t *dcom_interface_new(packet_info *pinfo, const guint8 *ip, e_uui if(oxid == 0 || oid == 0) { /*g_warning("interface_new#%u", pinfo->fd->num);*/ - interf = se_new(dcom_interface_t); + interf = wmem_new(wmem_file_scope(), dcom_interface_t); interf->parent = NULL; interf->private_data = NULL; interf->first_packet = pinfo->fd->num; @@ -1944,7 +1944,7 @@ dcom_register_rountine(dcom_dissect_fn_t routine, e_uuid_t* uuid) if (dcom_get_rountine_by_uuid(uuid)) return -1; - marshaler = se_new(dcom_marshaler_t); + marshaler = wmem_new(wmem_file_scope(), dcom_marshaler_t); if (!marshaler) { /*memory error*/ return -1; diff --git a/epan/dissectors/packet-dcp-etsi.c b/epan/dissectors/packet-dcp-etsi.c index 0d75b1dff0..e4b9d5ab56 100644 --- a/epan/dissectors/packet-dcp-etsi.c +++ b/epan/dissectors/packet-dcp-etsi.c @@ -32,7 +32,7 @@ #include <epan/reassemble.h> #include <wsutil/crcdrm.h> #include <epan/reedsolomon.h> -#include <epan/emem.h> +#include <epan/wmem/wmem.h> #include <string.h> /* forward reference */ @@ -288,7 +288,7 @@ dissect_pft_fec_detailed(tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree, proto_tree_add_text (tree, tvb, 0, -1, "want %d, got %d need %d", fcount, fragments, rx_min ); - got = (guint32 *)ep_alloc(fcount*sizeof(guint32)); + got = (guint32 *)wmem_alloc(wmem_packet_scope(), fcount*sizeof(guint32)); /* make a list of the findex (offset) numbers of the fragments we have */ fd = fragment_get(&dcp_reassembly_table, pinfo, seq, NULL); @@ -301,7 +301,7 @@ dissect_pft_fec_detailed(tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree, if(fragments>=rx_min) { /* yes, in theory */ guint i,current_findex; fragment_head *frag=NULL; - guint8 *dummy_data = (guint8*) ep_alloc0 (plen); + guint8 *dummy_data = (guint8*) wmem_alloc0 (wmem_packet_scope(), plen); tvbuff_t *dummytvb = tvb_new_real_data(dummy_data, plen, plen); /* try and decode with missing fragments */ if(tree) diff --git a/epan/dissectors/packet-dec-dnart.c b/epan/dissectors/packet-dec-dnart.c index 7ba1d18a34..a793019ce8 100644 --- a/epan/dissectors/packet-dec-dnart.c +++ b/epan/dissectors/packet-dec-dnart.c @@ -51,7 +51,7 @@ #include <glib.h> #include <epan/packet.h> -#include <epan/emem.h> +#include <epan/wmem/wmem.h> #include <epan/etypes.h> #include <epan/ppptypes.h> @@ -346,7 +346,7 @@ dnet_ntoa(const guint8 *data) { if (data[0] == 0xAA && data[1] == 0x00 && data[2] == 0x04 && data[3] == 0x00) { guint16 dnet_addr = data[4] | (data[5] << 8); - return ep_strdup_printf("%d.%d", dnet_addr >> 10, dnet_addr & 0x03FF); + return wmem_strdup_printf(wmem_packet_scope(), "%d.%d", dnet_addr >> 10, dnet_addr & 0x03FF); } return NULL; } diff --git a/epan/dissectors/packet-dect.c b/epan/dissectors/packet-dect.c index 6aff5fcae7..e6dc811492 100644 --- a/epan/dissectors/packet-dect.c +++ b/epan/dissectors/packet-dect.c @@ -44,6 +44,7 @@ #include <epan/packet.h> #include <epan/etypes.h> +#include <epan/wmem/wmem.h> #define ETHERTYPE_DECT 0x2323 @@ -1359,17 +1360,18 @@ dissect_bfield(gboolean dect_packet_type _U_, guint8 ba, * you doesn't know the real framenumber, so you need * the range of all possible descramblings. (a.schuler) */ - emem_strbuf_t *string; - string = ep_strbuf_new(NULL); + wmem_strbuf_t *string; + string = wmem_strbuf_new(wmem_packet_scope(), NULL); for(y=0;y<16;y++) { if((x+y)>=blen) break; - ep_strbuf_append_printf(string,"%.2x ", bfield_data[x+y]^scrt[fn][bytecount%31]); + wmem_strbuf_append_printf(string,"%.2x ", bfield_data[x+y]^scrt[fn][bytecount%31]); bytecount++; } - proto_tree_add_none_format(BFDescrData, hf_dect_B_Data, tvb, offset, y, "Data: %s", string->str); + proto_tree_add_none_format(BFDescrData, hf_dect_B_Data, tvb, offset, + y, "Data: %s", wmem_strbuf_get_str(string)); offset+=y; } } @@ -1405,7 +1407,7 @@ dissect_afield(gboolean dect_packet_type, guint8 *ba, guint8 ta; guint8 rcrcdat[8]; guint16 computed_rcrc; - emem_strbuf_t *afield_str; + wmem_strbuf_t *afield_str; proto_item *afieldti = NULL; proto_item *aheadti = NULL; @@ -1417,7 +1419,7 @@ dissect_afield(gboolean dect_packet_type, guint8 *ba, guint8 header, tail_0, tail_1, tail_2, tail_3, tail_4; guint16 rcrc; - afield_str = ep_strbuf_new(NULL); + afield_str = wmem_strbuf_new(wmem_packet_scope(), NULL); /************************** A-Field ***********************************/ @@ -1477,19 +1479,19 @@ dissect_afield(gboolean dect_packet_type, guint8 *ba, proto_tree_add_string(ColumnsTree, hf_dect_cc_TA, tvb, offset, 1, "[Ct]"); if(ta==DECT_TA_CT0) - ep_strbuf_append_printf(afield_str,"C-Channel Next Data: %s",tvb_bytes_to_str(tvb, offset, 5)); + wmem_strbuf_append_printf(afield_str,"C-Channel Next Data: %s",tvb_bytes_to_str(tvb, offset, 5)); else - ep_strbuf_append_printf(afield_str,"C-Channel First Data: %s",tvb_bytes_to_str(tvb, offset, 5)); + wmem_strbuf_append_printf(afield_str,"C-Channel First Data: %s",tvb_bytes_to_str(tvb, offset, 5)); - proto_tree_add_string(ColumnsTree, hf_dect_cc_AField, tvb, offset, 1, afield_str->str); + proto_tree_add_string(ColumnsTree, hf_dect_cc_AField, tvb, offset, 1, wmem_strbuf_get_str(afield_str)); } else if((ta==DECT_TA_NT)||(ta==DECT_TA_NT_CL)) { /* ETSI EN 300 175-3 V2.3.0 7.2.2 */ proto_tree_add_string(ColumnsTree, hf_dect_cc_TA, tvb, offset, 1, "[Nt]"); - ep_strbuf_append_printf(afield_str,"RFPI: %s",tvb_bytes_to_str(tvb, offset, 5)); - proto_tree_add_string(ColumnsTree, hf_dect_cc_AField, tvb, offset, 1, afield_str->str); + wmem_strbuf_append_printf(afield_str,"RFPI: %s",tvb_bytes_to_str(tvb, offset, 5)); + proto_tree_add_string(ColumnsTree, hf_dect_cc_AField, tvb, offset, 1, wmem_strbuf_get_str(afield_str)); proto_tree_add_item(atailti, hf_dect_A_Tail_Nt, tvb, offset, 5, ENC_NA); } @@ -1658,8 +1660,8 @@ dissect_afield(gboolean dect_packet_type, guint8 *ba, proto_tree_add_item(ATail, hf_dect_A_Tail_Qt_6_Spare, tvb, offset, 2, ENC_BIG_ENDIAN); offset+=2; - ep_strbuf_append_printf(afield_str,"Multi-Frame No.: %s",tvb_bytes_to_str(tvb, offset, 3)); - proto_tree_add_string(ColumnsTree, hf_dect_cc_AField, tvb, offset, 1, afield_str->str); + wmem_strbuf_append_printf(afield_str,"Multi-Frame No.: %s",tvb_bytes_to_str(tvb, offset, 3)); + proto_tree_add_string(ColumnsTree, hf_dect_cc_AField, tvb, offset, 1, wmem_strbuf_get_str(afield_str)); proto_tree_add_item(ATail, hf_dect_A_Tail_Qt_6_Mfn, tvb, offset, 3, ENC_NA); offset+=3; @@ -1669,8 +1671,8 @@ dissect_afield(gboolean dect_packet_type, guint8 *ba, break; case 7: /* Escape */ /* ETSI EN 300 175-3 V2.3.0 7.2.3.8 */ - ep_strbuf_append_printf(afield_str,"Escape Data: %s",tvb_bytes_to_str(tvb, offset, 5)); - proto_tree_add_string(ColumnsTree, hf_dect_cc_AField, tvb, offset, 1, afield_str->str); + wmem_strbuf_append_printf(afield_str,"Escape Data: %s",tvb_bytes_to_str(tvb, offset, 5)); + proto_tree_add_string(ColumnsTree, hf_dect_cc_AField, tvb, offset, 1, wmem_strbuf_get_str(afield_str)); break; case 8: /* Obsolete */ /* ETSI EN 300 175-3 V2.3.0 7.2.3.1 */ @@ -1755,11 +1757,11 @@ dissect_afield(gboolean dect_packet_type, guint8 *ba, break; case 5: /* Encryption Control */ /* ETSI EN 300 175-3 V2.3.0 7.2.5.7 */ - ep_strbuf_append_printf(afield_str,"Encryption Control: %s %s", + wmem_strbuf_append_printf(afield_str,"Encryption Control: %s %s", val_to_str((tail_0&0x0c)>>2, MTEncrCmd1_vals, "Error, please report: %d"), val_to_str(tail_0&0x03, MTEncrCmd2_vals, "Error, please report: %d")); - proto_tree_add_string(ColumnsTree, hf_dect_cc_AField, tvb, offset, 1, afield_str->str); + proto_tree_add_string(ColumnsTree, hf_dect_cc_AField, tvb, offset, 1, wmem_strbuf_get_str(afield_str)); proto_tree_add_item(ATail, hf_dect_A_Tail_Mt_Encr_Cmd1, tvb, offset, 1, ENC_BIG_ENDIAN); proto_tree_add_item(ATail, hf_dect_A_Tail_Mt_Encr_Cmd2, tvb, offset, 1, ENC_BIG_ENDIAN); @@ -1809,7 +1811,7 @@ dissect_afield(gboolean dect_packet_type, guint8 *ba, proto_tree_add_item(ATail, hf_dect_A_Tail_Pt_SDU, tvb, offset, 1, ENC_BIG_ENDIAN); if(((tail_0&0x70)>>4)&0xfe) - ep_strbuf_append_printf(afield_str,"%s, ",val_to_str((tail_0&0x70)>>4, PTSDU_vals, "Error, please report: %d")); + wmem_strbuf_append_printf(afield_str,"%s, ",val_to_str((tail_0&0x70)>>4, PTSDU_vals, "Error, please report: %d")); switch((tail_0&0x70)>>4) { @@ -1817,7 +1819,7 @@ dissect_afield(gboolean dect_packet_type, guint8 *ba, case 1: /* Short Page */ if(((tail_0&0x70)>>4)==0) { - ep_strbuf_append_printf(afield_str,"RFPI: xxxxx%.1x%.2x%.2x, ", (tail_0&0x0f), tail_1, tail_2); + wmem_strbuf_append_printf(afield_str,"RFPI: xxxxx%.1x%.2x%.2x, ", (tail_0&0x0f), tail_1, tail_2); proto_tree_add_none_format(atailti, hf_dect_A_Tail_Pt_RFPI, tvb, offset, 3, "RFPI: xxxxx%.1x%.2x%.2x", (tail_0&0x0f), tail_1, tail_2); offset+=3; @@ -1825,14 +1827,14 @@ dissect_afield(gboolean dect_packet_type, guint8 *ba, } else { - ep_strbuf_append_printf(afield_str,"Bs Data: %.1x%.2x%.2x, ", (tail_0&0x0f), tail_1, tail_2); + wmem_strbuf_append_printf(afield_str,"Bs Data: %.1x%.2x%.2x, ", (tail_0&0x0f), tail_1, tail_2); proto_tree_add_none_format(atailti, hf_dect_A_Tail_Pt_BsData, tvb, offset, 3, "Bs Data: %.1x%.2x%.2x", (tail_0&0x0f), tail_1, tail_2); offset+=3; proto_tree_add_item(ATail, hf_dect_A_Tail_Pt_InfoType, tvb, offset, 1, ENC_BIG_ENDIAN); } - ep_strbuf_append_printf(afield_str,"%s",val_to_str(tail_3>>4, PTInfoType_vals, "Error, please report: %d")); + wmem_strbuf_append_printf(afield_str,"%s",val_to_str(tail_3>>4, PTInfoType_vals, "Error, please report: %d")); switch(tail_3>>4) { @@ -1893,26 +1895,26 @@ dissect_afield(gboolean dect_packet_type, guint8 *ba, offset-=5; break; case 2: /* Full Page */ - ep_strbuf_append_printf(afield_str,"Full Page"); + wmem_strbuf_append_printf(afield_str,"Full Page"); break; case 3: /* MAC Resume Page */ - ep_strbuf_append_printf(afield_str,"MAC Resume Page"); + wmem_strbuf_append_printf(afield_str,"MAC Resume Page"); break; case 4: /* Not the Last 36 Bits of a Long Page */ - ep_strbuf_append_printf(afield_str,"Not the Last 36 Bits"); + wmem_strbuf_append_printf(afield_str,"Not the Last 36 Bits"); break; case 5: /* The First 36 Bits of a Long Page */ - ep_strbuf_append_printf(afield_str,"The First 36 Bits"); + wmem_strbuf_append_printf(afield_str,"The First 36 Bits"); break; case 6: /* The Last 36 Bits of a Long Page */ - ep_strbuf_append_printf(afield_str,"The Last 36 Bits"); + wmem_strbuf_append_printf(afield_str,"The Last 36 Bits"); break; case 7: /* All of a Long Page */ - ep_strbuf_append_printf(afield_str,"All of a Long Page"); + wmem_strbuf_append_printf(afield_str,"All of a Long Page"); break; } - proto_tree_add_string(ColumnsTree, hf_dect_cc_AField, tvb, offset, 1, afield_str->str); + proto_tree_add_string(ColumnsTree, hf_dect_cc_AField, tvb, offset, 1, wmem_strbuf_get_str(afield_str)); } offset+=5; diff --git a/epan/dissectors/packet-diameter.c b/epan/dissectors/packet-diameter.c index 3561c7a243..972bef21e5 100644 --- a/epan/dissectors/packet-diameter.c +++ b/epan/dissectors/packet-diameter.c @@ -54,7 +54,6 @@ #include <epan/filesystem.h> #include <epan/prefs.h> #include <epan/sminmpec.h> -#include <epan/emem.h> #include <epan/wmem/wmem.h> #include <epan/expert.h> #include <epan/conversation.h> @@ -591,7 +590,7 @@ dissect_diameter_avp(diam_ctx_t *c, tvbuff_t *tvb, int offset) static const char * address_rfc_avp(diam_ctx_t *c, diam_avp_t *a, tvbuff_t *tvb) { - char *label = (char *)ep_alloc(ITEM_LABEL_LENGTH+1); + char *label = (char *)wmem_alloc(wmem_packet_scope(), ITEM_LABEL_LENGTH+1); address_avp_t *t = (address_avp_t *)a->type_data; proto_item *pi = proto_tree_add_item(c->tree,a->hf_value,tvb,0,tvb_length(tvb),ENC_BIG_ENDIAN); proto_tree *pt = proto_item_add_subtree(pi,t->ett); @@ -651,7 +650,7 @@ static const char * time_avp(diam_ctx_t *c, diam_avp_t *a, tvbuff_t *tvb) { int len = tvb_length(tvb); - char *label = (char *)ep_alloc(ITEM_LABEL_LENGTH+1); + char *label = (char *)wmem_alloc(wmem_packet_scope(), ITEM_LABEL_LENGTH+1); proto_item *pi; if ( len != 4 ) { @@ -669,7 +668,7 @@ time_avp(diam_ctx_t *c, diam_avp_t *a, tvbuff_t *tvb) static const char * address_v16_avp(diam_ctx_t *c, diam_avp_t *a, tvbuff_t *tvb) { - char *label = (char *)ep_alloc(ITEM_LABEL_LENGTH+1); + char *label = (char *)wmem_alloc(wmem_packet_scope(), ITEM_LABEL_LENGTH+1); address_avp_t *t = (address_avp_t *)a->type_data; proto_item *pi = proto_tree_add_item(c->tree,a->hf_value,tvb,0,tvb_length(tvb),ENC_BIG_ENDIAN); proto_tree *pt = proto_item_add_subtree(pi,t->ett); @@ -698,7 +697,7 @@ address_v16_avp(diam_ctx_t *c, diam_avp_t *a, tvbuff_t *tvb) static const char * simple_avp(diam_ctx_t *c, diam_avp_t *a, tvbuff_t *tvb) { - char *label = (char *)ep_alloc(ITEM_LABEL_LENGTH+1); + char *label = (char *)wmem_alloc(wmem_packet_scope(), ITEM_LABEL_LENGTH+1); proto_item *pi = proto_tree_add_item(c->tree,a->hf_value,tvb,0,tvb_length(tvb),ENC_BIG_ENDIAN); proto_item_fill_label(PITEM_FINFO(pi), label); label = strstr(label,": ")+2; @@ -708,7 +707,7 @@ simple_avp(diam_ctx_t *c, diam_avp_t *a, tvbuff_t *tvb) static const char * utf8_avp(diam_ctx_t *c, diam_avp_t *a, tvbuff_t *tvb) { - char *label = (char *)ep_alloc(ITEM_LABEL_LENGTH+1); + char *label = (char *)wmem_alloc(wmem_packet_scope(), ITEM_LABEL_LENGTH+1); proto_item *pi = proto_tree_add_item(c->tree,a->hf_value,tvb,0,tvb_length(tvb),ENC_UTF_8|ENC_BIG_ENDIAN); proto_item_fill_label(PITEM_FINFO(pi), label); label = strstr(label,": ")+2; @@ -725,7 +724,7 @@ integer32_avp(diam_ctx_t *c, diam_avp_t *a, tvbuff_t *tvb) gint length = tvb_length_remaining(tvb,0); if (length == 4) { pi= proto_tree_add_item(c->tree,a->hf_value,tvb,0,tvb_length_remaining(tvb,0),ENC_BIG_ENDIAN); - label = (char *)ep_alloc(ITEM_LABEL_LENGTH+1); + label = (char *)wmem_alloc(wmem_packet_scope(), ITEM_LABEL_LENGTH+1); proto_item_fill_label(PITEM_FINFO(pi), label); label = strstr(label,": ")+2; } @@ -751,7 +750,7 @@ integer64_avp(diam_ctx_t *c, diam_avp_t *a, tvbuff_t *tvb) gint length = tvb_length_remaining(tvb,0); if (length == 8) { pi= proto_tree_add_item(c->tree,a->hf_value,tvb,0,tvb_length_remaining(tvb,0),ENC_BIG_ENDIAN); - label = (char *)ep_alloc(ITEM_LABEL_LENGTH+1); + label = (char *)wmem_alloc(wmem_packet_scope(), ITEM_LABEL_LENGTH+1); proto_item_fill_label(PITEM_FINFO(pi), label); label = strstr(label,": ")+2; } @@ -777,7 +776,7 @@ unsigned32_avp(diam_ctx_t *c, diam_avp_t *a, tvbuff_t *tvb) gint length = tvb_length_remaining(tvb,0); if (length == 4) { pi= proto_tree_add_item(c->tree,a->hf_value,tvb,0,tvb_length_remaining(tvb,0),ENC_BIG_ENDIAN); - label = (char *)ep_alloc(ITEM_LABEL_LENGTH+1); + label = (char *)wmem_alloc(wmem_packet_scope(), ITEM_LABEL_LENGTH+1); proto_item_fill_label(PITEM_FINFO(pi), label); label = strstr(label,": ")+2; } @@ -803,7 +802,7 @@ unsigned64_avp(diam_ctx_t *c, diam_avp_t *a, tvbuff_t *tvb) gint length = tvb_length_remaining(tvb,0); if (length == 8) { pi= proto_tree_add_item(c->tree,a->hf_value,tvb,0,tvb_length_remaining(tvb,0),ENC_BIG_ENDIAN); - label = (char *)ep_alloc(ITEM_LABEL_LENGTH+1); + label = (char *)wmem_alloc(wmem_packet_scope(), ITEM_LABEL_LENGTH+1); proto_item_fill_label(PITEM_FINFO(pi), label); label = strstr(label,": ")+2; } @@ -829,7 +828,7 @@ float32_avp(diam_ctx_t *c, diam_avp_t *a, tvbuff_t *tvb) gint length = tvb_length_remaining(tvb,0); if (length == 4) { pi= proto_tree_add_item(c->tree,a->hf_value,tvb,0,tvb_length_remaining(tvb,0),ENC_BIG_ENDIAN); - label = (char *)ep_alloc(ITEM_LABEL_LENGTH+1); + label = (char *)wmem_alloc(wmem_packet_scope(), ITEM_LABEL_LENGTH+1); proto_item_fill_label(PITEM_FINFO(pi), label); label = strstr(label,": ")+2; } @@ -855,7 +854,7 @@ float64_avp(diam_ctx_t *c, diam_avp_t *a, tvbuff_t *tvb) gint length = tvb_length_remaining(tvb,0); if (length == 8) { pi= proto_tree_add_item(c->tree,a->hf_value,tvb,0,tvb_length_remaining(tvb,0),ENC_BIG_ENDIAN); - label = (char *)ep_alloc(ITEM_LABEL_LENGTH+1); + label = (char *)wmem_alloc(wmem_packet_scope(), ITEM_LABEL_LENGTH+1); proto_item_fill_label(PITEM_FINFO(pi), label); label = strstr(label,": ")+2; } @@ -906,7 +905,7 @@ dissect_diameter_common(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) int packet_len = first_word & 0x00ffffff; proto_item *pi, *cmd_item, *app_item, *version_item; proto_tree *diam_tree; - diam_ctx_t *c = (diam_ctx_t *)ep_alloc0(sizeof(diam_ctx_t)); + diam_ctx_t *c = (diam_ctx_t *)wmem_alloc0(wmem_packet_scope(), sizeof(diam_ctx_t)); int offset; value_string *cmd_vs; const char *cmd_str; @@ -919,7 +918,7 @@ dissect_diameter_common(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) proto_item *it; nstime_t ns; void *pd_save; - diam_sub_dis_t *diam_sub_dis_inf = ep_new0(diam_sub_dis_t); + diam_sub_dis_t *diam_sub_dis_inf = wmem_new0(wmem_packet_scope(), diam_sub_dis_t); diam_sub_dis_inf->application_id = tvb_get_ntohl(tvb,8); @@ -1088,7 +1087,7 @@ dissect_diameter_common(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) if (!diameter_pair) { /* create a "fake" diameter_pair structure */ - diameter_pair = (diameter_req_ans_pair_t *)ep_alloc(sizeof(diameter_req_ans_pair_t)); + diameter_pair = (diameter_req_ans_pair_t *)wmem_alloc(wmem_packet_scope(), sizeof(diameter_req_ans_pair_t)); diameter_pair->hop_by_hop_id = hop_by_hop_id; diameter_pair->cmd_code = cmd; diameter_pair->result_code = 0; diff --git a/epan/dissectors/packet-dmp.c b/epan/dissectors/packet-dmp.c index 4a344fc114..bde64035cb 100644 --- a/epan/dissectors/packet-dmp.c +++ b/epan/dissectors/packet-dmp.c @@ -46,7 +46,7 @@ #include <epan/addr_resolv.h> #include <epan/to_str.h> #include <epan/prefs.h> -#include <epan/emem.h> +#include <epan/wmem/wmem.h> #include <epan/expert.h> #include <epan/crc16-tvb.h> #include <epan/asn1.h> @@ -1094,7 +1094,7 @@ static const gchar *msg_type_to_str (void) case STANAG: /* Include message type and precedence */ - msg_type = ep_strdup_printf ("%s (%s) [%s]", + msg_type = wmem_strdup_printf (wmem_packet_scope(), "%s (%s) [%s]", val_to_str_const (dmp.msg_type, type_vals, "Unknown"), val_to_str_const (dmp.st_type, message_type_vals, "Unknown"), (dmp.prec == 0x6 || dmp.prec == 0x7) ? @@ -1104,14 +1104,14 @@ static const gchar *msg_type_to_str (void) case IPM: /* Include importance */ - msg_type = ep_strdup_printf ("%s [%s]", + msg_type = wmem_strdup_printf (wmem_packet_scope(), "%s [%s]", val_to_str_const (dmp.msg_type, type_vals, "Unknown"), val_to_str_const (dmp.prec, importance, "Unknown")); break; case REPORT: /* Include report types included */ - msg_type = ep_strdup_printf ("Report (%s%s%s)", + msg_type = wmem_strdup_printf (wmem_packet_scope(), "Report (%s%s%s)", dmp.dr ? "DR" : "", (dmp.dr && dmp.ndr) ? " and " : "", dmp.ndr ? "NDR" : ""); break; @@ -1124,7 +1124,7 @@ static const gchar *msg_type_to_str (void) /* If we have msg_time we have a matching packet */ have_msg = (dmp.id_val && (dmp.id_val->msg_time.secs>0 || dmp.id_val->msg_time.nsecs>0)); - msg_type = ep_strdup_printf ( "Acknowledgement%s%s", + msg_type = wmem_strdup_printf (wmem_packet_scope(), "Acknowledgement%s%s", have_msg ? val_to_str (dmp.id_val->msg_type, ack_msg_type, " (unknown:%d)") : "", dmp.ack_reason ? " [negative]" : ""); @@ -1399,7 +1399,7 @@ static void register_dmp_id (packet_info *pinfo, guint8 reason) nstime_set_zero(&msg_time); - dmp_key = se_new (dmp_id_key); + dmp_key = wmem_new (wmem_file_scope(), dmp_id_key); if (!pinfo->fd->flags.visited && (dmp.msg_type == REPORT || dmp.msg_type == NOTIF)) @@ -1456,7 +1456,7 @@ static void register_dmp_id (packet_info *pinfo, guint8 reason) } } else { /* New message */ - dmp_data = se_new0 (dmp_id_val); + dmp_data = wmem_new0 (wmem_file_scope(), dmp_id_val); dmp_data->msg_type = dmp.msg_type; if (dmp.msg_type == ACK) { @@ -1482,7 +1482,7 @@ static void register_dmp_id (packet_info *pinfo, guint8 reason) } } - pkg_data = se_new (dmp_id_val); + pkg_data = wmem_new (wmem_file_scope(), dmp_id_val); *pkg_data = *dmp_data; p_add_proto_data (pinfo->fd, proto_dmp, 0, pkg_data); } else { @@ -1653,7 +1653,7 @@ static void dmp_add_seq_ack_analysis (tvbuff_t *tvb, packet_info *pinfo, static gchar *dissect_7bit_string (tvbuff_t *tvb, gint offset, gint length) { guchar *encoded = tvb_get_ephemeral_string (tvb, offset, length); - guchar *decoded = (guchar *)ep_alloc0 ((size_t)(length * 1.2) + 1); + guchar *decoded = (guchar *)wmem_alloc0 (wmem_packet_scope(), (size_t)(length * 1.2) + 1); guchar rest = 0, bits = 1; gint len = 0, i; @@ -1676,10 +1676,10 @@ static const gchar *dissect_thales_mts_id (tvbuff_t *tvb, gint offset, gint leng { /* Thales XOmail uses this format: "MTA-NAME/000000000000" */ if (length >= 7 && length <= 22) { - return ep_strdup_printf ("%s/%08X%04X", - dissect_7bit_string (tvb, offset, length - 6), - tvb_get_ntohl (tvb, offset + length - 6), - tvb_get_ntohs (tvb, offset + length - 2)); + return wmem_strdup_printf (wmem_packet_scope(), "%s/%08X%04X", + dissect_7bit_string (tvb, offset, length - 6), + tvb_get_ntohl (tvb, offset + length - 6), + tvb_get_ntohs (tvb, offset + length - 2)); } return ILLEGAL_FORMAT; @@ -1700,11 +1700,11 @@ static const gchar *dissect_thales_ipm_id (tvbuff_t *tvb, gint offset, gint leng number += (65536 - 1024); } - return ep_strdup_printf ("%s%0*d %02d%02d%02d%02d%02d%02dZ", - (length == 6) ? "" : dissect_7bit_string (tvb, offset, length - 6), - number_len, number, - tmp->tm_year % 100, tmp->tm_mon + 1, tmp->tm_mday, - tmp->tm_hour, tmp->tm_min, tmp->tm_sec); + return wmem_strdup_printf (wmem_packet_scope(), "%s%0*d %02d%02d%02d%02d%02d%02dZ", + (length == 6) ? "" : dissect_7bit_string (tvb, offset, length - 6), + number_len, number, + tmp->tm_year % 100, tmp->tm_mon + 1, tmp->tm_mday, + tmp->tm_hour, tmp->tm_min, tmp->tm_sec); } return ILLEGAL_FORMAT; @@ -1723,7 +1723,7 @@ static gint dissect_dmp_sic (tvbuff_t *tvb, packet_info *pinfo, gchar *sic = NULL; key = tvb_get_guint8 (tvb, offset); - sic = (gchar *)ep_alloc (MAX_SIC_LEN); + sic = (gchar *)wmem_alloc (wmem_packet_scope(), MAX_SIC_LEN); if (key <= 0xB6) { /* 2 bytes, single 3-character SIC, characters [A-Z0-9] only */ @@ -2991,10 +2991,10 @@ static gint dissect_dmp_envelope (tvbuff_t *tvb, packet_info *pinfo, proto_tree_add_item (field_tree, hf_envelope_dl_expansion_prohib, tvb, offset, 1, ENC_BIG_ENDIAN); if (envelope & 0xE0) { - env_flags = ep_strdup_printf ("%s%s%s", - (envelope & 0x80) ? ", ContId discarded" : "", - (envelope & 0x40) ? ", Reass prohibited" : "", - (envelope & 0x20) ? ", DLE prohibited" : ""); + env_flags = wmem_strdup_printf (wmem_packet_scope(), "%s%s%s", + (envelope & 0x80) ? ", ContId discarded" : "", + (envelope & 0x40) ? ", Reass prohibited" : "", + (envelope & 0x20) ? ", DLE prohibited" : ""); proto_item_append_text (tf, ":%s", &env_flags[1]); } else { proto_item_append_text (tf, " (none)"); @@ -3062,22 +3062,22 @@ static void dissect_dmp_structured_id (tvbuff_t *tvb, proto_tree *body_tree, switch (dmp_struct_format) { case STRUCT_ID_UINT8: - dmp.struct_id = ep_strdup_printf ("%u", tvb_get_guint8 (tvb, offset)); + dmp.struct_id = wmem_strdup_printf (wmem_packet_scope(), "%u", tvb_get_guint8 (tvb, offset)); proto_tree_add_item (body_tree, hf_message_bodyid_uint8, tvb, offset, 1, ENC_BIG_ENDIAN); break; case STRUCT_ID_UINT16: - dmp.struct_id = ep_strdup_printf ("%u", tvb_get_ntohs (tvb, offset)); + dmp.struct_id = wmem_strdup_printf (wmem_packet_scope(), "%u", tvb_get_ntohs (tvb, offset)); proto_tree_add_item (body_tree, hf_message_bodyid_uint16, tvb, offset, 2, ENC_BIG_ENDIAN); break; case STRUCT_ID_UINT32: - dmp.struct_id = ep_strdup_printf ("%u", tvb_get_ntohl (tvb, offset)); + dmp.struct_id = wmem_strdup_printf (wmem_packet_scope(), "%u", tvb_get_ntohl (tvb, offset)); proto_tree_add_item (body_tree, hf_message_bodyid_uint32, tvb, offset, 4, ENC_BIG_ENDIAN); break; case STRUCT_ID_UINT64: - dmp.struct_id = ep_strdup_printf ("%" G_GINT64_MODIFIER "u", tvb_get_ntoh64 (tvb, offset)); + dmp.struct_id = wmem_strdup_printf (wmem_packet_scope(), "%" G_GINT64_MODIFIER "u", tvb_get_ntoh64 (tvb, offset)); proto_tree_add_item (body_tree, hf_message_bodyid_uint64, tvb, offset, 8, ENC_BIG_ENDIAN); break; @@ -3505,13 +3505,13 @@ static gint dissect_dmp_security_category (tvbuff_t *tvb, packet_info *pinfo, } if (message & 0xF0) { - sec_cat = ep_strdup_printf ("%s%s%s%s", - (message & 0x80) ? ",cl" : "", - (message & 0x40) ? ",cs" : "", - (message & 0x20) ? ",ex" : "", - (message & 0x10) ? ",ne" : ""); + sec_cat = wmem_strdup_printf (wmem_packet_scope(), "%s%s%s%s", + (message & 0x80) ? ",cl" : "", + (message & 0x40) ? ",cs" : "", + (message & 0x20) ? ",ex" : "", + (message & 0x10) ? ",ne" : ""); proto_item_append_text (tf, ": %s", &sec_cat[1]); - *label_string = ep_strconcat(*label_string, sec_cat, NULL); + *label_string = wmem_strconcat(wmem_packet_scope(), *label_string, sec_cat, NULL); } break; @@ -3524,7 +3524,7 @@ static gint dissect_dmp_security_category (tvbuff_t *tvb, packet_info *pinfo, } else { tr = proto_tree_add_item (field_tree, hf_message_sec_cat_permissive, tvb, offset, 1, ENC_BIG_ENDIAN); proto_item_append_text (tf, ": rel-to-%s", get_nat_pol_id_short (message >> 2)); - *label_string = ep_strdup_printf("%s,rel-to-%s", *label_string, get_nat_pol_id_short (message >> 2)); + *label_string = wmem_strdup_printf(wmem_packet_scope(), "%s,rel-to-%s", *label_string, get_nat_pol_id_short (message >> 2)); if ((message >> 2) == 0) { expert_add_info(pinfo, tr, &ei_reserved_value); } @@ -3584,7 +3584,7 @@ static gint dissect_dmp_content (tvbuff_t *tvb, packet_info *pinfo, proto_tree *field_tree = NULL; proto_item *en = NULL, *ei = NULL, *tf = NULL; proto_item *hidden_item; - const char *label_string = ep_strdup (""); + const char *label_string = wmem_strdup (wmem_packet_scope(), ""); const gchar *class_name = NULL; guint8 message, dmp_sec_pol, dmp_sec_class, dmp_nation = 0, exp_time, dtg; gint32 secs = 0; @@ -3703,7 +3703,7 @@ static gint dissect_dmp_content (tvbuff_t *tvb, packet_info *pinfo, tf = proto_tree_add_item (field_tree, hf_message_sec_class_val, tvb, offset, 1, ENC_BIG_ENDIAN); if (class_name) { proto_item_append_text (tf, " (%s)", class_name); - label_string = ep_strconcat(label_string, class_name, NULL); + label_string = wmem_strconcat(wmem_packet_scope(), label_string, class_name, NULL); } /* Security Policy */ diff --git a/epan/dissectors/packet-dmx-chan.c b/epan/dissectors/packet-dmx-chan.c index ada74af4ac..12271de7ea 100644 --- a/epan/dissectors/packet-dmx-chan.c +++ b/epan/dissectors/packet-dmx-chan.c @@ -39,7 +39,7 @@ #include "config.h" #include <epan/packet.h> -#include <epan/emem.h> +#include <epan/wmem/wmem.h> #include <epan/prefs.h> void proto_register_dmx_chan(void); @@ -74,7 +74,7 @@ dissect_dmx_chan(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) "0x%03x: %s", "%3u: %s" }; - emem_strbuf_t *chan_str = ep_strbuf_new_label(""); + wmem_strbuf_t *chan_str = wmem_strbuf_new_label(wmem_packet_scope()); proto_item *item; guint16 length,r,c,row_count; guint8 v; @@ -89,26 +89,26 @@ dissect_dmx_chan(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) for (r = 0; r < row_count;r++) { for (c = 0;(c < global_disp_col_count) && (((r * global_disp_col_count) + c) < length);c++) { if ((global_disp_col_count >= 2) && ((c % (global_disp_col_count / 2)) == 0)) { - ep_strbuf_append(chan_str, " "); + wmem_strbuf_append(chan_str, " "); } v = tvb_get_guint8(tvb, (offset + (r * global_disp_col_count) + c)); if (global_disp_chan_val_type == 0) { v = (v * 100) / 255; if (v == 100) { - ep_strbuf_append(chan_str, "FL "); + wmem_strbuf_append(chan_str, "FL "); } else { - ep_strbuf_append_printf(chan_str, chan_format[global_disp_chan_val_type], v); + wmem_strbuf_append_printf(chan_str, chan_format[global_disp_chan_val_type], v); } } else { - ep_strbuf_append_printf(chan_str, chan_format[global_disp_chan_val_type], v); + wmem_strbuf_append_printf(chan_str, chan_format[global_disp_chan_val_type], v); } } proto_tree_add_none_format(dmx_chan_tree, hf_dmx_chan_output_dmx_data, tvb, offset+(r * global_disp_col_count), c, string_format[global_disp_chan_nr_type], - (r * global_disp_col_count) + 1, chan_str->str); + (r * global_disp_col_count) + 1, wmem_strbuf_get_str(chan_str)); } /* Add the real type hidden */ diff --git a/epan/dissectors/packet-dnp.c b/epan/dissectors/packet-dnp.c index 48ae085310..9c1c548ee1 100644 --- a/epan/dissectors/packet-dnp.c +++ b/epan/dissectors/packet-dnp.c @@ -38,7 +38,7 @@ #include <epan/packet.h> #include <epan/prefs.h> #include <epan/reassemble.h> -#include <epan/emem.h> +#include <epan/wmem/wmem.h> #include <epan/dissectors/packet-tcp.h> #include <epan/conversation.h> #include <epan/expert.h> @@ -3120,10 +3120,10 @@ dissect_dnp3_message(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) if (!pinfo->fd->flags.visited && conv_data_ptr == NULL) { dl_conversation_key_t* new_dl_conversation_key = NULL; - new_dl_conversation_key = se_new(dl_conversation_key_t); + new_dl_conversation_key = wmem_new(wmem_file_scope(), dl_conversation_key_t); *new_dl_conversation_key = dl_conversation_key; - conv_data_ptr = se_new(dnp3_conv_t); + conv_data_ptr = wmem_new(wmem_file_scope(), dnp3_conv_t); /*** Increment static global fragment reassembly id ***/ conv_data_ptr->conv_seq_number = seq_number++; diff --git a/epan/dissectors/packet-dtls.c b/epan/dissectors/packet-dtls.c index 1b46981ae7..22e29442af 100644 --- a/epan/dissectors/packet-dtls.c +++ b/epan/dissectors/packet-dtls.c @@ -57,7 +57,7 @@ #include <epan/prefs.h> #include <epan/asn1.h> #include <epan/dissectors/packet-x509af.h> -#include <epan/emem.h> +#include <epan/wmem/wmem.h> #include <epan/tap.h> #include <epan/reassemble.h> #include "packet-x509if.h" @@ -503,7 +503,7 @@ dissect_dtls(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) else { SslService dummy; - ssl_session = se_new0(SslDecryptSession); + ssl_session = wmem_new0(wmem_file_scope(), SslDecryptSession); ssl_session_init(ssl_session); ssl_session->version = SSL_VER_UNKNOWN; conversation_add_proto_data(conversation, proto_dtls, ssl_session); @@ -1544,7 +1544,7 @@ dissect_dtls_handshake(tvbuff_t *tvb, packet_info *pinfo, } } - encrypted_pre_master.data = (guchar *)se_alloc(encrlen); + encrypted_pre_master.data = (guchar *)wmem_alloc(wmem_file_scope(), encrlen); encrypted_pre_master.data_len = encrlen; tvb_memcpy(tvb, encrypted_pre_master.data, offset+skip, encrlen); diff --git a/epan/dissectors/packet-dtn.c b/epan/dissectors/packet-dtn.c index 2da1437e81..339077e0cb 100644 --- a/epan/dissectors/packet-dtn.c +++ b/epan/dissectors/packet-dtn.c @@ -42,6 +42,7 @@ #include <epan/prefs.h> #include <epan/reassemble.h> #include <epan/expert.h> +#include <epan/wmem/wmem.h> #include "packet-dtn.h" #include "packet-tcp.h" @@ -573,7 +574,8 @@ dissect_dictionary(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offs } else { - src_node = ep_strdup_printf("%s:%d.%d", IPN_SCHEME_STR, dict_data->source_scheme_offset, dict_data->source_ssp_offset); + src_node = wmem_strdup_printf(wmem_packet_scope(), "%s:%d.%d", IPN_SCHEME_STR, + dict_data->source_scheme_offset, dict_data->source_ssp_offset); } if (dict_data->dest_scheme_offset == 0 && dict_data->dest_ssp_offset == 0) { @@ -581,12 +583,14 @@ dissect_dictionary(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offs } else { - dst_node = ep_strdup_printf("%s:%d.%d", IPN_SCHEME_STR, dict_data->dest_scheme_offset, dict_data->dest_ssp_offset); + dst_node = wmem_strdup_printf(wmem_packet_scope(), "%s:%d.%d", IPN_SCHEME_STR, + dict_data->dest_scheme_offset, dict_data->dest_ssp_offset); } col_add_fstr(pinfo->cinfo, COL_INFO, "%s > %s", src_node, dst_node); /* remember custodian, for use in checking cteb validity */ - *bundle_custodian = ep_strdup_printf("%s:%d.%d", IPN_SCHEME_STR, dict_data->cust_scheme_offset, dict_data->cust_ssp_offset); + *bundle_custodian = wmem_strdup_printf(wmem_packet_scope(), "%s:%d.%d", IPN_SCHEME_STR, + dict_data->cust_scheme_offset, dict_data->cust_ssp_offset); } /* @@ -635,8 +639,9 @@ dissect_dictionary(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offs tvb_get_ephemeral_stringz(tvb, offset + dict_data->dest_ssp_offset, NULL)); /* remember custodian, for use in checking cteb validity */ - *bundle_custodian = ep_strdup_printf("%s:%s", tvb_get_ephemeral_stringz(tvb, offset + dict_data->cust_scheme_offset, NULL), - tvb_get_ephemeral_stringz(tvb, offset + dict_data->cust_ssp_offset, NULL)); + *bundle_custodian = wmem_strdup_printf(wmem_packet_scope(), "%s:%s", + tvb_get_ephemeral_stringz(tvb, offset + dict_data->cust_scheme_offset, NULL), + tvb_get_ephemeral_stringz(tvb, offset + dict_data->cust_ssp_offset, NULL)); } offset += dict_data->bundle_header_dict_length; /*Skip over dictionary*/ |