\hypertarget{miniupnpc_8c}{
\section{libminiupnpc/miniupnpc.c File Reference}
\label{d2/d22/miniupnpc_8c}\index{libminiupnpc/miniupnpc.c@{libminiupnpc/miniupnpc.c}}
}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
LIBSPEC void \hyperlink{miniupnpc_8c_a3d1b8bbeebff58bbf6cba5d41e961128}{parserootdesc} (const char $\ast$buffer, int bufsize, struct \hyperlink{structIGDdatas}{IGDdatas} $\ast$data)
\item 
char $\ast$ \hyperlink{miniupnpc_8c_aa28d7dce417b51e4afbffe1d6983539f}{simpleUPnPcommand2} (int \hyperlink{client_2src_2v__palette_8cpp_a06ccf22bb96191a8ce5f85600b246060}{s}, const char $\ast$url, const char $\ast$service, const char $\ast$action, struct \hyperlink{structUPNParg}{UPNParg} $\ast$args, int $\ast$bufsize, const char $\ast$httpversion)
\item 
char $\ast$ \hyperlink{miniupnpc_8c_a9f281688a6fe6b070dd851ae71da670c}{simpleUPnPcommand} (int \hyperlink{client_2src_2v__palette_8cpp_a06ccf22bb96191a8ce5f85600b246060}{s}, const char $\ast$url, const char $\ast$service, const char $\ast$action, struct \hyperlink{structUPNParg}{UPNParg} $\ast$args, int $\ast$bufsize)
\item 
LIBSPEC struct \hyperlink{structUPNPDev}{UPNPDev} $\ast$ \hyperlink{miniupnpc_8c_a8d4e43e1a371d1c83ab5f4ebb7cd47fb}{upnpDiscover} (int delay, const char $\ast$multicastif, const char $\ast$minissdpdsock, int sameport, int ipv6, int $\ast$error)
\item 
LIBSPEC void \hyperlink{miniupnpc_8c_a8d32b719386ae11b74a3617d3dad7575}{freeUPNPDevlist} (struct \hyperlink{structUPNPDev}{UPNPDev} $\ast$devlist)
\item 
LIBSPEC void \hyperlink{miniupnpc_8c_a94c651257109fda642e6c3428b9999f0}{GetUPNPUrls} (struct \hyperlink{structUPNPUrls}{UPNPUrls} $\ast$urls, struct \hyperlink{structIGDdatas}{IGDdatas} $\ast$data, const char $\ast$descURL)
\item 
LIBSPEC void \hyperlink{miniupnpc_8c_a4025f8ede38735566a75ea4d80392890}{FreeUPNPUrls} (struct \hyperlink{structUPNPUrls}{UPNPUrls} $\ast$urls)
\item 
int \hyperlink{miniupnpc_8c_a82fe73713b6931ecbc4e280b2b75021a}{UPNPIGD\_\-IsConnected} (struct \hyperlink{structUPNPUrls}{UPNPUrls} $\ast$urls, struct \hyperlink{structIGDdatas}{IGDdatas} $\ast$data)
\item 
LIBSPEC int \hyperlink{miniupnpc_8c_aced1c4968648b8b8eb8812ce194e5cab}{UPNP\_\-GetValidIGD} (struct \hyperlink{structUPNPDev}{UPNPDev} $\ast$devlist, struct \hyperlink{structUPNPUrls}{UPNPUrls} $\ast$urls, struct \hyperlink{structIGDdatas}{IGDdatas} $\ast$data, char $\ast$lanaddr, int lanaddrlen)
\item 
int \hyperlink{miniupnpc_8c_a5c51d32fb479cbacdf1e1c18e1fb002e}{UPNP\_\-GetIGDFromUrl} (const char $\ast$rootdescurl, struct \hyperlink{structUPNPUrls}{UPNPUrls} $\ast$urls, struct \hyperlink{structIGDdatas}{IGDdatas} $\ast$data, char $\ast$lanaddr, int lanaddrlen)
\end{DoxyCompactItemize}


