\hypertarget{classRipPacketHeader}{
\section{RipPacketHeader Class Reference}
\label{classRipPacketHeader}\index{RipPacketHeader@{RipPacketHeader}}
}


Header appearing at \hyperlink{protocolthe-p}{the} start of each RIP packet.  




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

Inheritance diagram for RipPacketHeader:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.000000cm]{classRipPacketHeader}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classRipPacketHeader_aef51bf96b352dd45ed3f9c82b2715f42}{
{\bfseries RipPacketHeader} (const uint8\_\-t $\ast$data)}
\label{classRipPacketHeader_aef51bf96b352dd45ed3f9c82b2715f42}

\item 
\hypertarget{classRipPacketHeader_aa8615899546f23ca0967df4b74d27667}{
uint8\_\-t {\bfseries command} () const }
\label{classRipPacketHeader_aa8615899546f23ca0967df4b74d27667}

\item 
\hypertarget{classRipPacketHeader_a8ba3ac6edd812b765ee2ddaee87505ee}{
uint8\_\-t {\bfseries version} () const }
\label{classRipPacketHeader_a8ba3ac6edd812b765ee2ddaee87505ee}

\item 
\hypertarget{classRipPacketHeader_a4105ebdbe5bb7d83317d3f478bc5979c}{
uint8\_\-t {\bfseries unused0} () const }
\label{classRipPacketHeader_a4105ebdbe5bb7d83317d3f478bc5979c}

\item 
\hypertarget{classRipPacketHeader_a799bacc78dd5daeb9f2e9683cbeb679b}{
uint8\_\-t {\bfseries unused1} () const }
\label{classRipPacketHeader_a799bacc78dd5daeb9f2e9683cbeb679b}

\item 
\hypertarget{classRipPacketHeader_aa07af9d6d7a2a1c6864ac27d6668a99c}{
bool {\bfseries valid\_\-command} () const }
\label{classRipPacketHeader_aa07af9d6d7a2a1c6864ac27d6668a99c}

\item 
\hypertarget{classRipPacketHeader_a236379baf17485acff1f2bda941da67c}{
bool {\bfseries valid\_\-version} (uint8\_\-t v) const }
\label{classRipPacketHeader_a236379baf17485acff1f2bda941da67c}

\item 
\hypertarget{classRipPacketHeader_a13cc14772c9b2f830636d81cb5d3bbdd}{
bool {\bfseries valid\_\-padding} () const }
\label{classRipPacketHeader_a13cc14772c9b2f830636d81cb5d3bbdd}

\end{DoxyCompactItemize}
\subsection*{Static Public Member Functions}
\begin{DoxyCompactItemize}
\item 
static size\_\-t \hyperlink{classRipPacketHeader_a9778d00c4ac9d40c6187e420c7d51ed0}{size} ()
\begin{DoxyCompactList}\small\item\em Get \hyperlink{protocolthe-p}{the} RIP packet header size. \item\end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Static Public Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classRipPacketHeader_a205a04f3798c9c52946a473c823a9c06}{
static const uint8\_\-t {\bfseries REQUEST} = 1}
\label{classRipPacketHeader_a205a04f3798c9c52946a473c823a9c06}

\item 
\hypertarget{classRipPacketHeader_af255bc9db9c0b1e65405b740a6a277d7}{
static const uint8\_\-t {\bfseries RESPONSE} = 2}
\label{classRipPacketHeader_af255bc9db9c0b1e65405b740a6a277d7}

\item 
\hypertarget{classRipPacketHeader_af3f8be6b6b8bd56d8569eb50783bdfc7}{
static const uint8\_\-t {\bfseries IPv4\_\-VERSION} = RIP\_\-AF\_\-CONSTANTS$<$\hyperlink{classIPv4}{IPv4}$>$::PACKET\_\-VERSION}
\label{classRipPacketHeader_af3f8be6b6b8bd56d8569eb50783bdfc7}

\item 
\hypertarget{classRipPacketHeader_a5e315ef5ea39895a7836d2cebcb228a6}{
static const uint8\_\-t {\bfseries IPv6\_\-VERSION} = RIP\_\-AF\_\-CONSTANTS$<$\hyperlink{classIPv6}{IPv6}$>$::PACKET\_\-VERSION}
\label{classRipPacketHeader_a5e315ef5ea39895a7836d2cebcb228a6}

\item 
\hypertarget{classRipPacketHeader_ae2f6c1c537b7cab37bb4542c7f68c012}{
static const size\_\-t {\bfseries SIZE} = 4}
\label{classRipPacketHeader_ae2f6c1c537b7cab37bb4542c7f68c012}

\end{DoxyCompactItemize}
\subsection*{Static Protected Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classRipPacketHeader_a7ca18b04ce36d64b391df10a77739a46}{
static const size\_\-t {\bfseries \_\-command\_\-sizeof} = 1}
\label{classRipPacketHeader_a7ca18b04ce36d64b391df10a77739a46}

\item 
\hypertarget{classRipPacketHeader_ad059aa42a64a404341e317d6fb7708a4}{
static const size\_\-t {\bfseries \_\-version\_\-sizeof} = 1}
\label{classRipPacketHeader_ad059aa42a64a404341e317d6fb7708a4}

