diff options
author | Ronnie Sahlberg <ronnie_sahlberg@ozemail.com.au> | 2007-05-07 19:21:37 +0000 |
---|---|---|
committer | Ronnie Sahlberg <ronnie_sahlberg@ozemail.com.au> | 2007-05-07 19:21:37 +0000 |
commit | 50a23f19708408d3bf384850979ea1eda61f2631 (patch) | |
tree | d5e9bc4b8cb9befb23d063158e4bc8091c79f3c6 /epan/dissectors/packet-dcerpc-nt.c | |
parent | 83a8448dae75f756d07be4bb893e85df829a85cd (diff) |
when creating a policy handle, use the string stored in dcv if
available as the name of the handle
This means we can show policy handles like
OpenKey(/a/b/c/d)
instead of
OpenKey(<...>)
svn path=/trunk/; revision=21719
Diffstat (limited to 'epan/dissectors/packet-dcerpc-nt.c')
-rw-r--r-- | epan/dissectors/packet-dcerpc-nt.c | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/epan/dissectors/packet-dcerpc-nt.c b/epan/dissectors/packet-dcerpc-nt.c index 09e9161d75..ebae197a04 100644 --- a/epan/dissectors/packet-dcerpc-nt.c +++ b/epan/dissectors/packet-dcerpc-nt.c @@ -963,10 +963,17 @@ PIDL_dissect_policy_hnd(tvbuff_t *tvb, gint offset, packet_info *pinfo, if((param&PIDL_POLHND_OPEN) && !pinfo->fd->flags.visited && !di->conformant_run){ + char *pol_string=NULL; char *pol_name=NULL; + dcerpc_call_value *dcv; - pol_name=ep_strdup_printf("%s(<...>)", pinfo->dcerpc_procedure_name); - dcerpc_smb_store_pol_name(&policy_hnd, pinfo, pol_name); + dcv = (dcerpc_call_value *)di->call_data; + pol_name = dcv->private_data; + if(!pol_name){ + pol_name="<...>"; + } + pol_string=ep_strdup_printf("%s(%s)", pinfo->dcerpc_procedure_name, pol_name); + dcerpc_smb_store_pol_name(&policy_hnd, pinfo, pol_string); } return offset; @@ -1121,11 +1128,9 @@ void cb_wstr_postprocess(packet_info *pinfo, proto_tree *tree _U_, } /* Save string to dcv->private_data */ - if (options & CB_STR_SAVE) { dcerpc_info *di = (dcerpc_info *)pinfo->private_data; dcerpc_call_value *dcv = (dcerpc_call_value *)di->call_data; - dcv->private_data = s; } } |