\subsection{Function Documentation}
\hypertarget{miniupnpc_8c_a8d32b719386ae11b74a3617d3dad7575}{
\index{miniupnpc.c@{miniupnpc.c}!freeUPNPDevlist@{freeUPNPDevlist}}
\index{freeUPNPDevlist@{freeUPNPDevlist}!miniupnpc.c@{miniupnpc.c}}
\subsubsection[{freeUPNPDevlist}]{\setlength{\rightskip}{0pt plus 5cm}LIBSPEC void freeUPNPDevlist (
\begin{DoxyParamCaption}
\item[{struct {\bf UPNPDev} $\ast$}]{devlist}
\end{DoxyParamCaption}
)}}
\label{d2/d22/miniupnpc_8c_a8d32b719386ae11b74a3617d3dad7575}
\hypertarget{miniupnpc_8c_a4025f8ede38735566a75ea4d80392890}{
\index{miniupnpc.c@{miniupnpc.c}!FreeUPNPUrls@{FreeUPNPUrls}}
\index{FreeUPNPUrls@{FreeUPNPUrls}!miniupnpc.c@{miniupnpc.c}}
\subsubsection[{FreeUPNPUrls}]{\setlength{\rightskip}{0pt plus 5cm}LIBSPEC void FreeUPNPUrls (
\begin{DoxyParamCaption}
\item[{struct {\bf UPNPUrls} $\ast$}]{urls}
\end{DoxyParamCaption}
)}}
\label{d2/d22/miniupnpc_8c_a4025f8ede38735566a75ea4d80392890}
\hypertarget{miniupnpc_8c_a94c651257109fda642e6c3428b9999f0}{
\index{miniupnpc.c@{miniupnpc.c}!GetUPNPUrls@{GetUPNPUrls}}
\index{GetUPNPUrls@{GetUPNPUrls}!miniupnpc.c@{miniupnpc.c}}
\subsubsection[{GetUPNPUrls}]{\setlength{\rightskip}{0pt plus 5cm}LIBSPEC void GetUPNPUrls (
\begin{DoxyParamCaption}
\item[{struct {\bf UPNPUrls} $\ast$}]{urls, }
\item[{struct {\bf IGDdatas} $\ast$}]{data, }
\item[{const char $\ast$}]{descURL}
\end{DoxyParamCaption}
)}}
\label{d2/d22/miniupnpc_8c_a94c651257109fda642e6c3428b9999f0}
\hypertarget{miniupnpc_8c_a3d1b8bbeebff58bbf6cba5d41e961128}{
\index{miniupnpc.c@{miniupnpc.c}!parserootdesc@{parserootdesc}}
\index{parserootdesc@{parserootdesc}!miniupnpc.c@{miniupnpc.c}}
\subsubsection[{parserootdesc}]{\setlength{\rightskip}{0pt plus 5cm}LIBSPEC void parserootdesc (
\begin{DoxyParamCaption}
\item[{const char $\ast$}]{buffer, }
\item[{int}]{bufsize, }
\item[{struct {\bf IGDdatas} $\ast$}]{data}
\end{DoxyParamCaption}
)}}
\label{d2/d22/miniupnpc_8c_a3d1b8bbeebff58bbf6cba5d41e961128}
\hypertarget{miniupnpc_8c_a9f281688a6fe6b070dd851ae71da670c}{
\index{miniupnpc.c@{miniupnpc.c}!simpleUPnPcommand@{simpleUPnPcommand}}
\index{simpleUPnPcommand@{simpleUPnPcommand}!miniupnpc.c@{miniupnpc.c}}
\subsubsection[{simpleUPnPcommand}]{\setlength{\rightskip}{0pt plus 5cm}char$\ast$ simpleUPnPcommand (
\begin{DoxyParamCaption}
\item[{int}]{s, }
\item[{const char $\ast$}]{url, }
\item[{const char $\ast$}]{service, }
\item[{const char $\ast$}]{action, }
\item[{struct {\bf UPNParg} $\ast$}]{args, }
\item[{int $\ast$}]{bufsize}
\end{DoxyParamCaption}
)}}
\label{d2/d22/miniupnpc_8c_a9f281688a6fe6b070dd851ae71da670c}
\hypertarget{miniupnpc_8c_aa28d7dce417b51e4afbffe1d6983539f}{
\index{miniupnpc.c@{miniupnpc.c}!simpleUPnPcommand2@{simpleUPnPcommand2}}
\index{simpleUPnPcommand2@{simpleUPnPcommand2}!miniupnpc.c@{miniupnpc.c}}
\subsubsection[{simpleUPnPcommand2}]{\setlength{\rightskip}{0pt plus 5cm}char$\ast$ simpleUPnPcommand2 (
\begin{DoxyParamCaption}
\item[{int}]{s, }
\item[{const char $\ast$}]{url, }
\item[{const char $\ast$}]{service, }
\item[{const char $\ast$}]{action, }
\item[{struct {\bf UPNParg} $\ast$}]{args, }
\item[{int $\ast$}]{bufsize, }
\item[{const char $\ast$}]{httpversion}
\end{DoxyParamCaption}
)}}
\label{d2/d22/miniupnpc_8c_aa28d7dce417b51e4afbffe1d6983539f}
\hypertarget{miniupnpc_8c_a5c51d32fb479cbacdf1e1c18e1fb002e}{
\index{miniupnpc.c@{miniupnpc.c}!UPNP\_\-GetIGDFromUrl@{UPNP\_\-GetIGDFromUrl}}
\index{UPNP\_\-GetIGDFromUrl@{UPNP\_\-GetIGDFromUrl}!miniupnpc.c@{miniupnpc.c}}
\subsubsection[{UPNP\_\-GetIGDFromUrl}]{\setlength{\rightskip}{0pt plus 5cm}int UPNP\_\-GetIGDFromUrl (
\begin{DoxyParamCaption}
\item[{const char $\ast$}]{rootdescurl, }
\item[{struct {\bf UPNPUrls} $\ast$}]{urls, }
\item[{struct {\bf IGDdatas} $\ast$}]{data, }
\item[{char $\ast$}]{lanaddr, }
\item[{int}]{lanaddrlen}
\end{DoxyParamCaption}
)}}
\label{d2/d22/miniupnpc_8c_a5c51d32fb479cbacdf1e1c18e1fb002e}
\hypertarget{miniupnpc_8c_aced1c4968648b8b8eb8812ce194e5cab}{
\index{miniupnpc.c@{miniupnpc.c}!UPNP\_\-GetValidIGD@{UPNP\_\-GetValidIGD}}
\index{UPNP\_\-GetValidIGD@{UPNP\_\-GetValidIGD}!miniupnpc.c@{miniupnpc.c}}
\subsubsection[{UPNP\_\-GetValidIGD}]{\setlength{\rightskip}{0pt plus 5cm}LIBSPEC int UPNP\_\-GetValidIGD (
\begin{DoxyParamCaption}
\item[{struct {\bf UPNPDev} $\ast$}]{devlist, }
\item[{struct {\bf UPNPUrls} $\ast$}]{urls, }
\item[{struct {\bf IGDdatas} $\ast$}]{data, }
\item[{char $\ast$}]{lanaddr, }
\item[{int}]{lanaddrlen}
\end{DoxyParamCaption}
)}}
\label{d2/d22/miniupnpc_8c_aced1c4968648b8b8eb8812ce194e5cab}
\hypertarget{miniupnpc_8c_a8d4e43e1a371d1c83ab5f4ebb7cd47fb}{
\index{miniupnpc.c@{miniupnpc.c}!upnpDiscover@{upnpDiscover}}
\index{upnpDiscover@{upnpDiscover}!miniupnpc.c@{miniupnpc.c}}
\subsubsection[{upnpDiscover}]{\setlength{\rightskip}{0pt plus 5cm}LIBSPEC struct {\bf UPNPDev}$\ast$ upnpDiscover (
\begin{DoxyParamCaption}
\item[{int}]{delay, }
\item[{const char $\ast$}]{multicastif, }
\item[{const char $\ast$}]{minissdpdsock, }
\item[{int}]{sameport, }
\item[{int}]{ipv6, }
\item[{int $\ast$}]{error}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}read\mbox{]}}}}
\label{d2/d22/miniupnpc_8c_a8d4e43e1a371d1c83ab5f4ebb7cd47fb}
\hypertarget{miniupnpc_8c_a82fe73713b6931ecbc4e280b2b75021a}{
\index{miniupnpc.c@{miniupnpc.c}!UPNPIGD\_\-IsConnected@{UPNPIGD\_\-IsConnected}}
\index{UPNPIGD\_\-IsConnected@{UPNPIGD\_\-IsConnected}!miniupnpc.c@{miniupnpc.c}}
\subsubsection[{UPNPIGD\_\-IsConnected}]{\setlength{\rightskip}{0pt plus 5cm}int UPNPIGD\_\-IsConnected (
\begin{DoxyParamCaption}
\item[{struct {\bf UPNPUrls} $\ast$}]{urls, }
\item[{struct {\bf IGDdatas} $\ast$}]{data}
\end{DoxyParamCaption}
)}}
\label{d2/d22/miniupnpc_8c_a82fe73713b6931ecbc4e280b2b75021a}
