X-Git-Url: https://gapil.gnulinux.it/gitweb/?p=gapil.git;a=blobdiff_plain;f=session.tex;h=b53320ce2f6196f8a8a2088bd13b4b870d5ac2e9;hp=9bff74f5564b25e0ba8ef3b3096d88f8ff58d393;hb=1fad076b97ffee3c0507d3fcc4e845185a03483c;hpb=da0899b61653d07d75c8df134906261f1afd2485 diff --git a/session.tex b/session.tex index 9bff74f..b53320c 100644 --- a/session.tex +++ b/session.tex @@ -234,7 +234,8 @@ processo padre, per impostare il valore nel figlio, che da quest'ultimo, per sé stesso, in modo che il cambiamento di \textit{process group} sia immediato per entrambi; una delle due chiamate sarà ridondante, ma non potendo determinare quale dei due processi viene eseguito per primo, occorre eseguirle -comunque entrambe per evitare di esporsi ad una race condition. +comunque entrambe per evitare di esporsi ad una race +condition\index{race condition}. Si noti come nessuna delle funzioni esaminate finora permetta di spostare un processo da una sessione ad un altra; infatti l'unico modo di far cambiare @@ -560,8 +561,8 @@ valori per le variabili di ambiente, come \texttt{HOME}, \texttt{SHELL}, ecc. Infine attraverso l'uso di \func{setuid}, \func{setpid} e \func{initgroups} verrà cambiata l'identità del proprietario del processo, infatti, come spiegato in \secref{sec:proc_setuid}, avendo invocato tali funzioni con i -privilegi di amministratore, tutti gli userid ed i groupid (reali, effettivi e -salvati) saranno settati a quelli dell'utente. +privilegi di amministratore, tutti gli user-ID ed i group-ID (reali, effettivi +e salvati) saranno settati a quelli dell'utente. A questo punto \cmd{login} provvederà (fatte salve eventuali altre azioni iniziali, come la stampa di messaggi di benvenuto o il controllo della posta) @@ -1091,7 +1092,7 @@ ulteriori informazioni.\footnote{la definizione della struttura si trova in \begin{figure}[!htb] \footnotesize \centering \begin{minipage}[c]{15cm} - \begin{lstlisting}[labelstep=0]{} + \begin{lstlisting}[stepnumber=0]{} struct termios { tcflag_t c_iflag; /* input modes */ tcflag_t c_oflag; /* output modes */ @@ -1283,7 +1284,7 @@ della maschera, i valori da immettere infatti (quelli riportati nella spiegazione corrispondente) sono numerici e non per bit, per cui possono sovrapporsi fra di loro. Occorrerà perciò utilizzare un codice del tipo: -\begin{lstlisting}[labelstep=0,frame=,indent=1cm]{}% +\begin{lstlisting}[stepnumber=0,frame=]{} c_oflag &= (~CRDLY); c_oflag |= CR1; \end{lstlisting} @@ -1555,7 +1556,7 @@ completo dei caratteri di controllo, con le costanti e delle funzionalit associate è riportato in \tabref{tab:sess_termios_cc}, usando quelle definizioni diventa possibile assegnare un nuovo carattere di controllo con un codice del tipo: -\begin{lstlisting}[labelstep=0,frame=,indent=1cm]{}% +\begin{lstlisting}[stepnumber=0,frame=]{} value.c_cc[VEOL2] = '\n'; \end{lstlisting} @@ -1651,7 +1652,7 @@ chiamata a \func{tcgetattr} che essi siano stati eseguiti tutti quanti. \begin{figure}[!htb] \footnotesize - \begin{lstlisting}{}% + \begin{lstlisting}{} #include #include #include @@ -1703,7 +1704,7 @@ o uscendo normalmente. \begin{figure}[!htb] \footnotesize - \begin{lstlisting}{}% + \begin{lstlisting}{} int UnSetTermAttr(int fd, tcflag_t flag) { struct termios values; @@ -1900,7 +1901,7 @@ La funzione agisce sul terminale associato a \param{fd}, l'argomento entrambe), operare. Esso può prendere i valori riportati in \tabref{tab:sess_tcflush_queue}, nel caso si specifichi la coda di ingresso cancellerà i dati ricevuti ma non ancora letti, nel caso si specifichi la coda -di uscita cancellerài dati scritti ma non ancora trasmessi. +di uscita cancellerà i dati scritti ma non ancora trasmessi. \begin{table}[htb] \footnotesize @@ -1930,7 +1931,7 @@ dei dati sul terminale; il suo prototipo \funcdecl{int tcflow(int fd, int action)} - Sospende e rivvia il flusso dei dati sul terminale. + Sospende e riavvia il flusso dei dati sul terminale. \bodydesc{La funzione restituisce 0 in caso di successo e -1 in caso di errore, nel qual caso \var{errno} assumerà i valori \errval{EBADF} o