Software /
code /
prosody
Annotate
doc/stanza_routing.txt @ 10092:4b3c129e96f2 0.11
mod_websocket: Clone stanza before mutating (fixes #1398)
Checking for `stanza.attr.xmlns == nil` to determine if the stanza
object is an actual stanza (`<message>`, `<presence>` or `<iq>` in the
`jabber:client` or `jabbber:server` namespace) or some other stream
element.
Since this mutation is not reverted, it may leak to other places and
cause them to mistreat stanzas as stream elements. Especially in cases
like MUC where a single stanza is broadcast to many recipients.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Sat, 20 Jul 2019 04:19:58 +0200 |
parent | 22:2856dfc1f5cc |
rev | line source |
---|---|
12 | 1 No 'to' attribute: |
2 IQ: Pass to appropriate handler | |
3 Presence: Broadcast to contacts | |
4 - if initial presence, also send out presence probes | |
5 - if probe would be to local user, generate presence stanza for them | |
6 Message: Route as if it is addressed to the bare JID of the sender | |
7 | |
8 To a local host: | |
9 IQ: Pass to appropriate handler | |
10 Presence: - | |
11 Message: Deliver to admin? | |
12 | |
13 To local contact: | |
14 Bare JID: | |
15 IQ: Pass to appropriate handler | |
16 Presence: Broadcast to all resources | |
17 Message: Route to 'best' resource | |
18 Full JID: | |
19 IQ: Send to resource | |
20 Presence: Send to resource | |
21 Message: Send to resource | |
21 | 22 Full JID but resource not connected: |
23 IQ: Return service-unavailable | |
24 Message: Handle same as if to bare JID | |
25 Presence: Drop (unless type=subscribe[ed]) | |
12 | 26 |
27 To remote contact: | |
28 Initiate s2s connection if necessary | |
29 Send stanza across | |
22
2856dfc1f5cc
Various documentation updates, and added names.txt :)
Matthew Wild <mwild1@gmail.com>
parents:
21
diff
changeset
|
30 |