Commit graph

108 commits

Author SHA1 Message Date
Tim Potter
eaa3bc3095 Added a generic reply handler for unimplemented spoolss dissectors. This
just parses the error code at the end of the packet and updates COL_INFO
if necessary.

svn path=/trunk/; revision=5012
2002-03-25 01:09:01 +00:00
Guy Harris
f970451d95 Add a cleanup function to close a potential memory leak.
Get rid of an assigned-to-but-not-used variable.

From Steven French: add names for some additional calls.

svn path=/trunk/; revision=5003
2002-03-22 10:03:36 +00:00
Guy Harris
b38e3f4e99 The length argument to "fake_unicode()" is in characters, not bytes.
svn path=/trunk/; revision=4992
2002-03-20 09:09:07 +00:00
Guy Harris
ad8b000445 There is no guarantee that a buffer obtained using "tvb_get_ptr()" is
neatly aligned on a 2-byte or a 4-byte boundary, and there is no
guarantee that a misaligned pointer can be dereferenced without getting
a fault.

Furthermore, there is no guarantee that, even if you *can* dereference a
pointer to a 2-byte or 4-byte quantity in a packet, the resulting number
you get back is in the right byte order; the data in the packet might
have a different byte order from the machine on which you're running.

Therefore, we change "prs_uint8s()", "prs_uint16s()", and
"prs_uint32s()" to return the starting offset, in the tvbuff, of the
collection of 8-bit, 16-bit, or 32-bit integral values, rather than a
pointer to the raw packet data, and change their callers to fetch the
data using "tvb_get_guint8()", "tvb_get_letohs()", and
"tvb_get_letohl()" (the stuff in all the NT protocols is presumed to be
little-endian here).  We also change "fake_unicode()" to take a tvbuff
and an offset, rather than a data pointer, as arguments, and to use
"tvb_get_letohs()" to fetch the Unicode characters (again, we assume
little-endian Unicode).

This requires "fake_unicode()" to establish a cleanup handler, so we
don't leak memory if it throws an exception.

We also make "fake_unicode()" use "g_malloc()" to allocate its buffer
(we weren't checking for allocation failures in any case; with
"g_malloc()", we'll abort on an allocation failure - if we can come up
with a cleverer way of handling them, fine), and the matching frees to
use "g_free()".  (We also insert some missing frees....)

Fix some formats to print unsigned quantities with "%u", not "%d".

Don't append text to items in the tree for non-string values in
"dissect_ndr_nt_STRING_string()".

svn path=/trunk/; revision=4986
2002-03-19 22:09:23 +00:00
Guy Harris
ee5ca25d31 Include files from the "epan" directory and subdirectories thereof with
"epan/..." pathnames, so as to avoid collisions with header files in any
of the directories in which we look (e.g., "proto.h", as some other
package has its own "proto.h" file which it installs in the top-level
include directory).

Don't add "-I" flags to search "epan", as that's no longer necessary
(and we want includes of "epan" headers to fail if the "epan/" is left
out, so that we don't re-introduce includes lacking "epan/").

svn path=/trunk/; revision=4586
2002-01-21 07:37:49 +00:00
Guy Harris
f13c5b2154 Updates from Tim Potter.
svn path=/trunk/; revision=4493
2002-01-07 19:55:48 +00:00
Guy Harris
98b2ecb304 SPOOLSS RPC dissector, from Tim Potter. This includes adding additional
DOS error codes to the table of them, and exporting that table to other
dissectors for protocols using DOS error codes.

svn path=/trunk/; revision=4470
2002-01-03 20:42:41 +00:00
Guy Harris
81d7ded14e Rename the "packet-msrpc-XXX.[ch]" files to "packet-dcerpc-XXX.[ch]", as
per Todd Sabin's suggestion.

svn path=/trunk/; revision=4242
2001-11-21 02:08:57 +00:00
Renamed from packet-msrpc-spoolss.c (Browse further)