Commit Graph

50 Commits

Author SHA1 Message Date
Kovarththanan Rajaratnam 7ab993bee7 Remove unused NEED_PACKET_PROTO_H variable
svn path=/trunk/; revision=30409
2009-10-08 17:26:57 +00:00
Stig Bjørlykke b7d8cd1c6a Switch to using tvb_new_subset_remaining() in .cnf files.
svn path=/trunk/; revision=30386
2009-10-07 07:59:11 +00:00
Anders Broman bc9a809b65 From Didier Gautheron:
ep memory can't be used for tvbs defined as data_source.
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=4054

svn path=/trunk/; revision=30376
2009-10-06 19:15:58 +00:00
Kovarththanan Rajaratnam 8b515e9340 Switch a bunch of dissectors over to using tvb_new_subset_remaining()
svn path=/trunk/; revision=29446
2009-08-16 12:36:22 +00:00
Bill Meier cb7dac7100 Initialize several ett_... variables to -1
svn path=/trunk/; revision=29295
2009-08-04 18:52:01 +00:00
Ronnie Sahlberg f8cf2d2c83 When we passed the crytobuffer to krb5_c_decrypt() we never actually
verified that we did have enough data in the buffer/tvb, which could 
lead to a SEGV.
(for example if we enable KRB5 decryption but we do NOT use TCP 
reassembly, and the encrypted data goes beyong the end of the current 
segment)


Change the signature to decrypt_krb5_data() to take a TVB instead of a 
buffer+length.
Actually check that we do have the entire encrypted PDU before calling 
out to the kerberos libraries.



svn path=/trunk/; revision=29213
2009-07-28 13:01:41 +00:00
Stig Bjørlykke 4d8dd01e8e Changed flags_set_truth -> tfs_set_notset
svn path=/trunk/; revision=28989
2009-07-07 14:54:15 +00:00
Stig Bjørlykke 1a3432a0e0 tvb_child_new_real_data() -> tvb_new_child_real_data()
svn path=/trunk/; revision=28845
2009-06-26 03:20:12 +00:00
Anders Broman 2b72ed9f26 tvb_new_real_data()->tvb_child_new_real_data()
svn path=/trunk/; revision=28843
2009-06-25 05:59:04 +00:00
Stig Bjørlykke e3ef20f3ea From Kovarththanan Rajaratnam:
Clean up header field info in asn1/*-template.c files.

From me:
Fixed a few typos in the patch.

svn path=/trunk/; revision=28817
2009-06-23 06:02:12 +00:00
Anders Broman c91a384702 Apply some of the patches from:
http://wiki.wireshark.org/Development/Optimization

svn path=/trunk/; revision=28356
2009-05-13 19:46:11 +00:00
Bill Meier f35324d0fd Minor cleanup mostly related to proto_reg_handoff
Remove code for unused handles;
 Localize handles (in proto_reg_handoff) which need not be global;
 Localize (in proto_reg_handoff) "saved prefs";
 Use find_dissector instead of create_dissector_handle as appropriate;
 Use gboolean for "initialized" flag in proto_reg_handoff.

svn path=/trunk/; revision=26693
2008-11-04 21:42:02 +00:00
Ronnie Sahlberg 2b739fc611 use g_malloc/g_free instead of malloc/free
svn path=/trunk/; revision=26353
2008-10-05 08:41:44 +00:00
Ronnie Sahlberg 54716f411b change u_char to unsigned char to make the osx compiler happy
svn path=/trunk/; revision=26351
2008-10-05 00:51:28 +00:00
Ronnie Sahlberg d83b8b0336 kerberos/gss enhancements
add a parameter *datalen to decrypt_krb5_data() so that we can pass back 
the length of the decrypted blob back to the caller.
This is useful for when there are "junk" at the end of the blob and thus 
the decrypted data is not the same size as the encrypted blob.
GSS CFX is one such example.
(we should have done this earlier since it might have made some other 
stuff easier to imlement...)


make the preference setting krb_decrypt a globally visible variable so 
we can see its value and act on it from callers of krb decryption from 
outside of packet-kerberos.c    i.e.   from GSS CFX


Make keytype == -1  a wildcard that when passed to decrypt_krb5_data() 
will try any/all encryption keys.
This since GSS CFX does not provide the enctype in the GSS layer.
(The GSS CFX enctype is only negotiated during the AP-REQ/REP  so we 
should later pick this value up and store it in a CFX session variable.
That is for a later enhancement.
)


Enhance the GSS decryption (that for hitorical reasons are implemented 
in packet-spnego.c  and not packet-gssapi.c :-)  )
to also handle decryption of GSS CFX

This should make wireshark able to decrypt any/all GSSAPI  RFC4121 
packets, if the keytab file is provided.


I have successfully decrypted LDAP using GSS CFX with AES encryption 
with this.




svn path=/trunk/; revision=26350
2008-10-05 00:28:36 +00:00
Gerald Combs d2821ce8c0 We always use start_offset, so don't wrap it in "#ifdef HAVE_KERBEROS".
svn path=/trunk/; revision=26301
2008-09-30 02:55:42 +00:00
Ronnie Sahlberg 687b0422d3 from Metze
add dissection of RFC4121 krb5 blobs



svn path=/trunk/; revision=26294
2008-09-29 18:44:10 +00:00
Jörg Mayer 3d22aa561b asn1/*/Makefile.nmake were not part of the source package.
Spotted by Tomas Kukosa.

