(vedi sez.~\ref{sec:file_work_dir} e sez.~\ref{sec:file_chroot});
\item la maschera dei permessi di creazione dei file (vedi
sez.~\ref{sec:file_perm_management});
-\item la \index{maschera~dei~segnali} maschera dei segnali bloccati (vedi
+\item la maschera dei segnali bloccati (vedi
sez.~\ref{sec:sig_sigmask}) e le azioni installate (vedi
sez.~\ref{sec:sig_gen_beha});
\item i segmenti di memoria condivisa agganciati al processo (vedi
tradizionalmente gli 8 bit meno significativi sono riservati per memorizzare
lo \itindex{exit~status} stato di uscita del processo, e gli altri per
indicare il segnale che ha causato la terminazione (in caso di conclusione
-anomala), uno per indicare se è stato generato un \itindex{core~dump}
-\textit{core dump} (vedi sez.~\ref{sec:sig_standard}), ecc.\footnote{le
- definizioni esatte si possono trovare in \file{<bits/waitstatus.h>} ma
- questo file non deve mai essere usato direttamente, esso viene incluso
- attraverso \file{<sys/wait.h>}.}
+anomala), uno per indicare se è stato generato un \textit{core dump} (vedi
+sez.~\ref{sec:sig_standard}), ecc.\footnote{le definizioni esatte si possono
+ trovare in \file{<bits/waitstatus.h>} ma questo file non deve mai essere
+ usato direttamente, esso viene incluso attraverso \file{<sys/wait.h>}.}
\begin{table}[!htb]
\centering
\val{WIFSIGNALED} ha restituito un
valore non nullo.\\
\macro{WCOREDUMP}\texttt{(s)} & Vera se il processo terminato ha
- generato un file di \itindex{core~dump}
+ generato un file di
\textit{core dump}; può essere valutata
solo se \val{WIFSIGNALED} ha restituito
un valore non nullo.\footnotemark \\
\const{CLD\_DUMPED} a indicare la ragione del ritorno della funzione, il cui
significato è, nell'ordine: uscita normale, terminazione da segnale,
processo fermato, processo riavviato, processo terminato in
- \itindex{core~dump} \textit{core dump} (vedi sez.~\ref{sec:sig_standard}).
+ \textit{core dump} (vedi sez.~\ref{sec:sig_standard}).
\end{basedescript}
Infine Linux, seguendo un'estensione di BSD, supporta altre due funzioni per
% TODO ===========Importante=============
% TODO questo sotto è incerto, verificare
% TODO ===========Importante=============
-\item la \index{maschera~dei~segnali} maschera dei segnali (si veda
- sez.~\ref{sec:sig_sigmask}).
+\item la maschera dei segnali (si veda sez.~\ref{sec:sig_sigmask}).
\end{itemize*}
Una serie di proprietà del processo originale, che non avrebbe senso mantenere
\item[\const{PR\_SET\_DUMPABLE}] Imposta il flag che determina se la
terminazione di un processo a causa di un segnale per il quale è prevista la
- generazione di un file di \itindex{core~dump} \textit{core dump} (vedi
+ generazione di un file di \textit{core dump} (vedi
sez.~\ref{sec:sig_standard}) lo genera effettivamente. In genere questo flag
viene attivato automaticamente, ma per evitare problemi di sicurezza (la
generazione di un file da parte di processi privilegiati può essere usata
per sovrascriverne altri) viene cancellato quando si mette in esecuzione un
programma con i bit \acr{suid} e \acr{sgid} attivi (vedi
sez.~\ref{sec:file_special_perm}) o con l'uso delle funzioni per la modifica
- degli \ids{UID} dei processi (vedi sez.~\ref{sec:proc_setuid}).
+ degli \ids{UID} dei processi (vedi sez.~\ref{sec:proc_setuid}).
L'operazione è stata introdotta a partire dal kernel 2.3.20, fino al kernel
2.6.12 e per i kernel successivi al 2.6.17 era possibile usare solo un
valore 0 di \param{arg2} per disattivare il flag ed un valore 1 per
attivarlo. Nei kernel dal 2.6.13 al 2.6.17 è stato supportato anche il
- valore 2, che causava la generazione di un \itindex{core~dump} \textit{core
- dump} leggibile solo dall'amministratore, ma questa funzionalità è stata
- rimossa per motivi di sicurezza, in quanto consentiva ad un utente normale
- di creare un file di \textit{core dump} appartenente all'amministratore in
- directory dove l'utente avrebbe avuto permessi di accesso.
+ valore 2, che causava la generazione di un \textit{core dump} leggibile solo
+ dall'amministratore, ma questa funzionalità è stata rimossa per motivi di
+ sicurezza, in quanto consentiva ad un utente normale di creare un file di
+ \textit{core dump} appartenente all'amministratore in directory dove
+ l'utente avrebbe avuto permessi di accesso.
\item[\const{PR\_GET\_DUMPABLE}] Ottiene come valore di ritorno della funzione
lo stato corrente del flag che controlla la effettiva generazione dei
- \itindex{core~dump} \textit{core dump}. Introdotta a partire dal kernel
- 2.3.20.
+ \textit{core dump}. Introdotta a partire dal kernel 2.3.20.
\item[\const{PR\_SET\_ENDIAN}] Imposta la \itindex{endianness}
\textit{endianness} del processo chiamante secondo il valore fornito
vendere la capacità di calcolo della proprio macchina ad un qualche
servizio di calcolo distribuito senza comprometterne la sicurezza
eseguendo codice non sotto il proprio controllo.} in genere i dati vengono
- letti o scritti grazie ad un socket o una pipe, e per evitare problemi di
- sicurezza non sono possibili altre operazioni se non quelle citate.
- Introdotta a partire dal kernel 2.6.23, disponibile solo se si è abilitato
- il supporto nel kernel con \texttt{CONFIG\_SECCOMP}.
+ letti o scritti grazie ad un socket o una \textit{pipe}, e per evitare
+ problemi di sicurezza non sono possibili altre operazioni se non quelle
+ citate. Introdotta a partire dal kernel 2.6.23, disponibile solo se si è
+ abilitato il supporto nel kernel con \texttt{CONFIG\_SECCOMP}.
% TODO a partire dal kernel 3.5 è stato introdotto la possibilità di usare un
% terzo argomento se il secondo è SECCOMP_MODE_FILTER, vedi
% http://lwn.net/Articles/529060/)
% TODO: trattare PTRACE_GETSIGMASK e PTRACE_SETSIGMASK introdotte con il
% kernel 3.11
-
-
+% TODO: trattare PTRACE_O_SUSPEND_SECCOMP, aggiunta con il kernel 4.3, vedi
+% http://lwn.net/Articles/656675/
\subsection{La gestione delle operazioni in virgola mobile}
\label{sec:process_fenv}