Skip to main content

Module service_request

Module service_request 

Source
Expand description

Asking the running service to do something this process cannot.

The service shares its state directory with the account that installed it, so a request left there is a channel both sides can use with no privilege and no socket. The asking command leaves a request under an identifier it chose; the service takes the request by deleting it, which is how the command knows somebody is listening; and the service answers under the same identifier, which is how the command knows the answer is to this request.

GITHUB_DISCOVERY gives every request its own pair of files under service-requests/, so commands asking at once do not displace each other. CACHE_PRUNE keeps the single pair of files it was introduced with, which a service from that release still reads.

Structs§

Channel
One kind of request and its answers.
Wait
How long a command waits on the service, and how often it looks.

Enums§

AskError
Why a command got no answer.

Constants§

CACHE_PRUNE
host cache prune for a cache root this account cannot write: the root of a service running as another account (LocalSystem on Windows, root elsewhere).
GITHUB_DISCOVERY
What the stored GitHub credential reaches, asked of the service by a command that cannot read the credential itself.
POLL
How often the service looks for a request.