\hypertarget{classLs__request}{
\section{Ls\_\-request Class Reference}
\label{classLs__request}\index{Ls\_\-request@{Ls\_\-request}}
}


Link State Request as sent in a Link State Request \hyperlink{classPacket}{Packet}.  




{\ttfamily \#include $<$lsa.hh$>$}

\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classLs__request_a08ac965db1ab87204ad865da96243855}{
{\bfseries Ls\_\-request} (\hyperlink{structOspfTypes_a60eb031df0c10af753789ae76b185ec2}{OspfTypes::Version} version)}
\label{classLs__request_a08ac965db1ab87204ad865da96243855}

\item 
\hypertarget{classLs__request_a1cb7b293117e136bea41824636bf59a4}{
{\bfseries Ls\_\-request} (\hyperlink{structOspfTypes_a60eb031df0c10af753789ae76b185ec2}{OspfTypes::Version} version, uint32\_\-t ls\_\-type, uint32\_\-t link\_\-state\_\-id, uint32\_\-t advertising\_\-router)}
\label{classLs__request_a1cb7b293117e136bea41824636bf59a4}

\item 
\hypertarget{classLs__request_a84ca4950ecd62bd52bdf03eada0454a2}{
{\bfseries Ls\_\-request} (const \hyperlink{classLs__request}{Ls\_\-request} \&rhs)}
\label{classLs__request_a84ca4950ecd62bd52bdf03eada0454a2}

\item 
\hypertarget{classLs__request_a49204aea9c1caf6d27ba98f82a68cd0f}{
\hyperlink{classLs__request}{Ls\_\-request} {\bfseries operator=} (const \hyperlink{classLs__request}{Ls\_\-request} \&rhs)}
\label{classLs__request_a49204aea9c1caf6d27ba98f82a68cd0f}

\item 
\hypertarget{classLs__request_a61b563ac780be005bd903332216c8e87}{
void {\bfseries copy} (const \hyperlink{classLs__request}{Ls\_\-request} \&rhs)}
\label{classLs__request_a61b563ac780be005bd903332216c8e87}

\item 
\hyperlink{classLs__request}{Ls\_\-request} \hyperlink{classLs__request_a4246b435507a13597588e34a7702a8ba}{decode} (uint8\_\-t $\ast$ptr)  throw (InvalidPacket)
\begin{DoxyCompactList}\small\item\em Decode a Link State Request and return value inline not a pointer. \item\end{DoxyCompactList}\item 
size\_\-t \hyperlink{classLs__request_a1725e0ecfe0de71763e373111b993095}{copy\_\-out} (uint8\_\-t $\ast$to\_\-uint8) const 
\begin{DoxyCompactList}\small\item\em Copy a wire format representation to \hyperlink{protocolthe-p}{the} pointer provided. \item\end{DoxyCompactList}\item 
\hypertarget{classLs__request_a5ef4f786f9909215ac0177333a5e7c84}{
\hyperlink{structOspfTypes_a60eb031df0c10af753789ae76b185ec2}{OspfTypes::Version} {\bfseries get\_\-version} () const }
\label{classLs__request_a5ef4f786f9909215ac0177333a5e7c84}

\item 
\hypertarget{classLs__request_ac966c66c9f62f14f72a937b3f41ecd6d}{
void {\bfseries set\_\-ls\_\-type} (uint32\_\-t ls\_\-type)}
\label{classLs__request_ac966c66c9f62f14f72a937b3f41ecd6d}

\item 
\hypertarget{classLs__request_a63adf9b9e0bced0d7c53ddaab9824a1b}{
uint32\_\-t {\bfseries get\_\-ls\_\-type} () const }
\label{classLs__request_a63adf9b9e0bced0d7c53ddaab9824a1b}

\item 
\hypertarget{classLs__request_aea1e87ee5faeaf765781cd8865168fd0}{
void {\bfseries set\_\-link\_\-state\_\-id} (uint32\_\-t link\_\-state\_\-id)}
\label{classLs__request_aea1e87ee5faeaf765781cd8865168fd0}

\item 
\hypertarget{classLs__request_ad1fa076d3193b5ede797aa6a2ae099fa}{
uint32\_\-t {\bfseries get\_\-link\_\-state\_\-id} () const }
\label{classLs__request_ad1fa076d3193b5ede797aa6a2ae099fa}

\item 
\hypertarget{classLs__request_a595ee65e85210807f2dce5676427c885}{
void {\bfseries set\_\-advertising\_\-router} (uint32\_\-t advertising\_\-router)}
\label{classLs__request_a595ee65e85210807f2dce5676427c885}

\item 
\hypertarget{classLs__request_aba8b055ccda162db323fd9f6076cbc53}{
uint32\_\-t {\bfseries get\_\-advertising\_\-router} () const }
\label{classLs__request_aba8b055ccda162db323fd9f6076cbc53}

