From David Richards via https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=8871 :
authorJeff Morriss <jeff.morriss.ws@gmail.com>
Sun, 30 Jun 2013 23:25:37 +0000 (23:25 -0000)
committerJeff Morriss <jeff.morriss.ws@gmail.com>
Sun, 30 Jun 2013 23:25:37 +0000 (23:25 -0000)
commite03edbf713c9af37b452e1c3f1917f1e2c69ca72
treee8f2d3a392e085ad22c72a534607c1997600b201
parent6499394c780c80b92e73498f13ce9b4a624df437
From David Richards via https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=8871 :

TLS decryption fails when trying to decrypt XMPP sessions using start_tls as
the port in the key list of the SSL preferences.

Looking at the code, the XMPP dissector has 2 issues:

1) The crude XML element detection for XMPP segmentation is run before
checking if the SSL dissector should be called.  As a result, the SSL dissector
is not called at the appropriate times.

2) The SSL dissector is called withoug resetting the desegment flags are not
manipulated as the SMTP dissector does so segmented SSL packets are not properly
reconstructed.  Generally this causes the server hello not to be detected.

A proposed patch to fix these issues is attached.

svn path=/trunk/; revision=50272
epan/dissectors/packet-xmpp.c