sprinttable

package
v1.0.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 28, 2026 License: MIT Imports: 3 Imported by: 0

Documentation

Overview

Package sprinttable is what keeps the sprint table's refresh alive across a unit restart: ApplyOwnSession puts the refresh in its own session, and AbandonProcessGroup checks the loop plist stops launchd signalling the unit's process group. The table itself is read from Redis and written nowhere (#3326); there is no published file to keep.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AbandonProcessGroup

func AbandonProcessGroup(plist string) bool

AbandonProcessGroup reports whether a launchd plist template tells launchd not to signal the unit's process group. kickstart -k SIGTERMs that group by default; with this key set, the signal reaches the unit's own pid and a refresh that already called setsid is not killed a second way.

func ApplyOwnSession

func ApplyOwnSession(cmd *exec.Cmd) error

ApplyOwnSession makes cmd a session leader when it execs.

SysProcAttr.Setsid is POSIX setsid() in the child, before exec. Darwin has no setsid(1); this is that call. A child that has called setsid is not in the unit's process group, so launchctl kickstart -k — which SIGTERMs the group launchd is tracking — does not kill the refresh the unit started.

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL