%% filedir.tex
%%
-%% Copyright (C) 2000-2010 Simone Piccardi. Permission is granted to
+%% Copyright (C) 2000-2011 Simone Piccardi. Permission is granted to
%% copy, distribute and/or modify this document under the terms of the GNU Free
%% Documentation License, Version 1.1 or any later version published by the
%% Free Software Foundation; with the Invariant Sections being "Un preambolo",
\begin{functions}
\headdecl{unistd.h} \funcdecl{int truncate(const char *file\_name, off\_t
length)} Fa si che la dimensione del file \param{file\_name} sia troncata
- ad un valore massimo specificato da \param{lenght}.
+ ad un valore massimo specificato da \param{length}.
\funcdecl{int ftruncate(int fd, off\_t length))} Identica a \func{truncate}
eccetto che si usa con un file aperto, specificato tramite il suo file
consiste nel cancellare automaticamente questi bit dai permessi di un file
qualora un processo che non appartenga all'amministratore\footnote{per la
precisione un processo che non dispone della \itindex{capabilities} capacità
- \const{CAP\_FSETID}.} effettui una scrittura. In questo modo anche se un
-utente malizioso scopre un file \acr{suid} su cui può scrivere, un'eventuale
-modifica comporterà la perdita di questo privilegio.
+ \const{CAP\_FSETID}, vedi sez.~\ref{sec:proc_capabilities}.} effettui una
+scrittura. In questo modo anche se un utente malizioso scopre un file
+\acr{suid} su cui può scrivere, un'eventuale modifica comporterà la perdita di
+questo privilegio.
Le funzioni \func{chmod} e \func{fchmod} ci permettono di modificare i
permessi di un file, resta però il problema di quali sono i permessi assegnati
potessero essere abilitate e disabilitate in maniera indipendente per ciascun
processo con privilegi di amministratore, permettendo così una granularità
molto più fine nella distribuzione degli stessi che evitasse la originaria
-situazione di \textsl{tutto o nulla}.
+situazione di ``\textsl{tutto o nulla}''.
Il meccanismo completo delle \textit{capabilities}\footnote{l'implementazione
si rifà ad una bozza di quello che doveva diventare lo standard POSIX.1e,
- ormai abbandonato.} prevede inoltre la possibilità di associare le stesse ai
+ poi abbandonato.} prevede inoltre la possibilità di associare le stesse ai
singoli file eseguibili, in modo da poter stabilire quali capacità possono
essere utilizzate quando viene messo in esecuzione uno specifico programma; ma
il supporto per questa funzionalità è stato introdotto soltanto a partire dal
\textbf{Nome} & \textbf{Descrizione} \\
\hline
\hline
- \const{security}& Gli \textit{extended security attributes}: vengono
+ \texttt{security}&Gli \textit{extended security attributes}: vengono
utilizzati dalle estensioni di sicurezza del kernel (i
\itindex{Linux~Security~Modules} \textit{Linux
Security Modules}), per le realizzazione di meccanismi
evoluti di controllo di accesso come \index{SELinux}
SELinux o le \textit{capabilities} dei file di
sez.~\ref{sec:proc_capabilities}.\\
- \const{system} & Gli \textit{extended security attributes}: sono usati
+ \texttt{system} & Gli \textit{extended security attributes}: sono usati
dal kernel per memorizzare dati di sistema associati ai
file come le \itindex{Access~Control~List} ACL (vedi
sez.~\ref{sec:file_ACL}) o le \itindex{capabilities}
\textit{capabilities} (vedi
sez.~\ref{sec:proc_capabilities}).\\
- \const{trusted} & I \textit{trusted extended attributes}: vengono
+ \texttt{trusted}& I \textit{trusted extended attributes}: vengono
utilizzati per poter realizzare in user space
meccanismi che consentano di mantenere delle
informazioni sui file che non devono essere accessibili
ai processi ordinari.\\
- \const{user} & Gli \textit{extended user attributes}: utilizzati per
+ \texttt{user} & Gli \textit{extended user attributes}: utilizzati per
mantenere informazioni aggiuntive sui file (come il
\textit{mime-type}, la codifica dei caratteri o del
file) accessibili dagli utenti.\\
\end{functions}
La funzione alloca ed inizializza un'area di memoria che verrà usata per
-mantenere i dati di una ACL contenente fino ad un massimo di \const{count}
+mantenere i dati di una ACL contenente fino ad un massimo di \param{count}
voci. La funzione ritorna un valore di tipo \type{acl\_t}, da usare in tutte
le altre funzioni che operano sulla ACL. La funzione si limita alla
allocazione iniziale e non inserisce nessun valore nella ACL che resta vuota.
La funzione consente di assegnare la ACL contenuta in \param{acl} al file o
alla directory indicate dal pathname \param{path}, mentre con \param{type} si
-indica il tipo di ACL utilizzando le constanti di tab.~\ref{tab:acl_type}, ma
+indica il tipo di ACL utilizzando le costanti di tab.~\ref{tab:acl_type}, ma
si tenga presente che le ACL di default possono essere solo impostate
qualora \param{path} indichi una directory. Inoltre perché la funzione abbia
successo la ACL dovrà essere valida, e contenere tutti le voci necessarie,