Daniel actually pointed out (OOB) that the problem I was seeing wasn't that clients aren't handling instance tags properly: Instead it looks like some clients (Conversations does this) don't actually even use the OTR lib for messages which arrive via Carbons, so the instance tags never get used and the message isn't discarded.
Since they'll only be decryptable by a single session, I still don't see a benefit to sending to the bare JID though (you'll just be wasting bandwidth and dropping them anyways, so you might as well just send to the full JID and not waste time copying it everywhere else or letting the server accidentally send it to the wrong location). Also, my language probably needs to be changed (or split out into documentation and recommendation sections), since this is an informational OTR and SHOULD only be documenting existing usages (I really need to get rid of the RFC 2119 style language), and it looks like most things send to the full JID. All that being said, OTR isn't a good fit for XMPP and I'm hoping OMEMO/axolotl will replace it once it's been vetted a bit more, so I'm not super concerned either way. Documenting existing usage is probably the best thing to do here. —Sam On Sun, Sep 13, 2015 at 9:50 AM, Thijs Alkemade <[email protected]> wrote: > >> On 13 sep. 2015, at 15:50, Sam Whited <[email protected]> wrote: >> >> I was experimenting with OTR a bit today and was going to tweak this >> section of the document, but I think I'm still siding with Daniel on >> this one and am not going to make any change at the moment: Sending to >> the full JID just doesn't work with OTR in practice. >> >> Does any client actually use instance tags to discard junk messages? >> After a (very cursory) search over some popular clients I didn't see >> any of them using instance tags. Would love to be told otherwise >> though. > > libotr does: > > https://bugs.otr.im/projects/libotr/repository/revisions/master/entry/src/message.c#L994 > > otr4j does: > > https://github.com/jitsi/otr4j/blob/bfd0b363a9a7865f68e46db19c095a8f34ace6be/src/main/java/net/java/otr4j/session/OtrAssembler.java#L96 > > AFAICT those two together cover a great number of clients. > > The only implementation of OTR I could find that does not support instance > tags is pure-python-otr: > > https://github.com/python-otr/pure-python-otr/issues/28 > > Best regards, > Thijs > -- Sam Whited pub 4096R/54083AE104EA7AD3 https://blog.samwhited.com