\item 
\hypertarget{classLs__request_aeebf36c294af2bd540ebc4f763ea2d4c}{
string \hyperlink{classLs__request_aeebf36c294af2bd540ebc4f763ea2d4c}{str} () const }
\label{classLs__request_aeebf36c294af2bd540ebc4f763ea2d4c}

\begin{DoxyCompactList}\small\item\em Generate a printable representation of \hyperlink{protocolthe-p}{the} request. \item\end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Static Public Member Functions}
\begin{DoxyCompactItemize}
\item 
static size\_\-t \hyperlink{classLs__request_acf380e561caed6bf00928238f7c2c9ec}{length} ()
\end{DoxyCompactItemize}
\subsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classLs__request_a4540f1a5b6e85f0c50bfb644b63cf014}{
\hyperlink{structOspfTypes_a60eb031df0c10af753789ae76b185ec2}{OspfTypes::Version} {\bfseries \_\-version}}
\label{classLs__request_a4540f1a5b6e85f0c50bfb644b63cf014}

\item 
\hypertarget{classLs__request_a6ba010c1698a8c0b034738e701ee4eb6}{
uint32\_\-t {\bfseries \_\-ls\_\-type}}
\label{classLs__request_a6ba010c1698a8c0b034738e701ee4eb6}

\item 
\hypertarget{classLs__request_aaa19ed1fe358f74e3667a7bf3f9c1735}{
uint32\_\-t {\bfseries \_\-link\_\-state\_\-id}}
\label{classLs__request_aaa19ed1fe358f74e3667a7bf3f9c1735}

\item 
\hypertarget{classLs__request_ad7d77fcac38d000fe8297c0fdc4fd2fa}{
uint32\_\-t {\bfseries \_\-advertising\_\-router}}
\label{classLs__request_ad7d77fcac38d000fe8297c0fdc4fd2fa}

\end{DoxyCompactItemize}


\subsection{Detailed Description}
Link State Request as sent in a Link State Request \hyperlink{classPacket}{Packet}. Never store or pass a pointer, just deal with it inline. 

\subsection{Member Function Documentation}
\hypertarget{classLs__request_a1725e0ecfe0de71763e373111b993095}{
\index{Ls\_\-request@{Ls\_\-request}!copy\_\-out@{copy\_\-out}}
\index{copy\_\-out@{copy\_\-out}!Ls_request@{Ls\_\-request}}
\subsubsection[{copy\_\-out}]{\setlength{\rightskip}{0pt plus 5cm}size\_\-t Ls\_\-request::copy\_\-out (
\begin{DoxyParamCaption}
\item[{uint8\_\-t $\ast$}]{to\_\-uint8}
\end{DoxyParamCaption}
) const}}
\label{classLs__request_a1725e0ecfe0de71763e373111b993095}


Copy a wire format representation to \hyperlink{protocolthe-p}{the} pointer provided. 

A link state request is a fixed length, \hyperlink{protocolthe-p}{the} caller should have allocated enough space by calling \hyperlink{protocolthe-p}{the} \hyperlink{classLs__request_acf380e561caed6bf00928238f7c2c9ec}{length()} method.

\begin{DoxyReturn}{Returns}
\hyperlink{protocolthe-p}{the} number of bytes written. 
\end{DoxyReturn}
\hypertarget{classLs__request_a4246b435507a13597588e34a7702a8ba}{
\index{Ls\_\-request@{Ls\_\-request}!decode@{decode}}
\index{decode@{decode}!Ls_request@{Ls\_\-request}}
\subsubsection[{decode}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Ls\_\-request} Ls\_\-request::decode (
\begin{DoxyParamCaption}
\item[{uint8\_\-t $\ast$}]{ptr}
\end{DoxyParamCaption}
)  throw ({\bf InvalidPacket})}}
\label{classLs__request_a4246b435507a13597588e34a7702a8ba}


Decode a Link State Request and return value inline not a pointer. 

A link state request is a fixed length, \hyperlink{protocolthe-p}{the} caller should have allocated enough space by calling \hyperlink{protocolthe-p}{the} \hyperlink{classLs__request_acf380e561caed6bf00928238f7c2c9ec}{length()} method. \hypertarget{classLs__request_acf380e561caed6bf00928238f7c2c9ec}{
\index{Ls\_\-request@{Ls\_\-request}!length@{length}}
\index{length@{length}!Ls_request@{Ls\_\-request}}
\subsubsection[{length}]{\setlength{\rightskip}{0pt plus 5cm}static size\_\-t Ls\_\-request::length (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline, static\mbox{]}}}}
\label{classLs__request_acf380e561caed6bf00928238f7c2c9ec}
\begin{DoxyReturn}{Returns}
\hyperlink{protocolthe-p}{the} length of an link state request header. 
\end{DoxyReturn}


The documentation for this class was generated from the following files:\begin{DoxyCompactItemize}
\item 
/home/greearb/git/xorp.ct.github/xorp/ospf/lsa.hh\item 
/home/greearb/git/xorp.ct.github/xorp/ospf/lsa.cc\end{DoxyCompactItemize}
