On Sunday 28 September 2008 21:52:49 jlist wrote: > In the case of a TLS connection, there's also the switch > from plain text to TLS... > > I'm also coming to think that the best (or easiest) way > could be to use a SAX parser to parse out the stanzas, then > use a DOM parser for easy access to the attributes. However, > this may not handle the TLS's case though. I haven't looked > into the details but I suspect I need to handcraft the SAX > parser for the <stream> tags just to handle this scenario.
There's two issues with switching on TLS: 1) Parse a new <stream>. This is super easy. As soon as you get the <proceed/> tag, just throw away your old SAX parser instance and create a new one. Done. 2) Don't send TLS bytes into your SAX parser. When you receive <proceed/>[binary data], then you want to make sure that [binary data] isn't SAX-parsed. Unless your parser allows you to peek at unprocessed data, the purest solution is to feed one byte at a time to the parser so that you can manage an "unprocessed" data buffer yourself. Despite that the #2 problem is not very enjoyable, neither of these issues should require a hand-crafted SAX parser to solve. -Justin _______________________________________________ JDev mailing list FAQ: http://www.jabber.org/discussion-lists/jdev-faq Forum: http://www.jabberforum.org/forumdisplay.php?f=20 Info: http://mail.jabber.org/mailman/listinfo/jdev Unsubscribe: [EMAIL PROTECTED] _______________________________________________