Sophie

Sophie

distrib > Fedora > 20 > x86_64 > media > updates > by-pkgid > c579c38484b8ffa244858626df1128ca > files > 237

libhtp-doc-0.5.6-3.fc20.noarch.rpm

\hypertarget{htp__multipart__private_8h}{\section{htp\-\_\-multipart\-\_\-private.\-h File Reference}
\label{htp__multipart__private_8h}\index{htp\-\_\-multipart\-\_\-private.\-h@{htp\-\_\-multipart\-\_\-private.\-h}}
}
{\ttfamily \#include \char`\"{}htp\-\_\-multipart.\-h\char`\"{}}\\*
\subsection*{Data Structures}
\begin{DoxyCompactItemize}
\item 
struct \hyperlink{structhtp__mpartp__t}{htp\-\_\-mpartp\-\_\-t}
\end{DoxyCompactItemize}
\subsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\#define \hyperlink{htp__multipart__private_8h_a5eb2e151a2a3cd8fa1319851dc6613ea}{C\-D\-\_\-\-P\-A\-R\-A\-M\-\_\-\-O\-T\-H\-E\-R}~0
\item 
\#define \hyperlink{htp__multipart__private_8h_a43e620adc61859e224de6812cdaf60e8}{C\-D\-\_\-\-P\-A\-R\-A\-M\-\_\-\-N\-A\-M\-E}~1
\item 
\#define \hyperlink{htp__multipart__private_8h_adcabb7cddd456fd88b5be4d14a2fa0cb}{C\-D\-\_\-\-P\-A\-R\-A\-M\-\_\-\-F\-I\-L\-E\-N\-A\-M\-E}~2
\item 
\#define \hyperlink{htp__multipart__private_8h_ab211003862704ac434161fb7d31c9b96}{D\-E\-F\-A\-U\-L\-T\-\_\-\-F\-I\-L\-E\-\_\-\-E\-X\-T\-R\-A\-C\-T\-\_\-\-L\-I\-M\-I\-T}~16
\end{DoxyCompactItemize}
\subsection*{Enumerations}
\begin{DoxyCompactItemize}
\item 
enum \hyperlink{htp__multipart__private_8h_ab028c14c6696b021fa4d0897ab1d0c5a}{htp\-\_\-part\-\_\-mode\-\_\-t} \{ \hyperlink{htp__multipart__private_8h_ab028c14c6696b021fa4d0897ab1d0c5aa9546d8ac24ff9e243d5c6dd2ac11b403}{M\-O\-D\-E\-\_\-\-L\-I\-N\-E} = 0, 
\hyperlink{htp__multipart__private_8h_ab028c14c6696b021fa4d0897ab1d0c5aa18ab79361b04c300e109656acf6107d3}{M\-O\-D\-E\-\_\-\-D\-A\-T\-A} = 1
 \}
\item 
enum \hyperlink{htp__multipart__private_8h_a6cd627720a18a525cbc0da80bbb457e3}{htp\-\_\-multipart\-\_\-state\-\_\-t} \{ \\*
\hyperlink{htp__multipart__private_8h_a6cd627720a18a525cbc0da80bbb457e3a98d2a2153b4ae0445fa0b114d65b94d9}{S\-T\-A\-T\-E\-\_\-\-I\-N\-I\-T} = 0, 
\hyperlink{htp__multipart__private_8h_a6cd627720a18a525cbc0da80bbb457e3a3d3ea9fb2db0c6039f1065b6ee452fe9}{S\-T\-A\-T\-E\-\_\-\-D\-A\-T\-A} = 1, 
\hyperlink{htp__multipart__private_8h_a6cd627720a18a525cbc0da80bbb457e3ac5008cea5142bcf2475a66623c5e19a3}{S\-T\-A\-T\-E\-\_\-\-B\-O\-U\-N\-D\-A\-R\-Y} = 2, 
\hyperlink{htp__multipart__private_8h_a6cd627720a18a525cbc0da80bbb457e3aea0a0bef8d0acba388a82c0a7decb1d0}{S\-T\-A\-T\-E\-\_\-\-B\-O\-U\-N\-D\-A\-R\-Y\-\_\-\-I\-S\-\_\-\-L\-A\-S\-T1} = 3, 
\\*
\hyperlink{htp__multipart__private_8h_a6cd627720a18a525cbc0da80bbb457e3a2832f27e37862f9e36d1a7c172ca0507}{S\-T\-A\-T\-E\-\_\-\-B\-O\-U\-N\-D\-A\-R\-Y\-\_\-\-I\-S\-\_\-\-L\-A\-S\-T2} = 4, 
\hyperlink{htp__multipart__private_8h_a6cd627720a18a525cbc0da80bbb457e3a98415264effca8764534d3da6b898b8f}{S\-T\-A\-T\-E\-\_\-\-B\-O\-U\-N\-D\-A\-R\-Y\-\_\-\-E\-A\-T\-\_\-\-L\-W\-S} = 5, 
\hyperlink{htp__multipart__private_8h_a6cd627720a18a525cbc0da80bbb457e3a78b651290438710447053885fa6dd80d}{S\-T\-A\-T\-E\-\_\-\-B\-O\-U\-N\-D\-A\-R\-Y\-\_\-\-E\-A\-T\-\_\-\-L\-W\-S\-\_\-\-C\-R} = 6
 \}
\end{DoxyCompactItemize}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{htp__core_8h_ab8a71422665c0773654b9b4d96f01e31}{htp\-\_\-status\-\_\-t} \hyperlink{htp__multipart__private_8h_a72b162a6bdf6226c5181a15ddf28ee41}{htp\-\_\-mpartp\-\_\-run\-\_\-request\-\_\-file\-\_\-data\-\_\-hook} (\hyperlink{structhtp__multipart__part__t}{htp\-\_\-multipart\-\_\-part\-\_\-t} $\ast$part, const unsigned char $\ast$data, size\-\_\-t len)
\item 
\hyperlink{htp__core_8h_ab8a71422665c0773654b9b4d96f01e31}{htp\-\_\-status\-\_\-t} \hyperlink{htp__multipart__private_8h_a6acf2acff1d8828fba0df30a9397108c}{htp\-\_\-mpart\-\_\-part\-\_\-process\-\_\-headers} (\hyperlink{structhtp__multipart__part__t}{htp\-\_\-multipart\-\_\-part\-\_\-t} $\ast$part)
\item 
\hyperlink{htp__core_8h_ab8a71422665c0773654b9b4d96f01e31}{htp\-\_\-status\-\_\-t} \hyperlink{htp__multipart__private_8h_ade5c03a799c0f5af2319900fe78a98e0}{htp\-\_\-mpartp\-\_\-parse\-\_\-header} (\hyperlink{structhtp__multipart__part__t}{htp\-\_\-multipart\-\_\-part\-\_\-t} $\ast$part, const unsigned char $\ast$data, size\-\_\-t len)
\item 
\hyperlink{htp__core_8h_ab8a71422665c0773654b9b4d96f01e31}{htp\-\_\-status\-\_\-t} \hyperlink{htp__multipart__private_8h_a368c461de4ad8f9d864f5c29968e6f4a}{htp\-\_\-mpart\-\_\-part\-\_\-handle\-\_\-data} (\hyperlink{structhtp__multipart__part__t}{htp\-\_\-multipart\-\_\-part\-\_\-t} $\ast$part, const unsigned char $\ast$data, size\-\_\-t len, int is\-\_\-line)
\item 
int \hyperlink{htp__multipart__private_8h_a7a8f439ef7958a0ec99e172c008ea4bb}{htp\-\_\-mpartp\-\_\-is\-\_\-boundary\-\_\-character} (int c)
\item 
\hyperlink{structhtp__multipart__part__t}{htp\-\_\-multipart\-\_\-part\-\_\-t} $\ast$ \hyperlink{htp__multipart__private_8h_a852a6833ffbaf5dfd8577aaba8cdcef6}{htp\-\_\-mpart\-\_\-part\-\_\-create} (\hyperlink{structhtp__mpartp__t}{htp\-\_\-mpartp\-\_\-t} $\ast$parser)
\item 
\hyperlink{htp__core_8h_ab8a71422665c0773654b9b4d96f01e31}{htp\-\_\-status\-\_\-t} \hyperlink{htp__multipart__private_8h_adf2e99c5087b2ec07b11bf4df9e2073f}{htp\-\_\-mpart\-\_\-part\-\_\-finalize\-\_\-data} (\hyperlink{structhtp__multipart__part__t}{htp\-\_\-multipart\-\_\-part\-\_\-t} $\ast$part)
\item 
void \hyperlink{htp__multipart__private_8h_afc3a6b77b984cb093dbcd6370c42b887}{htp\-\_\-mpart\-\_\-part\-\_\-destroy} (\hyperlink{structhtp__multipart__part__t}{htp\-\_\-multipart\-\_\-part\-\_\-t} $\ast$part, int gave\-\_\-up\-\_\-data)
\item 
\hyperlink{htp__core_8h_ab8a71422665c0773654b9b4d96f01e31}{htp\-\_\-status\-\_\-t} \hyperlink{htp__multipart__private_8h_ac51272765ee1a5c1b70980a0b96d4ece}{htp\-\_\-mpart\-\_\-part\-\_\-parse\-\_\-c\-\_\-d} (\hyperlink{structhtp__multipart__part__t}{htp\-\_\-multipart\-\_\-part\-\_\-t} $\ast$part)
\end{DoxyCompactItemize}


\subsection{Detailed Description}
\begin{DoxyAuthor}{Author}
Ivan Ristic \href{mailto:ivanr@webkreator.com}{\tt ivanr@webkreator.\-com} 
\end{DoxyAuthor}


\subsection{Macro Definition Documentation}
\hypertarget{htp__multipart__private_8h_adcabb7cddd456fd88b5be4d14a2fa0cb}{\index{htp\-\_\-multipart\-\_\-private.\-h@{htp\-\_\-multipart\-\_\-private.\-h}!C\-D\-\_\-\-P\-A\-R\-A\-M\-\_\-\-F\-I\-L\-E\-N\-A\-M\-E@{C\-D\-\_\-\-P\-A\-R\-A\-M\-\_\-\-F\-I\-L\-E\-N\-A\-M\-E}}
\index{C\-D\-\_\-\-P\-A\-R\-A\-M\-\_\-\-F\-I\-L\-E\-N\-A\-M\-E@{C\-D\-\_\-\-P\-A\-R\-A\-M\-\_\-\-F\-I\-L\-E\-N\-A\-M\-E}!htp_multipart_private.h@{htp\-\_\-multipart\-\_\-private.\-h}}
\subsubsection[{C\-D\-\_\-\-P\-A\-R\-A\-M\-\_\-\-F\-I\-L\-E\-N\-A\-M\-E}]{\setlength{\rightskip}{0pt plus 5cm}\#define C\-D\-\_\-\-P\-A\-R\-A\-M\-\_\-\-F\-I\-L\-E\-N\-A\-M\-E~2}}\label{htp__multipart__private_8h_adcabb7cddd456fd88b5be4d14a2fa0cb}
\hypertarget{htp__multipart__private_8h_a43e620adc61859e224de6812cdaf60e8}{\index{htp\-\_\-multipart\-\_\-private.\-h@{htp\-\_\-multipart\-\_\-private.\-h}!C\-D\-\_\-\-P\-A\-R\-A\-M\-\_\-\-N\-A\-M\-E@{C\-D\-\_\-\-P\-A\-R\-A\-M\-\_\-\-N\-A\-M\-E}}
\index{C\-D\-\_\-\-P\-A\-R\-A\-M\-\_\-\-N\-A\-M\-E@{C\-D\-\_\-\-P\-A\-R\-A\-M\-\_\-\-N\-A\-M\-E}!htp_multipart_private.h@{htp\-\_\-multipart\-\_\-private.\-h}}
\subsubsection[{C\-D\-\_\-\-P\-A\-R\-A\-M\-\_\-\-N\-A\-M\-E}]{\setlength{\rightskip}{0pt plus 5cm}\#define C\-D\-\_\-\-P\-A\-R\-A\-M\-\_\-\-N\-A\-M\-E~1}}\label{htp__multipart__private_8h_a43e620adc61859e224de6812cdaf60e8}
\hypertarget{htp__multipart__private_8h_a5eb2e151a2a3cd8fa1319851dc6613ea}{\index{htp\-\_\-multipart\-\_\-private.\-h@{htp\-\_\-multipart\-\_\-private.\-h}!C\-D\-\_\-\-P\-A\-R\-A\-M\-\_\-\-O\-T\-H\-E\-R@{C\-D\-\_\-\-P\-A\-R\-A\-M\-\_\-\-O\-T\-H\-E\-R}}
\index{C\-D\-\_\-\-P\-A\-R\-A\-M\-\_\-\-O\-T\-H\-E\-R@{C\-D\-\_\-\-P\-A\-R\-A\-M\-\_\-\-O\-T\-H\-E\-R}!htp_multipart_private.h@{htp\-\_\-multipart\-\_\-private.\-h}}
\subsubsection[{C\-D\-\_\-\-P\-A\-R\-A\-M\-\_\-\-O\-T\-H\-E\-R}]{\setlength{\rightskip}{0pt plus 5cm}\#define C\-D\-\_\-\-P\-A\-R\-A\-M\-\_\-\-O\-T\-H\-E\-R~0}}\label{htp__multipart__private_8h_a5eb2e151a2a3cd8fa1319851dc6613ea}
\hypertarget{htp__multipart__private_8h_ab211003862704ac434161fb7d31c9b96}{\index{htp\-\_\-multipart\-\_\-private.\-h@{htp\-\_\-multipart\-\_\-private.\-h}!D\-E\-F\-A\-U\-L\-T\-\_\-\-F\-I\-L\-E\-\_\-\-E\-X\-T\-R\-A\-C\-T\-\_\-\-L\-I\-M\-I\-T@{D\-E\-F\-A\-U\-L\-T\-\_\-\-F\-I\-L\-E\-\_\-\-E\-X\-T\-R\-A\-C\-T\-\_\-\-L\-I\-M\-I\-T}}
\index{D\-E\-F\-A\-U\-L\-T\-\_\-\-F\-I\-L\-E\-\_\-\-E\-X\-T\-R\-A\-C\-T\-\_\-\-L\-I\-M\-I\-T@{D\-E\-F\-A\-U\-L\-T\-\_\-\-F\-I\-L\-E\-\_\-\-E\-X\-T\-R\-A\-C\-T\-\_\-\-L\-I\-M\-I\-T}!htp_multipart_private.h@{htp\-\_\-multipart\-\_\-private.\-h}}
\subsubsection[{D\-E\-F\-A\-U\-L\-T\-\_\-\-F\-I\-L\-E\-\_\-\-E\-X\-T\-R\-A\-C\-T\-\_\-\-L\-I\-M\-I\-T}]{\setlength{\rightskip}{0pt plus 5cm}\#define D\-E\-F\-A\-U\-L\-T\-\_\-\-F\-I\-L\-E\-\_\-\-E\-X\-T\-R\-A\-C\-T\-\_\-\-L\-I\-M\-I\-T~16}}\label{htp__multipart__private_8h_ab211003862704ac434161fb7d31c9b96}


\subsection{Enumeration Type Documentation}
\hypertarget{htp__multipart__private_8h_a6cd627720a18a525cbc0da80bbb457e3}{\index{htp\-\_\-multipart\-\_\-private.\-h@{htp\-\_\-multipart\-\_\-private.\-h}!htp\-\_\-multipart\-\_\-state\-\_\-t@{htp\-\_\-multipart\-\_\-state\-\_\-t}}
\index{htp\-\_\-multipart\-\_\-state\-\_\-t@{htp\-\_\-multipart\-\_\-state\-\_\-t}!htp_multipart_private.h@{htp\-\_\-multipart\-\_\-private.\-h}}
\subsubsection[{htp\-\_\-multipart\-\_\-state\-\_\-t}]{\setlength{\rightskip}{0pt plus 5cm}enum {\bf htp\-\_\-multipart\-\_\-state\-\_\-t}}}\label{htp__multipart__private_8h_a6cd627720a18a525cbc0da80bbb457e3}
\begin{Desc}
\item[Enumerator]\par
\begin{description}
\index{S\-T\-A\-T\-E\-\_\-\-I\-N\-I\-T@{S\-T\-A\-T\-E\-\_\-\-I\-N\-I\-T}!htp\-\_\-multipart\-\_\-private.\-h@{htp\-\_\-multipart\-\_\-private.\-h}}\index{htp\-\_\-multipart\-\_\-private.\-h@{htp\-\_\-multipart\-\_\-private.\-h}!S\-T\-A\-T\-E\-\_\-\-I\-N\-I\-T@{S\-T\-A\-T\-E\-\_\-\-I\-N\-I\-T}}\item[{\em 
\hypertarget{htp__multipart__private_8h_a6cd627720a18a525cbc0da80bbb457e3a98d2a2153b4ae0445fa0b114d65b94d9}{S\-T\-A\-T\-E\-\_\-\-I\-N\-I\-T}\label{htp__multipart__private_8h_a6cd627720a18a525cbc0da80bbb457e3a98d2a2153b4ae0445fa0b114d65b94d9}
}]Initial state, after the parser has been created but before the boundary initialized. \index{S\-T\-A\-T\-E\-\_\-\-D\-A\-T\-A@{S\-T\-A\-T\-E\-\_\-\-D\-A\-T\-A}!htp\-\_\-multipart\-\_\-private.\-h@{htp\-\_\-multipart\-\_\-private.\-h}}\index{htp\-\_\-multipart\-\_\-private.\-h@{htp\-\_\-multipart\-\_\-private.\-h}!S\-T\-A\-T\-E\-\_\-\-D\-A\-T\-A@{S\-T\-A\-T\-E\-\_\-\-D\-A\-T\-A}}\item[{\em 
\hypertarget{htp__multipart__private_8h_a6cd627720a18a525cbc0da80bbb457e3a3d3ea9fb2db0c6039f1065b6ee452fe9}{S\-T\-A\-T\-E\-\_\-\-D\-A\-T\-A}\label{htp__multipart__private_8h_a6cd627720a18a525cbc0da80bbb457e3a3d3ea9fb2db0c6039f1065b6ee452fe9}
}]Processing data, waiting for a new line (which might indicate a new boundary). \index{S\-T\-A\-T\-E\-\_\-\-B\-O\-U\-N\-D\-A\-R\-Y@{S\-T\-A\-T\-E\-\_\-\-B\-O\-U\-N\-D\-A\-R\-Y}!htp\-\_\-multipart\-\_\-private.\-h@{htp\-\_\-multipart\-\_\-private.\-h}}\index{htp\-\_\-multipart\-\_\-private.\-h@{htp\-\_\-multipart\-\_\-private.\-h}!S\-T\-A\-T\-E\-\_\-\-B\-O\-U\-N\-D\-A\-R\-Y@{S\-T\-A\-T\-E\-\_\-\-B\-O\-U\-N\-D\-A\-R\-Y}}\item[{\em 
\hypertarget{htp__multipart__private_8h_a6cd627720a18a525cbc0da80bbb457e3ac5008cea5142bcf2475a66623c5e19a3}{S\-T\-A\-T\-E\-\_\-\-B\-O\-U\-N\-D\-A\-R\-Y}\label{htp__multipart__private_8h_a6cd627720a18a525cbc0da80bbb457e3ac5008cea5142bcf2475a66623c5e19a3}
}]Testing a potential boundary. \index{S\-T\-A\-T\-E\-\_\-\-B\-O\-U\-N\-D\-A\-R\-Y\-\_\-\-I\-S\-\_\-\-L\-A\-S\-T1@{S\-T\-A\-T\-E\-\_\-\-B\-O\-U\-N\-D\-A\-R\-Y\-\_\-\-I\-S\-\_\-\-L\-A\-S\-T1}!htp\-\_\-multipart\-\_\-private.\-h@{htp\-\_\-multipart\-\_\-private.\-h}}\index{htp\-\_\-multipart\-\_\-private.\-h@{htp\-\_\-multipart\-\_\-private.\-h}!S\-T\-A\-T\-E\-\_\-\-B\-O\-U\-N\-D\-A\-R\-Y\-\_\-\-I\-S\-\_\-\-L\-A\-S\-T1@{S\-T\-A\-T\-E\-\_\-\-B\-O\-U\-N\-D\-A\-R\-Y\-\_\-\-I\-S\-\_\-\-L\-A\-S\-T1}}\item[{\em 
\hypertarget{htp__multipart__private_8h_a6cd627720a18a525cbc0da80bbb457e3aea0a0bef8d0acba388a82c0a7decb1d0}{S\-T\-A\-T\-E\-\_\-\-B\-O\-U\-N\-D\-A\-R\-Y\-\_\-\-I\-S\-\_\-\-L\-A\-S\-T1}\label{htp__multipart__private_8h_a6cd627720a18a525cbc0da80bbb457e3aea0a0bef8d0acba388a82c0a7decb1d0}
}]Checking the first byte after a boundary. \index{S\-T\-A\-T\-E\-\_\-\-B\-O\-U\-N\-D\-A\-R\-Y\-\_\-\-I\-S\-\_\-\-L\-A\-S\-T2@{S\-T\-A\-T\-E\-\_\-\-B\-O\-U\-N\-D\-A\-R\-Y\-\_\-\-I\-S\-\_\-\-L\-A\-S\-T2}!htp\-\_\-multipart\-\_\-private.\-h@{htp\-\_\-multipart\-\_\-private.\-h}}\index{htp\-\_\-multipart\-\_\-private.\-h@{htp\-\_\-multipart\-\_\-private.\-h}!S\-T\-A\-T\-E\-\_\-\-B\-O\-U\-N\-D\-A\-R\-Y\-\_\-\-I\-S\-\_\-\-L\-A\-S\-T2@{S\-T\-A\-T\-E\-\_\-\-B\-O\-U\-N\-D\-A\-R\-Y\-\_\-\-I\-S\-\_\-\-L\-A\-S\-T2}}\item[{\em 
\hypertarget{htp__multipart__private_8h_a6cd627720a18a525cbc0da80bbb457e3a2832f27e37862f9e36d1a7c172ca0507}{S\-T\-A\-T\-E\-\_\-\-B\-O\-U\-N\-D\-A\-R\-Y\-\_\-\-I\-S\-\_\-\-L\-A\-S\-T2}\label{htp__multipart__private_8h_a6cd627720a18a525cbc0da80bbb457e3a2832f27e37862f9e36d1a7c172ca0507}
}]Checking the second byte after a boundary. \index{S\-T\-A\-T\-E\-\_\-\-B\-O\-U\-N\-D\-A\-R\-Y\-\_\-\-E\-A\-T\-\_\-\-L\-W\-S@{S\-T\-A\-T\-E\-\_\-\-B\-O\-U\-N\-D\-A\-R\-Y\-\_\-\-E\-A\-T\-\_\-\-L\-W\-S}!htp\-\_\-multipart\-\_\-private.\-h@{htp\-\_\-multipart\-\_\-private.\-h}}\index{htp\-\_\-multipart\-\_\-private.\-h@{htp\-\_\-multipart\-\_\-private.\-h}!S\-T\-A\-T\-E\-\_\-\-B\-O\-U\-N\-D\-A\-R\-Y\-\_\-\-E\-A\-T\-\_\-\-L\-W\-S@{S\-T\-A\-T\-E\-\_\-\-B\-O\-U\-N\-D\-A\-R\-Y\-\_\-\-E\-A\-T\-\_\-\-L\-W\-S}}\item[{\em 
\hypertarget{htp__multipart__private_8h_a6cd627720a18a525cbc0da80bbb457e3a98415264effca8764534d3da6b898b8f}{S\-T\-A\-T\-E\-\_\-\-B\-O\-U\-N\-D\-A\-R\-Y\-\_\-\-E\-A\-T\-\_\-\-L\-W\-S}\label{htp__multipart__private_8h_a6cd627720a18a525cbc0da80bbb457e3a98415264effca8764534d3da6b898b8f}
}]Consuming linear whitespace after a boundary. \index{S\-T\-A\-T\-E\-\_\-\-B\-O\-U\-N\-D\-A\-R\-Y\-\_\-\-E\-A\-T\-\_\-\-L\-W\-S\-\_\-\-C\-R@{S\-T\-A\-T\-E\-\_\-\-B\-O\-U\-N\-D\-A\-R\-Y\-\_\-\-E\-A\-T\-\_\-\-L\-W\-S\-\_\-\-C\-R}!htp\-\_\-multipart\-\_\-private.\-h@{htp\-\_\-multipart\-\_\-private.\-h}}\index{htp\-\_\-multipart\-\_\-private.\-h@{htp\-\_\-multipart\-\_\-private.\-h}!S\-T\-A\-T\-E\-\_\-\-B\-O\-U\-N\-D\-A\-R\-Y\-\_\-\-E\-A\-T\-\_\-\-L\-W\-S\-\_\-\-C\-R@{S\-T\-A\-T\-E\-\_\-\-B\-O\-U\-N\-D\-A\-R\-Y\-\_\-\-E\-A\-T\-\_\-\-L\-W\-S\-\_\-\-C\-R}}\item[{\em 
\hypertarget{htp__multipart__private_8h_a6cd627720a18a525cbc0da80bbb457e3a78b651290438710447053885fa6dd80d}{S\-T\-A\-T\-E\-\_\-\-B\-O\-U\-N\-D\-A\-R\-Y\-\_\-\-E\-A\-T\-\_\-\-L\-W\-S\-\_\-\-C\-R}\label{htp__multipart__private_8h_a6cd627720a18a525cbc0da80bbb457e3a78b651290438710447053885fa6dd80d}
}]Used after a C\-R byte is detected in S\-T\-A\-T\-E\-\_\-\-B\-O\-U\-N\-D\-A\-R\-Y\-\_\-\-E\-A\-T\-\_\-\-L\-W\-S. \end{description}
\end{Desc}
\hypertarget{htp__multipart__private_8h_ab028c14c6696b021fa4d0897ab1d0c5a}{\index{htp\-\_\-multipart\-\_\-private.\-h@{htp\-\_\-multipart\-\_\-private.\-h}!htp\-\_\-part\-\_\-mode\-\_\-t@{htp\-\_\-part\-\_\-mode\-\_\-t}}
\index{htp\-\_\-part\-\_\-mode\-\_\-t@{htp\-\_\-part\-\_\-mode\-\_\-t}!htp_multipart_private.h@{htp\-\_\-multipart\-\_\-private.\-h}}
\subsubsection[{htp\-\_\-part\-\_\-mode\-\_\-t}]{\setlength{\rightskip}{0pt plus 5cm}enum {\bf htp\-\_\-part\-\_\-mode\-\_\-t}}}\label{htp__multipart__private_8h_ab028c14c6696b021fa4d0897ab1d0c5a}
\begin{Desc}
\item[Enumerator]\par
\begin{description}
\index{M\-O\-D\-E\-\_\-\-L\-I\-N\-E@{M\-O\-D\-E\-\_\-\-L\-I\-N\-E}!htp\-\_\-multipart\-\_\-private.\-h@{htp\-\_\-multipart\-\_\-private.\-h}}\index{htp\-\_\-multipart\-\_\-private.\-h@{htp\-\_\-multipart\-\_\-private.\-h}!M\-O\-D\-E\-\_\-\-L\-I\-N\-E@{M\-O\-D\-E\-\_\-\-L\-I\-N\-E}}\item[{\em 
\hypertarget{htp__multipart__private_8h_ab028c14c6696b021fa4d0897ab1d0c5aa9546d8ac24ff9e243d5c6dd2ac11b403}{M\-O\-D\-E\-\_\-\-L\-I\-N\-E}\label{htp__multipart__private_8h_ab028c14c6696b021fa4d0897ab1d0c5aa9546d8ac24ff9e243d5c6dd2ac11b403}
}]When in line mode, the parser is handling part headers. \index{M\-O\-D\-E\-\_\-\-D\-A\-T\-A@{M\-O\-D\-E\-\_\-\-D\-A\-T\-A}!htp\-\_\-multipart\-\_\-private.\-h@{htp\-\_\-multipart\-\_\-private.\-h}}\index{htp\-\_\-multipart\-\_\-private.\-h@{htp\-\_\-multipart\-\_\-private.\-h}!M\-O\-D\-E\-\_\-\-D\-A\-T\-A@{M\-O\-D\-E\-\_\-\-D\-A\-T\-A}}\item[{\em 
\hypertarget{htp__multipart__private_8h_ab028c14c6696b021fa4d0897ab1d0c5aa18ab79361b04c300e109656acf6107d3}{M\-O\-D\-E\-\_\-\-D\-A\-T\-A}\label{htp__multipart__private_8h_ab028c14c6696b021fa4d0897ab1d0c5aa18ab79361b04c300e109656acf6107d3}
}]When in data mode, the parser is consuming part data. \end{description}
\end{Desc}


\subsection{Function Documentation}
\hypertarget{htp__multipart__private_8h_a852a6833ffbaf5dfd8577aaba8cdcef6}{\index{htp\-\_\-multipart\-\_\-private.\-h@{htp\-\_\-multipart\-\_\-private.\-h}!htp\-\_\-mpart\-\_\-part\-\_\-create@{htp\-\_\-mpart\-\_\-part\-\_\-create}}
\index{htp\-\_\-mpart\-\_\-part\-\_\-create@{htp\-\_\-mpart\-\_\-part\-\_\-create}!htp_multipart_private.h@{htp\-\_\-multipart\-\_\-private.\-h}}
\subsubsection[{htp\-\_\-mpart\-\_\-part\-\_\-create}]{\setlength{\rightskip}{0pt plus 5cm}{\bf htp\-\_\-multipart\-\_\-part\-\_\-t}$\ast$ htp\-\_\-mpart\-\_\-part\-\_\-create (
\begin{DoxyParamCaption}
\item[{{\bf htp\-\_\-mpartp\-\_\-t} $\ast$}]{parser}
\end{DoxyParamCaption}
)}}\label{htp__multipart__private_8h_a852a6833ffbaf5dfd8577aaba8cdcef6}
Creates a new Multipart part.


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em parser} & \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
New part instance, or N\-U\-L\-L on memory allocation failure. 
\end{DoxyReturn}
\hypertarget{htp__multipart__private_8h_afc3a6b77b984cb093dbcd6370c42b887}{\index{htp\-\_\-multipart\-\_\-private.\-h@{htp\-\_\-multipart\-\_\-private.\-h}!htp\-\_\-mpart\-\_\-part\-\_\-destroy@{htp\-\_\-mpart\-\_\-part\-\_\-destroy}}
\index{htp\-\_\-mpart\-\_\-part\-\_\-destroy@{htp\-\_\-mpart\-\_\-part\-\_\-destroy}!htp_multipart_private.h@{htp\-\_\-multipart\-\_\-private.\-h}}
\subsubsection[{htp\-\_\-mpart\-\_\-part\-\_\-destroy}]{\setlength{\rightskip}{0pt plus 5cm}void htp\-\_\-mpart\-\_\-part\-\_\-destroy (
\begin{DoxyParamCaption}
\item[{{\bf htp\-\_\-multipart\-\_\-part\-\_\-t} $\ast$}]{part, }
\item[{int}]{gave\-\_\-up\-\_\-data}
\end{DoxyParamCaption}
)}}\label{htp__multipart__private_8h_afc3a6b77b984cb093dbcd6370c42b887}
Destroys a part.


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em part} & \\
\hline
\mbox{\tt in}  & {\em gave\-\_\-up\-\_\-data} & \\
\hline
\end{DoxyParams}
\hypertarget{htp__multipart__private_8h_adf2e99c5087b2ec07b11bf4df9e2073f}{\index{htp\-\_\-multipart\-\_\-private.\-h@{htp\-\_\-multipart\-\_\-private.\-h}!htp\-\_\-mpart\-\_\-part\-\_\-finalize\-\_\-data@{htp\-\_\-mpart\-\_\-part\-\_\-finalize\-\_\-data}}
\index{htp\-\_\-mpart\-\_\-part\-\_\-finalize\-\_\-data@{htp\-\_\-mpart\-\_\-part\-\_\-finalize\-\_\-data}!htp_multipart_private.h@{htp\-\_\-multipart\-\_\-private.\-h}}
\subsubsection[{htp\-\_\-mpart\-\_\-part\-\_\-finalize\-\_\-data}]{\setlength{\rightskip}{0pt plus 5cm}{\bf htp\-\_\-status\-\_\-t} htp\-\_\-mpart\-\_\-part\-\_\-finalize\-\_\-data (
\begin{DoxyParamCaption}
\item[{{\bf htp\-\_\-multipart\-\_\-part\-\_\-t} $\ast$}]{part}
\end{DoxyParamCaption}
)}}\label{htp__multipart__private_8h_adf2e99c5087b2ec07b11bf4df9e2073f}
Finalizes part processing.


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em part} & \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
H\-T\-P\-\_\-\-O\-K on success, H\-T\-P\-\_\-\-E\-R\-R\-O\-R on failure. 
\end{DoxyReturn}
\hypertarget{htp__multipart__private_8h_a368c461de4ad8f9d864f5c29968e6f4a}{\index{htp\-\_\-multipart\-\_\-private.\-h@{htp\-\_\-multipart\-\_\-private.\-h}!htp\-\_\-mpart\-\_\-part\-\_\-handle\-\_\-data@{htp\-\_\-mpart\-\_\-part\-\_\-handle\-\_\-data}}
\index{htp\-\_\-mpart\-\_\-part\-\_\-handle\-\_\-data@{htp\-\_\-mpart\-\_\-part\-\_\-handle\-\_\-data}!htp_multipart_private.h@{htp\-\_\-multipart\-\_\-private.\-h}}
\subsubsection[{htp\-\_\-mpart\-\_\-part\-\_\-handle\-\_\-data}]{\setlength{\rightskip}{0pt plus 5cm}{\bf htp\-\_\-status\-\_\-t} htp\-\_\-mpart\-\_\-part\-\_\-handle\-\_\-data (
\begin{DoxyParamCaption}
\item[{{\bf htp\-\_\-multipart\-\_\-part\-\_\-t} $\ast$}]{part, }
\item[{const unsigned char $\ast$}]{data, }
\item[{size\-\_\-t}]{len, }
\item[{int}]{is\-\_\-line}
\end{DoxyParamCaption}
)}}\label{htp__multipart__private_8h_a368c461de4ad8f9d864f5c29968e6f4a}
Handles part data.


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em part} & \\
\hline
\mbox{\tt in}  & {\em data} & \\
\hline
\mbox{\tt in}  & {\em len} & \\
\hline
\mbox{\tt in}  & {\em is\-\_\-line} & \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
H\-T\-P\-\_\-\-O\-K on success, H\-T\-P\-\_\-\-E\-R\-R\-O\-R on failure. 
\end{DoxyReturn}
\hypertarget{htp__multipart__private_8h_ac51272765ee1a5c1b70980a0b96d4ece}{\index{htp\-\_\-multipart\-\_\-private.\-h@{htp\-\_\-multipart\-\_\-private.\-h}!htp\-\_\-mpart\-\_\-part\-\_\-parse\-\_\-c\-\_\-d@{htp\-\_\-mpart\-\_\-part\-\_\-parse\-\_\-c\-\_\-d}}
\index{htp\-\_\-mpart\-\_\-part\-\_\-parse\-\_\-c\-\_\-d@{htp\-\_\-mpart\-\_\-part\-\_\-parse\-\_\-c\-\_\-d}!htp_multipart_private.h@{htp\-\_\-multipart\-\_\-private.\-h}}
\subsubsection[{htp\-\_\-mpart\-\_\-part\-\_\-parse\-\_\-c\-\_\-d}]{\setlength{\rightskip}{0pt plus 5cm}{\bf htp\-\_\-status\-\_\-t} htp\-\_\-mpart\-\_\-part\-\_\-parse\-\_\-c\-\_\-d (
\begin{DoxyParamCaption}
\item[{{\bf htp\-\_\-multipart\-\_\-part\-\_\-t} $\ast$}]{part}
\end{DoxyParamCaption}
)}}\label{htp__multipart__private_8h_ac51272765ee1a5c1b70980a0b96d4ece}
Parses the Content-\/\-Disposition part header.


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em part} & \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
H\-T\-P\-\_\-\-O\-K on success (header found and parsed), H\-T\-P\-\_\-\-D\-E\-C\-L\-I\-N\-E\-D if there is no C-\/\-D header or if it could not be processed, and H\-T\-P\-\_\-\-E\-R\-R\-O\-R on fatal error. 
\end{DoxyReturn}
\hypertarget{htp__multipart__private_8h_a6acf2acff1d8828fba0df30a9397108c}{\index{htp\-\_\-multipart\-\_\-private.\-h@{htp\-\_\-multipart\-\_\-private.\-h}!htp\-\_\-mpart\-\_\-part\-\_\-process\-\_\-headers@{htp\-\_\-mpart\-\_\-part\-\_\-process\-\_\-headers}}
\index{htp\-\_\-mpart\-\_\-part\-\_\-process\-\_\-headers@{htp\-\_\-mpart\-\_\-part\-\_\-process\-\_\-headers}!htp_multipart_private.h@{htp\-\_\-multipart\-\_\-private.\-h}}
\subsubsection[{htp\-\_\-mpart\-\_\-part\-\_\-process\-\_\-headers}]{\setlength{\rightskip}{0pt plus 5cm}{\bf htp\-\_\-status\-\_\-t} htp\-\_\-mpart\-\_\-part\-\_\-process\-\_\-headers (
\begin{DoxyParamCaption}
\item[{{\bf htp\-\_\-multipart\-\_\-part\-\_\-t} $\ast$}]{part}
\end{DoxyParamCaption}
)}}\label{htp__multipart__private_8h_a6acf2acff1d8828fba0df30a9397108c}
Processes part headers.


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em part} & \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
H\-T\-P\-\_\-\-O\-K on success, H\-T\-P\-\_\-\-E\-R\-R\-O\-R on failure. 
\end{DoxyReturn}
\hypertarget{htp__multipart__private_8h_a7a8f439ef7958a0ec99e172c008ea4bb}{\index{htp\-\_\-multipart\-\_\-private.\-h@{htp\-\_\-multipart\-\_\-private.\-h}!htp\-\_\-mpartp\-\_\-is\-\_\-boundary\-\_\-character@{htp\-\_\-mpartp\-\_\-is\-\_\-boundary\-\_\-character}}
\index{htp\-\_\-mpartp\-\_\-is\-\_\-boundary\-\_\-character@{htp\-\_\-mpartp\-\_\-is\-\_\-boundary\-\_\-character}!htp_multipart_private.h@{htp\-\_\-multipart\-\_\-private.\-h}}
\subsubsection[{htp\-\_\-mpartp\-\_\-is\-\_\-boundary\-\_\-character}]{\setlength{\rightskip}{0pt plus 5cm}int htp\-\_\-mpartp\-\_\-is\-\_\-boundary\-\_\-character (
\begin{DoxyParamCaption}
\item[{int}]{c}
\end{DoxyParamCaption}
)}}\label{htp__multipart__private_8h_a7a8f439ef7958a0ec99e172c008ea4bb}
\hypertarget{htp__multipart__private_8h_ade5c03a799c0f5af2319900fe78a98e0}{\index{htp\-\_\-multipart\-\_\-private.\-h@{htp\-\_\-multipart\-\_\-private.\-h}!htp\-\_\-mpartp\-\_\-parse\-\_\-header@{htp\-\_\-mpartp\-\_\-parse\-\_\-header}}
\index{htp\-\_\-mpartp\-\_\-parse\-\_\-header@{htp\-\_\-mpartp\-\_\-parse\-\_\-header}!htp_multipart_private.h@{htp\-\_\-multipart\-\_\-private.\-h}}
\subsubsection[{htp\-\_\-mpartp\-\_\-parse\-\_\-header}]{\setlength{\rightskip}{0pt plus 5cm}{\bf htp\-\_\-status\-\_\-t} htp\-\_\-mpartp\-\_\-parse\-\_\-header (
\begin{DoxyParamCaption}
\item[{{\bf htp\-\_\-multipart\-\_\-part\-\_\-t} $\ast$}]{part, }
\item[{const unsigned char $\ast$}]{data, }
\item[{size\-\_\-t}]{len}
\end{DoxyParamCaption}
)}}\label{htp__multipart__private_8h_ade5c03a799c0f5af2319900fe78a98e0}
Parses one part header.


\begin{DoxyParams}[1]{Parameters}
\mbox{\tt in}  & {\em part} & \\
\hline
\mbox{\tt in}  & {\em data} & \\
\hline
\mbox{\tt in}  & {\em len} & \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
H\-T\-P\-\_\-\-O\-K on success, H\-T\-P\-\_\-\-D\-E\-C\-L\-I\-N\-E\-D on parsing error, H\-T\-P\-\_\-\-E\-R\-R\-O\-R on fatal error. 
\end{DoxyReturn}
\hypertarget{htp__multipart__private_8h_a72b162a6bdf6226c5181a15ddf28ee41}{\index{htp\-\_\-multipart\-\_\-private.\-h@{htp\-\_\-multipart\-\_\-private.\-h}!htp\-\_\-mpartp\-\_\-run\-\_\-request\-\_\-file\-\_\-data\-\_\-hook@{htp\-\_\-mpartp\-\_\-run\-\_\-request\-\_\-file\-\_\-data\-\_\-hook}}
\index{htp\-\_\-mpartp\-\_\-run\-\_\-request\-\_\-file\-\_\-data\-\_\-hook@{htp\-\_\-mpartp\-\_\-run\-\_\-request\-\_\-file\-\_\-data\-\_\-hook}!htp_multipart_private.h@{htp\-\_\-multipart\-\_\-private.\-h}}
\subsubsection[{htp\-\_\-mpartp\-\_\-run\-\_\-request\-\_\-file\-\_\-data\-\_\-hook}]{\setlength{\rightskip}{0pt plus 5cm}{\bf htp\-\_\-status\-\_\-t} htp\-\_\-mpartp\-\_\-run\-\_\-request\-\_\-file\-\_\-data\-\_\-hook (
\begin{DoxyParamCaption}
\item[{{\bf htp\-\_\-multipart\-\_\-part\-\_\-t} $\ast$}]{part, }
\item[{const unsigned char $\ast$}]{data, }
\item[{size\-\_\-t}]{len}
\end{DoxyParamCaption}
)}}\label{htp__multipart__private_8h_a72b162a6bdf6226c5181a15ddf28ee41}