\hypertarget{classIoTcpUdpDummy}{
\section{IoTcpUdpDummy Class Reference}
\label{classIoTcpUdpDummy}\index{IoTcpUdpDummy@{IoTcpUdpDummy}}
}


A base class for I/O TCP/UDP Dummy communication.  




{\ttfamily \#include $<$io\_\-tcpudp\_\-dummy.hh$>$}

Inheritance diagram for IoTcpUdpDummy:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.000000cm]{classIoTcpUdpDummy}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{classIoTcpUdpDummy_a71790182a7b7352b652c22eadd13bf78}{IoTcpUdpDummy} (\hyperlink{classFeaDataPlaneManager}{FeaDataPlaneManager} \&fea\_\-data\_\-plane\_\-manager, const \hyperlink{classIfTree}{IfTree} \&iftree, int family, bool is\_\-tcp)
\begin{DoxyCompactList}\small\item\em Constructor for a given address family. \item\end{DoxyCompactList}\item 
\hypertarget{classIoTcpUdpDummy_a15661caab883c0253549efc0e72bbaae}{
virtual \hyperlink{classIoTcpUdpDummy_a15661caab883c0253549efc0e72bbaae}{$\sim$IoTcpUdpDummy} ()}
\label{classIoTcpUdpDummy_a15661caab883c0253549efc0e72bbaae}

