X-Git-Url: https://gapil.gnulinux.it/gitweb/?p=gapil.git;a=blobdiff_plain;f=fileunix.tex;h=4ea7eb9895ea8e7787cb56cfe4a251fccf8d60ff;hp=37b090626418cd83b16726298ba994c89f3418b4;hb=06a411c6242a35082817a74e9a86ec226d8bf0e3;hpb=81ff87c3e2a6ecd3e33867798cba0d27576f44d0 diff --git a/fileunix.tex b/fileunix.tex index 37b0906..4ea7eb9 100644 --- a/fileunix.tex +++ b/fileunix.tex @@ -252,7 +252,8 @@ sempre il file descriptor con il valore pi opzione è ignorata. \\ \macro{O\_DIRECTORY} & se \var{pathname} non è una directory la chiamata fallisce. Questo flag è specifico di Linux ed è stato introdotto con il - kernel 2.1.126 per evitare dei DoS\protect\footnotemark\ quando + kernel 2.1.126 per evitare dei + \textit{DoS}\index{DoS}\protect\footnotemark\ quando \func{opendir} viene chiamata su una fifo o su un device di unità a nastri, non deve essere utilizzato al di fuori dell'implementazione di \func{opendir}. \\ @@ -1000,8 +1001,9 @@ valori di \tabref{tab:file_open_flags}). \item[\macro{F\_SETFL}] setta il \textit{file status flag} al valore specificato da \param{arg}, possono essere settati solo i bit riportati - nella terza sezione di \tabref{tab:file_open_flags}.\footnote{NdA da - verificare.} + nella terza sezione di \tabref{tab:file_open_flags}.\footnote{la man page + riporta come settabili solo \macro{O\_APPEND}, \macro{O\_NONBLOCK} e + \macro{O\_ASYNC}.} \item[\macro{F\_GETLK}] se un file lock è attivo restituisce nella struttura \param{lock} la struttura \type{flock} che impedisce l'acquisizione del blocco, altrimenti setta il campo \var{l\_type} a \macro{F\_UNLCK} (per i @@ -1037,13 +1039,17 @@ valori del segnale come \var{sa\_sigaction} usando \macro{SA\_SIGINFO}, (vedi \secref{sec:sig_sigaction}), di rendere disponibili al manipolatore informazioni ulteriori informazioni riguardo il file che ha generato il - segnale attraverso i valori restituiti in \var{siginfo\_t} (come vedremo in - \secref{sec:file_asyncronous_io}). + segnale attraverso i valori restituiti in \type{siginfo\_t} (come vedremo in + \secref{sec:file_asyncronous_io}).\footnote{i due comandi \macro{F\_SETSIG} + e \macro{F\_GETSIG} sono una estensione specifica di Linux.} \end{basedescript} La maggior parte delle funzionalità di \func{fcntl} sono troppo avanzate per poter essere affrontate in dettaglio a questo punto; saranno riprese più -avanti quando affronteremo le problematiche ad esse relative. +avanti quando affronteremo le problematiche ad esse relative (in particolare +riprenderemo le tematiche relative all'I/O asincrono in +\secref{sec:file_asyncronous_io} e quelle relative al \textit{file locking} in +\secref{sec:file_locking}). Per determinare le modalità di accesso inoltre è necessario estrarre i bit di accesso (ottenuti con il comando \macro{F\_GETFL}); infatti la definizione