\hypertarget{classXrlRibClientV0p1Client}{
\section{XrlRibClientV0p1Client Class Reference}
\label{classXrlRibClientV0p1Client}\index{XrlRibClientV0p1Client@{XrlRibClientV0p1Client}}
}
\subsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classXrlRibClientV0p1Client_a7537ffa9fe8f0188f940ea06db018a89}{
typedef XorpCallback1$<$ void, const \hyperlink{classXrlError}{XrlError} \& $>$::RefPtr {\bfseries RouteInfoChanged4CB}}
\label{classXrlRibClientV0p1Client_a7537ffa9fe8f0188f940ea06db018a89}

\item 
\hypertarget{classXrlRibClientV0p1Client_a770204aad7d84de310591e9ae0642155}{
typedef XorpCallback1$<$ void, const \hyperlink{classXrlError}{XrlError} \& $>$::RefPtr {\bfseries RouteInfoInvalid4CB}}
\label{classXrlRibClientV0p1Client_a770204aad7d84de310591e9ae0642155}

\item 
\hypertarget{classXrlRibClientV0p1Client_a15cdc08ff9d744dd43dd23d348db0218}{
typedef XorpCallback1$<$ void, const \hyperlink{classXrlError}{XrlError} \& $>$::RefPtr {\bfseries RouteInfoChanged6CB}}
\label{classXrlRibClientV0p1Client_a15cdc08ff9d744dd43dd23d348db0218}

\item 
\hypertarget{classXrlRibClientV0p1Client_add28e8eb73ab42cde0eedfc9dfdf9096}{
typedef XorpCallback1$<$ void, const \hyperlink{classXrlError}{XrlError} \& $>$::RefPtr {\bfseries RouteInfoInvalid6CB}}
\label{classXrlRibClientV0p1Client_add28e8eb73ab42cde0eedfc9dfdf9096}

\item 
\hypertarget{classXrlRibClientV0p1Client_a7537ffa9fe8f0188f940ea06db018a89}{
typedef XorpCallback1$<$ void, const \hyperlink{classXrlError}{XrlError} \& $>$::RefPtr {\bfseries RouteInfoChanged4CB}}
\label{classXrlRibClientV0p1Client_a7537ffa9fe8f0188f940ea06db018a89}

\item 
\hypertarget{classXrlRibClientV0p1Client_a770204aad7d84de310591e9ae0642155}{
typedef XorpCallback1$<$ void, const \hyperlink{classXrlError}{XrlError} \& $>$::RefPtr {\bfseries RouteInfoInvalid4CB}}
\label{classXrlRibClientV0p1Client_a770204aad7d84de310591e9ae0642155}

\item 
\hypertarget{classXrlRibClientV0p1Client_a15cdc08ff9d744dd43dd23d348db0218}{
typedef XorpCallback1$<$ void, const \hyperlink{classXrlError}{XrlError} \& $>$::RefPtr {\bfseries RouteInfoChanged6CB}}
\label{classXrlRibClientV0p1Client_a15cdc08ff9d744dd43dd23d348db0218}

\item 
\hypertarget{classXrlRibClientV0p1Client_add28e8eb73ab42cde0eedfc9dfdf9096}{
typedef XorpCallback1$<$ void, const \hyperlink{classXrlError}{XrlError} \& $>$::RefPtr {\bfseries RouteInfoInvalid6CB}}
\label{classXrlRibClientV0p1Client_add28e8eb73ab42cde0eedfc9dfdf9096}

\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classXrlRibClientV0p1Client_ae5c41521a379fd12ba9962664cf2d7e8}{
{\bfseries XrlRibClientV0p1Client} (\hyperlink{classXrlSender}{XrlSender} $\ast$s)}
\label{classXrlRibClientV0p1Client_ae5c41521a379fd12ba9962664cf2d7e8}