\begin{DoxyCompactList}\small\item\em Virtual destructor. \item\end{DoxyCompactList}\item 
int \hyperlink{classIoTcpUdpDummy_a848d35dca7e8961a435d765175ed8799}{start} (string \&error\_\-msg)
\begin{DoxyCompactList}\small\item\em Start operation. \item\end{DoxyCompactList}\item 
int \hyperlink{classIoTcpUdpDummy_a0cd751c58cb0d0e2346e905cb86a2859}{stop} (string \&error\_\-msg)
\begin{DoxyCompactList}\small\item\em Stop operation. \item\end{DoxyCompactList}\item 
int \hyperlink{classIoTcpUdpDummy_a71a9672c5a30a939fe184258dbb16e0b}{tcp\_\-open} (string \&error\_\-msg)
\begin{DoxyCompactList}\small\item\em Open a TCP socket. \item\end{DoxyCompactList}\item 
int \hyperlink{classIoTcpUdpDummy_ab19a774d6ee91031212a37d3e46eb595}{udp\_\-open} (string \&error\_\-msg)
\begin{DoxyCompactList}\small\item\em Open an UDP socket. \item\end{DoxyCompactList}\item 
int \hyperlink{classIoTcpUdpDummy_a171339796111cac998ed2d5277613968}{tcp\_\-open\_\-and\_\-bind} (const \hyperlink{classIPvX}{IPvX} \&local\_\-addr, uint16\_\-t local\_\-port, string \&error\_\-msg)
\begin{DoxyCompactList}\small\item\em Create a bound TCP socket. \item\end{DoxyCompactList}\item 
int \hyperlink{classIoTcpUdpDummy_a03e82a0e7aa7e48150aaabfbf09ce6bd}{udp\_\-open\_\-and\_\-bind} (const \hyperlink{classIPvX}{IPvX} \&local\_\-addr, uint16\_\-t local\_\-port, const string \&local\_\-dev, int reuse, string \&error\_\-msg)
\begin{DoxyCompactList}\small\item\em Create a bound UDP socket. \item\end{DoxyCompactList}\item 
int \hyperlink{classIoTcpUdpDummy_ab91c1cf5e3439939c5e363e697ba2623}{udp\_\-open\_\-bind\_\-join} (const \hyperlink{classIPvX}{IPvX} \&local\_\-addr, uint16\_\-t local\_\-port, const \hyperlink{classIPvX}{IPvX} \&mcast\_\-addr, uint8\_\-t ttl, bool reuse, string \&error\_\-msg)
\begin{DoxyCompactList}\small\item\em Create a bound UDP multicast socket. \item\end{DoxyCompactList}\item 
int \hyperlink{classIoTcpUdpDummy_ad7c53b3f15cc62449b10801b10d0a8ac}{tcp\_\-open\_\-bind\_\-connect} (const \hyperlink{classIPvX}{IPvX} \&local\_\-addr, uint16\_\-t local\_\-port, const \hyperlink{classIPvX}{IPvX} \&remote\_\-addr, uint16\_\-t remote\_\-port, string \&error\_\-msg)
\begin{DoxyCompactList}\small\item\em Create a bound and connected TCP socket. \item\end{DoxyCompactList}\item 
int \hyperlink{classIoTcpUdpDummy_a0140c690393d2df426be9005113cadc6}{udp\_\-open\_\-bind\_\-connect} (const \hyperlink{classIPvX}{IPvX} \&local\_\-addr, uint16\_\-t local\_\-port, const \hyperlink{classIPvX}{IPvX} \&remote\_\-addr, uint16\_\-t remote\_\-port, string \&error\_\-msg)
\begin{DoxyCompactList}\small\item\em Create a bound and connected UDP socket. \item\end{DoxyCompactList}\item 
int \hyperlink{classIoTcpUdpDummy_a6e467c7aa422878017121301691d9b5c}{udp\_\-open\_\-bind\_\-broadcast} (const string \&ifname, const string \&vifname, uint16\_\-t local\_\-port, uint16\_\-t remote\_\-port, bool reuse, bool limited, bool connected, string \&error\_\-msg)
\begin{DoxyCompactList}\small\item\em Create a bound, and optionally connected, UDP broadcast socket. \item\end{DoxyCompactList}\item 
int \hyperlink{classIoTcpUdpDummy_a1265b63c0dd9e1e5acce95fa6e642ef1}{bind} (const \hyperlink{classIPvX}{IPvX} \&local\_\-addr, uint16\_\-t local\_\-port, string \&error\_\-msg)
\begin{DoxyCompactList}\small\item\em Bind a socket. \item\end{DoxyCompactList}\item 
int \hyperlink{classIoTcpUdpDummy_a1e94d4adff2be7c13b5fa62f1cd19bef}{udp\_\-join\_\-group} (const \hyperlink{classIPvX}{IPvX} \&mcast\_\-addr, const \hyperlink{classIPvX}{IPvX} \&join\_\-if\_\-addr, string \&error\_\-msg)
\begin{DoxyCompactList}\small\item\em Join multicast group on already bound socket. \item\end{DoxyCompactList}\item 
int \hyperlink{classIoTcpUdpDummy_ac32b43bd68e714fe34ae88beaf65817b}{udp\_\-leave\_\-group} (const \hyperlink{classIPvX}{IPvX} \&mcast\_\-addr, const \hyperlink{classIPvX}{IPvX} \&leave\_\-if\_\-addr, string \&error\_\-msg)
\begin{DoxyCompactList}\small\item\em Leave multicast group on already bound socket. \item\end{DoxyCompactList}\item 
int \hyperlink{classIoTcpUdpDummy_a55c809047ba82e7d9910e90d16000214}{close} (string \&error\_\-msg)
\begin{DoxyCompactList}\small\item\em Close socket. \item\end{DoxyCompactList}\item 
int \hyperlink{classIoTcpUdpDummy_a5b6cdfca56911f07b80670b30955672e}{tcp\_\-listen} (uint32\_\-t backlog, string \&error\_\-msg)
\begin{DoxyCompactList}\small\item\em Listen for inbound connections on socket. \item\end{DoxyCompactList}\item 
int \hyperlink{classIoTcpUdpDummy_a94d6505daa48741473966b4b49a7bc6b}{udp\_\-enable\_\-recv} (string \&error\_\-msg)
\begin{DoxyCompactList}\small\item\em Enable a UDP socket for datagram reception. \item\end{DoxyCompactList}\item 
int \hyperlink{classIoTcpUdpDummy_aa61170e5fff39a65b6be4c9099286d56}{send} (const vector$<$ uint8\_\-t $>$ \&data, string \&error\_\-msg)
\begin{DoxyCompactList}\small\item\em \hyperlink{structSend}{Send} data on socket. \item\end{DoxyCompactList}\item 
int \hyperlink{classIoTcpUdpDummy_afe6cdfc4456a78e4161562a329548b8b}{send\_\-to} (const \hyperlink{classIPvX}{IPvX} \&remote\_\-addr, uint16\_\-t remote\_\-port, const vector$<$ uint8\_\-t $>$ \&data, string \&error\_\-msg)
\begin{DoxyCompactList}\small\item\em \hyperlink{structSend}{Send} data on socket to a given destination. \item\end{DoxyCompactList}\item 
int \hyperlink{classIoTcpUdpDummy_aba01bbb9d1df55c88a2eb1a6682d73bd}{send\_\-from\_\-multicast\_\-if} (const \hyperlink{classIPvX}{IPvX} \&group\_\-addr, uint16\_\-t group\_\-port, const \hyperlink{classIPvX}{IPvX} \&ifaddr, const vector$<$ uint8\_\-t $>$ \&data, string \&error\_\-msg)
\begin{DoxyCompactList}\small\item\em \hyperlink{structSend}{Send} data on socket to a given multicast group from a given interface. \item\end{DoxyCompactList}\item 
int \hyperlink{classIoTcpUdpDummy_a3832177cb8da60d7e966223cceb55ddb}{set\_\-socket\_\-option} (const string \&optname, uint32\_\-t optval, string \&error\_\-msg)
\begin{DoxyCompactList}\small\item\em Set a named socket option with an integer value. \item\end{DoxyCompactList}\item 
int \hyperlink{classIoTcpUdpDummy_a544f5f3dbff1be132870be2afdec3df8}{set\_\-socket\_\-option} (const string \&optname, const string \&optval, string \&error\_\-msg)
\begin{DoxyCompactList}\small\item\em Set a named socket option with a text value. \item\end{DoxyCompactList}\item 
int \hyperlink{classIoTcpUdpDummy_a6efd50920c5409f918bf7c91ef76bbcb}{accept\_\-connection} (bool is\_\-accepted, string \&error\_\-msg)
\begin{DoxyCompactList}\small\item\em \hyperlink{classAccept}{Accept} or reject a pending connection. \item\end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
A base class for I/O TCP/UDP Dummy communication. 

\subsection{Constructor \& Destructor Documentation}
\hypertarget{classIoTcpUdpDummy_a71790182a7b7352b652c22eadd13bf78}{
\index{IoTcpUdpDummy@{IoTcpUdpDummy}!IoTcpUdpDummy@{IoTcpUdpDummy}}
\index{IoTcpUdpDummy@{IoTcpUdpDummy}!IoTcpUdpDummy@{IoTcpUdpDummy}}
\subsubsection[{IoTcpUdpDummy}]{\setlength{\rightskip}{0pt plus 5cm}IoTcpUdpDummy::IoTcpUdpDummy (
\begin{DoxyParamCaption}
\item[{{\bf FeaDataPlaneManager} \&}]{fea\_\-data\_\-plane\_\-manager, }
\item[{const {\bf IfTree} \&}]{iftree, }
\item[{int}]{family, }
\item[{bool}]{is\_\-tcp}
\end{DoxyParamCaption}
)}}
\label{classIoTcpUdpDummy_a71790182a7b7352b652c22eadd13bf78}


Constructor for a given address family. 


