Aggiunte durante l'attesa dell'installazione
authorSimone Piccardi <piccardi@gnulinux.it>
Thu, 22 May 2008 13:39:06 +0000 (13:39 +0000)
committerSimone Piccardi <piccardi@gnulinux.it>
Thu, 22 May 2008 13:39:06 +0000 (13:39 +0000)
filedir.tex

index 9216ca0b9668aab9bebf5dc18e2a93be48d584fc..25accb78b06010752c0e3dca2f0dd424526c5ed4 100644 (file)
@@ -3181,7 +3181,7 @@ queste funzioni che prendiamo in esame 
   Inizializza un'area di lavoro per una ACL di \param{count} voci.
   
   \bodydesc{La funzione restituisce un puntatore all'area di lavoro in caso di
-    successo e \const{NULL} in caso di errore nel qual caso \var{errno}
+    successo e \const{NULL} in caso di errore, nel qual caso \var{errno}
     assumerà uno dei valori:
   \begin{errlist}
   \item[\errcode{EINVAL}] il valore di \param{count} è negativo.
@@ -3242,7 +3242,7 @@ con la funzione \funcd{acl\_dup}, il cui prototipo 
   Crea una copia della ACL \param{acl}.
   
   \bodydesc{La funzione restituisce un oggetto di tipo \type{acl\_t} in caso
-    di successo e \code{(acl\_t)NULL} in caso di errore nel qual caso
+    di successo e \code{(acl\_t)NULL} in caso di errore, nel qual caso
     \var{errno} assumerà uno dei valori:
   \begin{errlist}
   \item[\errcode{EINVAL}] l'argomento \param{acl} non è un puntatore valido
@@ -3274,7 +3274,7 @@ di permessi ordinari, il prototipo della funzione 
   Crea una ACL inizializzata con i permessi di \param{mode}.
   
   \bodydesc{La funzione restituisce un oggetto di tipo \type{acl\_t} in caso
-    di successo e \code{(acl\_t)NULL} in caso di errore nel qual caso
+    di successo e \code{(acl\_t)NULL} in caso di errore, nel qual caso
     \var{errno} assumerà il valore \errval{ENOMEM}.
 
 }
@@ -3301,7 +3301,7 @@ sono:
   Ottiene i dati delle ACL di un file.
   
   \bodydesc{La funzione restituisce un oggetto di tipo \type{acl\_t} in caso
-    di successo e \code{(acl\_t)NULL} in caso di errore nel qual caso
+    di successo e \code{(acl\_t)NULL} in caso di errore, nel qual caso
     \var{errno} assumerà uno dei valori:
   \begin{errlist}
   \item[\errcode{ENOMEM}] non c'è memoria sufficiente per allocare i dati.
@@ -3322,7 +3322,7 @@ tramite un file descriptor usando \func{acl\_get\_fd} o con un pathname usando
 anche la ACL relativa ad una directory, il secondo argomento \param{type}
 consente di specificare se si vuole ottenere la ACL di default o quella di
 accesso. Questo argomento deve essere di tipo \type{acl\_type\_t} e può
-assumere solo i due valori riportati in tab.~\ref{tab:acl_type},
+assumere solo i due valori riportati in tab.~\ref{tab:acl_type}.
 
 \begin{table}[htb]
   \centering
@@ -3347,6 +3347,38 @@ inoltre una ACL di tipo \const{ACL\_TYPE\_DEFAULT} potr
 soltanto per una directory, e verrà restituita solo se presente, altrimenti
 verrà restituita una ACL vuota.
 
+Infine si potrà creare una ACL direttamente dalla sua rappresentazione
+testuale con la funzione  \funcd{acl\_from\_text}, il cui prototipo è:
+\begin{functions}
+  \headdecl{sys/types.h} 
+  \headdecl{sys/acl.h}
+  
+  \funcdecl{acl\_t acl\_from\_text(const char *buf\_p)}
+
+  Crea una ACL a partire dalla sua rappresentazione testuale.
+  
+  \bodydesc{La funzione restituisce un oggetto di tipo \type{acl\_t} in caso
+    di successo e \code{(acl\_t)NULL} in caso di errore, nel qual caso
+    \var{errno} assumerà uno dei valori:
+  \begin{errlist}
+  \item[\errcode{ENOMEM}] non c'è memoria sufficiente per allocare i dati.
+  \item[\errcode{EINVAL}] la rappresentazione testuale all'indirizzo
+    \param{buf\_p} non è valida.
+  \end{errlist}
+
+}
+\end{functions}
+
+La rappresentazione testuale di una ACL è quella usata anche dai comandi
+ordinari per la gestione delle ACL (\texttt{getfacl} e \texttt{setfacl}), che
+prevede due diverse forme, estesa e breve, entrambe supportate da
+\func{acl\_from\_text}. La forma estesa prevede che sia specificata una voce
+per riga, nella forma:
+\begin{Verbatim}
+  tipo:qualificatore:permessi
+\end{Verbatim}
+dove il tipo può essere 
+
 \itindend{Access~Control~List}