(/home/sate/Testcases/c/cve/wireshark-1.2.0/epan/dissectors/packet-dcerpc-spoolss.c) |
| |
| 3734 | | | static int SpoolssAddPrinterEx_r(tvbuff_t *tvb, int offset, packet_info *pinfo, |
| 3735 | | | proto_tree *tree, guint8 *drep _U_) |
| 3736 | | | { |
| 3737 | | | dcerpc_info *di = (dcerpc_info *)pinfo->private_data; |
| 3738 | | | dcerpc_call_value *dcv = (dcerpc_call_value *)di->call_data; |
| 3739 | | | e_ctx_hnd policy_hnd; |
| 3740 | | | proto_item *hnd_item; |
| 3741 | | | guint32 status; |
| 3742 | | | |
| 3743 | | | |
| 3744 | | | |
| 3745 | | | offset = dissect_nt_policy_hnd( |
| 3746 | | | tvb, offset, pinfo, tree, drep, hf_hnd, &policy_hnd, &hnd_item, |
| 3747 | [+] | | TRUE, FALSE); |
Event 1:
!0 evaluates to true.
hide
Event 2:
dissect_nt_policy_hnd() does not initialize hnd_item. - This may be because of a failure case or other special case for dissect_nt_policy_hnd().
hide
|
|
 |
| 3748 | | | |
| 3749 | | | offset = dissect_doserror( |
| 3750 | [+] | | tvb, offset, pinfo, tree, drep, hf_rc, &status); |
 |
| 3751 | | | |
| 3752 | | | if( status == 0 ){ |
Event 7:
Taking true branch. status == 0 evaluates to true.
hide
|
|
| 3753 | | | const char *pol_name; |
| 3754 | | | |
| 3755 | | | if (dcv->se_data){ |
Event 8:
Taking false branch. dcv->se_data evaluates to false.
hide
|
|
| 3756 | | | pol_name = ep_strdup_printf( |
| 3757 | | | "AddPrinterEx(%s)", (char *)dcv->se_data); |
| 3758 | | | } else { |
| 3759 | | | pol_name = "Unknown AddPrinterEx() handle"; |
| 3760 | | | } |
| 3761 | | | if(!pinfo->fd->flags.visited){ |
Event 9:
Skipping " if". pinfo->fd->flags.visited evaluates to true.
hide
|
|
| 3762 | | | dcerpc_store_polhnd_name(&policy_hnd, pinfo, pol_name); |
| 3763 | | | } |
| 3764 | | | |
| 3765 | | | if(hnd_item) |
Uninitialized Variable
hnd_item was not initialized. The issue can occur if the highlighted code executes. See related events 2 and 3. Show: All events | Only primary events |
|
| |