On 05/19/2011 12:16 PM, Dave Cridland wrote:

Hi Dave,

> But in practise I'm not sure what more we can hope for - the domain name
> validated by a browser-based BOSH client will be selected by the
> browser. The solution there would be to add an additional record that
> can then be used for validation, so we'd have:
> 
> _xmppconnect IN TXT "_xmpp-client-xbosh=https://bosh.jabber.org:5280/bind";
> _xmppconnect IN A 172.16.37.54
> _xmppconnect IN AAAA fe80::1
> 
> And browsers then ignore the hostname supplied by the _xmppconnect TXT
> record and instead use (and therefore validate) the _xmppconnect address
> record, which should essentially work. It *is* quite certainly a hack,
> though, and I'm quite sure this isn't a finished solution.

Do I understand correct that we should then connect to the provided ip
address but validate using the /original/ hostname of the XMPP domain we
want to connect to? (and not validate using the hostname mentioned in
the TXT record?).

Interesting, but I don't see how a browser based client can do any DNS
lookups. And if it can, I don't see how it can validate against an other
domain name. (Which more or less solves the problem: the browser based
client can't discover the bosh connector by using DNS, so an rogue DNS
record will never be processed by a browser based client).

But lets assume we are talking here about a fat client wanting to do
BOSH. Maybe we should then add text records for the ip, port and
location. Something like:

_xmppconnect IN TXT "_xmpp-client-xbosh=https://evil.com:5280/bind";
             IN TXT "_xmpp-client-xbosh-A="172.16.37.54"
             IN TXT "_xmpp-client-xbosh-AAAA="fe80::1"
             IN TXT "_xmpp-client-xbosh-port="5280"
             IN TXT "_xmpp-client-xbosh-location="/bind"

(first record added for insecure backward compatibility)

best wishes,

Winfried

Reply via email to