\item 
bool \hyperlink{classXrlRibClientV0p1Client_a328655ceee39076d863d35fd1285595e}{send\_\-route\_\-info\_\-changed4} (const char $\ast$dst\_\-xrl\_\-target\_\-name, 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, const RouteInfoChanged4CB \&cb)
\begin{DoxyCompactList}\small\item\em \hyperlink{structSend}{Send} \hyperlink{classXrl}{Xrl} intended to: \item\end{DoxyCompactList}\item 
bool \hyperlink{classXrlRibClientV0p1Client_a4e8d3c6e38a225e135b21d0f6e38e1e9}{send\_\-route\_\-info\_\-invalid4} (const char $\ast$dst\_\-xrl\_\-target\_\-name, const \hyperlink{classIPv4}{IPv4} \&addr, const uint32\_\-t \&prefix\_\-len, const RouteInfoInvalid4CB \&cb)
\begin{DoxyCompactList}\small\item\em \hyperlink{structSend}{Send} \hyperlink{classXrl}{Xrl} intended to: \item\end{DoxyCompactList}\item 
\hypertarget{classXrlRibClientV0p1Client_ae43d271d06f493ae95c2f623773f6ba7}{
bool {\bfseries send\_\-route\_\-info\_\-changed6} (const char $\ast$dst\_\-xrl\_\-target\_\-name, const \hyperlink{classIPv6}{IPv6} \&addr, const uint32\_\-t \&prefix\_\-len, const \hyperlink{classIPv6}{IPv6} \&nexthop, const uint32\_\-t \&metric, const uint32\_\-t \&admin\_\-distance, const string \&protocol\_\-origin, const RouteInfoChanged6CB \&cb)}
\label{classXrlRibClientV0p1Client_ae43d271d06f493ae95c2f623773f6ba7}

\item 
\hypertarget{classXrlRibClientV0p1Client_a7439c674af4bec97d417f002d738b40c}{
bool {\bfseries send\_\-route\_\-info\_\-invalid6} (const char $\ast$dst\_\-xrl\_\-target\_\-name, const \hyperlink{classIPv6}{IPv6} \&addr, const uint32\_\-t \&prefix\_\-len, const RouteInfoInvalid6CB \&cb)}
\label{classXrlRibClientV0p1Client_a7439c674af4bec97d417f002d738b40c}

\item 
\hypertarget{classXrlRibClientV0p1Client_ae5c41521a379fd12ba9962664cf2d7e8}{
{\bfseries XrlRibClientV0p1Client} (\hyperlink{classXrlSender}{XrlSender} $\ast$s)}
\label{classXrlRibClientV0p1Client_ae5c41521a379fd12ba9962664cf2d7e8}

\item 
bool \hyperlink{classXrlRibClientV0p1Client_a328655ceee39076d863d35fd1285595e}{send\_\-route\_\-info\_\-changed4} (const char $\ast$dst\_\-xrl\_\-target\_\-name, 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, const RouteInfoChanged4CB \&cb)
\begin{DoxyCompactList}\small\item\em \hyperlink{structSend}{Send} \hyperlink{classXrl}{Xrl} intended to: \item\end{DoxyCompactList}\item 
bool \hyperlink{classXrlRibClientV0p1Client_a4e8d3c6e38a225e135b21d0f6e38e1e9}{send\_\-route\_\-info\_\-invalid4} (const char $\ast$dst\_\-xrl\_\-target\_\-name, const \hyperlink{classIPv4}{IPv4} \&addr, const uint32\_\-t \&prefix\_\-len, const RouteInfoInvalid4CB \&cb)
\begin{DoxyCompactList}\small\item\em \hyperlink{structSend}{Send} \hyperlink{classXrl}{Xrl} intended to: \item\end{DoxyCompactList}\item 
\hypertarget{classXrlRibClientV0p1Client_ae43d271d06f493ae95c2f623773f6ba7}{
bool {\bfseries send\_\-route\_\-info\_\-changed6} (const char $\ast$dst\_\-xrl\_\-target\_\-name, const \hyperlink{classIPv6}{IPv6} \&addr, const uint32\_\-t \&prefix\_\-len, const \hyperlink{classIPv6}{IPv6} \&nexthop, const uint32\_\-t \&metric, const uint32\_\-t \&admin\_\-distance, const string \&protocol\_\-origin, const RouteInfoChanged6CB \&cb)}
\label{classXrlRibClientV0p1Client_ae43d271d06f493ae95c2f623773f6ba7}

\item 
\hypertarget{classXrlRibClientV0p1Client_a7439c674af4bec97d417f002d738b40c}{
bool {\bfseries send\_\-route\_\-info\_\-invalid6} (const char $\ast$dst\_\-xrl\_\-target\_\-name, const \hyperlink{classIPv6}{IPv6} \&addr, const uint32\_\-t \&prefix\_\-len, const RouteInfoInvalid6CB \&cb)}
\label{classXrlRibClientV0p1Client_a7439c674af4bec97d417f002d738b40c}

