Commit graph

83 commits

Author SHA1 Message Date
Graeme Lunt
c55b754264 Tidy ups for SASL/GSSAPI support:
1) Handle empty (zero length) saslCredentials
2) Handle "GSSAPI" auth_mech when identified from the bind
3) Annotate column info to show SASL service applied to LDAP operation


svn path=/trunk/; revision=20830
2007-02-17 11:06:25 +00:00
Jaap Keuter
c9f25a4143 From Stefan Metzmacher:
I created two patches:
1.) move the handling of the compressed strings in CLDAP 'netlogon' replies into a generic place.
2.) implement dissection of SMB_NETLOGON cmd's 0x17 and 0x19

svn path=/trunk/; revision=19970
2006-11-24 07:09:38 +00:00
Jaap Keuter
066cab237e Don't remove a preference, make it obsolete instead.
svn path=/trunk/; revision=19818
2006-11-06 11:41:02 +00:00
Graeme Lunt
326773f754 Tidy up of information column for NTLM authentication.
Related to Bug 1148.


svn path=/trunk/; revision=19810
2006-11-05 12:15:52 +00:00
Graeme Lunt
e15d91a592 General updates to:
*) Remove maximum LDAP PDU size check - they can get large with either large attributes (e.g. CRLs, SPIFs) or with lots of results (see http://www.wireshark.org/lists/wireshark-users/200610/msg00197.html). The max size preference is also removed.
*) Support for dissecting LDAP controls including server side sorting and paged results. A new BER function is introduced to see if there is a dissector for a given OID.
*) Remove reference to removed BER preference in the LDAP reassembly preference.
*) Mark a LDAPURL as a URL


svn path=/trunk/; revision=19792
2006-11-04 09:14:54 +00:00
Ronnie Sahlberg
2d1bb39121 change the signature for the get_pdu_len() function pointer passed to tcp_dissect_pdus() to also include a packet_info pointer.
there are many reasons why some protocols actually need to be able to access the pinfo structure while determining the pdu size



svn path=/trunk/; revision=19751
2006-10-31 09:29:07 +00:00
Ronnie Sahlberg
daa7210867 fix for 1148
pretty horrible hack to store an ntlmssp blob inside an ldap string

the info column is not entirely pretty but   the payload is at least decoded


svn path=/trunk/; revision=19490
2006-10-11 08:18:14 +00:00
Graeme Lunt
3001ad5169 When dissecting LDAP, the assumption was made that the maximum LDAP PDU size will be 65535. Anything bigger than this was considered not to be LDAP. However, LDAP can have PDU sizes bigger than this - a CRL can easily grow to be bigger than this, for example.
This patch makes the the maximum valid LDAP PDU size a preference. The default value for this new preference is 65535 for backwards compatibility.


svn path=/trunk/; revision=19288
2006-09-22 15:19:32 +00:00
Ronnie Sahlberg
7bed417e5e make dissect_nt_sid return ep allocated memory and thus fix a few memory leaks
(this function is often called from dcerpc dissectors)


svn path=/trunk/; revision=19243
2006-09-16 09:20:34 +00:00
Ronnie Sahlberg
cf6d4692aa in LDAP over TCP
use tcp_dissect_pdus() which works    insterad of trying to do the pdu tracking and signalling for reassembly manually.
This makes ldap pdu tracking and reassembly work properly for cases when hosts are streaming lpad over tcp and there is little or none alignlemt of pdus to the start of a segment



svn path=/trunk/; revision=18965
2006-08-20 06:00:16 +00:00
Guy Harris
338f7ede99 Squelch a compiler warning.
svn path=/trunk/; revision=18954
2006-08-19 02:56:16 +00:00
Tomas Kukosa
5cd8c719e6 ASN.1 dissectors regenerated with new asn2wrs to get updated field blurb
svn path=/trunk/; revision=18921
2006-08-16 05:58:39 +00:00
Ronnie Sahlberg
5f8e067936 for sec descriptors found inside ldap
decode the specific bits of the accessmask as the ldap specific accessmask bits

