\hypertarget{classMD5PacketRouteEntry4}{
\section{MD5PacketRouteEntry4 Class Reference}
\label{classMD5PacketRouteEntry4}\index{MD5PacketRouteEntry4@{MD5PacketRouteEntry4}}
}


\hyperlink{classRoute}{Route} Entry for MD5 data.  




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

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

\item 
\hypertarget{classMD5PacketRouteEntry4_a97c4fe5c9e78b429f6d9d050b8eedcda}{
uint16\_\-t {\bfseries addr\_\-family} () const }
\label{classMD5PacketRouteEntry4_a97c4fe5c9e78b429f6d9d050b8eedcda}

\item 
\hypertarget{classMD5PacketRouteEntry4_a593d28e2d14c56543a6ebdadf10596b8}{
uint16\_\-t {\bfseries auth\_\-type} () const }
\label{classMD5PacketRouteEntry4_a593d28e2d14c56543a6ebdadf10596b8}

\item 
\hypertarget{classMD5PacketRouteEntry4_a803fe36ce326ef3597ba885e5fc20d74}{
uint16\_\-t {\bfseries auth\_\-off} () const }
\label{classMD5PacketRouteEntry4_a803fe36ce326ef3597ba885e5fc20d74}

\item 
\hypertarget{classMD5PacketRouteEntry4_a0cd283e90ecebe2677d7d8d602514d90}{
uint8\_\-t {\bfseries key\_\-id} () const }
\label{classMD5PacketRouteEntry4_a0cd283e90ecebe2677d7d8d602514d90}

\item 
\hypertarget{classMD5PacketRouteEntry4_ad19ee6f3c30cf8fec925f9fff381bcbf}{
uint8\_\-t {\bfseries auth\_\-bytes} () const }
\label{classMD5PacketRouteEntry4_ad19ee6f3c30cf8fec925f9fff381bcbf}

\item 
\hypertarget{classMD5PacketRouteEntry4_a52c2649508ed36f0187ef01c64308f95}{
uint32\_\-t {\bfseries seqno} () const }
\label{classMD5PacketRouteEntry4_a52c2649508ed36f0187ef01c64308f95}

\end{DoxyCompactItemize}
\subsection*{Static Public Member Functions}
\begin{DoxyCompactItemize}
\item 
static size\_\-t \hyperlink{classMD5PacketRouteEntry4_a53d511a950ae2b74f303fbad724321ea}{size} ()
\begin{DoxyCompactList}\small\item\em Get \hyperlink{protocolthe-p}{the} RIP \hyperlink{classIPv4}{IPv4} MD5 authentication route entry size. \item\end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Static Public Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classMD5PacketRouteEntry4_a5c7a3fed21b07587bd0c34a6aa2964d0}{
static const size\_\-t {\bfseries SIZE} = 20}
\label{classMD5PacketRouteEntry4_a5c7a3fed21b07587bd0c34a6aa2964d0}

\item 
\hypertarget{classMD5PacketRouteEntry4_a472c354100283d2feecf901b1640bac4}{
static const uint16\_\-t {\bfseries ADDR\_\-FAMILY} = 0xffff}
\label{classMD5PacketRouteEntry4_a472c354100283d2feecf901b1640bac4}

\item 
\hypertarget{classMD5PacketRouteEntry4_ab84290b7c01d5d8a750f386c912890de}{
static const uint16\_\-t {\bfseries AUTH\_\-TYPE} = 3}
\label{classMD5PacketRouteEntry4_ab84290b7c01d5d8a750f386c912890de}

\end{DoxyCompactItemize}
\subsection*{Static Protected Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classMD5PacketRouteEntry4_a2c8fb0fe902df91d9999cd67eead659f}{
static const size\_\-t {\bfseries \_\-af\_\-sizeof} = 2}
\label{classMD5PacketRouteEntry4_a2c8fb0fe902df91d9999cd67eead659f}

\item 
\hypertarget{classMD5PacketRouteEntry4_a532f1ed919db66f6b74a0487f894a8f3}{
static const size\_\-t {\bfseries \_\-auth\_\-sizeof} = 2}
\label{classMD5PacketRouteEntry4_a532f1ed919db66f6b74a0487f894a8f3}

