\hypertarget{xform__aes__cbc_8c}{}\doxysection{opencrypto/xform\+\_\+aes\+\_\+cbc.c File Reference}
\label{xform__aes__cbc_8c}\index{opencrypto/xform\_aes\_cbc.c@{opencrypto/xform\_aes\_cbc.c}}
{\ttfamily \#include $<$sys/cdefs.\+h$>$}\newline
{\ttfamily \#include $<$sys/types.\+h$>$}\newline
{\ttfamily \#include $<$crypto/rijndael/rijndael.\+h$>$}\newline
{\ttfamily \#include $<$opencrypto/xform\+\_\+enc.\+h$>$}\newline
Include dependency graph for xform\+\_\+aes\+\_\+cbc.\+c\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{d1/d47/xform__aes__cbc_8c__incl}
\end{center}
\end{figure}
\doxysubsection*{Data Structures}
\begin{DoxyCompactItemize}
\item 
struct \mbox{\hyperlink{structaes__cbc__ctx}{aes\+\_\+cbc\+\_\+ctx}}
\end{DoxyCompactItemize}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{xform__aes__cbc_8c_a8c3ef283470a68cd30afe9b8a72cb60f}{\+\_\+\+\_\+\+FBSDID}} (\char`\"{}\$Free\+BSD\$\char`\"{})
\item 
static int \mbox{\hyperlink{xform__aes__cbc_8c_a2768331d1f723b5e5d84f8e35a8676f6}{aes\+\_\+cbc\+\_\+setkey}} (void $\ast$, const uint8\+\_\+t $\ast$, int)
\item 
static void \mbox{\hyperlink{xform__aes__cbc_8c_abbddb80619dcbf8887edaefe9febf3bd}{aes\+\_\+cbc\+\_\+encrypt}} (void $\ast$, const uint8\+\_\+t $\ast$, uint8\+\_\+t $\ast$)
\item 
static void \mbox{\hyperlink{xform__aes__cbc_8c_a897f87aac4f4ce1526e3dc72bd0f36ab}{aes\+\_\+cbc\+\_\+decrypt}} (void $\ast$, const uint8\+\_\+t $\ast$, uint8\+\_\+t $\ast$)
\item 
static void \mbox{\hyperlink{xform__aes__cbc_8c_a7c377b02c690a5655e253299626c807b}{aes\+\_\+cbc\+\_\+encrypt\+\_\+multi}} (void $\ast$, const uint8\+\_\+t $\ast$, uint8\+\_\+t $\ast$, size\+\_\+t)
\item 
static void \mbox{\hyperlink{xform__aes__cbc_8c_af6acbc67b0f45cd03bd91a745adb2f37}{aes\+\_\+cbc\+\_\+decrypt\+\_\+multi}} (void $\ast$, const uint8\+\_\+t $\ast$, uint8\+\_\+t $\ast$, size\+\_\+t)
\item 
static void \mbox{\hyperlink{xform__aes__cbc_8c_ae093ad5d4393553853329354e4f4e658}{aes\+\_\+cbc\+\_\+reinit}} (void $\ast$, const uint8\+\_\+t $\ast$, size\+\_\+t)
\end{DoxyCompactItemize}
\doxysubsection*{Variables}
\begin{DoxyCompactItemize}
\item 
const struct \mbox{\hyperlink{structenc__xform}{enc\+\_\+xform}} \mbox{\hyperlink{xform__aes__cbc_8c_abc49a2013054424168f49133236c63f9}{enc\+\_\+xform\+\_\+aes\+\_\+cbc}}
\end{DoxyCompactItemize}


\doxysubsection{Function Documentation}
\mbox{\Hypertarget{xform__aes__cbc_8c_a8c3ef283470a68cd30afe9b8a72cb60f}\label{xform__aes__cbc_8c_a8c3ef283470a68cd30afe9b8a72cb60f}} 
\index{xform\_aes\_cbc.c@{xform\_aes\_cbc.c}!\_\_FBSDID@{\_\_FBSDID}}
\index{\_\_FBSDID@{\_\_FBSDID}!xform\_aes\_cbc.c@{xform\_aes\_cbc.c}}
\doxysubsubsection{\texorpdfstring{\_\_FBSDID()}{\_\_FBSDID()}}
{\footnotesize\ttfamily \+\_\+\+\_\+\+FBSDID (\begin{DoxyParamCaption}\item[{\char`\"{}\$Free\+BSD\$\char`\"{}}]{ }\end{DoxyParamCaption})}

\mbox{\Hypertarget{xform__aes__cbc_8c_a897f87aac4f4ce1526e3dc72bd0f36ab}\label{xform__aes__cbc_8c_a897f87aac4f4ce1526e3dc72bd0f36ab}} 
\index{xform\_aes\_cbc.c@{xform\_aes\_cbc.c}!aes\_cbc\_decrypt@{aes\_cbc\_decrypt}}
\index{aes\_cbc\_decrypt@{aes\_cbc\_decrypt}!xform\_aes\_cbc.c@{xform\_aes\_cbc.c}}
\doxysubsubsection{\texorpdfstring{aes\_cbc\_decrypt()}{aes\_cbc\_decrypt()}}
{\footnotesize\ttfamily static void aes\+\_\+cbc\+\_\+decrypt (\begin{DoxyParamCaption}\item[{void $\ast$}]{vctx,  }\item[{const uint8\+\_\+t $\ast$}]{in,  }\item[{uint8\+\_\+t $\ast$}]{out }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{xform__aes__cbc_8c_source_l00101}{101}} of file \mbox{\hyperlink{xform__aes__cbc_8c_source}{xform\+\_\+aes\+\_\+cbc.\+c}}.



References \mbox{\hyperlink{cryptodev_8h_source_l00121}{AES\+\_\+\+BLOCK\+\_\+\+LEN}}, \mbox{\hyperlink{xform__aes__cbc_8c_source_l00059}{aes\+\_\+cbc\+\_\+ctx\+::iv}}, and \mbox{\hyperlink{xform__aes__cbc_8c_source_l00058}{aes\+\_\+cbc\+\_\+ctx\+::key}}.

\mbox{\Hypertarget{xform__aes__cbc_8c_af6acbc67b0f45cd03bd91a745adb2f37}\label{xform__aes__cbc_8c_af6acbc67b0f45cd03bd91a745adb2f37}} 
\index{xform\_aes\_cbc.c@{xform\_aes\_cbc.c}!aes\_cbc\_decrypt\_multi@{aes\_cbc\_decrypt\_multi}}
\index{aes\_cbc\_decrypt\_multi@{aes\_cbc\_decrypt\_multi}!xform\_aes\_cbc.c@{xform\_aes\_cbc.c}}
\doxysubsubsection{\texorpdfstring{aes\_cbc\_decrypt\_multi()}{aes\_cbc\_decrypt\_multi()}}
{\footnotesize\ttfamily static void aes\+\_\+cbc\+\_\+decrypt\+\_\+multi (\begin{DoxyParamCaption}\item[{void $\ast$}]{vctx,  }\item[{const uint8\+\_\+t $\ast$}]{in,  }\item[{uint8\+\_\+t $\ast$}]{out,  }\item[{size\+\_\+t}]{len }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{xform__aes__cbc_8c_source_l00132}{132}} of file \mbox{\hyperlink{xform__aes__cbc_8c_source}{xform\+\_\+aes\+\_\+cbc.\+c}}.



References \mbox{\hyperlink{cryptodev_8h_source_l00121}{AES\+\_\+\+BLOCK\+\_\+\+LEN}}, \mbox{\hyperlink{xform__aes__cbc_8c_source_l00059}{aes\+\_\+cbc\+\_\+ctx\+::iv}}, and \mbox{\hyperlink{xform__aes__cbc_8c_source_l00058}{aes\+\_\+cbc\+\_\+ctx\+::key}}.

\mbox{\Hypertarget{xform__aes__cbc_8c_abbddb80619dcbf8887edaefe9febf3bd}\label{xform__aes__cbc_8c_abbddb80619dcbf8887edaefe9febf3bd}} 
\index{xform\_aes\_cbc.c@{xform\_aes\_cbc.c}!aes\_cbc\_encrypt@{aes\_cbc\_encrypt}}
\index{aes\_cbc\_encrypt@{aes\_cbc\_encrypt}!xform\_aes\_cbc.c@{xform\_aes\_cbc.c}}
\doxysubsubsection{\texorpdfstring{aes\_cbc\_encrypt()}{aes\_cbc\_encrypt()}}
{\footnotesize\ttfamily static void aes\+\_\+cbc\+\_\+encrypt (\begin{DoxyParamCaption}\item[{void $\ast$}]{vctx,  }\item[{const uint8\+\_\+t $\ast$}]{in,  }\item[{uint8\+\_\+t $\ast$}]{out }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{xform__aes__cbc_8c_source_l00090}{90}} of file \mbox{\hyperlink{xform__aes__cbc_8c_source}{xform\+\_\+aes\+\_\+cbc.\+c}}.



References \mbox{\hyperlink{cryptodev_8h_source_l00121}{AES\+\_\+\+BLOCK\+\_\+\+LEN}}, \mbox{\hyperlink{xform__aes__cbc_8c_source_l00059}{aes\+\_\+cbc\+\_\+ctx\+::iv}}, and \mbox{\hyperlink{xform__aes__cbc_8c_source_l00058}{aes\+\_\+cbc\+\_\+ctx\+::key}}.

\mbox{\Hypertarget{xform__aes__cbc_8c_a7c377b02c690a5655e253299626c807b}\label{xform__aes__cbc_8c_a7c377b02c690a5655e253299626c807b}} 
\index{xform\_aes\_cbc.c@{xform\_aes\_cbc.c}!aes\_cbc\_encrypt\_multi@{aes\_cbc\_encrypt\_multi}}
\index{aes\_cbc\_encrypt\_multi@{aes\_cbc\_encrypt\_multi}!xform\_aes\_cbc.c@{xform\_aes\_cbc.c}}
\doxysubsubsection{\texorpdfstring{aes\_cbc\_encrypt\_multi()}{aes\_cbc\_encrypt\_multi()}}
{\footnotesize\ttfamily static void aes\+\_\+cbc\+\_\+encrypt\+\_\+multi (\begin{DoxyParamCaption}\item[{void $\ast$}]{vctx,  }\item[{const uint8\+\_\+t $\ast$}]{in,  }\item[{uint8\+\_\+t $\ast$}]{out,  }\item[{size\+\_\+t}]{len }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{xform__aes__cbc_8c_source_l00115}{115}} of file \mbox{\hyperlink{xform__aes__cbc_8c_source}{xform\+\_\+aes\+\_\+cbc.\+c}}.



References \mbox{\hyperlink{cryptodev_8h_source_l00121}{AES\+\_\+\+BLOCK\+\_\+\+LEN}}, \mbox{\hyperlink{xform__aes__cbc_8c_source_l00059}{aes\+\_\+cbc\+\_\+ctx\+::iv}}, and \mbox{\hyperlink{xform__aes__cbc_8c_source_l00058}{aes\+\_\+cbc\+\_\+ctx\+::key}}.

\mbox{\Hypertarget{xform__aes__cbc_8c_ae093ad5d4393553853329354e4f4e658}\label{xform__aes__cbc_8c_ae093ad5d4393553853329354e4f4e658}} 
\index{xform\_aes\_cbc.c@{xform\_aes\_cbc.c}!aes\_cbc\_reinit@{aes\_cbc\_reinit}}
\index{aes\_cbc\_reinit@{aes\_cbc\_reinit}!xform\_aes\_cbc.c@{xform\_aes\_cbc.c}}
\doxysubsubsection{\texorpdfstring{aes\_cbc\_reinit()}{aes\_cbc\_reinit()}}
{\footnotesize\ttfamily static void aes\+\_\+cbc\+\_\+reinit (\begin{DoxyParamCaption}\item[{void $\ast$}]{vctx,  }\item[{const uint8\+\_\+t $\ast$}]{iv,  }\item[{size\+\_\+t}]{iv\+\_\+len }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{xform__aes__cbc_8c_source_l00164}{164}} of file \mbox{\hyperlink{xform__aes__cbc_8c_source}{xform\+\_\+aes\+\_\+cbc.\+c}}.



References \mbox{\hyperlink{xform__aes__cbc_8c_source_l00059}{aes\+\_\+cbc\+\_\+ctx\+::iv}}.

\mbox{\Hypertarget{xform__aes__cbc_8c_a2768331d1f723b5e5d84f8e35a8676f6}\label{xform__aes__cbc_8c_a2768331d1f723b5e5d84f8e35a8676f6}} 
\index{xform\_aes\_cbc.c@{xform\_aes\_cbc.c}!aes\_cbc\_setkey@{aes\_cbc\_setkey}}
\index{aes\_cbc\_setkey@{aes\_cbc\_setkey}!xform\_aes\_cbc.c@{xform\_aes\_cbc.c}}
\doxysubsubsection{\texorpdfstring{aes\_cbc\_setkey()}{aes\_cbc\_setkey()}}
{\footnotesize\ttfamily static int aes\+\_\+cbc\+\_\+setkey (\begin{DoxyParamCaption}\item[{void $\ast$}]{vctx,  }\item[{const uint8\+\_\+t $\ast$}]{key,  }\item[{int}]{len }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}



Definition at line \mbox{\hyperlink{xform__aes__cbc_8c_source_l00152}{152}} of file \mbox{\hyperlink{xform__aes__cbc_8c_source}{xform\+\_\+aes\+\_\+cbc.\+c}}.



References \mbox{\hyperlink{xform__aes__cbc_8c_source_l00058}{aes\+\_\+cbc\+\_\+ctx\+::key}}.



\doxysubsection{Variable Documentation}
\mbox{\Hypertarget{xform__aes__cbc_8c_abc49a2013054424168f49133236c63f9}\label{xform__aes__cbc_8c_abc49a2013054424168f49133236c63f9}} 
\index{xform\_aes\_cbc.c@{xform\_aes\_cbc.c}!enc\_xform\_aes\_cbc@{enc\_xform\_aes\_cbc}}
\index{enc\_xform\_aes\_cbc@{enc\_xform\_aes\_cbc}!xform\_aes\_cbc.c@{xform\_aes\_cbc.c}}
\doxysubsubsection{\texorpdfstring{enc\_xform\_aes\_cbc}{enc\_xform\_aes\_cbc}}
{\footnotesize\ttfamily const struct \mbox{\hyperlink{structenc__xform}{enc\+\_\+xform}} enc\+\_\+xform\+\_\+aes\+\_\+cbc}

{\bfseries Initial value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{= \{}
\DoxyCodeLine{        .type = \mbox{\hyperlink{cryptodev_8h_a28e9f7ce2ceb8ae28fc19c18c65f97f6}{CRYPTO\_AES\_CBC}},}
\DoxyCodeLine{        .name = \textcolor{stringliteral}{"{}AES-\/CBC"{}},}
\DoxyCodeLine{        .ctxsize = \textcolor{keyword}{sizeof}(\textcolor{keyword}{struct }\mbox{\hyperlink{structaes__cbc__ctx}{aes\_cbc\_ctx}}),}
\DoxyCodeLine{        .blocksize = \mbox{\hyperlink{cryptodev_8h_a17c02e9378a5051e9520ae097b090d23}{AES\_BLOCK\_LEN}},}
\DoxyCodeLine{        .ivsize = \mbox{\hyperlink{cryptodev_8h_a17c02e9378a5051e9520ae097b090d23}{AES\_BLOCK\_LEN}},}
\DoxyCodeLine{        .minkey = \mbox{\hyperlink{cryptodev_8h_aa1a42152bce43a6da898d7f8f0b98626}{AES\_MIN\_KEY}},}
\DoxyCodeLine{        .maxkey = \mbox{\hyperlink{cryptodev_8h_a5834e264c875ffd65fc88724a4dbf7b1}{AES\_MAX\_KEY}},}
\DoxyCodeLine{        .setkey = \mbox{\hyperlink{xform__aes__cbc_8c_a2768331d1f723b5e5d84f8e35a8676f6}{aes\_cbc\_setkey}},}
\DoxyCodeLine{        .reinit = \mbox{\hyperlink{xform__aes__cbc_8c_ae093ad5d4393553853329354e4f4e658}{aes\_cbc\_reinit}},}
\DoxyCodeLine{        .encrypt = \mbox{\hyperlink{xform__aes__cbc_8c_abbddb80619dcbf8887edaefe9febf3bd}{aes\_cbc\_encrypt}},}
\DoxyCodeLine{        .decrypt = \mbox{\hyperlink{xform__aes__cbc_8c_a897f87aac4f4ce1526e3dc72bd0f36ab}{aes\_cbc\_decrypt}},}
\DoxyCodeLine{        .encrypt\_multi = \mbox{\hyperlink{xform__aes__cbc_8c_a7c377b02c690a5655e253299626c807b}{aes\_cbc\_encrypt\_multi}},}
\DoxyCodeLine{        .decrypt\_multi = \mbox{\hyperlink{xform__aes__cbc_8c_af6acbc67b0f45cd03bd91a745adb2f37}{aes\_cbc\_decrypt\_multi}},}
\DoxyCodeLine{\}}

\end{DoxyCode}


Definition at line \mbox{\hyperlink{xform__aes__cbc_8c_source_l00070}{70}} of file \mbox{\hyperlink{xform__aes__cbc_8c_source}{xform\+\_\+aes\+\_\+cbc.\+c}}.



Referenced by \mbox{\hyperlink{crypto_8c_source_l00567}{crypto\+\_\+cipher()}}.

