Commit Graph

89 Commits

Author SHA1 Message Date
Guy Harris 16d52f4f29 From Joerg Mayer: mark unused arguments as such.
svn path=/trunk/; revision=5380
2002-05-04 09:05:44 +00:00
Guy Harris da74615c79 Get rid of some unused arguments, and mark some others as unused.
Remove the declaration of "dissect_nt_sid()" from
"packet-dcerpc-samr.c"; get it by including "packet-smb-common.h",
instead.

svn path=/trunk/; revision=5313
2002-04-30 11:03:08 +00:00
Tim Potter 63aaa78222 Use the string in the DCERPC sub-dissector array instead of providing
another one in the COL_INFO field.

svn path=/trunk/; revision=5300
2002-04-30 01:44:35 +00:00
Guy Harris 7cfa480fdd Un-#if out "samr_dissect_get_alias_membership_response()", to serve as a
reminder to check whether "samr_dissect_get_alias_membership_reply()"
should dissect the uint32 at the end as an NT status.

Un-#if out "samr_dissect_context_handle_SID()", to serve as a reminder
to figure out whether it should be deleted or used.

Get rid of "samr_dissect_get_user_groups_rqst()" - it's identical to
"samr_dissect_get_groups_for_user_rqst()", but isn't being used.

svn path=/trunk/; revision=5295
2002-04-29 10:30:18 +00:00
Guy Harris 9a80f0a521 Removal (or, at least, #ifdeffing out) of unused variables and
functions, from David Frascone.

svn path=/trunk/; revision=5288
2002-04-29 08:20:18 +00:00
Guy Harris 99af2a9798 Fix "samr_dissect_query_information_alias_reply()" to dissect the
ALIAS_INFO structure before the status.

svn path=/trunk/; revision=5215
2002-04-22 02:04:37 +00:00
Guy Harris 2233aa8f3e Fix an error in the "dcerpc_samr_dissectors[]" table.
Rename "samr_dissect_enum_dom_alias_rqst()" and
"samr_dissect_enum_dom_alias_reply()" to
"samr_dissect_enum_dom_aliases_rqst()" and
"samr_dissect_enum_dom_aliases_reply()", to match the name of the RPC
that they dissect.

Rename the routines used to dissect the unknown 0x2f requests and replies
along the lines of the names of the routines for other unknown requests
and replies, and change the Info column information in that fashion as
well.

Dissect the USER_INFO structure in the QueryUserInfo response.

svn path=/trunk/; revision=5211
2002-04-22 00:09:21 +00:00
Guy Harris 92e27e03c1 Add a "proto_register_dcerpc_smb()" which registers ett_ values for
"packet-dcerpc-nt.c", and registers "dcerpc_smb_init()" as an
initialization routine.  Take the ett_ registration out of the latter
routine, and also take out the "do this only once" stuff.

Get rid of the initialization routines for netlogon, samr, and spoolss;
they just call "dcerpc_smb_init()", which is now an initialization
routine of its own.

The policy hash initialization should be done before every capture, so
it should be done in an initialization routine, and should not do any
"do this only once" stuff.  It should also be called only once before
every capture, rather than 3 times.

The ett_ initialization should, however, be done at the same time all
other ett_ initialization is done - at protocol registration time - so
it should be done in a "proto_register_" routine.

This fixes a bug I saw wherein

	1) the tree for Unicode strings was open by default

and

	2) if you closed one and then exited, Ethereal would crash.

The problem is that "proto_register_subtree_array()" doesn't expand the
array, it just bumps the number of registered ett_ values; the array is
allocated in "proto_init()".  As such, if you register ett_ values with
"proto_register_subtree_array()" *after* "proto_init()" is called - and,
even for the first capture, initialization routines are called after
"proto_init()" is called - you will get ett_ numbers that go past the
number of elements in the array.

Move the declaration of "ett_nt_unicode_string" to "packet-dcerpc-nt.h",
as it's exported from "packet-dcerpc-nt.c".

Get rid of the declaration of "dcerpc_smb_init()" in
"packet-dcerpc-nt.h", and make it static, as it's no longer called from
outside "packet-dcerpc-nt.c".

svn path=/trunk/; revision=5196
2002-04-18 00:29:17 +00:00
Tim Potter c45862ed49 Display rids for open user, group, alias in COL_INFO.
Give query user info its own dissector.

svn path=/trunk/; revision=5192
2002-04-17 11:32:24 +00:00
Tim Potter 6156156841 Prettification of SAMR dissector - display short names in COL_INFO.
svn path=/trunk/; revision=5191
2002-04-17 11:17:43 +00:00
Tim Potter 8241e67243 Use policy handle hash code in DCERPC/SMB SAMR dissector.
Start to move some common stuff into packet-dcerpc-nt.[ch]