\item 
\hypertarget{classMD5PacketRouteEntry4_a3ed3a16ba63722a41c2636cc0e25ba5f}{
static const size\_\-t {\bfseries \_\-auth\_\-off\_\-sizeof} = 2}
\label{classMD5PacketRouteEntry4_a3ed3a16ba63722a41c2636cc0e25ba5f}

\item 
\hypertarget{classMD5PacketRouteEntry4_a0b399360477ec94a49e22571f6160831}{
static const size\_\-t {\bfseries \_\-key\_\-id\_\-sizeof} = 1}
\label{classMD5PacketRouteEntry4_a0b399360477ec94a49e22571f6160831}

\item 
\hypertarget{classMD5PacketRouteEntry4_ae920b2301a6759910d3ac6b5721d7234}{
static const size\_\-t {\bfseries \_\-auth\_\-bytes\_\-sizeof} = 1}
\label{classMD5PacketRouteEntry4_ae920b2301a6759910d3ac6b5721d7234}

\item 
\hypertarget{classMD5PacketRouteEntry4_aa044a1fe7fd61875a551356d35e23cb7}{
static const size\_\-t {\bfseries \_\-seqno\_\-sizeof} = 4}
\label{classMD5PacketRouteEntry4_aa044a1fe7fd61875a551356d35e23cb7}

\item 
\hypertarget{classMD5PacketRouteEntry4_aff59a29c5d4648f84ff086f9e6be6bd2}{
static const size\_\-t {\bfseries \_\-mbz\_\-sizeof} = 8}
\label{classMD5PacketRouteEntry4_aff59a29c5d4648f84ff086f9e6be6bd2}

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

\item 
\hypertarget{classMD5PacketRouteEntry4_a8966252a2e9450613d146e65f67733c5}{
static const size\_\-t {\bfseries \_\-auth\_\-offset} = \_\-af\_\-offset + \_\-af\_\-sizeof}
\label{classMD5PacketRouteEntry4_a8966252a2e9450613d146e65f67733c5}

\item 
\hypertarget{classMD5PacketRouteEntry4_a45aaaa650309356468e78ed6c2e09d4c}{
static const size\_\-t {\bfseries \_\-auth\_\-off\_\-offset} = \_\-auth\_\-offset + \_\-auth\_\-sizeof}
\label{classMD5PacketRouteEntry4_a45aaaa650309356468e78ed6c2e09d4c}

\item 
\hypertarget{classMD5PacketRouteEntry4_a9aea62091f49eeabe8a6bf0e8c97f75b}{
static const size\_\-t {\bfseries \_\-key\_\-id\_\-offset} = \_\-auth\_\-off\_\-offset + \_\-auth\_\-off\_\-sizeof}
\label{classMD5PacketRouteEntry4_a9aea62091f49eeabe8a6bf0e8c97f75b}

\item 
\hypertarget{classMD5PacketRouteEntry4_a3de1a46e6c15116bb57b155e88185b61}{
static const size\_\-t {\bfseries \_\-auth\_\-bytes\_\-offset} = \_\-key\_\-id\_\-offset + \_\-key\_\-id\_\-sizeof}
\label{classMD5PacketRouteEntry4_a3de1a46e6c15116bb57b155e88185b61}

\item 
\hypertarget{classMD5PacketRouteEntry4_ae9075c94326d7d30dd768487abf307d9}{
static const size\_\-t {\bfseries \_\-seqno\_\-offset} = \_\-auth\_\-bytes\_\-offset + \_\-auth\_\-bytes\_\-sizeof}
\label{classMD5PacketRouteEntry4_ae9075c94326d7d30dd768487abf307d9}

\item 
\hypertarget{classMD5PacketRouteEntry4_ab4fc50c3edf66926dba9b53dea916ee5}{
static const size\_\-t {\bfseries \_\-mbz\_\-offset} = \_\-seqno\_\-offset + \_\-seqno\_\-sizeof}
\label{classMD5PacketRouteEntry4_ab4fc50c3edf66926dba9b53dea916ee5}

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

\item 
\hypertarget{classMD5PacketRouteEntry4_ac6906d683acb8b36e2e042b01e797a51}{
const uint8\_\-t $\ast$ {\bfseries \_\-af}}
\label{classMD5PacketRouteEntry4_ac6906d683acb8b36e2e042b01e797a51}