\end{DoxyCompactItemize}
\subsection*{Protected Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classXrlRibClientV0p1Client_a6ee3b3f0916f5777afa2f69904aaf180}{
\hyperlink{classXrlSender}{XrlSender} $\ast$ {\bfseries \_\-sender}}
\label{classXrlRibClientV0p1Client_a6ee3b3f0916f5777afa2f69904aaf180}

\end{DoxyCompactItemize}
\subsection*{Static Private Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classXrlRibClientV0p1Client_a7feac5422df3698686a7035a544c1019}{
static void {\bfseries unmarshall\_\-route\_\-info\_\-changed4} (const \hyperlink{classXrlError}{XrlError} \&e, \hyperlink{classXrlArgs}{XrlArgs} $\ast$a, RouteInfoChanged4CB cb)}
\label{classXrlRibClientV0p1Client_a7feac5422df3698686a7035a544c1019}

\item 
\hypertarget{classXrlRibClientV0p1Client_a195b74c6bac697cab0f3932851b74f87}{
static void {\bfseries unmarshall\_\-route\_\-info\_\-invalid4} (const \hyperlink{classXrlError}{XrlError} \&e, \hyperlink{classXrlArgs}{XrlArgs} $\ast$a, RouteInfoInvalid4CB cb)}
\label{classXrlRibClientV0p1Client_a195b74c6bac697cab0f3932851b74f87}

\item 
\hypertarget{classXrlRibClientV0p1Client_a8f00f0ad1d37e0aec7f89e23f390e17d}{
static void {\bfseries unmarshall\_\-route\_\-info\_\-changed6} (const \hyperlink{classXrlError}{XrlError} \&e, \hyperlink{classXrlArgs}{XrlArgs} $\ast$a, RouteInfoChanged6CB cb)}
\label{classXrlRibClientV0p1Client_a8f00f0ad1d37e0aec7f89e23f390e17d}

\item 
\hypertarget{classXrlRibClientV0p1Client_ac8259054dd32db4e91046ab50d5591ad}{
static void {\bfseries unmarshall\_\-route\_\-info\_\-invalid6} (const \hyperlink{classXrlError}{XrlError} \&e, \hyperlink{classXrlArgs}{XrlArgs} $\ast$a, RouteInfoInvalid6CB cb)}
\label{classXrlRibClientV0p1Client_ac8259054dd32db4e91046ab50d5591ad}

\item 
\hypertarget{classXrlRibClientV0p1Client_ada5ff4ab62a469bffb647d7cead9f85a}{
static void {\bfseries unmarshall\_\-route\_\-info\_\-changed4} (const \hyperlink{classXrlError}{XrlError} \&e, \hyperlink{classXrlArgs}{XrlArgs} $\ast$a, RouteInfoChanged4CB cb)}
\label{classXrlRibClientV0p1Client_ada5ff4ab62a469bffb647d7cead9f85a}

\item 
\hypertarget{classXrlRibClientV0p1Client_ae783b097b77b3efb8a8e221c740e95b8}{
static void {\bfseries unmarshall\_\-route\_\-info\_\-invalid4} (const \hyperlink{classXrlError}{XrlError} \&e, \hyperlink{classXrlArgs}{XrlArgs} $\ast$a, RouteInfoInvalid4CB cb)}
\label{classXrlRibClientV0p1Client_ae783b097b77b3efb8a8e221c740e95b8}

\item 
\hypertarget{classXrlRibClientV0p1Client_ac0315281e732732ffb28c5a9d116f66b}{
static void {\bfseries unmarshall\_\-route\_\-info\_\-changed6} (const \hyperlink{classXrlError}{XrlError} \&e, \hyperlink{classXrlArgs}{XrlArgs} $\ast$a, RouteInfoChanged6CB cb)}
\label{classXrlRibClientV0p1Client_ac0315281e732732ffb28c5a9d116f66b}

\item 
\hypertarget{classXrlRibClientV0p1Client_a5f7865414b2c76ca550e7a3087251d23}{
static void {\bfseries unmarshall\_\-route\_\-info\_\-invalid6} (const \hyperlink{classXrlError}{XrlError} \&e, \hyperlink{classXrlArgs}{XrlArgs} $\ast$a, RouteInfoInvalid6CB cb)}
\label{classXrlRibClientV0p1Client_a5f7865414b2c76ca550e7a3087251d23}

