aboutsummaryrefslogtreecommitdiffstats
path: root/packet-dcerpc-spoolss.c
AgeCommit message (Collapse)AuthorFilesLines
2004-03-30Add the mask for an NT ACL ACE to the summary list for each ACE. ThisRichard Sharpe1-4/+4
means we don't have to expand the ACE to see what the permission mask is. There are a couple of other places where this could be used, but I have not done anything about them. svn path=/trunk/; revision=10515
2004-01-19char *drep -> guint8 *drepJörg Mayer1-126/+126
svn path=/trunk/; revision=9735
2003-10-15We got rid of the wrong hf_devmode_driver_extra; bring the wrong oneGuy Harris1-5/+5
back, and get rid of the one that shouldn't be kept around. svn path=/trunk/; revision=8702
2003-10-06From packet steve: get rid of some duplicate field definitions (someGuy Harris1-5/+1
aren't exactly duplicates, but they both set the same hf_ variable). svn path=/trunk/; revision=8621
2003-08-04Guy suggested that the dcerpc opnum value_string code could be simplifiedTim Potter1-8/+1
somewhat. Now the dynamic initialisation of the value_string is contained in the value_string_from_subdissectors() function instead of being distributed amongst the dcerpc dissectors. svn path=/trunk/; revision=8123
2003-07-14Fix misdissection of spoolss enumprinterdataex replies:Tim Potter1-11/+29
- skip dissection of value if value length is zero - add placeholder for REG_MULTI_SZ value proto item - rename local variable start to start_offset for consistency svn path=/trunk/; revision=8019
2003-06-26Dynamically create DCERPC opnum value_strings from the subdissectorTim Potter1-89/+10
list rather than duplicating this information in the dissector. Some of the opnum strings were starting to get out of date as developers forgot to update the information in both places. svn path=/trunk/; revision=7936
2003-06-17Remove silly dcerpc_smb_check_long_frame() function and all calls to it.Tim Potter1-154/+1
A much better place to do this is after the subdissector function has been called in dcercp_try_handoff(). svn path=/trunk/; revision=7895
2003-06-05In the policy handle hashing, handle more than one policy handle havingGuy Harris1-73/+146
the same value, as an open might return handle XXX, handle XXX might then be closed, and a subsequent handle might return handle XXX, and we want to keep the two handles distinct to avoid, for example, displaying handles closed before they're opened. In policy handle open replies, store the handle name only if the operation succeeded. We can now do that without parsing the packet twice. Have "dissect_nt_policy_hnd()" optionally return, through a pointer, the protocol tree item for the handle, so that its caller can decorate the item with the name of the handle - that's done on opens, where we do that only if the operation succeeds. svn path=/trunk/; revision=7787
2003-05-27Get rid of a debugging message.Guy Harris1-3/+1
svn path=/trunk/; revision=7749
2003-05-15More work on dissecting generic and standard mappings for NT access masks.Tim Potter1-16/+76
Also, it turns out that there are three types of specific access permissions for printing - printer, print server and job specific bits. svn path=/trunk/; revision=7669
2003-04-28Move the specific rights dissection function and name into a structureTim Potter1-7/+11
instead of passing them around as separate parameters. This is a prelude to adding generic and standard mapping to the access mask dissection. svn path=/trunk/; revision=7591
2003-04-27Not all strings in MS interfaces are unicode.Ronnie Sahlberg1-2/+2
Rename cb_str_postprocess which handles unicode strings to cb_wstr_postprocess. Add cb_str_postprocess which handles ASCII strings svn path=/trunk/; revision=7572
2003-04-15When dissecting a SYSTEM_TIME, include the milliseconds in the top-levelGuy Harris1-5/+6
summary item. svn path=/trunk/; revision=7461
2003-04-10Some COL_INFO goodies for SpoolssWritePrinter.Tim Potter1-2/+11
svn path=/trunk/; revision=7435
2003-04-03When dissecting specific rights, pass a name string down so theTim Potter1-6/+7
proto item says "foo specific rights" instead of just "specific rights". svn path=/trunk/; revision=7401
2003-02-25Don't append text in cb_notify_str_postprocess() if text is the empty string.Tim Potter1-40/+67
Cleaned up some all caps proto items to more friendly looking text. Append number of notifies within a notify option structure to the proto_item. svn path=/trunk/; revision=7195
2003-02-24Change SPOOLSS policy handle string names to be consistent withTim Potter1-3/+3
the SAMR ones. svn path=/trunk/; revision=7188
2003-02-24Rename "fake_unicode()" to "tvb_fake_unicode()" as it works on a tvbuff,Guy Harris1-6/+6
give it a byte-order argument, and move it to "epan/tvbuff.c". Use it to handle UCS-2 strings in version 1 of the Service Location Protocol. In SRVLOC V1, use registered fields that are already there for SRVLOC V2, and add some as needed. Fix some field names. svn path=/trunk/; revision=7186
2003-02-14More cleanups - nearly done!Tim Potter1-1040/+986
svn path=/trunk/; revision=7150
2003-02-11More cleanups.Tim Potter1-434/+507
Added name parameter and add_subtree boolean to dissect_SYSTEM_TIME() Decorate COL_INFO with changeid and notify information for print notify RPCs. svn path=/trunk/; revision=7121
2003-02-10Deleted dissect_unistr2() function - call dissect_ndr_cvstring() instead.Tim Potter1-493/+692
Hooray - I think that's the last of the spoolss specific string routines cleaned up. Cleanup of print notify dissections: - rename hf variable names - added 'job total bytes' and 'job bytes printed' filter fields - fixed bug dissecting job notify data introduced when converting to NDR routines - add hidden values for notify data so that filtering on (say) printer name brings up notify data that references it - decorate some higher level print notify proto_items to make things look pretty Add printer name to ReplyOpenPrinter policy handle name. svn path=/trunk/; revision=7113
2003-02-10Cleanup of printer forms dissection:Tim Potter1-151/+154
- display more data in COL_INFO - replaced per-RPC level fields with generic spoolss.form.level one - put the form type value string into the hf initialisation instead of displaying it by hand using proto_tree_add_text - added hidden field for all forms RPCs (filter on spoolss.form to get all form related RPCs) - removed useless dissect_form_name() function svn path=/trunk/; revision=7111
2003-02-07Rename "dissect_ndr_char_string()" and "dissect_ndr_wchar_string()" toGuy Harris1-3/+3
"dissect_ndr_char_cvstring()" and "dissect_ndr_wchar_cvstring()", to indicate that they're for conformant varying strings. Rename "dissect_ndr_character_array()" to "dissect_ndr_cvstring()", to indicate that it's for conformant varying strings. svn path=/trunk/; revision=7096
2003-02-07Rename "dissect_ndr_char_array" and "disect_ndr_wchar_array" toGuy Harris1-2/+2
"dissect_ndr_char_string" and "dissect_ndr_wchar_string", to make it clearer what it does. svn path=/trunk/; revision=7095
2003-02-07Fix a typo in the multiple-include protection in "packet-dcerpc-nt.h".Guy Harris1-20/+4
Rename "dissect_ndr_element_array()" to "dissect_ndr_character_array()", move it out of "packet-dcerpc-nt.c" to "packet-dcerpc.c", and have it use the standard DCE RPC array max count/offset/count fields rather than their own private versions of those fields. Give it an option to create a subtree, and an argument to specify the field to use for the actual data buffer, and export it. Move the routines for handling arrays of "char" and "wchar" as strings out of "packet-dcerpc-nt.c" to "packet-dcerpc.c". Add a routine to handle an array of "char" as an opaque blob of bytes. Use "dissect_ndr_character_array()" to dissect character strings in MAPI (the strings in question are ASCII, not Unicode), and use the routine to handle an array of "char" as an opaque blob of bytes to dissect encrypted data (again, it's bytes, not 16-bit quantities). Show them as encrypted data, not unknown data. Use "dissect_ndr_character_array()" to dissect a form name in "dissect_form_name()" in the SPOOLSS dissector. svn path=/trunk/; revision=7091
2003-02-07Fix callers to dissect_nt_sec_desc() to use new function interface.Tim Potter1-7/+12
Dissection of security descriptors in SPOOLSS RPC calls now display the correct meaning of the specific access mask bits. svn path=/trunk/; revision=7087
2003-02-05Cleaned up print job filterable fields.Tim Potter1-213/+370
Set item len for devicemode dissector. Fixed dissection of relative strings so that the actual value of the string is assigned to the hf item instead of the empty string. Dissect JOB_INFO_2 structure. svn path=/trunk/; revision=7078
2003-02-05Deleted RPC request/response proto items from the spoolss dissector asTim Potter1-449/+1
it's done better in the dcerpc dissector. svn path=/trunk/; revision=7075
2003-02-05Fixed bug in dissect_printerdata_data()Tim Potter1-7/+9
Display something useful in COL_INFO when dissecting REG_BINARY printerdata. Display the value needed field in value subtree. svn path=/trunk/; revision=7073
2003-02-03Convert to new DCERPC string handling functions. There are still someTim Potter1-2/+2
cosmetic bugs to work out though. svn path=/trunk/; revision=7069
2003-01-30Fixed memory leak in dissect_unistr2().Tim Potter1-14/+12
Fixed double free bug in GetPrinterData occuring when applying a filter. Cleaned up same bit of code in OpenPrinterEx. svn path=/trunk/; revision=7051
2003-01-30Generalize "cb_str_postprocess()" to allow the string to be appended toGuy Harris1-14/+14
items N levels up from the item being processed, and use that to decorate the tree as it was decorated before. svn path=/trunk/; revision=7043
2003-01-30Clean up the handling of null buffers in getprinter, getform,Tim Potter1-99/+93
getjob and getprinterdriver2. svn path=/trunk/; revision=7037
2003-01-28Cleanup of filterable fields for printer data and devicemodes.Tim Potter1-374/+860
Added a stack of value_strings for devicemode fields that didn't have them already. svn path=/trunk/; revision=7027
2003-01-28Convert dissector to callback based version of dissect_ndr_pointer().Tim Potter1-94/+68
This fixes a bunch of neat stuff that was broken after the conversion to the dissect_ndr_* functions like printer handle tracking by name and many COL_INFO things. svn path=/trunk/; revision=7018
2003-01-16Change name of proto item for UINT16UNI.Tim Potter1-5/+5
Use dissect_ndr_uint32 instead of dissect_doserror() to peek at the RPC error in SpoolssOpenPrinterEx_r. svn path=/trunk/; revision=6935
2003-01-11Finish converting remaining RPCs to ndr routines.Tim Potter1-358/+125
Deleted all the old crufy ndr pointer dissection. Hooray! Next on the hit list is some refactoring of the ndr string routines... svn path=/trunk/; revision=6899
2003-01-11Converted some more RPCs to ndr routines.Tim Potter1-240/+22
svn path=/trunk/; revision=6897
2003-01-10Converted enumprinters and enumprinterkey rpc to ndr routines.Tim Potter1-20/+34
svn path=/trunk/; revision=6892
2003-01-10Convert enumprinterdataex rpc to ndr format calls.Tim Potter1-43/+177
svn path=/trunk/; revision=6891
2002-12-13More conversions to NDR routines. This commit does most of the printerdataTim Potter1-36/+53
routines except for the enumprinterdata values. Note the display of strings inside the protocol tree is broken due to lack of a unicode string frametype. svn path=/trunk/; revision=6784
2002-12-13Guy has pointed out that this dissection looks wrong. In the etherealTim Potter1-1/+6
output for a USER_LEVEL_1 it looks like the info level and container pointer are transposed. I'm not even sure this structure is a container svn path=/trunk/; revision=6783
2002-12-12When dissecting a buffer, use the tvbuff for the buffer, as the offsetGuy Harris1-22/+22
we're using is relative to the beginning of that tvbuff, not relative to the beginning of the containing tvbuff; that also lets us use -1 when in "proto_tree_add_text()" calls when we mean "to the end of the buffer. Fix the comment for one field. svn path=/trunk/; revision=6781
2002-12-04Decode getprinter level 7.Tim Potter1-1/+51
svn path=/trunk/; revision=6742
2002-11-28Get rid of the "pdata" argument to "dissect_dcerpc_uint16s()" andGuy Harris1-3/+3
"dissect_ndr_uint16s()"; "dissect_ndr_uint16s()" is always passed a null pointer, "dissect_dcerpc_uint16s()" is only called by "dissect_ndr_uint16s()", and the pointer returned through "pdata" is *NOT* guaranteed to be aligned on a 16-bit boundary so we don't want to tempt people to blithely dereference that pointer. svn path=/trunk/; revision=6699
2002-11-28Make the pointer passed by reference as the last argument ofGuy Harris1-2/+2
"dissect_ndr_uint8s()" a const pointer, as that's what "dissect_ndr_uint8s()" expects. svn path=/trunk/; revision=6690
2002-11-23Make "dissect_spoolss_uint16uni()" take an extra argument giving theGuy Harris1-7/+23
name of the field being dissected, and, if it's not null, use it instead of "UINT16UNI". Pass the appropriate argument in some calls. In "SpoolssOpenPrinterEx_q()", put in some #if 0'ed out code to note what should be done with the printer name when we can get it. svn path=/trunk/; revision=6670
2002-11-19Some more spoolss ndr conversions. OpenPrinterEx now decodes it'sTim Potter1-109/+254
arguments correctly. There's a string datatype, a devicemode container with a possibly null devicemode, and a "user level" structure, whatever that is. svn path=/trunk/; revision=6659
2002-11-19Fix dissection of printer info levels 0-3 which has been broken for aTim Potter1-73/+405
while. Also convert to dissect_ndr_* functions instead of old-style prs_* functions. Converted devicemode dissection to ndr functions as well. There are still a bunch of value_strings that can be written to decode some of the constants here. svn path=/trunk/; revision=6658