Skip to content

Commit 1391c77

Browse files
committed
Decline the stop-request word, for the reason the SIGPIPE note already gives
Observing a request to end means installing a disposition, and this kernel's `sigaction' takes a structure carrying a trampoline its C library supplies. A disposition installed with the wrong shape shows up as a program dying in a way nobody can trace --- which is the defect the sibling note is about, met from the other side. Not claimed, so a caller that asks first is told.
1 parent 67f62e4 commit 1391c77

1 file changed

Lines changed: 12 additions & 0 deletions

File tree

src/process.cpp

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -236,6 +236,18 @@ int kal_process_terminate(kal_process h) {
236236
return okm::failed(r) ? okm::translate(r) : kal_ok;
237237
}
238238

239+
// ⚠️⚠️ NOT CLAIMED HERE, FOR THE SAME REASON THE SIGPIPE NOTE IN src/env.cpp
240+
// GIVES. Observing a request to end means installing a disposition, and this
241+
// kernel's `sigaction' takes a structure carrying a TRAMPOLINE its C library
242+
// supplies. A disposition installed with the wrong shape shows up as a program
243+
// dying in a way nobody can trace --- and a facility this repository has not
244+
// MEASURED is exactly what it refuses to claim elsewhere.
245+
//
246+
// ⇒ Null, and KAL_PROCESS_PROP_STOP_REQUESTED unclaimed, so a caller that asks
247+
// first is told. The other implementation answers it; this one will when it can
248+
// be exercised here.
249+
const kal_u32* kal_process_stop_requested(void) { return 0; }
250+
239251
// This program itself joins or forms a unit --- what `kal_spawn.job' cannot say,
240252
// because that places a program the caller STARTS and a copy wishing to lead a
241253
// unit must say so about ITSELF before it replaces itself.

0 commit comments

Comments
 (0)