InvalidFormat: Invalid character in resource.
Over time, I occasionally see the following error in Gajim:
Traceback (most recent call last): File "/usr/share/gajim/src/common/xmpp/idlequeue.py", line 533, in process_events return IdleQueue.process_events(self, fd, flags) File "/usr/share/gajim/src/common/xmpp/idlequeue.py", line 394, in process_events obj.pollin() File "/usr/share/gajim/src/common/xmpp/transports_nb.py", line 414, in pollin self.do_receive() File "/usr/share/gajim/src/common/xmpp/transports_nb.py", line 600, in _do_receive self.on_receive(received) File "/usr/share/gajim/src/common/xmpp/transports_nb.py", line 614, in _on_receive self.on_receive(data) File "/usr/share/gajim/src/common/xmpp/dispatcher_nb.py", line 452, in dispatch handler'func' File "/usr/share/gajim/src/common/connectionhandlers.py", line 256, in DiscoverInfoGetCB if self.commandInfoQuery(con, iq_obj): File "/usr/share/gajim/src/common/commands.py", line 374, in commandInfoQuery jid = helpers.get_full_jid_from_iq(iq_obj) File "/usr/share/gajim/src/common/helpers.py", line 867, in get_full_jid_from_iq return parse_jid(str(iq_obj.getFrom())) File "/usr/share/gajim/src/common/helpers.py", line 103, in parsejid return prep(*decompose_jid(jidstring)) File "/usr/share/gajim/src/common/helpers.py", line 169, in prep raise InvalidFormat, _('Invalid character in resource.') InvalidFormat: Invalid character in resource.
I have a log file, but as it sometimes takes a while for it to show up, the log file is quite substantial. I don't see the actual traceback anywhere in the log, so I can't narrow down when the events actually occur. Any suggestions on how to determine relevant events in the log file would be accepted.
Steps to reproduce
I rarely see it happen. Mostly I find several instances of the error when I return to my computer, and with no timestamp on the error, I don't know when.
OS version: Ubuntu 10.04
GTK version: 2.20.1
PyGTK version: 2.17.0
Well, I added that line, but it didn't seem to print anything right when the error occurred. After the error occurred, I disconnected, and then it printed 4 lines. One of them included a resource which looked like this: "•͡˘㇁•͡˘CC56DB03" The id was "iChat_5760C17D"
After logging back in, that user does not appear online, although he does in gmail, looking at the same account. Is this an invalid resource? If so, it should probably be handled better.
It's indeed an invalid resource. It contains the '㇁' char (0x31C1), which is in A1 table of stringprep
FYI, I spoke to the owner of the account in question. He says the strange characters are the machine name of his Mac. Apparently iChat uses the machine name for part of the resource. That sounds like a bug in iChat for allowing a machine name of invalid characters to become part of the resource.