File transfer problems (2.50 versus 2.58)

Hello. Having recently upgraded OpenFire to 3.4.4 am now having problems with file transfers. Users still on Spark 2.50 can send back and forth just fine, and have happily been doing so for two plus years without problems. A user on 2.5.8 can send files to another 2.58 user, but not receive them, whereas users on 2.5.0 can send and receive quite happily from either version. Server is in Windows SBS2003, all clients on Windows XP. Absoulutely no changes anywhere other than upgrading to 3.4.4.

Any ideas?

Edited to add: proxy service is in use.

So much for that theory then. Reverted to 2.57, still the same - outgoing yes, incoming no, but same remote user can send and receive quite happily to other users on same LAN. Not too hopeful of a reply, but here’s what appears to be the relevant bit from my local errors.log:

11-Feb-2008 10:06:09 org.jivesoftware.spark.util.log.Log error

SEVERE: There was an error during file transfer.

Error in execution:

– caused by: java.util.concurrent.ExecutionException: File transfer negotiation failed.:

at org.jivesoftware.smackx.filetransfer.IncomingFileTransfer.negotiateStream(Incom ingFileTransfer.java:199)

at org.jivesoftware.smackx.filetransfer.IncomingFileTransfer.access$100(IncomingFi leTransfer.java:47)

at org.jivesoftware.smackx.filetransfer.IncomingFileTransfer$1.run(IncomingFileTra nsfer.java:124)

at java.lang.Thread.run(Unknown Source)

Nested Exception:

java.util.concurrent.ExecutionException: File transfer negotiation failed.:

at java.util.concurrent.FutureTask$Sync.innerGet(Unknown Source)

at java.util.concurrent.FutureTask.get(Unknown Source)

at org.jivesoftware.smackx.filetransfer.IncomingFileTransfer.negotiateStream(Incom ingFileTransfer.java:193)

at org.jivesoftware.smackx.filetransfer.IncomingFileTransfer.access$100(IncomingFi leTransfer.java:47)

at org.jivesoftware.smackx.filetransfer.IncomingFileTransfer$1.run(IncomingFileTra nsfer.java:124)

at java.lang.Thread.run(Unknown Source)

Caused by: File transfer negotiation failed.:

at org.jivesoftware.smackx.filetransfer.FaultTolerantNegotiator.createIncomingStre am(FaultTolerantNegotiator.java:128)

at org.jivesoftware.smackx.filetransfer.IncomingFileTransfer$2.call(IncomingFileTr ansfer.java:186)

at org.jivesoftware.smackx.filetransfer.IncomingFileTransfer$2.call(IncomingFileTr ansfer.java:185)

at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)

at java.util.concurrent.FutureTask.run(Unknown Source)

at org.jivesoftware.smackx.filetransfer.IncomingFileTransfer.negotiateStream(Incom ingFileTransfer.java:190)

… 3 more

I think that I’ve found a way of sorting this out. Lots of thread trawling took me to this thread … and adding the new System Property ‘xmpp.proxy.externalip’ has at last got WAN to LAN working for all users once more. Of course why this value hasn’t been needed up until now is another matter, but it seems clear that 3.4.4 changed something in this area.

I’ll add some keyword content in here as I suspect others might benefit from signposts to this issue: file transfer, wan, lan, users, works, doesn’t work, error during file transfer, proxy, 7777, openfire, spark