\item 
\hypertarget{classMD5PacketRouteEntry4_a4dea3118eec5929ec24b9fa12fd8abf9}{
const uint8\_\-t $\ast$ {\bfseries \_\-auth}}
\label{classMD5PacketRouteEntry4_a4dea3118eec5929ec24b9fa12fd8abf9}

\item 
\hypertarget{classMD5PacketRouteEntry4_a6bc5bb02f970cdcf05bd947ea0099072}{
const uint8\_\-t $\ast$ {\bfseries \_\-auth\_\-off}}
\label{classMD5PacketRouteEntry4_a6bc5bb02f970cdcf05bd947ea0099072}

\item 
\hypertarget{classMD5PacketRouteEntry4_afb2c585eb6aefcaa8ef2a1428962bd35}{
const uint8\_\-t $\ast$ {\bfseries \_\-key\_\-id}}
\label{classMD5PacketRouteEntry4_afb2c585eb6aefcaa8ef2a1428962bd35}

\item 
\hypertarget{classMD5PacketRouteEntry4_ac6b7c3d414a4d2883e55669c571e36b6}{
const uint8\_\-t $\ast$ {\bfseries \_\-auth\_\-bytes}}
\label{classMD5PacketRouteEntry4_ac6b7c3d414a4d2883e55669c571e36b6}

\item 
\hypertarget{classMD5PacketRouteEntry4_a0a0e417a7206a959aea4f120462d60a0}{
const uint8\_\-t $\ast$ {\bfseries \_\-seqno}}
\label{classMD5PacketRouteEntry4_a0a0e417a7206a959aea4f120462d60a0}

\item 
\hypertarget{classMD5PacketRouteEntry4_ae35c689f11453677c4907b2353a9f44f}{
const uint8\_\-t $\ast$ {\bfseries \_\-mbz}}
\label{classMD5PacketRouteEntry4_ae35c689f11453677c4907b2353a9f44f}

\end{DoxyCompactItemize}


\subsection{Detailed Description}
\hyperlink{classRoute}{Route} Entry for MD5 data. The \hyperlink{classMD5PacketRouteEntry4}{MD5PacketRouteEntry4} may appear as \hyperlink{protocolthe-p}{the} first route entry in a RIPv2 packet. It has \hyperlink{protocolthe-p}{the} same size as an \hyperlink{classPacketRouteEntry}{PacketRouteEntry}$<$IPv4$>$. The address family has \hyperlink{protocolthe-p}{the} special value 0xffff which implies authentication. The authentication type is overlaid in \hyperlink{protocolthe-p}{the} route tag field and takes \hyperlink{protocolthe-p}{the} special value 3. With MD5 \hyperlink{protocolthe-p}{the} authentication data appears after \hyperlink{protocolthe-p}{the} remaining route entries. Details are disclosed in RFC2082.

All items in \hyperlink{protocolthe-p}{the} route entry are stored in network order. The accessor methods provide values in host order, and \hyperlink{protocolthe-p}{the} modifiers take arguments in host order.

NB We describe \hyperlink{protocolthe-p}{the} field labelled as \char`\"{}RIP-\/2 Packet Length\char`\"{} on page 5 of RFC 2082 as \hyperlink{protocolthe-p}{the} \char`\"{}auth\_\-off\char`\"{}. This matches \hyperlink{protocolthe-p}{the} textual description in \hyperlink{protocolthe-p}{the} RFC.

The MD5 authentication entry has \hyperlink{protocolthe-p}{the} following content:

af (2 bytes): // 0xffff -\/ Authentication header auth (2 bytes): // Authentication type auth\_\-off (2 bytes): // Offset of authentication data key\_\-id (1 byte): // Key number used auth\_\-bytes (1 byte): // \hyperlink{classAuth}{Auth} data length at end of packet seqno (4 bytes): // Monotonically increasing seqno mbz (8 bytes): // Must-\/be-\/zero 

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


Get \hyperlink{protocolthe-p}{the} RIP \hyperlink{classIPv4}{IPv4} MD5 authentication route entry size. 

\begin{DoxyReturn}{Returns}
\hyperlink{protocolthe-p}{the} RIP \hyperlink{classIPv4}{IPv4} MD5 authentication route entry 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}
