aboutsummaryrefslogtreecommitdiffstats
path: root/epan
diff options
context:
space:
mode:
Diffstat (limited to 'epan')
-rw-r--r--epan/dissectors/packet-dccp.c4
-rw-r--r--epan/dissectors/packet-dcerpc-netlogon.c13
-rw-r--r--epan/dissectors/packet-dcerpc-nt.c24
-rw-r--r--epan/dissectors/packet-dcerpc-spoolss.c26
-rw-r--r--epan/dissectors/packet-dcerpc-svcctl.c10
-rw-r--r--epan/dissectors/packet-dcerpc.c33
-rw-r--r--epan/dissectors/packet-dcm.c102
-rw-r--r--epan/dissectors/packet-dcom.c6
-rw-r--r--epan/dissectors/packet-dcp-etsi.c6
-rw-r--r--epan/dissectors/packet-dec-dnart.c4
-rw-r--r--epan/dissectors/packet-dect.c58
-rw-r--r--epan/dissectors/packet-diameter.c29
-rw-r--r--epan/dissectors/packet-dmp.c72
-rw-r--r--epan/dissectors/packet-dmx-chan.c14
-rw-r--r--epan/dissectors/packet-dnp.c6
-rw-r--r--epan/dissectors/packet-dtls.c6
-rw-r--r--epan/dissectors/packet-dtn.c15
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*/