\hypertarget{structiobuf}{
\section{iobuf Struct Reference}
\label{structiobuf}\index{iobuf@{iobuf}}
}
{\tt \#include $<$common.h$>$}

\subsection*{Data Fields}
\begin{CompactItemize}
\item 
int \hyperlink{structiobuf_39fefd983790dde768ea2d6ce7f39753}{fd}
\item 
char $\ast$ \hyperlink{structiobuf_3e5ab042bc7ae0de23cbb37576c7d440}{buffer}
\item 
unsigned \hyperlink{structiobuf_8c7a5c6de1c07bce9ae1b9e92ae43ec1}{bufsize}
\item 
unsigned \hyperlink{structiobuf_cdd25d09435430775e0e0978a93255db}{buflen}
\item 
unsigned \hyperlink{structiobuf_d40dc3e7f45409eb0e517f33ecf09fda}{bufstart}
\item 
unsigned \hyperlink{structiobuf_06aea14c129c6dad509acee84e22a60c}{offset}
\item 
unsigned \hyperlink{structiobuf_f14cd5b09990519bd52b08119e22cb74}{timeout}
\item 
unsigned \hyperlink{structiobuf_d72c10a4d7e1072bb6e45c972a1ddcf4}{flags}
\item 
int \hyperlink{structiobuf_423f0d37d10f4d2c5c19adef80519fdd}{errnum}
\end{CompactItemize}


\subsection{Detailed Description}
The base I/O buffer structure. 

\subsection{Field Documentation}
\hypertarget{structiobuf_39fefd983790dde768ea2d6ce7f39753}{
\index{iobuf@{iobuf}!fd@{fd}}
\index{fd@{fd}!iobuf@{iobuf}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int {\bf iobuf::fd}}}
\label{structiobuf_39fefd983790dde768ea2d6ce7f39753}


File descriptor being buffered. \hypertarget{structiobuf_3e5ab042bc7ae0de23cbb37576c7d440}{
\index{iobuf@{iobuf}!buffer@{buffer}}
\index{buffer@{buffer}!iobuf@{iobuf}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}char$\ast$ {\bf iobuf::buffer}}}
\label{structiobuf_3e5ab042bc7ae0de23cbb37576c7d440}


The buffer memory. \hypertarget{structiobuf_8c7a5c6de1c07bce9ae1b9e92ae43ec1}{
\index{iobuf@{iobuf}!bufsize@{bufsize}}
\index{bufsize@{bufsize}!iobuf@{iobuf}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}unsigned {\bf iobuf::bufsize}}}
\label{structiobuf_8c7a5c6de1c07bce9ae1b9e92ae43ec1}


Total buffer size. \hypertarget{structiobuf_cdd25d09435430775e0e0978a93255db}{
\index{iobuf@{iobuf}!buflen@{buflen}}
\index{buflen@{buflen}!iobuf@{iobuf}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}unsigned {\bf iobuf::buflen}}}
\label{structiobuf_cdd25d09435430775e0e0978a93255db}


Length of the data in the buffer. \hypertarget{structiobuf_d40dc3e7f45409eb0e517f33ecf09fda}{
\index{iobuf@{iobuf}!bufstart@{bufstart}}
\index{bufstart@{bufstart}!iobuf@{iobuf}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}unsigned {\bf iobuf::bufstart}}}
\label{structiobuf_d40dc3e7f45409eb0e517f33ecf09fda}


Start of the data in the buffer. \hypertarget{structiobuf_06aea14c129c6dad509acee84e22a60c}{
\index{iobuf@{iobuf}!offset@{offset}}
\index{offset@{offset}!iobuf@{iobuf}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}unsigned {\bf iobuf::offset}}}
\label{structiobuf_06aea14c129c6dad509acee84e22a60c}


Current file read/write offset. \hypertarget{structiobuf_f14cd5b09990519bd52b08119e22cb74}{
\index{iobuf@{iobuf}!timeout@{timeout}}
\index{timeout@{timeout}!iobuf@{iobuf}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}unsigned {\bf iobuf::timeout}}}
\label{structiobuf_f14cd5b09990519bd52b08119e22cb74}


I/O timeout in ms ({\tt 0} for no timeout). \hypertarget{structiobuf_d72c10a4d7e1072bb6e45c972a1ddcf4}{
\index{iobuf@{iobuf}!flags@{flags}}
\index{flags@{flags}!iobuf@{iobuf}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}unsigned {\bf iobuf::flags}}}
\label{structiobuf_d72c10a4d7e1072bb6e45c972a1ddcf4}


Status flags. \hypertarget{structiobuf_423f0d37d10f4d2c5c19adef80519fdd}{
\index{iobuf@{iobuf}!errnum@{errnum}}
\index{errnum@{errnum}!iobuf@{iobuf}}
\subsubsection{\setlength{\rightskip}{0pt plus 5cm}int {\bf iobuf::errnum}}}
\label{structiobuf_423f0d37d10f4d2c5c19adef80519fdd}


Saved errno flag. 

The documentation for this struct was generated from the following file:\begin{CompactItemize}
\item 
iobuf/common.h\end{CompactItemize}
