Cheerio,
I might have found something interesting:
Openfire 3.3.2
GW 1.1.3a
Miranda 0.7.1
When I try to add a User with any transport and I insert that user as
testbunny/40@hotmail.com@transport.whatever.you.like (I know the slash is wrong!)
I click search.
I receive a user with absolutely no Info (not nice but quite normal even with a correct username).
And now, I don’t add that user but instead I just click “Contact profile”
this results in Miranda Jabber going offline and an Error in Openfire (see below):. No other user on the server is affected and I can go right back online.
I can reproduce it at any time with any transport. It does not happen if I use an @ or \40 instead of /40, which probably means, it does not reject wrong input like it should.
java.lang.StringIndexOutOfBoundsException: String index out of range: -4
at java.lang.String.substring(String.java:1768)
at org.xmpp.packet.JID.getParts(JID.java:299)
at org.xmpp.packet.Packet.<init>(Packet.java:72)
at org.xmpp.packet.IQ.<init>(IQ.java:82)
at org.jivesoftware.openfire.net.StanzaHandler.getIQ(StanzaHandler.java:272)
at org.jivesoftware.openfire.net.StanzaHandler.process(StanzaHandler.java:236)
at org.jivesoftware.openfire.net.StanzaHandler.process(StanzaHandler.java:153)
at org.jivesoftware.openfire.nio.ConnectionHandler.messageReceived(ConnectionHandler.java:132)
at org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.messageReceived(AbstractIoFilterChain.java:703)
at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:362)
at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilterChain.java:54)
at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:800)
at org.apache.mina.filter.codec.support.SimpleProtocolDecoderOutput.flush(SimpleProtocolDecoderOutput.java:62)
at org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:200)
at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:362)
at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilterChain.java:54)
at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:800)
at org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java:266)
at org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(ExecutorFilter.java:326)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
at java.lang.Thread.run(Thread.java:595)
Question 1:
Is there any way to implement the search for external users or at least some feedback like “User found” for a transport user? At the moment you never know if you did a typo or the person is simply not online/rejected the request/never got a request/etc.
Miranda shows me a 503 when I try to contact search on a transport (which I guess is normal, right?).
Question 2:
Adding a yahoo user (either via “Add him” in a Chatbox or directly via Nick does not send out a request for authorization. It just adds the user and it shows offline (of course, as it doesn’t have authorization). Sending Messages works fine.
I haven’t had the chance to try with a different client. Is this maybe known (either for the transport or for Miranda)?
Q3:
If I have an MSN Account via transport and another user with a native Yahoo tries to add my MSN user I don’t get any request for authorization, neither directly in Miranda or Spark nor if I logon later into webmessenger looking if it might got stuck like some offline message. That looks to me like Openfire receives the request but discards it. Nothing found in the normal logs, haven’t had the chance to start the debug-logger
Thats it for today I hope you have some ideas for me