svn path=/trunk/; revision=23921
2007-12-19 10:02:50 +00:00
Tomas Kukosa 1e794fc494 ANSI TCAP regenerated and tested with -T -X asn2wrs options
asn2wrs has -T (tagged types support) and -X (new BER sttructures) default behavior
remove all -T and -X usage

svn path=/trunk/; revision=23823
2007-12-10 08:35:41 +00:00
Anders Broman f6ba48b9fc Update do use the -X and -T asn2wrs flags.
svn path=/trunk/; revision=23364
2007-11-04 22:16:28 +00:00
Jörg Mayer 0e0bed500d - Remove -e option if the generated -exp.cnf file isn't used.
- Add EXPORT_FILES to all files that still contain -e.

svn path=/trunk/; revision=23145
2007-10-11 05:27:27 +00:00
Jörg Mayer 61cde0d09e - Change Makefiles to include preinc
- Add missing new directories to asn1/Makefile.nmake

svn path=/trunk/; revision=23141
2007-10-10 19:03:24 +00:00
Jörg Mayer 24470fdfae More conversions and updates to existing Makefile stuff
svn path=/trunk/; revision=23127
2007-10-10 08:09:19 +00:00
Guy Harris 1e7c1bc036 Add a cast to squelch an MSVC warning.
svn path=/trunk/; revision=21944
2007-05-25 21:50:12 +00:00
Guy Harris 88f69b80c0 Make SND_SEQ an array of 2 guint32's, rather than an array of 8
guint8's, to squelch some compiler warnings (and clean up some
comparisons).

svn path=/trunk/; revision=21941
2007-05-25 19:39:35 +00:00
Anders Broman f08cd1e5e3 actx in the rest of dissect_ber..()l
svn path=/trunk/; revision=21773
2007-05-15 05:49:43 +00:00
Anders Broman c01f382974 Second step in introducing asn context to BER dissectors just like in PER.
svn path=/trunk/; revision=21753
2007-05-13 20:58:29 +00:00
Anders Broman 4c692a62b6 Start introducing actx to ber functions.
svn path=/trunk/; revision=21705
2007-05-06 22:34:05 +00:00
Jeff Morriss 43e550c754 Fix bug 1380:
http://bugs.wireshark.org/bugzilla/show_bug.cgi?id=1380

by registering the spnego dissector by name (e.g., call 'register_dissector()').


svn path=/trunk/; revision=20837
2007-02-18 10:18:53 +00:00
Graeme Lunt 1864da87a8 This patch looks for a confounder in GSSWrap for DES_MAC_MD5 algorithm.
This is purely empirical as I can find no standard that says it should be there.
However successful LDAP/SASL/GSSAPI between AD and Java client shows it seems to be present.
If the confounder is not dissected, the LDAPMessage to fail to be decoded.


svn path=/trunk/; revision=20833
2007-02-17 11:16:52 +00:00
Gerald Combs 9d5858f635 Move cryptography code to epan/crypt.
svn path=/trunk/; revision=20359
2007-01-09 22:14:07 +00:00
Gerald Combs 53689800e6 Move epan/crypt-md5.[ch] to epan/crypt. Remove
epan/crypt/airpdcap_md5.[ch].  Fix up whitespace.

svn path=/trunk/; revision=20277
2007-01-02 22:49:57 +00:00
Ronnie Sahlberg 84553a1b5e if there is a list of mechTypes in the negTokenInit then store the first one
and associate it with the conversation properly.

do the same for supportedMech in the negTokenTarg


This will allow wireshark to decode the blob in negTokenTarg even when no supportedMech is provided.



svn path=/trunk/; revision=20129
2006-12-13 02:44:00 +00:00
Ulf Lamping 647533a5ef put every python script name into "" so the call won't fail on Win32 native python.
The problem is the slash in e.g.:

 @$(PYTHON) ../../tools/make-dissector-reg.py