svn path=/trunk/; revision=5176
2002-04-17 07:52:26 +00:00
Tim Potter 0f7ea5950d Display non-zero return codes in COL_INFO.
svn path=/trunk/; revision=5170
2002-04-16 02:02:04 +00:00
Tim Potter a2364e52b8 #include <string.h> to quieten compiler warning.
svn path=/trunk/; revision=5013
2002-03-25 04:02:37 +00:00
Guy Harris 02115cdb39 Fix "dissect_ndr_nt_UNICODE_STRING_str()" so that the "di->levels" value
is decremented after every level is appended to, so that it correctly
specifies the number of levels up the tree to which to append stuff.

Fix some arguments to various printing routines to specify the correct
level.  This includes making "dissect_ndr_nt_UNICODE_STRING()" add 1 to
the level argument it's passed before passing it on to
"dissect_ndr_pointer()".

Add a "netlogon_dissect_UNICODE_STRING()" routine to put the fields of a
bunch of NDR_POINTER_REF UNICODE_STRING values into subtrees.

Fix the labels passed as arguments in a bunch of "dissect_ndr_pointer()"
calls.

svn path=/trunk/; revision=5011
2002-03-24 12:25:40 +00:00
Ronnie Sahlberg 7791aabe52 Added a value_string for the countreis which have their MS contry code listed
at www.unicode.org and made samr and netlogon use it.

svn path=/trunk/; revision=4943
2002-03-14 10:04:02 +00:00
Ronnie Sahlberg 81f29c2ce5 Final patch in preparing for NETLOGON dissector.
Exported some functions from packet-dcerpc-samr.c and added two
more functions the netlogon dissector will need.

svn path=/trunk/; revision=4921
2002-03-11 00:28:21 +00:00
Ronnie Sahlberg 7900235dad Move the STRING dissector to packet-dcerpc-nt.c and add one more parameter
to make it more similar to the UNICODE_STRING dissector.

svn path=/trunk/; revision=4920
2002-03-11 00:15:20 +00:00
Ronnie Sahlberg f060b0c68c Rename samr_dissect_LOGON_HOURS() to dissect_ndr_nt_LOGON_HOURS() and
export it to other modules.
NETLOGON dissector (and others) will need this function.

svn path=/trunk/; revision=4919
2002-03-11 00:00:15 +00:00
Ronnie Sahlberg 853654f2f3 Moved dissect_ndr_nt_NTTIME() from packet-dcerpc-samr.c to packet-dcerpc-nt.c
since this function will be used by other NT services as well such as NETLOGON.

svn path=/trunk/; revision=4918
2002-03-10 23:24:48 +00:00
Guy Harris ce5c18736d Don't use "proto_tree_add_string_format()" when
"proto_tree_add_string()" will suffice.

svn path=/trunk/; revision=4913
2002-03-10 22:04:25 +00:00
Guy Harris bf1c8de997 Use "dissect_ndr_nt_UNICODE_STRING_str()", not
"dissect_ndr_nt_UNICODE_STRING_string()", in
"samr_dissect_connect2_server()"; that eliminates an unnecessary extra
level of protocol tree.

That removes the last call to "dissect_ndr_nt_UNICODE_STRING_string()";
eliminate that routine.

In "dissect_ndr_nt_UNICODE_STRING()", initially create the subtree with
the name of the field as a string, so that if an exception is thrown
before the name is set, the subtree won't show up as blank when
displayed or printed.  Also pass in the name to "dissect_ndr_pointer()",
so the same happens for subtrees below it.  Append only the string data,
not its name, to items up the tree, as the name was put in when the item
was created.  Also, when adding a colon before the string, put a space
after the colon, as is done elsewhere in Ethereal.

When appending additional strings, put the blank before the new string,
not after it.

In "dissect_ndr_nt_STRING()", put the subtree into the string with the
name of the field, rather than just "String".  Pass in that name to
"dissect_ndr_pointer()", so subtrees below it get a name when they're
initially created.

Get rid of colons in the name string passed to "dissect_ndr_pointer()"
in some calls.  Supply a non-null name string in more calls to
"dissect_ndr_pointer()", and fix some calls to pass in the name of the
field being handed to "dissect_ndr_pointer()".

There's no need to fetch the entire "header_field_info" structure for a
protocol field in order to get the field's name - just use
"proto_registrar_get_name()" to get the name.

Use a length of -1, not 0, when creating a subtree whose length will be
set when the dissection of the items under the subtree is complete; that
way, if an exception is thrown while dissecting the items - which means
the item goes past the end of the tvbuff - the item will refer to all
data to the end of the tvbuff, rather than referring to nothing.

