[Placeholder bug so I remember what I'm doing next...] The gateway registration plugin in plugins/gateway.c doesn't complete the registration process by exchanging subscriptions with the gateway service. It should.
I believe this is ready for review.
I've rebased the branch on current master, incorporating wjt's improvements to error handling. We should get this merged for interoperability with Fargo.
When you're normalizing, why not do: if (!wocky_decode_jid (gateway, &node, &domain, &resource)) blow up; if (node != NULL || resource != NULL) blow up; rather than manually looking for @ and / yourself? Maybe this would actually make the code longer. I could possibly be convinced that wocky_decode_jid() should blow up itself if the node param is NULL but the jid has a node... + /* attempt to subscribe to the gateway's presence (FIXME: is this + * harmless if we're already subscribed to it?) */ Yeah, I think it is.
(In reply to comment #3) > When you're normalizing, why not do: > > if (!wocky_decode_jid (gateway, &node, &domain, &resource)) > blow up; > > if (node != NULL || resource != NULL) > blow up; > > rather than manually looking for @ and / yourself? Maybe this would actually > make the code longer. I think it would, due to having to free node and resource on the error path. > I could possibly be convinced that wocky_decode_jid() should blow up itself if > the node param is NULL but the jid has a node... We discussed the possibility of having a special value WOCKY_JID_COMPONENT_FORBIDDEN (or something), which would be #defined to (((char *) NULL) + 1) or some such, and would have these semantics. For now I'm just going to merge this.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.