-
edhelas
hi everyone
-
Seve/SouL
Greetings!
-
edhelas
I was wondering it there is a way to quote/reference a pubsub item in a chat message ?
-
edhelas
there's muc#roominfo_pubsub that allows to link Pubsub nodes to a MUC, and I'm planning to display the related pubsub node items in the MUC UI, then you can comment/reference it
-
jonasw
edhelas, the References XEP has a syntax for that I think
-
edhelas
\o/
-
jonasw
... a syntax which I don’t like, and I haven’t heard back from the authors yet on whether they’re willing to change it
-
Ge0rG
jdev@conference.jabber.org will respond to pings to a non-existent nickname with not-allowed. Yay.
-
jonasw
this muc is fubar anyways
-
Ge0rG
It will also respond not-allowed if I'm not joined.
-
jonasw
purrfect
-
Ge0rG
> this muc is fubar anyways Which is why I'm testing it.
-
Ge0rG
jonasw: https://github.com/xsf/xeps/pull/688
-
jonasw
I need an "Out of Order -- Overheated" sign
-
jonasw
Ge0rG, no revision block documenting the rename etc.?
-
Zash
Wasn't there a 'hot' in {xep user mood}?
-
Bunneh
Zash: User Mood (Standards Track, Draft, 2018-03-13) See: https://xmpp.org/extensions/xep-0107.html
-
jonasw
Ge0rG, another suggestion: I think a safe way to handle nickname-change-vs-ping-races is the following: when receiving a nickname change notification *and* a ping is in-flight, that ping is allowed to fail. issue a new ping.
-
jonasw
due to the stream ordering guarantees, you have to see the nick change notification *before* the error reply
-
jonasw
s/issue a new ping/issue a new ping and ignore the result of the other ping/
-
Ge0rG
jonasw: or do what I did in the PR ;)
-
Ge0rG
consider item-not-found as a valid response
-
jonasw
Ge0rG, but what if you never get a response because just in that moment your s2s interrupts?
-
jonasw
(talking about line 172+)
-
jonasw
my suggestion resolves MSN and own nick changes and it’ll work even with jdev@
-
Ge0rG
jonasw: your suggestion requires more logic.
-
jonasw
Ge0rG, it’s also fail-safer
-
Ge0rG
jonasw: I can live with yet another rejoin ;)
-
jonasw
maybe put it in as suggestion for clients which want that amount of logic
-
Ge0rG
jonasw: PRs welcome
-
jonasw
on a ProtoXEP?
-
Ge0rG
jonasw: it will stay a ProtoXEP until daniel approves or rejects.
-
jonasw
still, you wanna add your revision block there?
-
Ge0rG
jonasw: do I need to? I only asked for the revision block for the case that the funny name has to leave the title.
-
jonasw
for the sake of record-keeping and e.g. daniel who has to review it later, it makes sense to record it
-
Ge0rG
jonasw: as the Council didn't provide much feedback on the technical details, I'm not sure it will matter to daniel
-
jonasw
put it another way: if you don’t do it, I’ll do it
-
jonasw
but if you do it now, I can merge that now
-
jonasw
if you don’t do it now, I’ll drag it out because it’s too hot for me to think about stuff
-
Kev
Or until Daniel doesn't vote. There's a two week expiry period on voting.
-
Ge0rG
Kev: that's an option as well. But I don't want to delay changes based on the Council feedback by two weeks because of that.
-
MattJ
If I'm reading XEP-0060 right, you can't support max_items and simultaneously support unlimited items
-
MattJ
Hmm, more simply - there is just no way to have an unlimited-item node
-
Zash
Set max_items > 9000
-
MattJ
Seems like quite a limitation for e.g. microblogging
-
waqas
640K Ought to be Enough for Anyone <https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=2&ved=2ahUKEwjDrZWPuczcAhUBvVkKHXecAi0QFjABegQIAhAB&url=https%3A%2F%2Fquoteinvestigator.com%2F2011%2F09%2F08%2F640k-enough%2F&usg=AOvVaw1pt8pBSu4B_G2oN6QxGUP0>
-
waqas
640K Ought to be Enough for Anyone <https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=2&ved=2ahUKEwjDrZWPuczcAhUBvVkKHXecAi0QFjABegQIAhAB&url=https%3A%2F%2Fquoteinvestigator.com%2F2011%2F09%2F08%2F640k-enough%2F&usg=AOvVaw1pt8pBSu4B_G2oN6QxGUP0>
-
Dave Cridland
Set max_items to be, dynamically, 10k more than the current count.
-
Dave Cridland
But yeah, you're right. If an implementation supports multiple items, it has to expose max_items.
-
MattJ
So people complained Prosody's PEP only supported a single item
-
MattJ
so how many did they want it to support?
-
MattJ
Let's say OMEMO used an item per device for keys, what would Conversations configure max_items as?
-
Dave Cridland
MattJ, Well, Prosody can support unlimited items, or at least, support any value for max_items.
-
Dave Cridland
MattJ, I don't know without looking if there's an upper limit on max_items because it's a xs:positiveInteger, mind, but I'd expect that to be 2**31 at worst case.
-
Dave Cridland
MattJ, That said, pre-keys are stored in PEP precisely to obviate the need for server code changes, and given that storing them in "the open" potentially leads to a kind of DoS(ish) attack which weakens the cryptographic properties, it's arguing to stick pre-keys in a specialized server-side service anyway.
-
Dave Cridland
MattJ, But bookmarks 2 uses multiple items, too, for better reasons.
-
lovetox
Im not sure if im understanding you correctly, but omemo does not store multiple items
-
lovetox
it needs exactly one item per node
-
Zash
It could tho
-
lovetox
but it does not care if its more
-
lovetox
Zash i dont see the value
-
Zash
But it doesn't because it wouldn't work since only one item was guaranteed
-
lovetox
im not sure what you are suggesting, but i dont see any value in storing anything omemo related in a multiple items node
-
lovetox
bookmarks is completely different use case
-
lovetox
and it makes sense there
-
Zash
individual prekeys could be removed when they are used up for example
-
Zash
and devices could publish their own key without having to make sure to not remove other devices keys
-
lovetox
tricky, a prekey in a node is not of any value if you dont have the same prekey in storage
-
lovetox
its more foolproof if you just publish the new prekey list on each removal
-
Zash
I don't actually have any idea how OMEMO works, I'm just guessing
-
lovetox
no you brought up a valid argument
-
lovetox
one could do it that way, but then you would have to check from time to time, if your db stored prekeys are really the ones that are published
-
lovetox
the second idea, to store device ids per item is more interesting
-
Zash
Altho, it uses ... different nodes now? Or something?
-
Zash
Which in itself is awkward
-
lovetox
you mean the device id?
-
lovetox
its serves a multi purpose, 1. it shows you the way to the public key node
-
MattJ
Sorry, my question was quite unrelated to OMEMO, it was just an example (multiple items have been discussed in the past, and Prosody not supporting that was one of the reasons against it)
-
lovetox
2. it shows other clients which devices are active devices
-
MattJ
Bookmarks is just as valid
-
MattJ
And probably a better example
-
Zash
Both specs bend backwards a bit to fit into "there can be only one item per node"
-
lovetox
MattJ, why do you ask, because you think about a hard max limit for prosody?
-
lovetox
i guess its only natural that a server has something like that
-
lovetox
i think nobody expects a server to support truly unlimited items
-
lovetox
Zash i thought about it some more, and how would you chose a prekey? because more then one client can try to use a prekey while you are offline, you are supposed to choose one per random to reduce the chances that 2 c lients pick the same
-
lovetox
so you have to download all items of the node
-
lovetox
this does need 100 times the roundtrips you would need with one node, and needs much more time
-
lovetox
*one item
-
lovetox
If someone would want to improve the prekey use case, a server module is the best way
-
Dave Cridland
https://drive.google.com/file/d/1dbf75m-3HG7tssvI0L__99yNCj9mtPt4/view?usp=sharing (In progress) https://drive.google.com/file/d/1K7Y-5N3E0-swSOqmLHdgr7fyNHa0wjhj/view?usp=sharing (And done)
-
Dave Cridland
lovetox, FWIW, I'd like to make prekeying a server module, but I'd just wwait until MLS is ready and use that.
-
lovetox
yes this would take some impl complexity away from clients and additionally would make race conditions impossible
-
Dave Cridland
lovetox, Also means you can't "drain" prekeys, or look for especially weak ones to use, or ...
-
Dave Cridland
lovetox, It *also* means that a server can potentially inject other prekeys into a set, of course. That ought to be detectable, but it can allow for retention policies etc which are important in enterprise/government cases.
-
lovetox
hm really? would not still the client have to create the keys and suppy it to the server?
-
Dave Cridland
lovetox, Yes, but the server can conceal how many are present and loop over the last N instead of discarding them.
-
Dave Cridland
lovetox, Anyone trying to constantly request prekeys to see if this is the case is pretty easy to spot, too.
-
lovetox
hm no that is not allowed in the signal spec
-
lovetox
prekey is to used once only
-
Dave Cridland
lovetox, I know. But the MLS spec isn't Signal, just similar. And prekeys can't be used more than once mostly to make the cryptographic proofs simpler.
-
Dave Cridland
lovetox, The alternative is that if prekeys are exhausted, then you can't exchange messages (encrypted) anymore.
-
Dave Cridland
lovetox, So either that's a DoS waiting to happen, or else unencrypted comms.
-
MattJ
lovetox [19:47]: > MattJ, why do you ask, because you think about a hard max limit for prosody? Yes, we need a limit