bit definitions from samba4


svn path=/trunk/; revision=18881
2006-08-11 07:59:58 +00:00
Ronnie Sahlberg
8969e45027 marik the request_in/response_to/time as generated fields
svn path=/trunk/; revision=18846
2006-08-07 10:35:26 +00:00
Ronnie Sahlberg
5a5dcdc8ad dissect nTSecurityDescriptor attribute as a security descriptor
svn path=/trunk/; revision=18845
2006-08-07 10:29:39 +00:00
Ronnie Sahlberg
5823354433 objectSid attribute contains a sid so decode it nively as a sid
svn path=/trunk/; revision=18844
2006-08-07 10:19:37 +00:00
Ronnie Sahlberg
2d5ec44674 add some more oid's
svn path=/trunk/; revision=18843
2006-08-06 14:31:58 +00:00
Ronnie Sahlberg
b446810939 the ldap values for supportedControl and supportedCapabilities is an oid in ascii format.
resolve it into a anme if possible and present it.




svn path=/trunk/; revision=18842
2006-08-06 14:04:07 +00:00
Ronnie Sahlberg
3ef9bcfa26 "objectGUID" should be dissected as a GUID
also change the name of one of the strings we keep around since it is more generic than just used for attributeassertions



svn path=/trunk/; revision=18841
2006-08-06 13:13:42 +00:00
Gerald Combs
d4819d4690 Make sure our strings aren't null before we pass them to strncmp().
svn path=/trunk/; revision=18723
2006-07-12 18:12:15 +00:00
Ronnie Sahlberg
ed3e02ed61 prettify dissection od ldap attributes
special case some common special attributes such as DomainSid and DomainGuid
and dissect them as SIDs and GUIDs

examples of these special attributes can be seen in Xiaoguang Liu's email to wireshark dev



svn path=/trunk/; revision=18719
2006-07-12 09:02:00 +00:00
Gerald Combs
e212e73354 Reset ldm_tree in dissect_ldap_pdu(). Fixes a couple of the current fuzz
bugs.

svn path=/trunk/; revision=18697
2006-07-10 13:42:59 +00:00
Gerald Combs
3ec4dc74e8 Fix a format string bug. This should fix some of the current fuzz
crashes.

svn path=/trunk/; revision=18666
2006-07-05 19:14:59 +00:00
Ronnie Sahlberg
d0aae6dd3e from metze
prettify dissection of filters containing substring and extensiblematch



svn path=/trunk/; revision=18617
2006-06-29 21:04:37 +00:00
Gerald Combs
835afe4a96 Reset ldm_tree to NULL each time we dissect an LDAP packet. This should
fix a current Buildbot crash.  Fix up whitespace.

svn path=/trunk/; revision=18601
2006-06-28 22:07:23 +00:00
Tomas Kukosa
56d7db0c08 remove functions register_ber_oid_name() and get_ber_oid_name() from packet-ber.c, they were only OID but not BER related
use add_oid_str_name() and get_oid_str_name() instead of them

svn path=/trunk/; revision=18595
2006-06-28 14:19:08 +00:00
Ronnie Sahlberg
946a39d4fc the dissector for AssertionValue that is implemented in the template file
did not check the implicit_tag flag and caused extensiblematch filters to show up as malformed packets.




svn path=/trunk/; revision=18540
2006-06-22 10:29:49 +00:00
Guy Harris
2d20359c26 Include <epan/dissectors/packet-tcp.h> to declare tcp_dissect_pdus().
svn path=/trunk/; revision=18483
2006-06-16 07:18:25 +00:00
Ronnie Sahlberg
2f95f76a1e fix tcp reassembly to work again for
ldap   and ldap+sasl


remove a recent ber length validation in packet-ber.c that cant work and breaks reassembly  and also makes all ber pacvket sspanning multiple segments show up as malformed packets.