\end{DoxyCompactItemize}
\subsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classXrlRibClientV0p1Client_a8cd9019106cd38d96a12ec93900a116b}{
auto\_\-ptr$<$ \hyperlink{classXrl}{Xrl} $>$ {\bfseries ap\_\-xrl\_\-route\_\-info\_\-changed4}}
\label{classXrlRibClientV0p1Client_a8cd9019106cd38d96a12ec93900a116b}

\item 
\hypertarget{classXrlRibClientV0p1Client_a426a4cd78f0a81df73910f93a1207380}{
auto\_\-ptr$<$ \hyperlink{classXrl}{Xrl} $>$ {\bfseries ap\_\-xrl\_\-route\_\-info\_\-invalid4}}
\label{classXrlRibClientV0p1Client_a426a4cd78f0a81df73910f93a1207380}

\item 
\hypertarget{classXrlRibClientV0p1Client_aa8e491df9212654cdb992056facf105c}{
auto\_\-ptr$<$ \hyperlink{classXrl}{Xrl} $>$ {\bfseries ap\_\-xrl\_\-route\_\-info\_\-changed6}}
\label{classXrlRibClientV0p1Client_aa8e491df9212654cdb992056facf105c}

\item 
\hypertarget{classXrlRibClientV0p1Client_a8e0a41c4f666d62434a3069944f25f0b}{
auto\_\-ptr$<$ \hyperlink{classXrl}{Xrl} $>$ {\bfseries ap\_\-xrl\_\-route\_\-info\_\-invalid6}}
\label{classXrlRibClientV0p1Client_a8e0a41c4f666d62434a3069944f25f0b}

\end{DoxyCompactItemize}


\subsection{Member Function Documentation}
\hypertarget{classXrlRibClientV0p1Client_a328655ceee39076d863d35fd1285595e}{
\index{XrlRibClientV0p1Client@{XrlRibClientV0p1Client}!send\_\-route\_\-info\_\-changed4@{send\_\-route\_\-info\_\-changed4}}
\index{send\_\-route\_\-info\_\-changed4@{send\_\-route\_\-info\_\-changed4}!XrlRibClientV0p1Client@{XrlRibClientV0p1Client}}
\subsubsection[{send\_\-route\_\-info\_\-changed4}]{\setlength{\rightskip}{0pt plus 5cm}bool XrlRibClientV0p1Client::send\_\-route\_\-info\_\-changed4 (
\begin{DoxyParamCaption}
\item[{const char $\ast$}]{dst\_\-xrl\_\-target\_\-name, }
\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, }
\item[{const RouteInfoChanged4CB \&}]{cb}
\end{DoxyParamCaption}
)}}
\label{classXrlRibClientV0p1Client_a328655ceee39076d863d35fd1285595e}


\hyperlink{structSend}{Send} \hyperlink{classXrl}{Xrl} intended 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 dst\_\-xrl\_\-target\_\-name} & \hyperlink{protocolthe-p}{the} \hyperlink{classXrl}{Xrl} target name of \hyperlink{protocolthe-p}{the} destination.\\
\hline
{\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}
\hypertarget{classXrlRibClientV0p1Client_a328655ceee39076d863d35fd1285595e}{
\index{XrlRibClientV0p1Client@{XrlRibClientV0p1Client}!send\_\-route\_\-info\_\-changed4@{send\_\-route\_\-info\_\-changed4}}
\index{send\_\-route\_\-info\_\-changed4@{send\_\-route\_\-info\_\-changed4}!XrlRibClientV0p1Client@{XrlRibClientV0p1Client}}
\subsubsection[{send\_\-route\_\-info\_\-changed4}]{\setlength{\rightskip}{0pt plus 5cm}bool XrlRibClientV0p1Client::send\_\-route\_\-info\_\-changed4 (
\begin{DoxyParamCaption}
\item[{const char $\ast$}]{dst\_\-xrl\_\-target\_\-name, }
\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, }
\item[{const RouteInfoChanged4CB \&}]{cb}
\end{DoxyParamCaption}
)}}
\label{classXrlRibClientV0p1Client_a328655ceee39076d863d35fd1285595e}


