Glou WoC Week 2 – XMPP Streams

This report is released weekly within the scope of the Glou Winter of Code.

Another week passed that brought libxoup one step nearer to its first release. First of all the XoupXmppConnection obtained its backend, XoupConnection. The next step was to implement XoupXmppServer, which listens for incoming XoupXmppConnections. That means a XoupXmppConnection can now receive its data from the network, and hasn’t to be fed by hand anymore. Then there was time to concentrate on the main task of the week, the handling of XMPP streams (which basically means handling the XMPP <stream> element). After the XoupXmlElem was a bit enhanced with stringify functionality, XoupXmppStreamHandler was added which is responsible for stream handling according to the XMPP standard. As result establishing XMPP streams works now.

Besides the stream handling, the test system was updated. Every testcase is now compiled to an own executable, which makes testing easier as it is more stable against segfaults and other such nasty things. Furthermore a roadmap had been worked out that outlines the goals and the timeline for the first milestone of Glou.

For this week, the main goal is to implement stanza handling, i.e. parsing XMPP stanza elements (message, presence, iq) and emitting events when a stanza is received.  The second task is to enhance the XoupXmppStreamHandler with some better namespace and error handling. Those are pretty much the last blockers for the libxoup release.

That’s it for the report of week 2. Read you next week :) .

- Sven