Or you could do the same thing that just about every P2P filesharing
protocol known to man does:
Step 1: ask for the non-firewalled user's IP and an opened port
Step 2: the firewalled user uploads the file directly to that port and IP
How does the negotiation work to determine which (if any) side is not firewalled?
Btw, Using a third party server (WebDav, FTP or some sort of relay) seems
like madness to me. Who would let people suck up all that bandwidth?
You seem to be assuming there will be one global server for everyone, which I agree doesn't make sense. But just about anyone with an account at an ISP has their own FTP area with at least 5MB of space. (You pretty much have to have this, or WebDAV, to be able to host a web page, which is a feature of all but the most basic ISP accounts.) So nearly everyone has access to such a server. The problem is that you have to configure your Jabber client by giving it the correct protocol and address, which is a hassle.
--Jens
