\hypertarget{classRibClientTarget}{
\section{RibClientTarget Class Reference}
\label{classRibClientTarget}\index{RibClientTarget@{RibClientTarget}}
}
Inheritance diagram for RibClientTarget:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.000000cm]{classRibClientTarget}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classRibClientTarget_ad9cd3865fe8cfe591c6c843d28ea951c}{
{\bfseries RibClientTarget} (\hyperlink{classXrlRouter}{XrlRouter} $\ast$r)}
\label{classRibClientTarget_ad9cd3865fe8cfe591c6c843d28ea951c}

\item 
\hyperlink{structXrlCmdError}{XrlCmdError} \hyperlink{classRibClientTarget_a85cff1b64a35bd6f99953f0c898bec13}{rib\_\-client\_\-0\_\-1\_\-route\_\-info\_\-changed4} (const \hyperlink{classIPv4}{IPv4} \&addr, const uint32\_\-t \&prefix\_\-len, const \hyperlink{classIPv4}{IPv4} \&nexthop, const uint32\_\-t \&metric, const uint32\_\-t \&admin\_\-distance, const string \&protocol\_\-origin)
\begin{DoxyCompactList}\small\item\em Pure-\/virtual function that needs to be implemented to: \item\end{DoxyCompactList}\item 
\hypertarget{classRibClientTarget_a104f52c4cd8c0040098a36809b87aefc}{
\hyperlink{structXrlCmdError}{XrlCmdError} {\bfseries rib\_\-client\_\-0\_\-1\_\-route\_\-info\_\-changed6} (const \hyperlink{classIPv6}{IPv6} \&, const uint32\_\-t \&, const \hyperlink{classIPv6}{IPv6} \&, const uint32\_\-t \&, const uint32\_\-t \&, const string \&)}
\label{classRibClientTarget_a104f52c4cd8c0040098a36809b87aefc}

\item 
\hyperlink{structXrlCmdError}{XrlCmdError} \hyperlink{classRibClientTarget_a93c9ce93e75c2fba70e24f557a2d4adc}{rib\_\-client\_\-0\_\-1\_\-route\_\-info\_\-invalid4} (const \hyperlink{classIPv4}{IPv4} \&addr, const uint32\_\-t \&prefix\_\-len)
\begin{DoxyCompactList}\small\item\em Pure-\/virtual function that needs to be implemented to: \item\end{DoxyCompactList}\item 
\hypertarget{classRibClientTarget_a1264dcdc60e4a717f2487221a446ae52}{
\hyperlink{structXrlCmdError}{XrlCmdError} {\bfseries rib\_\-client\_\-0\_\-1\_\-route\_\-info\_\-invalid6} (const \hyperlink{classIPv6}{IPv6} \&, const uint32\_\-t \&)}
\label{classRibClientTarget_a1264dcdc60e4a717f2487221a446ae52}

\item 
\hypertarget{classRibClientTarget_aff1d7f83f1d30a897f2730cb91662548}{
bool {\bfseries verify\_\-invalidated} (const string \&invalid)}
\label{classRibClientTarget_aff1d7f83f1d30a897f2730cb91662548}

\item 
\hypertarget{classRibClientTarget_a0dc9cfab1887485d029f78a10d2d9d18}{
bool {\bfseries verify\_\-changed} (const string \&changed)}
\label{classRibClientTarget_a0dc9cfab1887485d029f78a10d2d9d18}

\item 
\hypertarget{classRibClientTarget_a84421df2a75de3810257e18526a15adb}{
bool {\bfseries verify\_\-no\_\-info} ()}
\label{classRibClientTarget_a84421df2a75de3810257e18526a15adb}

\end{DoxyCompactItemize}
\subsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classRibClientTarget_a327008fa084fc49f0105abab23a1090e}{
set$<$ string $>$ {\bfseries \_\-invalidated}}
\label{classRibClientTarget_a327008fa084fc49f0105abab23a1090e}

\item 
\hypertarget{classRibClientTarget_a8cc9f4cd596673487d90df87898d0883}{
set$<$ string $>$ {\bfseries \_\-changed}}
\label{classRibClientTarget_a8cc9f4cd596673487d90df87898d0883}

\end{DoxyCompactItemize}