\item 
\hypertarget{classRipPacketHeader_ab34547ce35cf7e81b0d21b068c1f8805}{
static const size\_\-t {\bfseries \_\-unused0\_\-sizeof} = 1}
\label{classRipPacketHeader_ab34547ce35cf7e81b0d21b068c1f8805}

\item 
\hypertarget{classRipPacketHeader_ac3156f6d171d4fc80c741bde66bd132f}{
static const size\_\-t {\bfseries \_\-unused1\_\-sizeof} = 1}
\label{classRipPacketHeader_ac3156f6d171d4fc80c741bde66bd132f}

\item 
\hypertarget{classRipPacketHeader_a7f8f891f95e60ed3717d6bad24694ab4}{
static const size\_\-t {\bfseries \_\-command\_\-offset} = 0}
\label{classRipPacketHeader_a7f8f891f95e60ed3717d6bad24694ab4}

\item 
\hypertarget{classRipPacketHeader_af4800815e30b21277456f67182f094cb}{
static const size\_\-t {\bfseries \_\-version\_\-offset} = \_\-command\_\-offset + \_\-command\_\-sizeof}
\label{classRipPacketHeader_af4800815e30b21277456f67182f094cb}

\item 
\hypertarget{classRipPacketHeader_ae24e9f27d3f351342b87c82da8b748b8}{
static const size\_\-t {\bfseries \_\-unused0\_\-offset} = \_\-version\_\-offset + \_\-version\_\-sizeof}
\label{classRipPacketHeader_ae24e9f27d3f351342b87c82da8b748b8}

\item 
\hypertarget{classRipPacketHeader_a5755bc0e5e4a429ebd7c1f350f3326e7}{
static const size\_\-t {\bfseries \_\-unused1\_\-offset} = \_\-unused0\_\-offset + \_\-unused0\_\-sizeof}
\label{classRipPacketHeader_a5755bc0e5e4a429ebd7c1f350f3326e7}

\end{DoxyCompactItemize}
\subsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classRipPacketHeader_a3d518ad5fef38aebfc2280ee083c7b6a}{
const uint8\_\-t $\ast$ {\bfseries \_\-data}}
\label{classRipPacketHeader_a3d518ad5fef38aebfc2280ee083c7b6a}

\item 
\hypertarget{classRipPacketHeader_aba8f7c2b0a5a16ab94d10c9ea7faa723}{
const uint8\_\-t $\ast$ {\bfseries \_\-command}}
\label{classRipPacketHeader_aba8f7c2b0a5a16ab94d10c9ea7faa723}

\item 
\hypertarget{classRipPacketHeader_aca240b7da893c589e4240773c6e89369}{
const uint8\_\-t $\ast$ {\bfseries \_\-version}}
\label{classRipPacketHeader_aca240b7da893c589e4240773c6e89369}

\item 
\hypertarget{classRipPacketHeader_a31f4686ccbf5b719bfcbd8662752d0c2}{
const uint8\_\-t $\ast$ {\bfseries \_\-unused0}}
\label{classRipPacketHeader_a31f4686ccbf5b719bfcbd8662752d0c2}

\item 
\hypertarget{classRipPacketHeader_a2e1f17f06e88a0d42104394e1e177c52}{
const uint8\_\-t $\ast$ {\bfseries \_\-unused1}}
\label{classRipPacketHeader_a2e1f17f06e88a0d42104394e1e177c52}

\end{DoxyCompactItemize}


\subsection{Detailed Description}
Header appearing at \hyperlink{protocolthe-p}{the} start of each RIP packet. The RIP packet header has \hyperlink{protocolthe-p}{the} following content:

command (1 byte): // The command: 1 -\/ request, 2 -\/ response version (1 byte): // 1 -\/ \hyperlink{classIPv4}{IPv4} RIPv1/IPv6 RIPng, 2 -\/ \hyperlink{classIPv4}{IPv4} RIP v2 unused0 (1 byte): // Unused unused1 (1 byte): // Unused 

\subsection{Member Function Documentation}
\hypertarget{classRipPacketHeader_a9778d00c4ac9d40c6187e420c7d51ed0}{
\index{RipPacketHeader@{RipPacketHeader}!size@{size}}
\index{size@{size}!RipPacketHeader@{RipPacketHeader}}
\subsubsection[{size}]{\setlength{\rightskip}{0pt plus 5cm}static size\_\-t RipPacketHeader::size (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline, static\mbox{]}}}}
\label{classRipPacketHeader_a9778d00c4ac9d40c6187e420c7d51ed0}


Get \hyperlink{protocolthe-p}{the} RIP packet header size. 

\begin{DoxyReturn}{Returns}
\hyperlink{protocolthe-p}{the} RIP packet header size. 
\end{DoxyReturn}


The documentation for this class was generated from the following file:\begin{DoxyCompactItemize}
\item 
/home/greearb/git/xorp.ct.github/xorp/rip/packets.hh\end{DoxyCompactItemize}