svn path=/trunk/; revision=18465
2006-06-14 11:51:25 +00:00
Ronnie Sahlberg
f3c5f96124 from metze
make the display of the filters more similar to how the ldap c api represents
filters and how they are commonly represented in documentation and other texts.




svn path=/trunk/; revision=18449
2006-06-13 07:44:37 +00:00
Guy Harris
6d2e9ee5f7 Constify to fix compiler warnings.
Check for printable ASCII - 0x7F is >= 0x20, but it's not printable, and
0x80 through 0xFF aren't ASCII.

Note that we should perhaps be using RFC 2252-style schemas to figure
out which attribute and assertion values are text and which are binary.

svn path=/trunk/; revision=18447
2006-06-13 05:39:55 +00:00
Anders Broman
f51e366267 Fix some warnings.
svn path=/trunk/; revision=18445
2006-06-12 21:48:51 +00:00
Ronnie Sahlberg
b501e15fe9 prettify dissection of LDAP search filters.
svn path=/trunk/; revision=18431
2006-06-12 08:30:07 +00:00
Ronnie Sahlberg
452226586d rework the previous patch slightly since we really need to push a string upward to our callers to be able to generate and display nice filter expressions on the top line as the original ldap dissectopr did
svn path=/trunk/; revision=18421
2006-06-10 06:48:09 +00:00
Ronnie Sahlberg
fcf198a69d add simple heuristics to the decoding of assertionvalues to make it display ascii strings as ascii and binary data as hex bytes
svn path=/trunk/; revision=18420
2006-06-10 05:07:42 +00:00
Ronnie Sahlberg
5e49882844 make CLDAP show up as CLDAP in the dissectyion tree and not as LDAP
this also makes the "cldap" filter work


svn path=/trunk/; revision=18419
2006-06-10 04:29:26 +00:00
Tomas Kukosa
604000a6b3 - remove some #.MODULE_IMPORT from .cng files
- regenerate BER dissectors so as to change rest of Ethereal->Wireshark and asn2eth -> asn2wrs

svn path=/trunk/; revision=18217
2006-05-24 12:24:54 +00:00
Ronnie Sahlberg
feab79e328 change a whole bunch of ethereal into wireshark
svn path=/trunk/; revision=18196
2006-05-21 04:49:01 +00:00
Graeme Lunt
146d22767c LDAP attribute type dissector framework including support for "netlogon" attribute and PKI attributes
svn path=/trunk/; revision=18109
2006-05-08 17:52:42 +00:00
Ronnie Sahlberg
5a8a9702fe force the AssertionValue type to be displayed as a STRING instead of as hex BYTES.
Most of the time  AssertionValue will contain an ascii string   so make it always display as a string to make the display "correct" most of the time insterad of being "wrong" most of the time.

There are situations when AssertionValue contains binary data though  and in those cases the display will be "wrong" (but not more wrong than the old dissector anyway)


What someone really should do (someone interested in ldap that is) to make it more correct would be to implement a dissector for AssertionValue in the template file and having the dissector check if any of the bytes of the octet string has a value <32   and if so display it in hex as   0x.....
It all bytes have values >=32   then it shoudlk display it as a string "...
instead.

Someone interested in ldap may spend time on this refinement.



svn path=/trunk/; revision=18089
2006-05-04 10:19:32 +00:00
Ronnie Sahlberg
c18467254d do some template magic to make ethereal dissect CLDAP RPC again.
i dont think it is the optimal way to solve this but it is better than nothing for the time being.


svn path=/trunk/; revision=18083
2006-05-03 10:59:15 +00:00
Guy Harris
30820fa73e Include <epan/strutil.h> to define g_ascii_isprint() on systems with
GLib 1.2[.x].