\hyperlink{structSend}{Send} \hyperlink{classXrl}{Xrl} intended 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 dst\_\-xrl\_\-target\_\-name} & \hyperlink{protocolthe-p}{the} \hyperlink{classXrl}{Xrl} target name of \hyperlink{protocolthe-p}{the} destination.\\
\hline
{\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}
\hypertarget{classXrlRibClientV0p1Client_a4e8d3c6e38a225e135b21d0f6e38e1e9}{
\index{XrlRibClientV0p1Client@{XrlRibClientV0p1Client}!send\_\-route\_\-info\_\-invalid4@{send\_\-route\_\-info\_\-invalid4}}
\index{send\_\-route\_\-info\_\-invalid4@{send\_\-route\_\-info\_\-invalid4}!XrlRibClientV0p1Client@{XrlRibClientV0p1Client}}
\subsubsection[{send\_\-route\_\-info\_\-invalid4}]{\setlength{\rightskip}{0pt plus 5cm}bool XrlRibClientV0p1Client::send\_\-route\_\-info\_\-invalid4 (
\begin{DoxyParamCaption}
\item[{const char $\ast$}]{dst\_\-xrl\_\-target\_\-name, }
\item[{const {\bf IPv4} \&}]{addr, }
\item[{const uint32\_\-t \&}]{prefix\_\-len, }
\item[{const RouteInfoInvalid4CB \&}]{cb}
\end{DoxyParamCaption}
)}}
\label{classXrlRibClientV0p1Client_a4e8d3c6e38a225e135b21d0f6e38e1e9}


\hyperlink{structSend}{Send} \hyperlink{classXrl}{Xrl} intended 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.


\begin{DoxyParams}{Parameters}
{\em dst\_\-xrl\_\-target\_\-name} & \hyperlink{protocolthe-p}{the} \hyperlink{classXrl}{Xrl} target name of \hyperlink{protocolthe-p}{the} destination. \\
\hline
\end{DoxyParams}
\hypertarget{classXrlRibClientV0p1Client_a4e8d3c6e38a225e135b21d0f6e38e1e9}{
\index{XrlRibClientV0p1Client@{XrlRibClientV0p1Client}!send\_\-route\_\-info\_\-invalid4@{send\_\-route\_\-info\_\-invalid4}}
\index{send\_\-route\_\-info\_\-invalid4@{send\_\-route\_\-info\_\-invalid4}!XrlRibClientV0p1Client@{XrlRibClientV0p1Client}}
\subsubsection[{send\_\-route\_\-info\_\-invalid4}]{\setlength{\rightskip}{0pt plus 5cm}bool XrlRibClientV0p1Client::send\_\-route\_\-info\_\-invalid4 (
\begin{DoxyParamCaption}
\item[{const char $\ast$}]{dst\_\-xrl\_\-target\_\-name, }
\item[{const {\bf IPv4} \&}]{addr, }
\item[{const uint32\_\-t \&}]{prefix\_\-len, }
\item[{const RouteInfoInvalid4CB \&}]{cb}
\end{DoxyParamCaption}
)}}
\label{classXrlRibClientV0p1Client_a4e8d3c6e38a225e135b21d0f6e38e1e9}


\hyperlink{structSend}{Send} \hyperlink{classXrl}{Xrl} intended 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.


\begin{DoxyParams}{Parameters}
{\em dst\_\-xrl\_\-target\_\-name} & \hyperlink{protocolthe-p}{the} \hyperlink{classXrl}{Xrl} target name of \hyperlink{protocolthe-p}{the} destination. \\
\hline
\end{DoxyParams}


The documentation for this class was generated from the following files:\begin{DoxyCompactItemize}
\item 
/home/greearb/git/xorp.ct.github/xorp/obj/i386-\/pc-\/mingw32/xrl/interfaces/rib\_\-client\_\-xif.hh\item 
/home/greearb/git/xorp.ct.github/xorp/obj/i686-\/pc-\/linux-\/gnu/xrl/interfaces/rib\_\-client\_\-xif.hh\item 
/home/greearb/git/xorp.ct.github/xorp/obj/i386-\/pc-\/mingw32/xrl/interfaces/rib\_\-client\_\-xif.cc\item 
/home/greearb/git/xorp.ct.github/xorp/obj/i686-\/pc-\/linux-\/gnu/xrl/interfaces/rib\_\-client\_\-xif.cc\end{DoxyCompactItemize}
