imsd/interfaces
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Jorijn van der Graaf a00b14a5a9
engine: a refused refresh with a Retry-After escalates to a fresh registration at once
RegRecovery retried a refused refresh once over the same registration
before escalating, on the reading that one 503 may be a hiccup. A
refusal whose Retry-After is at least a second is the network's
considered answer: on O2 UK (2026-10-08, imsd 0.3.10) the keepalive was
refused 503 with Retry-After 414 and the refresh after that wait 503
with Retry-After 772, so 0.3.10 scheduled the fresh registration no
earlier than 414 + 772 s after the keepalive's refusal. Refusals
without such a Retry-After (none, 0, unparsable) keep the two-refusal
rule, so KPN's bare 403 is unchanged.

Tested with the Engine suite, whose checks of a refusal carrying a
Retry-After now expect the fresh step.
2026-10-10 21:00:28 +02:00
..
Imsd-Aka.cppm imsd 0.2.7 — initial public snapshot 2026-07-22 23:04:21 +02:00
Imsd-Engine.cppm engine: a refused refresh with a Retry-After escalates to a fresh registration at once 2026-10-10 21:00:28 +02:00
Imsd-Ipsec.cppm ims-pdn-up, imsd: register on the PDN's own address, not the kernel's temporary one 2026-10-06 14:01:33 +02:00
Imsd-Messages.cppm sip: UDP for the protected leg, TCP first with a fallback 2026-09-17 16:22:22 +02:00
Imsd-Sdp.cppm engine/sdp: CODECS override for the codecs we offer and accept 2026-09-08 17:53:26 +02:00
Imsd-Sip.cppm engine: keep the reg-event subscription alive and act on a terminated binding 2026-10-06 14:01:33 +02:00
Imsd-Util.cppm imsd 0.2.7 — initial public snapshot 2026-07-22 23:04:21 +02:00
Imsd.cppm imsd 0.2.7 — initial public snapshot 2026-07-22 23:04:21 +02:00
ImsdBus.cppm imsd, imsd-ofonod: let polkit decide call control, not the account name 2026-10-06 14:01:33 +02:00