You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
186 lines
9.4 KiB
186 lines
9.4 KiB
\hypertarget{classtheo_1_1recomp_1_1reloc__t}{}\doxysection{theo\+::recomp\+::reloc\+\_\+t Class Reference}
|
|
\label{classtheo_1_1recomp_1_1reloc__t}\index{theo::recomp::reloc\_t@{theo::recomp::reloc\_t}}
|
|
|
|
|
|
meta data about a relocation for a symbol
|
|
|
|
|
|
|
|
|
|
{\ttfamily \#include $<$reloc.\+hpp$>$}
|
|
|
|
\doxysubsection*{Public Member Functions}
|
|
\begin{DoxyCompactItemize}
|
|
\item
|
|
\mbox{\hyperlink{classtheo_1_1recomp_1_1reloc__t_a7cb1cf1c58a6f3cdf7ae326d65948548}{reloc\+\_\+t}} (std\+::uint32\+\_\+t \mbox{\hyperlink{classtheo_1_1recomp_1_1reloc__t_a537836fcea3326e4269375a1486f0323}{offset}}, std\+::size\+\_\+t \mbox{\hyperlink{classtheo_1_1recomp_1_1reloc__t_aa340b2c2d5d1ac7f96a1dbee39f25461}{hash}}, const std\+::string \&\&sym\+\_\+name)
|
|
\begin{DoxyCompactList}\small\item\em explicit constructor for this class. \end{DoxyCompactList}\item
|
|
std\+::size\+\_\+t \mbox{\hyperlink{classtheo_1_1recomp_1_1reloc__t_aa340b2c2d5d1ac7f96a1dbee39f25461}{hash}} ()
|
|
\begin{DoxyCompactList}\small\item\em returns the hash of the relocation symbol. \end{DoxyCompactList}\item
|
|
std\+::string \mbox{\hyperlink{classtheo_1_1recomp_1_1reloc__t_aa181755df50bc566b164072b21788fec}{name}} ()
|
|
\begin{DoxyCompactList}\small\item\em returns the name of the relocation symbol. \end{DoxyCompactList}\item
|
|
std\+::uint32\+\_\+t \mbox{\hyperlink{classtheo_1_1recomp_1_1reloc__t_a537836fcea3326e4269375a1486f0323}{offset}} ()
|
|
\begin{DoxyCompactList}\small\item\em returns the offset into the symbol to which the relocation will be applied. the offset is in bytes. zero based. \end{DoxyCompactList}\item
|
|
void \mbox{\hyperlink{classtheo_1_1recomp_1_1reloc__t_a99e65270ace1ff4f080bd4040c8a43dd}{offset}} (std\+::uint32\+\_\+t offset)
|
|
\begin{DoxyCompactList}\small\item\em sets the offset to which the relocation gets applied too. \end{DoxyCompactList}\item
|
|
void \mbox{\hyperlink{classtheo_1_1recomp_1_1reloc__t_ab5214a9ff9135672e25f40406c37fb10}{add\+\_\+transform}} (std\+::pair$<$ \mbox{\hyperlink{namespacetheo_1_1obf_1_1transform_a875984c1ce09aa998fe48cca55270ecc}{obf\+::transform\+::transform\+\_\+t}} $\ast$, std\+::uint32\+\_\+t $>$ entry)
|
|
\begin{DoxyCompactList}\small\item\em adds a transformation to be applied to the relocation prior to writing it into the symbol. \end{DoxyCompactList}\item
|
|
std\+::vector$<$ std\+::pair$<$ \mbox{\hyperlink{namespacetheo_1_1obf_1_1transform_a875984c1ce09aa998fe48cca55270ecc}{obf\+::transform\+::transform\+\_\+t}} $\ast$, std\+::uint32\+\_\+t $>$ $>$ \& \mbox{\hyperlink{classtheo_1_1recomp_1_1reloc__t_ad49901bf8b6b0e3963e64d17d4b51aec}{get\+\_\+transforms}} ()
|
|
\begin{DoxyCompactList}\small\item\em gets the vector of transformation. \end{DoxyCompactList}\end{DoxyCompactItemize}
|
|
|
|
|
|
\doxysubsection{Detailed Description}
|
|
meta data about a relocation for a symbol
|
|
|
|
|
|
|
|
Definition at line 41 of file reloc.\+hpp.
|
|
|
|
|
|
|
|
\doxysubsection{Constructor \& Destructor Documentation}
|
|
\mbox{\Hypertarget{classtheo_1_1recomp_1_1reloc__t_a7cb1cf1c58a6f3cdf7ae326d65948548}\label{classtheo_1_1recomp_1_1reloc__t_a7cb1cf1c58a6f3cdf7ae326d65948548}}
|
|
\index{theo::recomp::reloc\_t@{theo::recomp::reloc\_t}!reloc\_t@{reloc\_t}}
|
|
\index{reloc\_t@{reloc\_t}!theo::recomp::reloc\_t@{theo::recomp::reloc\_t}}
|
|
\doxysubsubsection{\texorpdfstring{reloc\_t()}{reloc\_t()}}
|
|
{\footnotesize\ttfamily theo\+::recomp\+::reloc\+\_\+t\+::reloc\+\_\+t (\begin{DoxyParamCaption}\item[{std\+::uint32\+\_\+t}]{offset, }\item[{std\+::size\+\_\+t}]{hash, }\item[{const std\+::string \&\&}]{sym\+\_\+name }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [explicit]}}
|
|
|
|
|
|
|
|
explicit constructor for this class.
|
|
|
|
|
|
\begin{DoxyParams}{Parameters}
|
|
{\em offset} & offset into the symbol data where the relocation is at. all relocations are assumed to be linear virtual addresses of the symbol.\\
|
|
\hline
|
|
{\em hash} & hash of the symbol to which the relocation is of.\\
|
|
\hline
|
|
{\em sym\+\_\+name} & the name of the symbol to which the relocation is of.\\
|
|
\hline
|
|
\end{DoxyParams}
|
|
|
|
|
|
Definition at line 52 of file reloc.\+hpp.
|
|
|
|
|
|
|
|
\doxysubsection{Member Function Documentation}
|
|
\mbox{\Hypertarget{classtheo_1_1recomp_1_1reloc__t_ab5214a9ff9135672e25f40406c37fb10}\label{classtheo_1_1recomp_1_1reloc__t_ab5214a9ff9135672e25f40406c37fb10}}
|
|
\index{theo::recomp::reloc\_t@{theo::recomp::reloc\_t}!add\_transform@{add\_transform}}
|
|
\index{add\_transform@{add\_transform}!theo::recomp::reloc\_t@{theo::recomp::reloc\_t}}
|
|
\doxysubsubsection{\texorpdfstring{add\_transform()}{add\_transform()}}
|
|
{\footnotesize\ttfamily void theo\+::recomp\+::reloc\+\_\+t\+::add\+\_\+transform (\begin{DoxyParamCaption}\item[{std\+::pair$<$ \mbox{\hyperlink{namespacetheo_1_1obf_1_1transform_a875984c1ce09aa998fe48cca55270ecc}{obf\+::transform\+::transform\+\_\+t}} $\ast$, std\+::uint32\+\_\+t $>$}]{entry }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
|
|
|
|
|
|
|
|
adds a transformation to be applied to the relocation prior to writing it into the symbol.
|
|
|
|
|
|
\begin{DoxyParams}{Parameters}
|
|
{\em entry} & a pair containing a lambda function that when executed transforms a relocation. the second value in the pair is a random value which is passed to the lambda.\\
|
|
\hline
|
|
\end{DoxyParams}
|
|
|
|
|
|
Definition at line 91 of file reloc.\+hpp.
|
|
|
|
Here is the caller graph for this function\+:
|
|
% FIG 0
|
|
\mbox{\Hypertarget{classtheo_1_1recomp_1_1reloc__t_ad49901bf8b6b0e3963e64d17d4b51aec}\label{classtheo_1_1recomp_1_1reloc__t_ad49901bf8b6b0e3963e64d17d4b51aec}}
|
|
\index{theo::recomp::reloc\_t@{theo::recomp::reloc\_t}!get\_transforms@{get\_transforms}}
|
|
\index{get\_transforms@{get\_transforms}!theo::recomp::reloc\_t@{theo::recomp::reloc\_t}}
|
|
\doxysubsubsection{\texorpdfstring{get\_transforms()}{get\_transforms()}}
|
|
{\footnotesize\ttfamily std\+::vector$<$std\+::pair$<$\mbox{\hyperlink{namespacetheo_1_1obf_1_1transform_a875984c1ce09aa998fe48cca55270ecc}{obf\+::transform\+::transform\+\_\+t}}$\ast$, std\+::uint32\+\_\+t$>$ $>$\& theo\+::recomp\+::reloc\+\_\+t\+::get\+\_\+transforms (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
|
|
|
|
|
|
|
|
gets the vector of transformation.
|
|
|
|
\begin{DoxyReturn}{Returns}
|
|
returns the vector of transformations.
|
|
\end{DoxyReturn}
|
|
|
|
|
|
Definition at line 101 of file reloc.\+hpp.
|
|
|
|
Here is the caller graph for this function\+:
|
|
% FIG 1
|
|
\mbox{\Hypertarget{classtheo_1_1recomp_1_1reloc__t_aa340b2c2d5d1ac7f96a1dbee39f25461}\label{classtheo_1_1recomp_1_1reloc__t_aa340b2c2d5d1ac7f96a1dbee39f25461}}
|
|
\index{theo::recomp::reloc\_t@{theo::recomp::reloc\_t}!hash@{hash}}
|
|
\index{hash@{hash}!theo::recomp::reloc\_t@{theo::recomp::reloc\_t}}
|
|
\doxysubsubsection{\texorpdfstring{hash()}{hash()}}
|
|
{\footnotesize\ttfamily std\+::size\+\_\+t theo\+::recomp\+::reloc\+\_\+t\+::hash (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
|
|
|
|
|
|
|
|
returns the hash of the relocation symbol.
|
|
|
|
\begin{DoxyReturn}{Returns}
|
|
hash of the relocation symbol
|
|
\end{DoxyReturn}
|
|
|
|
|
|
Definition at line 61 of file reloc.\+hpp.
|
|
|
|
\mbox{\Hypertarget{classtheo_1_1recomp_1_1reloc__t_aa181755df50bc566b164072b21788fec}\label{classtheo_1_1recomp_1_1reloc__t_aa181755df50bc566b164072b21788fec}}
|
|
\index{theo::recomp::reloc\_t@{theo::recomp::reloc\_t}!name@{name}}
|
|
\index{name@{name}!theo::recomp::reloc\_t@{theo::recomp::reloc\_t}}
|
|
\doxysubsubsection{\texorpdfstring{name()}{name()}}
|
|
{\footnotesize\ttfamily std\+::string theo\+::recomp\+::reloc\+\_\+t\+::name (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
|
|
|
|
|
|
|
|
returns the name of the relocation symbol.
|
|
|
|
\begin{DoxyReturn}{Returns}
|
|
returns the name of the relocation symbol.
|
|
\end{DoxyReturn}
|
|
|
|
|
|
Definition at line 67 of file reloc.\+hpp.
|
|
|
|
\mbox{\Hypertarget{classtheo_1_1recomp_1_1reloc__t_a537836fcea3326e4269375a1486f0323}\label{classtheo_1_1recomp_1_1reloc__t_a537836fcea3326e4269375a1486f0323}}
|
|
\index{theo::recomp::reloc\_t@{theo::recomp::reloc\_t}!offset@{offset}}
|
|
\index{offset@{offset}!theo::recomp::reloc\_t@{theo::recomp::reloc\_t}}
|
|
\doxysubsubsection{\texorpdfstring{offset()}{offset()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
|
|
{\footnotesize\ttfamily std\+::uint32\+\_\+t theo\+::recomp\+::reloc\+\_\+t\+::offset (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
|
|
|
|
|
|
|
|
returns the offset into the symbol to which the relocation will be applied. the offset is in bytes. zero based.
|
|
|
|
\begin{DoxyReturn}{Returns}
|
|
returns the offset into the symbol to which the relocation will be applied. the offset is in bytes. zero based.
|
|
\end{DoxyReturn}
|
|
|
|
|
|
Definition at line 75 of file reloc.\+hpp.
|
|
|
|
\mbox{\Hypertarget{classtheo_1_1recomp_1_1reloc__t_a99e65270ace1ff4f080bd4040c8a43dd}\label{classtheo_1_1recomp_1_1reloc__t_a99e65270ace1ff4f080bd4040c8a43dd}}
|
|
\index{theo::recomp::reloc\_t@{theo::recomp::reloc\_t}!offset@{offset}}
|
|
\index{offset@{offset}!theo::recomp::reloc\_t@{theo::recomp::reloc\_t}}
|
|
\doxysubsubsection{\texorpdfstring{offset()}{offset()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
|
|
{\footnotesize\ttfamily void theo\+::recomp\+::reloc\+\_\+t\+::offset (\begin{DoxyParamCaption}\item[{std\+::uint32\+\_\+t}]{offset }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}
|
|
|
|
|
|
|
|
sets the offset to which the relocation gets applied too.
|
|
|
|
|
|
\begin{DoxyParams}{Parameters}
|
|
{\em offset} & offset to which the relocation gets applied too.\\
|
|
\hline
|
|
\end{DoxyParams}
|
|
|
|
|
|
Definition at line 82 of file reloc.\+hpp.
|
|
|
|
Here is the call graph for this function\+:
|
|
% FIG 2
|
|
Here is the caller graph for this function\+:
|
|
% FIG 3
|
|
|
|
|
|
The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
|
|
\item
|
|
include/recomp/\mbox{\hyperlink{reloc_8hpp}{reloc.\+hpp}}\end{DoxyCompactItemize}
|