svn path=/trunk/; revision=18061
2006-05-01 17:43:29 +00:00
Anders Broman
2ebbe973de Use the asn2eth generated ldap dissector.
svn path=/trunk/; revision=18057
2006-05-01 10:04:10 +00:00
Ulf Lamping
3f3aae1681 minor code cleanup
svn path=/trunk/; revision=17093
2006-01-24 19:03:09 +00:00
Ulf Lamping
c59c716e7a MSVC compiler warnings:
packet-ldap.c(784) : warning C4101: 'seq_len' : unreferenced local variable
packet-ldap.c(782) : warning C4101: 'length' : unreferenced local variable
packet-ldap.c(785) : warning C4101: 'header_bytes' : unreferenced local variable

svn path=/trunk/; revision=17041
2006-01-17 00:01:22 +00:00
Jörg Mayer
1900bf87fc done:
packet-ntp.c: Rather confused and incorrect use of g_snprintf return value
packet-pim.c: whitespace change
packet-icmpv6.c: g_snprintf takes trailing \0 into account, fix off by 1 error
packet-clnp.c: Fix incorrect use of g_snprintf return value
packet-isakmp.c: g_snprintf takes trailing \0 into account
packet-tr.c: Fix incorrect use of g_snprintf return value
packet-radius.c: Fix incorrect use of g_snprintf return value
packet-radius.h: constify a string variable
packet-ldap.c: The return value isn't needed, so don't use it incorrectly
packet-tcp.c: Fix incorrect use of g_snprintf return value
packet-windows-common.c: Remove unneeded DISSECTOR_ASSERT
packet-smb-sidsnooping.c: g_snprintf takes trailing \0 into account
packet-pvfs2.c: g_snprintf takes trailing \0 into account
packet-ptp.c: Remove #include snprintf
packet-ppp.c: Fix incorrect use of g_snprintf return value
packet-ospf.c: Fix incorrect use of g_snprintf return value
packet-mip6.c: snprintf -> g_snprintf
packet-bootp.c: Remove a commented out bad use of g_snprintf
packet-ber.c: snprintf -> g_snprintf, g_snprintf takes trailing \0 into account

2do:

     52 packet-ieee80211.c: 2DO
      2 packet-nfs.c: 2DO - too many side effects
     33 packet-bgp.c: 2DO
     18 packet-dns.c: 2DO
     14 packet-dcm.c: 2DO
     13 packet-x11.c: 2DO
     11 packet-kerberos.c: 2DO
     10 packet-diameter.c: 2DO
      9 packet-snmp.c: 2DO
      9 packet-pgm.c: 2DO
      7 packet-nbns.c: 2DO
      6 packet-fcswils.c: 2DO
      5 packet-wccp.c: 2DO
      5 packet-cops.c: 2DO
      4 packet-wtp.c: 2DO


svn path=/trunk/; revision=17038
2006-01-16 07:59:44 +00:00
Richard Sharpe
3e92ea7c1f Change the way we handle realloc so that we now compute all the space required
up front and realloc once ...

This will probably be the last changes I make on this dissector, as I want to
concentrate on using asn2eth for LDAP, as time permits.


svn path=/trunk/; revision=16619
2005-11-28 17:32:30 +00:00
Richard Sharpe
1a77239007 Make sure that we reset the filter pointer after we realloc the filter.
This should be simplified ... calc all the space required once and then realloc once etc.


svn path=/trunk/; revision=16614
2005-11-28 08:31:11 +00:00
Guy Harris
cf75dd602a Don't do anything to the filter string until we've successfully parsed
the extensibleMatch.

Make sure the filter string is always null-terminated, as we use
"strlen()" to skip to the end of it.

On the (illegal, but not impossible) chance that we have more than one
matching rule ID, attributeDescription, or matchValue, free any we
already have before fetching a new one.

svn path=/trunk/; revision=16609
2005-11-27 02:42:29 +00:00
Richard Sharpe
5d58e19323 Remove unnecessary code to add NULLs to strings obtained with ASN1_STRING_VALUE_DECODE, as they are already there.
svn path=/trunk/; revision=16560
2005-11-22 06:36:06 +00:00