jdev - 2021-03-16


  1. flow

    not sure if you can do it in a genric way, since every gatewayed network has different characteristics. but for e.g. IRC transports, a standardized JID format would maybe help?

  2. flow

    then you could ask the user for the 4-tuple of transport address, IRC channel, IRC server and IRC nick

  3. Ge0rG

    flow: IRC server is typically one of a set of hostnames for a given network, so abstracting that away would be worthwhile.

  4. Ge0rG

    IMO, an IRC gateway operator should then operate explicit proxies for well-known networks, like euirc.yax.im - in that case, the localpart of the JID is a user or a channel, so the problem is vastly reduced

  5. flow

    maybe, i would potentially consider that the irc transports is aware of the irc network the IRC server belongs to, tries to connect to the user specified irc server, and optionally falls back to another server from the irc networks pool

  6. Ge0rG

    Choosing the right server for a given network is an art

  7. Ge0rG

    OTOH, you'd want all different servers from a given network to be reachable under the same JID, because ge0rg@de.freenode.net is the same identity as ge0rg@irc.freenode.net and you don't want to have two different chat histories

  8. flow

    fair point

  9. Ge0rG

    I have no idea if there is some generic network identifier provided by the IRC server on connect.

  10. flow

    probably not, at least not in IRCv3

  11. Ge0rG

    but even then, you'd end up with a JID mismatch when connecting

  12. Ge0rG

    I'm helping myself by configuring a set of servers on a given network alias via ad-hoc

  13. Ge0rG

    but that's really advanced usage

  14. Ge0rG

    and then you have the fun things like a certain irc server offering non-ssl service on the default ircs port, leading to a certain widely used implementation to busy-loop ssl-connecting to that non-ssl port.

  15. Link Mauve

    Speaking of TLS, certificate validation is also terrible on IRC because no client ever validates that, so admins usually have multiple domains aliasing to each other, but only one domain in the certificate, which itself is often expired.

  16. Link Mauve

    It’s in a really sad situation.

  17. Link Mauve

    lovetox, how do pure IRC servers handle this?

  18. Link Mauve

    lovetox, how do pure IRC clients handle this?

  19. pulkomandy

    They have a "well known name" (for example "freenode") for the network and a list of corresponding servers pre-configured

  20. pulkomandy

    Not sure how they handle a link like irc:#haiku@chat.freenode.net if you are connected to irc.freenode.org but it in fact points to the same place

  21. pulkomandy

    I wouldn't pe surprised if they create a second connection to the same network

  22. Zash

    If only there existed some kind of DNS method of pointing at multiple servers for a particular domain.

  23. pulkomandy

    They also do this

  24. pulkomandy

    chat.freenode.net will pick a server for you. But sometimes it will pick one that isn't online or is super busy and will take a few minutes to allow your connection

  25. pulkomandy

    So it's not uncommon to use a specific "good" server

  26. pulkomandy

    (ok for Freenode it isn't that bad, but for example for ircnet it's common for me to have problems connecting using the main dns)

  27. jonas’

    (yep, ircnet is strange)