Fix a typo in the name of the "hf_samr_unknown_string" field.

svn path=/trunk/; revision=4912
2002-03-10 21:30:11 +00:00
Ronnie Sahlberg a4b87ac09d Rename function and variables for dissecting an NT service Account Control
bitmap and make the function not static.
This bitmap is present in other RPC protocols for NT services as well
besides SAMR.

svn path=/trunk/; revision=4889
2002-03-06 10:01:17 +00:00
Ronnie Sahlberg 6723d26565 Moved dissector for UNICODE_STRING structure from packet-dcerpc-samr.c to packet-dcerpc-nt.c since this is a structure that is common to all NT services and not only SAMR.
svn path=/trunk/; revision=4888
2002-03-06 08:58:01 +00:00
Guy Harris 0699980d0d Properly (for English) pluralize names beginning with "s".
svn path=/trunk/; revision=4813
2002-02-26 12:22:30 +00:00
Guy Harris fca0f2f828 From Ronnie Sahlberg: add "alias name" and "group name" fields for alias
and group names, and use them instead of the numeric "alias" and "group"
fields when putting the names into the protocol tree.

svn path=/trunk/; revision=4812
2002-02-26 12:06:32 +00:00
Guy Harris 0d297e590e From Ronnie Sahlberg: add decoding of the (known) individual bits of
the Account-Control bits.

svn path=/trunk/; revision=4734
2002-02-14 05:56:48 +00:00
Guy Harris ff9f006274 From Ronnie Sahlberg:
fix various alignment problems;

	change/prettify a few of the structures;

	other updates.

svn path=/trunk/; revision=4729
2002-02-13 04:14:13 +00:00
Guy Harris a8fc99ae5a From Ronnie Sahlberg:
SAMR updates;

	a bugfix in dissect_ndr_pointer() (should not check referent id
	for aliases for unique pointers);

	enhancement to dissect_ndr_pointer() to make it possible to
	hand a generic int value to the dissector for the pointer object
	in a similar way as hf_index values are passed through the
	pointer layer.

svn path=/trunk/; revision=4721
2002-02-12 07:35:21 +00:00
Guy Harris 04228a94a3 From Ronnie Sahlberg:
fix to LookupRids to match what the IDL file says;

	fix to "dissect_ndr_uint64()" to specify the right length to
	"proto_tree_add_item()";

	give the protocol tree items for array header counts and offsets
	the correct offsets in the packet.

svn path=/trunk/; revision=4719
2002-02-11 08:19:09 +00:00
Guy Harris 1726d487a5 From Todd Sabin:
dissect dcerpc UDP replies correctly - use the opnum from the
	request, ont the reply (the opnum from the request is frequently
	wrong in Microsoft's DCE RPC implementation);

	don't crash if the packet isn't found in the hash tables;

	dissect SamrLookupDomain requests properly.

svn path=/trunk/; revision=4718
2002-02-10 23:51:44 +00:00
Guy Harris e9c58fda32 From Ronnie Sahlberg: display the SAMR "Account Control" field in hex.
svn path=/trunk/; revision=4714
2002-02-10 02:23:17 +00:00
Guy Harris 2f3a001d65 Fixes from Ronnie Sahlberg.
svn path=/trunk/; revision=4710
2002-02-08 11:02:03 +00:00
Guy Harris ad1ce4a43d From Ronnie Sahlberg: add dissectors for the rest of SAMR.
svn path=/trunk/; revision=4708
2002-02-08 06:34:44 +00:00
Guy Harris 8bc19844ca From Ronnie Sahlberg:
the count fields in SAMR replies aren't array max_count values,
	so don't display them as such;

	Put conformant and conformant varying array length/offset/etc.
	values into the protocol tree.

svn path=/trunk/; revision=4701
2002-02-06 06:27:15 +00:00
Guy Harris d5df557923 DCE RPC enhancements, and SAMR improvements, from Ronnie Sahlberg.
svn path=/trunk/; revision=4618
2002-01-29 09:13:28 +00:00
Guy Harris 55bed21e45 From Ronnie Sahlberg:
NDR pointer handling in DCE RPC
	SAMR updates

svn path=/trunk/; revision=4608
2002-01-25 08:35:59 +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 787a331ae6 From Todd Sabin:
add "dissect_ndr_ctx_hnd()" for dissecting context handles, and
	use it in various DCERPC dissectors;

	beef up the MS Security Account Manager dissector.

Also, export "NT_errors[]" for use by that dissector.

svn path=/trunk/; revision=4350
2001-12-06 23:30:36 +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