\subsection{Member Function Documentation}
\hypertarget{classRibClientTarget_a85cff1b64a35bd6f99953f0c898bec13}{
\index{RibClientTarget@{RibClientTarget}!rib\_\-client\_\-0\_\-1\_\-route\_\-info\_\-changed4@{rib\_\-client\_\-0\_\-1\_\-route\_\-info\_\-changed4}}
\index{rib\_\-client\_\-0\_\-1\_\-route\_\-info\_\-changed4@{rib\_\-client\_\-0\_\-1\_\-route\_\-info\_\-changed4}!RibClientTarget@{RibClientTarget}}
\subsubsection[{rib\_\-client\_\-0\_\-1\_\-route\_\-info\_\-changed4}]{\setlength{\rightskip}{0pt plus 5cm}{\bf XrlCmdError} RibClientTarget::rib\_\-client\_\-0\_\-1\_\-route\_\-info\_\-changed4 (
\begin{DoxyParamCaption}
\item[{const {\bf IPv4} \&}]{addr, }
\item[{const uint32\_\-t \&}]{prefix\_\-len, }
\item[{const {\bf IPv4} \&}]{nexthop, }
\item[{const uint32\_\-t \&}]{metric, }
\item[{const uint32\_\-t \&}]{admin\_\-distance, }
\item[{const string \&}]{protocol\_\-origin}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline, virtual\mbox{]}}}}
\label{classRibClientTarget_a85cff1b64a35bd6f99953f0c898bec13}


Pure-\/virtual function that needs to be implemented to: 

\hyperlink{classRoute}{Route} Info Changed route\_\-info\_\-changed is called by \hyperlink{protocolthe-p}{the} \hyperlink{classRIB}{RIB} on \hyperlink{protocolthe-p}{the} \hyperlink{classRIB}{RIB} client (typically a routing protocol) that had registered an interest in \hyperlink{protocolthe-p}{the} routing of an address. This can be because \hyperlink{protocolthe-p}{the} metric and/or nexthop changed.


\begin{DoxyParams}{Parameters}
{\em addr} & base address of \hyperlink{protocolthe-p}{the} subnet that was registered\\
\hline
{\em prefix\_\-len} & prefix length of \hyperlink{protocolthe-p}{the} subnet that was registered\\
\hline
{\em metric} & \hyperlink{protocolthe-p}{the} routing metric toward \hyperlink{protocolthe-p}{the} address.\\
\hline
{\em admin\_\-distance} & \hyperlink{protocolthe-p}{the} administratively defined distance toward \hyperlink{protocolthe-p}{the} address.\\
\hline
{\em protocol\_\-origin} & \hyperlink{protocolthe-p}{the} name of \hyperlink{protocolthe-p}{the} protocol that originated this routing entry. \\
\hline
\end{DoxyParams}


Implements \hyperlink{structXrlRibclientTargetBase_ae3c06c042306c528e83dc3b0ec2244d6}{XrlRibclientTargetBase}.

\hypertarget{classRibClientTarget_a93c9ce93e75c2fba70e24f557a2d4adc}{
\index{RibClientTarget@{RibClientTarget}!rib\_\-client\_\-0\_\-1\_\-route\_\-info\_\-invalid4@{rib\_\-client\_\-0\_\-1\_\-route\_\-info\_\-invalid4}}
\index{rib\_\-client\_\-0\_\-1\_\-route\_\-info\_\-invalid4@{rib\_\-client\_\-0\_\-1\_\-route\_\-info\_\-invalid4}!RibClientTarget@{RibClientTarget}}
\subsubsection[{rib\_\-client\_\-0\_\-1\_\-route\_\-info\_\-invalid4}]{\setlength{\rightskip}{0pt plus 5cm}{\bf XrlCmdError} RibClientTarget::rib\_\-client\_\-0\_\-1\_\-route\_\-info\_\-invalid4 (
\begin{DoxyParamCaption}
\item[{const {\bf IPv4} \&}]{addr, }
\item[{const uint32\_\-t \&}]{prefix\_\-len}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline, virtual\mbox{]}}}}
\label{classRibClientTarget_a93c9ce93e75c2fba70e24f557a2d4adc}


Pure-\/virtual function that needs to be implemented to: 

\hyperlink{classRoute}{Route} Info Invalid route\_\-info\_\-invalid is called by \hyperlink{protocolthe-p}{the} \hyperlink{classRIB}{RIB} on \hyperlink{protocolthe-p}{the} \hyperlink{classRIB}{RIB} client (typically a routing protocol) that had registere d an interest in \hyperlink{protocolthe-p}{the} routing of an address. This can be because \hyperlink{protocolthe-p}{the} information previously reported as applying no longer applies for any number of reasons. When \hyperlink{protocolthe-p}{the} \hyperlink{classRIB}{RIB} sends this message, it has automatically de-\/registered interest in \hyperlink{protocolthe-p}{the} route, and \hyperlink{protocolthe-p}{the} client will normally need to send a register\_\-interest request again. 

Implements \hyperlink{structXrlRibclientTargetBase_a0324b8541c371d2079954332129d0182}{XrlRibclientTargetBase}.



The documentation for this class was generated from the following file:\begin{DoxyCompactItemize}
\item 
/home/greearb/git/xorp.ct.github/xorp/rib/tests/test\_\-register\_\-xrls.cc\end{DoxyCompactItemize}