is interpreted as an option instead of being part of the path.

I didn't wanted to use backslashes as this might introduce new problems with cygwin's python port.

svn path=/trunk/; revision=19730
2006-10-29 17:19:52 +00:00
Tomas Kukosa 55600fb60a Ethereal -> Wireshark
asn2eth -> asn2wrs

svn path=/trunk/; revision=18214
2006-05-23 15:17:14 +00:00
Tomas Kukosa 62da958bd9 - asn2eth renamed to asn2wrs
- remove obsolete -X option from makefiles
- not generate enumerated map table for BER

dissector will be regenerated later

svn path=/trunk/; revision=18199
2006-05-21 14:36:05 +00:00
Ronnie Sahlberg 89f022b12b name change
svn path=/trunk/; revision=18197
2006-05-21 05:12:17 +00:00
Guy Harris a6930fe4ae Add distclean and maintainerclean rules.
svn path=/trunk/; revision=17999
2006-04-25 18:45:08 +00:00
Anders Broman 84fb70ef42 call OID subdissector for private extensiions, fix makefiles.
svn path=/trunk/; revision=17772
2006-03-30 16:46:36 +00:00
Anders Broman 54f6b68edc Add parsertab.pyc in clean target
svn path=/trunk/; revision=17387
2006-02-23 20:05:52 +00:00
Ronnie Sahlberg 2975ff835b microsoft does not use a confounder for spnego when using DNS/TSIG
they use an additional confounder everywhere else  (as it seems)   but not for DNS/TSIG


svn path=/trunk/; revision=16894
2005-12-25 11:43:47 +00:00
Tomas Kukosa 3b770d5c7c - dissect_ber_object_identifier() returns value as tvb
- new dissect_ber_object_identifier_str() function
 - BER dissectors adapted and regenerated

svn path=/trunk/; revision=16501
2005-11-14 10:02:31 +00:00
Guy Harris 341a2f503d dissect_ber_octet_string() can return a null tvbuff pointer, if the
putative octet string isn't one; always check before using it to
dissect, and don't call the dissector if the tvbuff is null.  This
should fix bug 472.

svn path=/trunk/; revision=15946
2005-09-21 23:23:58 +00:00
Guy Harris 4e09b5e0b3 Some compilers don't allow a static declaration of a function inside
another function, so move the declaration of
dissect_spnego_PrincipalSeq() to the top of the file.

svn path=/trunk/; revision=15938
2005-09-21 18:27:28 +00:00
Guy Harris 0fb81e221e An InnerContextToken comes with an OID for the mechanism, which is what
we use to determine how to interpret the token; don't bother fetching
the OID attached to the frame or conversation, as we're not using it.

Indent code in the .cnf file to match the code generated by asn2eth.

The mechListMIC in a NegTokenInit is sometimes a sequence containing a
string; check the header of the mechListMIC and dissect it as such a
sequence or as a regular item depending on whether it's a sequence or
not.

If we see a supportedMech in a NegTokenTarg, save next_level_value for
that OID with the conversation.

Dissect a responseToken in a NegTokenTarg, and a mechListMIC in a
NegTokenTarg, appropriately.

Get rid of "gssapi_dissector_handle()", and just use
next_level_value->handle - it was never being called if next_level_value
was null.

When we're dissecting a KRB5 blob, just use get_ber_identifier() to get
the header, so we don't report an ASN.1 error if there isn't a BER
identifier there; dissect the identifier and length only if we know we
have them.

svn path=/trunk/; revision=15937
2005-09-21 17:42:11 +00:00
Gerald Combs 876ce82beb Don't dereference a null pointer. Fixes bug 460.
svn path=/trunk/; revision=15874
2005-09-19 19:46:25 +00:00
Gerald Combs d2e3d45042 In the SPNEGO dissector, don't call a subdissector if we don't have a TVB.
Fixes bugs 448, 449, 451, 452, 454, 456, and 461.

Add similar TVB checks to the BER dissector.

svn path=/trunk/; revision=15869
2005-09-19 16:23:05 +00:00
Guy Harris f91d140cc9 Don't use u_char - not all platforms define it, and even those that do
might require other files to be included to get it.

svn path=/trunk/; revision=15828
2005-09-15 23:39:08 +00:00
Guy Harris c6cb7b6367 Add a Makefile.
svn path=/trunk/; revision=15827
2005-09-15 23:17:42 +00:00
Anders Broman 0060eaf390 Replace the spnego dissector with an asn2eth generated one.
svn path=/trunk/; revision=15810
2005-09-15 05:38:37 +00:00