Software /
code /
prosody
Annotate
spec/scansion/uptime.scs @ 11590:5aafb832c91b
core.portmanager: Fix race condition in initialization of SNI cert map
Under some circumstances when hosts and modules are loaded in some
certain order, entries end up missing from the SNI map. This manifests
in e.g. `curl https://localhost:5281/` giving an error about
"unrecognized name".
The `service` argument is `nil` when invoked from the "host-activated"
event, leading it to iterating over every service. And then it would not
be fetching e.g. `http_host` from the config, which explains why https
would sometimes not work due to the missing name entry.
Because when `service` is included, this limits the iteration to
matching entries, while also returning the same value as the `name` loop
variable. Because `name == service when service != nil` we can use name
instead in the body of the loop.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Fri, 28 May 2021 17:09:22 +0200 |
parent | 10731:8e2f9d0fa72d |
rev | line source |
---|---|
10731
8e2f9d0fa72d
mod_uptime: Add scansion test coverage
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
1 # XEP-0012: Last Activity / mod_uptime |
8e2f9d0fa72d
mod_uptime: Add scansion test coverage
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
2 |
8e2f9d0fa72d
mod_uptime: Add scansion test coverage
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
3 [Client] Romeo |
8e2f9d0fa72d
mod_uptime: Add scansion test coverage
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
4 jid: romeo@localhost |
8e2f9d0fa72d
mod_uptime: Add scansion test coverage
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
5 password: password |
8e2f9d0fa72d
mod_uptime: Add scansion test coverage
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
6 |
8e2f9d0fa72d
mod_uptime: Add scansion test coverage
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
7 ----- |
8e2f9d0fa72d
mod_uptime: Add scansion test coverage
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
8 |
8e2f9d0fa72d
mod_uptime: Add scansion test coverage
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
9 Romeo connects |
8e2f9d0fa72d
mod_uptime: Add scansion test coverage
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
10 |
8e2f9d0fa72d
mod_uptime: Add scansion test coverage
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
11 Romeo sends: |
8e2f9d0fa72d
mod_uptime: Add scansion test coverage
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
12 <iq id='a' type='get' to='localhost'> |
8e2f9d0fa72d
mod_uptime: Add scansion test coverage
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
13 <query xmlns='jabber:iq:last'/> |
8e2f9d0fa72d
mod_uptime: Add scansion test coverage
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
14 </iq> |
8e2f9d0fa72d
mod_uptime: Add scansion test coverage
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
15 |
8e2f9d0fa72d
mod_uptime: Add scansion test coverage
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
16 Romeo receives: |
8e2f9d0fa72d
mod_uptime: Add scansion test coverage
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
17 <iq type='result' id='a' from='localhost'> |
8e2f9d0fa72d
mod_uptime: Add scansion test coverage
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
18 <query xmlns='jabber:iq:last' seconds='0'/> |
8e2f9d0fa72d
mod_uptime: Add scansion test coverage
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
19 </iq> |
8e2f9d0fa72d
mod_uptime: Add scansion test coverage
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
20 |
8e2f9d0fa72d
mod_uptime: Add scansion test coverage
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
21 Romeo disconnects |