\begin{DoxyParams}{Parameters}
{\em fea\_\-data\_\-plane\_\-manager} & \hyperlink{protocolthe-p}{the} corresponding data plane manager (\hyperlink{classFeaDataPlaneManager}{FeaDataPlaneManager}). \\
\hline
{\em iftree} & \hyperlink{protocolthe-p}{the} interface tree to use. \\
\hline
{\em family} & \hyperlink{protocolthe-p}{the} address family (AF\_\-INET or AF\_\-INET6 for \hyperlink{classIPv4}{IPv4} and \hyperlink{classIPv6}{IPv6} respectively). \\
\hline
{\em is\_\-tcp} & if true this is TCP entry, otherwise UDP. \\
\hline
\end{DoxyParams}


\subsection{Member Function Documentation}
\hypertarget{classIoTcpUdpDummy_a6efd50920c5409f918bf7c91ef76bbcb}{
\index{IoTcpUdpDummy@{IoTcpUdpDummy}!accept\_\-connection@{accept\_\-connection}}
\index{accept\_\-connection@{accept\_\-connection}!IoTcpUdpDummy@{IoTcpUdpDummy}}
\subsubsection[{accept\_\-connection}]{\setlength{\rightskip}{0pt plus 5cm}int IoTcpUdpDummy::accept\_\-connection (
\begin{DoxyParamCaption}
\item[{bool}]{is\_\-accepted, }
\item[{string \&}]{error\_\-msg}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{classIoTcpUdpDummy_a6efd50920c5409f918bf7c91ef76bbcb}


\hyperlink{classAccept}{Accept} or reject a pending connection. 


\begin{DoxyParams}{Parameters}
{\em is\_\-accepted} & if true, \hyperlink{protocolthe-p}{the} connection is accepted, otherwise is rejected. \\
\hline
{\em error\_\-msg} & \hyperlink{protocolthe-p}{the} error message (if error). \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
XORP\_\-OK on success, otherwise XORP\_\-ERROR. 
\end{DoxyReturn}


Implements \hyperlink{classIoTcpUdp_a5a451d459c4b8f935b5e62ce88d1c130}{IoTcpUdp}.

\hypertarget{classIoTcpUdpDummy_a1265b63c0dd9e1e5acce95fa6e642ef1}{
\index{IoTcpUdpDummy@{IoTcpUdpDummy}!bind@{bind}}
\index{bind@{bind}!IoTcpUdpDummy@{IoTcpUdpDummy}}
\subsubsection[{bind}]{\setlength{\rightskip}{0pt plus 5cm}int IoTcpUdpDummy::bind (
\begin{DoxyParamCaption}
\item[{const {\bf IPvX} \&}]{local\_\-addr, }
\item[{uint16\_\-t}]{local\_\-port, }
\item[{string \&}]{error\_\-msg}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{classIoTcpUdpDummy_a1265b63c0dd9e1e5acce95fa6e642ef1}


Bind a socket. 


\begin{DoxyParams}{Parameters}
{\em local\_\-addr} & \hyperlink{protocolthe-p}{the} interface address to bind socket to. \\
\hline
{\em local\_\-port} & \hyperlink{protocolthe-p}{the} port to bind socket to. \\
\hline
{\em error\_\-msg} & \hyperlink{protocolthe-p}{the} error message (if error). \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
XORP\_\-OK on success, otherwise XORP\_\-ERROR. 
\end{DoxyReturn}


Implements \hyperlink{classIoTcpUdp_a262453ac79b0a2761f87dcfedd5706f8}{IoTcpUdp}.

\hypertarget{classIoTcpUdpDummy_a55c809047ba82e7d9910e90d16000214}{
\index{IoTcpUdpDummy@{IoTcpUdpDummy}!close@{close}}
\index{close@{close}!IoTcpUdpDummy@{IoTcpUdpDummy}}
\subsubsection[{close}]{\setlength{\rightskip}{0pt plus 5cm}int IoTcpUdpDummy::close (
\begin{DoxyParamCaption}
\item[{string \&}]{error\_\-msg}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{classIoTcpUdpDummy_a55c809047ba82e7d9910e90d16000214}


Close socket. 


\begin{DoxyParams}{Parameters}
{\em error\_\-msg} & \hyperlink{protocolthe-p}{the} error message (if error). \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
XORP\_\-OK on success, otherwise XORP\_\-ERROR. 
\end{DoxyReturn}


Implements \hyperlink{classIoTcpUdp_a3451da21b4680d8b3e567efe12f28955}{IoTcpUdp}.

\hypertarget{classIoTcpUdpDummy_aa61170e5fff39a65b6be4c9099286d56}{
\index{IoTcpUdpDummy@{IoTcpUdpDummy}!send@{send}}
\index{send@{send}!IoTcpUdpDummy@{IoTcpUdpDummy}}
\subsubsection[{send}]{\setlength{\rightskip}{0pt plus 5cm}int IoTcpUdpDummy::send (
\begin{DoxyParamCaption}
\item[{const vector$<$ uint8\_\-t $>$ \&}]{data, }
\item[{string \&}]{error\_\-msg}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{classIoTcpUdpDummy_aa61170e5fff39a65b6be4c9099286d56}


\hyperlink{structSend}{Send} data on socket. 


\begin{DoxyParams}{Parameters}
{\em data} & block of data to be sent. \\
\hline
{\em error\_\-msg} & \hyperlink{protocolthe-p}{the} error message (if error). \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
XORP\_\-OK on success, otherwise XORP\_\-ERROR. 
\end{DoxyReturn}


Implements \hyperlink{classIoTcpUdp_a53ca85961ecbc07da9cb76a7599cbbbb}{IoTcpUdp}.

\hypertarget{classIoTcpUdpDummy_aba01bbb9d1df55c88a2eb1a6682d73bd}{
\index{IoTcpUdpDummy@{IoTcpUdpDummy}!send\_\-from\_\-multicast\_\-if@{send\_\-from\_\-multicast\_\-if}}
\index{send\_\-from\_\-multicast\_\-if@{send\_\-from\_\-multicast\_\-if}!IoTcpUdpDummy@{IoTcpUdpDummy}}
\subsubsection[{send\_\-from\_\-multicast\_\-if}]{\setlength{\rightskip}{0pt plus 5cm}int IoTcpUdpDummy::send\_\-from\_\-multicast\_\-if (
\begin{DoxyParamCaption}
\item[{const {\bf IPvX} \&}]{group\_\-addr, }
\item[{uint16\_\-t}]{group\_\-port, }
\item[{const {\bf IPvX} \&}]{ifaddr, }
\item[{const vector$<$ uint8\_\-t $>$ \&}]{data, }
\item[{string \&}]{error\_\-msg}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{classIoTcpUdpDummy_aba01bbb9d1df55c88a2eb1a6682d73bd}


\hyperlink{structSend}{Send} data on socket to a given multicast group from a given interface. 


\begin{DoxyParams}{Parameters}
{\em group\_\-addr} & destination address for data. \\
\hline
{\em group\_\-port} & destination port for data. \\
\hline
{\em ifaddr} & interface address. \\
\hline
{\em error\_\-msg} & \hyperlink{protocolthe-p}{the} error message (if error). \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
XORP\_\-OK on success, otherwise XORP\_\-ERROR. 
\end{DoxyReturn}


Implements \hyperlink{classIoTcpUdp_abbe53379d6427f27b475c38b7c5d1c0d}{IoTcpUdp}.

\hypertarget{classIoTcpUdpDummy_afe6cdfc4456a78e4161562a329548b8b}{
\index{IoTcpUdpDummy@{IoTcpUdpDummy}!send\_\-to@{send\_\-to}}
\index{send\_\-to@{send\_\-to}!IoTcpUdpDummy@{IoTcpUdpDummy}}
\subsubsection[{send\_\-to}]{\setlength{\rightskip}{0pt plus 5cm}int IoTcpUdpDummy::send\_\-to (
\begin{DoxyParamCaption}
\item[{const {\bf IPvX} \&}]{remote\_\-addr, }
\item[{uint16\_\-t}]{remote\_\-port, }
\item[{const vector$<$ uint8\_\-t $>$ \&}]{data, }
\item[{string \&}]{error\_\-msg}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{classIoTcpUdpDummy_afe6cdfc4456a78e4161562a329548b8b}


\hyperlink{structSend}{Send} data on socket to a given destination. 

The packet is not routed as \hyperlink{protocolthe-p}{the} forwarding engine sending \hyperlink{protocolthe-p}{the} packet may not have access to \hyperlink{protocolthe-p}{the} full routing table.


\begin{DoxyParams}{Parameters}
{\em remote\_\-addr} & destination address for data. \\
\hline
{\em remote\_\-port} & destination port for data. \\
\hline
{\em data} & block of data to be sent. \\
\hline
{\em error\_\-msg} & \hyperlink{protocolthe-p}{the} error message (if error). \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
XORP\_\-OK on success, otherwise XORP\_\-ERROR. 
\end{DoxyReturn}


Implements \hyperlink{classIoTcpUdp_ad6f8969ce50e5b683bd73c91a504240e}{IoTcpUdp}.

\hypertarget{classIoTcpUdpDummy_a544f5f3dbff1be132870be2afdec3df8}{
\index{IoTcpUdpDummy@{IoTcpUdpDummy}!set\_\-socket\_\-option@{set\_\-socket\_\-option}}
\index{set\_\-socket\_\-option@{set\_\-socket\_\-option}!IoTcpUdpDummy@{IoTcpUdpDummy}}
\subsubsection[{set\_\-socket\_\-option}]{\setlength{\rightskip}{0pt plus 5cm}int IoTcpUdpDummy::set\_\-socket\_\-option (
\begin{DoxyParamCaption}
\item[{const string \&}]{optname, }
\item[{const string \&}]{optval, }
\item[{string \&}]{error\_\-msg}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{classIoTcpUdpDummy_a544f5f3dbff1be132870be2afdec3df8}


Set a named socket option with a text value. 


\begin{DoxyParams}{Parameters}
{\em optname} & name of option to be set. All values are ignored. \\
\hline
{\em optval} & value of option to be set. \\
\hline
{\em error\_\-msg} & \hyperlink{protocolthe-p}{the} error message (if error). \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
XORP\_\-OK on success, otherwise XORP\_\-ERROR. 
\end{DoxyReturn}


Implements \hyperlink{classIoTcpUdp_aab7e194fffa22ae3ec1d604f1ca46df3}{IoTcpUdp}.

\hypertarget{classIoTcpUdpDummy_a3832177cb8da60d7e966223cceb55ddb}{
\index{IoTcpUdpDummy@{IoTcpUdpDummy}!set\_\-socket\_\-option@{set\_\-socket\_\-option}}
\index{set\_\-socket\_\-option@{set\_\-socket\_\-option}!IoTcpUdpDummy@{IoTcpUdpDummy}}
\subsubsection[{set\_\-socket\_\-option}]{\setlength{\rightskip}{0pt plus 5cm}int IoTcpUdpDummy::set\_\-socket\_\-option (
\begin{DoxyParamCaption}
\item[{const string \&}]{optname, }
\item[{uint32\_\-t}]{optval, }
\item[{string \&}]{error\_\-msg}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{classIoTcpUdpDummy_a3832177cb8da60d7e966223cceb55ddb}


Set a named socket option with an integer value. 


\begin{DoxyParams}{Parameters}
{\em optname} & name of option to be set. Valid values are: \char`\"{}onesbcast\char`\"{} (\hyperlink{classIPv4}{IPv4} only) \char`\"{}receive\_\-broadcast\char`\"{} (\hyperlink{classIPv4}{IPv4} only) \char`\"{}reuseport\char`\"{} \char`\"{}send\_\-broadcast\char`\"{} (\hyperlink{classIPv4}{IPv4} only) \char`\"{}tos\char`\"{} (\hyperlink{classIPv4}{IPv4} only) \char`\"{}ttl\char`\"{} \char`\"{}multicast\_\-loopback\char`\"{} \char`\"{}multicast\_\-ttl\char`\"{} \\
\hline
{\em optval} & value of option to be set. If value is logically boolean then zero represents false and any non-\/zero value true. \\
\hline
{\em error\_\-msg} & \hyperlink{protocolthe-p}{the} error message (if error). \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
XORP\_\-OK on success, otherwise XORP\_\-ERROR. 
\end{DoxyReturn}


Implements \hyperlink{classIoTcpUdp_ace5c324fe13721b31399062f87a214b9}{IoTcpUdp}.

\hypertarget{classIoTcpUdpDummy_a848d35dca7e8961a435d765175ed8799}{
\index{IoTcpUdpDummy@{IoTcpUdpDummy}!start@{start}}
\index{start@{start}!IoTcpUdpDummy@{IoTcpUdpDummy}}
\subsubsection[{start}]{\setlength{\rightskip}{0pt plus 5cm}int IoTcpUdpDummy::start (
\begin{DoxyParamCaption}
\item[{string \&}]{error\_\-msg}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{classIoTcpUdpDummy_a848d35dca7e8961a435d765175ed8799}


Start operation. 


\begin{DoxyParams}{Parameters}
{\em error\_\-msg} & \hyperlink{protocolthe-p}{the} error message (if error). \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
XORP\_\-OK on success, otherwise XORP\_\-ERROR. 
\end{DoxyReturn}


Implements \hyperlink{classIoTcpUdp_abc82f6f92ec696f8a174673a00aaa7b4}{IoTcpUdp}.

\hypertarget{classIoTcpUdpDummy_a0cd751c58cb0d0e2346e905cb86a2859}{
\index{IoTcpUdpDummy@{IoTcpUdpDummy}!stop@{stop}}
\index{stop@{stop}!IoTcpUdpDummy@{IoTcpUdpDummy}}
\subsubsection[{stop}]{\setlength{\rightskip}{0pt plus 5cm}int IoTcpUdpDummy::stop (
\begin{DoxyParamCaption}
\item[{string \&}]{error\_\-msg}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{classIoTcpUdpDummy_a0cd751c58cb0d0e2346e905cb86a2859}


Stop operation. 


\begin{DoxyParams}{Parameters}
{\em error\_\-msg} & \hyperlink{protocolthe-p}{the} error message (if error). \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
XORP\_\-OK on success, otherwise XORP\_\-ERROR. 
\end{DoxyReturn}


Implements \hyperlink{classIoTcpUdp_a2fdd3b26ccf4af375653f3bc34b6db96}{IoTcpUdp}.

\hypertarget{classIoTcpUdpDummy_a5b6cdfca56911f07b80670b30955672e}{
\index{IoTcpUdpDummy@{IoTcpUdpDummy}!tcp\_\-listen@{tcp\_\-listen}}
\index{tcp\_\-listen@{tcp\_\-listen}!IoTcpUdpDummy@{IoTcpUdpDummy}}
\subsubsection[{tcp\_\-listen}]{\setlength{\rightskip}{0pt plus 5cm}int IoTcpUdpDummy::tcp\_\-listen (
\begin{DoxyParamCaption}
\item[{uint32\_\-t}]{backlog, }
\item[{string \&}]{error\_\-msg}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{classIoTcpUdpDummy_a5b6cdfca56911f07b80670b30955672e}


Listen for inbound connections on socket. 

When a connection request is received \hyperlink{protocolthe-p}{the} socket creator will receive notification.


\begin{DoxyParams}{Parameters}
{\em backlog} & \hyperlink{protocolthe-p}{the} maximum number of pending connections. \\
\hline
{\em error\_\-msg} & \hyperlink{protocolthe-p}{the} error message (if error). \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
XORP\_\-OK on success, otherwise XORP\_\-ERROR. 
\end{DoxyReturn}


Implements \hyperlink{classIoTcpUdp_a36932a32e49b0af71c3f8dc26d2a7474}{IoTcpUdp}.

\hypertarget{classIoTcpUdpDummy_a71a9672c5a30a939fe184258dbb16e0b}{
\index{IoTcpUdpDummy@{IoTcpUdpDummy}!tcp\_\-open@{tcp\_\-open}}
\index{tcp\_\-open@{tcp\_\-open}!IoTcpUdpDummy@{IoTcpUdpDummy}}
\subsubsection[{tcp\_\-open}]{\setlength{\rightskip}{0pt plus 5cm}int IoTcpUdpDummy::tcp\_\-open (
\begin{DoxyParamCaption}
\item[{string \&}]{error\_\-msg}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{classIoTcpUdpDummy_a71a9672c5a30a939fe184258dbb16e0b}


Open a TCP socket. 


\begin{DoxyParams}{Parameters}
{\em error\_\-msg} & \hyperlink{protocolthe-p}{the} error message (if error). \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
XORP\_\-OK on success, otherwise XORP\_\-ERROR. 
\end{DoxyReturn}


Implements \hyperlink{classIoTcpUdp_ae5cda6420a774c24fc8edc9a5780683e}{IoTcpUdp}.

\hypertarget{classIoTcpUdpDummy_a171339796111cac998ed2d5277613968}{
\index{IoTcpUdpDummy@{IoTcpUdpDummy}!tcp\_\-open\_\-and\_\-bind@{tcp\_\-open\_\-and\_\-bind}}
\index{tcp\_\-open\_\-and\_\-bind@{tcp\_\-open\_\-and\_\-bind}!IoTcpUdpDummy@{IoTcpUdpDummy}}
\subsubsection[{tcp\_\-open\_\-and\_\-bind}]{\setlength{\rightskip}{0pt plus 5cm}int IoTcpUdpDummy::tcp\_\-open\_\-and\_\-bind (
\begin{DoxyParamCaption}
\item[{const {\bf IPvX} \&}]{local\_\-addr, }
\item[{uint16\_\-t}]{local\_\-port, }
\item[{string \&}]{error\_\-msg}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{classIoTcpUdpDummy_a171339796111cac998ed2d5277613968}


Create a bound TCP socket. 


\begin{DoxyParams}{Parameters}
{\em local\_\-addr} & \hyperlink{protocolthe-p}{the} interface address to bind socket to. \\
\hline
{\em local\_\-port} & \hyperlink{protocolthe-p}{the} port to bind socket to. \\
\hline
{\em error\_\-msg} & \hyperlink{protocolthe-p}{the} error message (if error). \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
XORP\_\-OK on success, otherwise XORP\_\-ERROR. 
\end{DoxyReturn}


Implements \hyperlink{classIoTcpUdp_a1a059d4142656cbd90a063e495f228b3}{IoTcpUdp}.

\hypertarget{classIoTcpUdpDummy_ad7c53b3f15cc62449b10801b10d0a8ac}{
\index{IoTcpUdpDummy@{IoTcpUdpDummy}!tcp\_\-open\_\-bind\_\-connect@{tcp\_\-open\_\-bind\_\-connect}}
\index{tcp\_\-open\_\-bind\_\-connect@{tcp\_\-open\_\-bind\_\-connect}!IoTcpUdpDummy@{IoTcpUdpDummy}}
\subsubsection[{tcp\_\-open\_\-bind\_\-connect}]{\setlength{\rightskip}{0pt plus 5cm}int IoTcpUdpDummy::tcp\_\-open\_\-bind\_\-connect (
\begin{DoxyParamCaption}
\item[{const {\bf IPvX} \&}]{local\_\-addr, }
\item[{uint16\_\-t}]{local\_\-port, }
\item[{const {\bf IPvX} \&}]{remote\_\-addr, }
\item[{uint16\_\-t}]{remote\_\-port, }
\item[{string \&}]{error\_\-msg}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{classIoTcpUdpDummy_ad7c53b3f15cc62449b10801b10d0a8ac}


Create a bound and connected TCP socket. 


\begin{DoxyParams}{Parameters}
{\em local\_\-addr} & \hyperlink{protocolthe-p}{the} interface address to bind socket to. \\
\hline
{\em local\_\-port} & \hyperlink{protocolthe-p}{the} port to bind socket to. \\
\hline
{\em remote\_\-addr} & \hyperlink{protocolthe-p}{the} address to connect to. \\
\hline
{\em remote\_\-port} & \hyperlink{protocolthe-p}{the} remote port to connect to. \\
\hline
{\em error\_\-msg} & \hyperlink{protocolthe-p}{the} error message (if error). \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
XORP\_\-OK on success, otherwise XORP\_\-ERROR. 
\end{DoxyReturn}


Implements \hyperlink{classIoTcpUdp_abdc53f610eb3191ad0a945d2c559f5d3}{IoTcpUdp}.

\hypertarget{classIoTcpUdpDummy_a94d6505daa48741473966b4b49a7bc6b}{
\index{IoTcpUdpDummy@{IoTcpUdpDummy}!udp\_\-enable\_\-recv@{udp\_\-enable\_\-recv}}
\index{udp\_\-enable\_\-recv@{udp\_\-enable\_\-recv}!IoTcpUdpDummy@{IoTcpUdpDummy}}
\subsubsection[{udp\_\-enable\_\-recv}]{\setlength{\rightskip}{0pt plus 5cm}int IoTcpUdpDummy::udp\_\-enable\_\-recv (
\begin{DoxyParamCaption}
\item[{string \&}]{error\_\-msg}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{classIoTcpUdpDummy_a94d6505daa48741473966b4b49a7bc6b}


Enable a UDP socket for datagram reception. 


\begin{DoxyParams}{Parameters}
{\em error\_\-msg} & \hyperlink{protocolthe-p}{the} error message (if error). \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
XORP\_\-OK on success, otherwise XORP\_\-ERROR. 
\end{DoxyReturn}


Implements \hyperlink{classIoTcpUdp_a1a05fdb241e8a99fd54a5407b7f6b618}{IoTcpUdp}.

\hypertarget{classIoTcpUdpDummy_a1e94d4adff2be7c13b5fa62f1cd19bef}{
\index{IoTcpUdpDummy@{IoTcpUdpDummy}!udp\_\-join\_\-group@{udp\_\-join\_\-group}}
\index{udp\_\-join\_\-group@{udp\_\-join\_\-group}!IoTcpUdpDummy@{IoTcpUdpDummy}}
\subsubsection[{udp\_\-join\_\-group}]{\setlength{\rightskip}{0pt plus 5cm}int IoTcpUdpDummy::udp\_\-join\_\-group (
\begin{DoxyParamCaption}
\item[{const {\bf IPvX} \&}]{mcast\_\-addr, }
\item[{const {\bf IPvX} \&}]{join\_\-if\_\-addr, }
\item[{string \&}]{error\_\-msg}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{classIoTcpUdpDummy_a1e94d4adff2be7c13b5fa62f1cd19bef}


Join multicast group on already bound socket. 


\begin{DoxyParams}{Parameters}
{\em mcast\_\-addr} & group to join. \\
\hline
{\em join\_\-if\_\-addr} & interface address to perform join on. \\
\hline
{\em error\_\-msg} & \hyperlink{protocolthe-p}{the} error message (if error). \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
XORP\_\-OK on success, otherwise XORP\_\-ERROR. 
\end{DoxyReturn}


Implements \hyperlink{classIoTcpUdp_af8680ef1d8758531b6b84f1b155cde45}{IoTcpUdp}.

\hypertarget{classIoTcpUdpDummy_ac32b43bd68e714fe34ae88beaf65817b}{
\index{IoTcpUdpDummy@{IoTcpUdpDummy}!udp\_\-leave\_\-group@{udp\_\-leave\_\-group}}
\index{udp\_\-leave\_\-group@{udp\_\-leave\_\-group}!IoTcpUdpDummy@{IoTcpUdpDummy}}
\subsubsection[{udp\_\-leave\_\-group}]{\setlength{\rightskip}{0pt plus 5cm}int IoTcpUdpDummy::udp\_\-leave\_\-group (
\begin{DoxyParamCaption}
\item[{const {\bf IPvX} \&}]{mcast\_\-addr, }
\item[{const {\bf IPvX} \&}]{leave\_\-if\_\-addr, }
\item[{string \&}]{error\_\-msg}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{classIoTcpUdpDummy_ac32b43bd68e714fe34ae88beaf65817b}


Leave multicast group on already bound socket. 


\begin{DoxyParams}{Parameters}
{\em mcast\_\-addr} & group to leave. \\
\hline
{\em leave\_\-if\_\-addr} & interface address to perform leave on. \\
\hline
{\em error\_\-msg} & \hyperlink{protocolthe-p}{the} error message (if error). \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
XORP\_\-OK on success, otherwise XORP\_\-ERROR. 
\end{DoxyReturn}


Implements \hyperlink{classIoTcpUdp_a81b895c1634d404191a099bd5aff5b8c}{IoTcpUdp}.

\hypertarget{classIoTcpUdpDummy_ab19a774d6ee91031212a37d3e46eb595}{
\index{IoTcpUdpDummy@{IoTcpUdpDummy}!udp\_\-open@{udp\_\-open}}
\index{udp\_\-open@{udp\_\-open}!IoTcpUdpDummy@{IoTcpUdpDummy}}
\subsubsection[{udp\_\-open}]{\setlength{\rightskip}{0pt plus 5cm}int IoTcpUdpDummy::udp\_\-open (
\begin{DoxyParamCaption}
\item[{string \&}]{error\_\-msg}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{classIoTcpUdpDummy_ab19a774d6ee91031212a37d3e46eb595}


Open an UDP socket. 


\begin{DoxyParams}{Parameters}
{\em error\_\-msg} & \hyperlink{protocolthe-p}{the} error message (if error). \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
XORP\_\-OK on success, otherwise XORP\_\-ERROR. 
\end{DoxyReturn}


Implements \hyperlink{classIoTcpUdp_aed038b61b40713bbf3b43c23e2ebb8bf}{IoTcpUdp}.

\hypertarget{classIoTcpUdpDummy_a03e82a0e7aa7e48150aaabfbf09ce6bd}{
\index{IoTcpUdpDummy@{IoTcpUdpDummy}!udp\_\-open\_\-and\_\-bind@{udp\_\-open\_\-and\_\-bind}}
\index{udp\_\-open\_\-and\_\-bind@{udp\_\-open\_\-and\_\-bind}!IoTcpUdpDummy@{IoTcpUdpDummy}}
\subsubsection[{udp\_\-open\_\-and\_\-bind}]{\setlength{\rightskip}{0pt plus 5cm}int IoTcpUdpDummy::udp\_\-open\_\-and\_\-bind (
\begin{DoxyParamCaption}
\item[{const {\bf IPvX} \&}]{local\_\-addr, }
\item[{uint16\_\-t}]{local\_\-port, }
\item[{const string \&}]{local\_\-dev, }
\item[{int}]{reuse, }
\item[{string \&}]{error\_\-msg}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{classIoTcpUdpDummy_a03e82a0e7aa7e48150aaabfbf09ce6bd}


Create a bound UDP socket. 


\begin{DoxyParams}{Parameters}
{\em local\_\-addr} & \hyperlink{protocolthe-p}{the} interface address to bind socket to. \\
\hline
{\em local\_\-port} & \hyperlink{protocolthe-p}{the} port to bind socket to. \\
\hline
{\em error\_\-msg} & \hyperlink{protocolthe-p}{the} error message (if error). \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
XORP\_\-OK on success, otherwise XORP\_\-ERROR. 
\end{DoxyReturn}


Implements \hyperlink{classIoTcpUdp_a1885797d1bf4d2d844272e7469ee41be}{IoTcpUdp}.

\hypertarget{classIoTcpUdpDummy_a6e467c7aa422878017121301691d9b5c}{
\index{IoTcpUdpDummy@{IoTcpUdpDummy}!udp\_\-open\_\-bind\_\-broadcast@{udp\_\-open\_\-bind\_\-broadcast}}
\index{udp\_\-open\_\-bind\_\-broadcast@{udp\_\-open\_\-bind\_\-broadcast}!IoTcpUdpDummy@{IoTcpUdpDummy}}
\subsubsection[{udp\_\-open\_\-bind\_\-broadcast}]{\setlength{\rightskip}{0pt plus 5cm}int IoTcpUdpDummy::udp\_\-open\_\-bind\_\-broadcast (
\begin{DoxyParamCaption}
\item[{const string \&}]{ifname, }
\item[{const string \&}]{vifname, }
\item[{uint16\_\-t}]{local\_\-port, }
\item[{uint16\_\-t}]{remote\_\-port, }
\item[{bool}]{reuse, }
\item[{bool}]{limited, }
\item[{bool}]{connected, }
\item[{string \&}]{error\_\-msg}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{classIoTcpUdpDummy_a6e467c7aa422878017121301691d9b5c}


Create a bound, and optionally connected, UDP broadcast socket. 


\begin{DoxyParams}{Parameters}
{\em ifname} & \hyperlink{protocolthe-p}{the} interface name to bind socket to. \\
\hline
{\em vifname} & \hyperlink{protocolthe-p}{the} vif to bind socket to. \\
\hline
{\em local\_\-port} & \hyperlink{protocolthe-p}{the} port to bind socket to. \\
\hline
{\em remote\_\-port} & \hyperlink{protocolthe-p}{the} remote port to connect to. \\
\hline
{\em reuse} & allow other sockets to bind to same port. \\
\hline
{\em limited} & set \hyperlink{protocolthe-p}{the} socket up for transmission to \hyperlink{protocolthe-p}{the} limited broadcast address 255.255.255.255. \\
\hline
{\em connected} & connect \hyperlink{protocolthe-p}{the} socket for use with \hyperlink{classIoTcpUdpDummy_aa61170e5fff39a65b6be4c9099286d56}{send()} not sendto(). \\
\hline
{\em error\_\-msg} & \hyperlink{protocolthe-p}{the} error message (if error). \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
XORP\_\-OK on success, otherwise XORP\_\-ERROR. 
\end{DoxyReturn}


Implements \hyperlink{classIoTcpUdp_a33da4c42427d1f9d93e3877e21004c6f}{IoTcpUdp}.

\hypertarget{classIoTcpUdpDummy_a0140c690393d2df426be9005113cadc6}{
\index{IoTcpUdpDummy@{IoTcpUdpDummy}!udp\_\-open\_\-bind\_\-connect@{udp\_\-open\_\-bind\_\-connect}}
\index{udp\_\-open\_\-bind\_\-connect@{udp\_\-open\_\-bind\_\-connect}!IoTcpUdpDummy@{IoTcpUdpDummy}}
\subsubsection[{udp\_\-open\_\-bind\_\-connect}]{\setlength{\rightskip}{0pt plus 5cm}int IoTcpUdpDummy::udp\_\-open\_\-bind\_\-connect (
\begin{DoxyParamCaption}
\item[{const {\bf IPvX} \&}]{local\_\-addr, }
\item[{uint16\_\-t}]{local\_\-port, }
\item[{const {\bf IPvX} \&}]{remote\_\-addr, }
\item[{uint16\_\-t}]{remote\_\-port, }
\item[{string \&}]{error\_\-msg}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{classIoTcpUdpDummy_a0140c690393d2df426be9005113cadc6}


Create a bound and connected UDP socket. 


\begin{DoxyParams}{Parameters}
{\em local\_\-addr} & \hyperlink{protocolthe-p}{the} interface address to bind socket to. \\
\hline
{\em local\_\-port} & \hyperlink{protocolthe-p}{the} port to bind socket to. \\
\hline
{\em remote\_\-addr} & \hyperlink{protocolthe-p}{the} address to connect to. \\
\hline
{\em remote\_\-port} & \hyperlink{protocolthe-p}{the} remote port to connect to. \\
\hline
{\em error\_\-msg} & \hyperlink{protocolthe-p}{the} error message (if error). \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
XORP\_\-OK on success, otherwise XORP\_\-ERROR. 
\end{DoxyReturn}


Implements \hyperlink{classIoTcpUdp_a537ad4a122779c5f70c0627f9bca65ff}{IoTcpUdp}.

\hypertarget{classIoTcpUdpDummy_ab91c1cf5e3439939c5e363e697ba2623}{
\index{IoTcpUdpDummy@{IoTcpUdpDummy}!udp\_\-open\_\-bind\_\-join@{udp\_\-open\_\-bind\_\-join}}
\index{udp\_\-open\_\-bind\_\-join@{udp\_\-open\_\-bind\_\-join}!IoTcpUdpDummy@{IoTcpUdpDummy}}
\subsubsection[{udp\_\-open\_\-bind\_\-join}]{\setlength{\rightskip}{0pt plus 5cm}int IoTcpUdpDummy::udp\_\-open\_\-bind\_\-join (
\begin{DoxyParamCaption}
\item[{const {\bf IPvX} \&}]{local\_\-addr, }
\item[{uint16\_\-t}]{local\_\-port, }
\item[{const {\bf IPvX} \&}]{mcast\_\-addr, }
\item[{uint8\_\-t}]{ttl, }
\item[{bool}]{reuse, }
\item[{string \&}]{error\_\-msg}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{classIoTcpUdpDummy_ab91c1cf5e3439939c5e363e697ba2623}


Create a bound UDP multicast socket. 


\begin{DoxyParams}{Parameters}
{\em local\_\-addr} & \hyperlink{protocolthe-p}{the} interface address to bind socket to. \\
\hline
{\em local\_\-port} & \hyperlink{protocolthe-p}{the} port to bind socket to. \\
\hline
{\em mcast\_\-addr} & \hyperlink{protocolthe-p}{the} multicast group address to join. \\
\hline
{\em ttl} & \hyperlink{protocolthe-p}{the} TTL to use for this multicast socket. \\
\hline
{\em reuse} & allow other sockets to bind to same multicast group. \\
\hline
{\em error\_\-msg} & \hyperlink{protocolthe-p}{the} error message (if error). \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
XORP\_\-OK on success, otherwise XORP\_\-ERROR. 
\end{DoxyReturn}


Implements \hyperlink{classIoTcpUdp_ae456ddc7b4ae18cad3f0d5768eaca335}{IoTcpUdp}.



The documentation for this class was generated from the following files:\begin{DoxyCompactItemize}
\item 
/home/greearb/git/xorp.ct.github/xorp/fea/data\_\-plane/io/io\_\-tcpudp\_\-dummy.hh\item 
/home/greearb/git/xorp.ct.github/xorp/fea/data\_\-plane/io/io\_\-tcpudp\_\-dummy.cc\end{DoxyCompactItemize}
