Switch IMAP, POP3 and ManageSieve on and off one at a time #32

Merged
jcoffey-dev merged 1 commits from feature/per-protocol-switches into main 2026-09-28 06:26:39 +00:00
Owner

Hardening page: a switch per protocol row with ports and recent users; one off asks first; the kill-all keeps its statement and typed phrase; status says which are off. Tenant pages get the same three switches.

Needs inbuxa-server feature/per-protocol-switches; an older server's single switch reads as all three.

Tested: unit tests, typecheck, lint; headless Chrome against a local server on that branch (POP3 off and on server-wide, ManageSieve off and on for a tenant).

Hardening page: a switch per protocol row with ports and recent users; one off asks first; the kill-all keeps its statement and typed phrase; status says which are off. Tenant pages get the same three switches. Needs inbuxa-server `feature/per-protocol-switches`; an older server's single switch reads as all three. Tested: unit tests, typecheck, lint; headless Chrome against a local server on that branch (POP3 off and on server-wide, ManageSieve off and on for a tenant).
jcoffey-dev added 1 commit 2026-09-28 06:24:50 +00:00
Switch IMAP, POP3 and ManageSieve on and off one at a time
ci / build (pull_request) Successful in 1m17s
ci / publish (pull_request) Skipped
680542ed9f
Settings › Security › Hardening puts a switch on each of the three
protocols' rows, beside its ports and a count of the accounts that
used it in the last 30 days. Turning one off asks first, naming who
used it lately and the ports that close; turning one back on is one
click. The kill-all stays as "Turn off all legacy protocols…" with the
full statement and the typed phrase, and the status card says which
are off when only some are ("POP3 is off on this server. Mail apps can
still use IMAP and ManageSieve, and send."), with "Turn them all back
on". A listener that failed to reopen is retried by turning its
protocol on again.

Each tenant's page gets the same three switches (no ports: a tenant's
switch closes none). A server administrator sees a protocol that is
off server-wide as such, its switch disabled; inside a tenant the
server refuses it and the toast says which protocol.

Reads the per-protocol properties from inbuxa-server's
feature/per-protocol-switches; from an older server, legacyProtocols
stands for all three, so the page keeps working.

Tested: unit tests (reading each switch and an older server's one,
per-row ports while off and on, one protocol's recent users);
typecheck and lint; and in headless Chrome against a local server on
that branch: POP3 off through its dialog, the page reading "POP3 is off
on this server" with its port closed, and back on; ManageSieve off and
on for a tenant.
jcoffey-dev merged commit 8e281e5b8b into main 2026-09-28 06:26:39 +00:00
jcoffey-dev deleted branch feature/per-protocol-switches 2026-09-28 06:26:39 +00:00
Sign in to join this conversation.