Software /
code /
prosody
Annotate
doc/session.txt @ 12468:353836684009
net.connect: Fix accumulation of connection attempt references
Connection attempts that failed the Happy Eyeballs race were not
unreferenced and would accumulate.
Tested by inspecting the 'pending_connections_map' after establishing
s2s with a s2s target where the IPv6 port has a -j DROP rule causing it
to time out and the IPv4 attempt wins the race.
Expected is that the losing connection stays around until net.server
timeouts kick in where it should be removed. The map table should tend
towards being empty during idle times.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Wed, 20 Apr 2022 22:41:54 +0200 |
parent | 8728:41c959c5c84b |
rev | line source |
---|---|
55
4edb942e9dff
Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
1 |
4edb942e9dff
Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
2 Structure of a session: |
4edb942e9dff
Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
3 |
4edb942e9dff
Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
4 |
4edb942e9dff
Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
5 session { |
4edb942e9dff
Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
6 -- properties -- |
4edb942e9dff
Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
7 conn -- the tcp connection |
4edb942e9dff
Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
8 notopen -- true if stream has not been initiated, removed after receiving <stream:steam> |
4edb942e9dff
Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
9 type -- the connection type. Valid values include: |
4edb942e9dff
Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
10 -- "c2s_unauthed" - connection has not been authenticated yet |
4edb942e9dff
Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
11 -- "c2s" - from a local client to the server |
4edb942e9dff
Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
12 username -- the node part of the client's jid (not defined before auth) |
4edb942e9dff
Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
13 host -- the host part of the client's jid (not defined before stream initiation) |
4edb942e9dff
Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
14 resource -- the resource part of the client's full jid (not defined before resource binding) |
61 | 15 full_jid -- convenience for the above 3 as string in username@host/resource form (not defined before resource binding) |
199
eccf66b42bd7
Added resource priority handling, etc
Waqas Hussain <waqas20@gmail.com>
parents:
116
diff
changeset
|
16 priority -- the resource priority, default: 0 |
eccf66b42bd7
Added resource priority handling, etc
Waqas Hussain <waqas20@gmail.com>
parents:
116
diff
changeset
|
17 presence -- the last non-directed presence with no type attribute. initially nil. reset to nil on unavailable presence. |
8728
41c959c5c84b
Fix spelling throughout the codebase [codespell]
Kim Alvefur <zash@zash.se>
parents:
7535
diff
changeset
|
18 interested -- true if the resource requested the roster. Interested resources receive roster updates. Initially nil. |
116
72e698cdabd7
Updated and fixed session documentation
Waqas Hussain <waqas20@gmail.com>
parents:
115
diff
changeset
|
19 roster -- the user's roster. Loaded as soon as the resource is bound (session becomes a connected resource). |
55
4edb942e9dff
Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
20 |
4edb942e9dff
Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
21 -- methods -- |
4edb942e9dff
Some notes of the stanza and session structures
Waqas Hussain <waqas20@gmail.com>
parents:
diff
changeset
|
22 send(x) -- converts x to a string, and writes it to the connection |
7535
4a3a3098d9bb
doc/session: As far as I remember, sessions have had a close method, not disconnect
Kim Alvefur <zash@zash.se>
parents:
199
diff
changeset
|
23 close(x) -- Disconnect the user and clean up the session, best call sessionmanager.destroy_session() instead of this in most cases |
61 | 24 } |
115
db048883a522
Updated session documentation
Waqas Hussain <waqas20@gmail.com>
parents:
61
diff
changeset
|
25 |
116
72e698cdabd7
Updated and fixed session documentation
Waqas Hussain <waqas20@gmail.com>
parents:
115
diff
changeset
|
26 if session.full_jid (also session.roster and session.resource) then this is a "connected resource" |
199
eccf66b42bd7
Added resource priority handling, etc
Waqas Hussain <waqas20@gmail.com>
parents:
116
diff
changeset
|
27 if session.presence then this is an "available resource" (all available resources are connected resources) |
eccf66b42bd7
Added resource priority handling, etc
Waqas Hussain <waqas20@gmail.com>
parents:
116
diff
changeset
|
28 if session.interested then this is an "interested resource" (all interested resources are connected resources) |