call} quando vengono interrotte dal suddetto
segnale, riproduce cioè il comportamento standard
di BSD.\\
+ \constd{SA\_RESTORER} & Ad uso delle implementazioni delle liberie del C,
+ non deve essere usato nelle applicazioni, serve ad
+ indicare che il campo \var{sa\_restorer} contiene
+ l'indirizzo di un cosiddetto \textit{signal
+ trampoline}.\footnotemark \\
\constd{SA\_SIGINFO} & Deve essere specificato quando si vuole usare un
gestore in forma estesa usando
\var{sa\_sigaction} al posto di
\label{tab:sig_sa_flag}
\end{table}
+\footnotetext{il \itindex{signal~trampoline} \textit{signal trampoline} è il
+ codice usato per tornare da un gestore di segnali, che originariamente
+ veniva inserito nello \textit{stack}, ma i kernel recenti come misura di
+ sicurezza impediscono l'esecuzione di codice dallo stack, per cui questo
+ codice viene spostato altrove (ad esempio nella libreria del C) ed il suo
+ indirizzo viene indicato al kernel nel campo \var{sa\_restorer}.}
+
Come si può notare in fig.~\ref{fig:sig_sigaction} \func{sigaction} permette
di utilizzare due forme diverse di gestore,\footnote{la possibilità è prevista
dallo standard POSIX.1b, ed è stata aggiunta nei kernel della serie 2.1.x
\label{sec:sig_pid_fd}
-% TODO: trattare (qui?) pidfd_send_signal() introdotta con il kernel 5.1 vedi
+% TODO: trattare (qui? oppure sopra in "Ulteriori funzioni di gestione?)
+% pidfd_send_signal() introdotta con il kernel 5.1 vedi
% https://lwn.net/Articles/784831/, https://lwn.net/Articles/773459/ e
-% https://lwn.net/Articles/801319/
-% oppure sopra in "Ulteriori funzioni di gestione"
+% https://lwn.net/Articles/801319/
% TODO: Nuova subsection sui pidfd, e le funzioni correlate, in particolare:
% trattare pidfd_send_signal, aggiunta con il kernel 5.1 (vedi
% trattare pure pidfd_open() (vedi https://lwn.net/Articles/789023/) per
% ottere un pid fd pollabile aggiunta con il kernel 5.3
% man pidfd_send_signal su le versioni più recenti della man pages
-
+% trattare pidfd_getfd aggiunta con il kernel 5.6