Ghidra Decompiler Analysis Engine
Public Member Functions | List of all members
InjectPayloadCallfixup Class Reference
Inheritance diagram for InjectPayloadCallfixup:
Inheritance graph
[legend]
Collaboration diagram for InjectPayloadCallfixup:
Collaboration graph
[legend]

Public Member Functions

 InjectPayloadCallfixup (const string &sourceName)
 
virtual void restoreXml (const Element *el)
 Restore this payload from an XML stream. More...
 
- Public Member Functions inherited from InjectPayloadSleigh
 InjectPayloadSleigh (const string &src, const string &nm, int4 tp)
 
virtual void inject (InjectContext &context, PcodeEmit &emit) const
 
virtual void printTemplate (ostream &s) const
 Print the p-code ops of the injection to a stream (for debugging)
 
virtual string getSource (void) const
 Return a string describing the source of the injection (.cspec, prototype model, etc.)
 

Additional Inherited Members

- Public Types inherited from InjectPayload
enum  { CALLFIXUP_TYPE = 1, CALLOTHERFIXUP_TYPE = 2, CALLMECHANISM_TYPE = 3, EXECUTABLEPCODE_TYPE = 4 }
 
- Static Public Member Functions inherited from InjectPayloadSleigh
static void checkParameterRestrictions (InjectContextSleigh &con, const vector< InjectParameter > &inputlist, const vector< InjectParameter > &output, const string &source)
 
static void setupParameters (InjectContextSleigh &con, ParserWalkerChange &walker, const vector< InjectParameter > &inputlist, const vector< InjectParameter > &output, const string &source)
 
- Protected Member Functions inherited from InjectPayload
void orderParameters (void)
 Assign an index to parameters. More...
 
- Static Protected Member Functions inherited from InjectPayload
static void readParameter (const Element *el, string &name, uint4 &size)
 Read in an <input> or <output> XML tag describing an injection parameter. More...
 
- Protected Attributes inherited from InjectPayload
string name
 Formal name of the payload.
 
int4 type
 Type of this payload: CALLFIXUP_TYPE, CALLOTHERFIXUP_TYPE, etc.
 
bool dynamic
 True if the injection is generated dynamically.
 
bool incidentalCopy
 True if injected COPYs are considered incidental.
 
int4 paramshift
 Number of parameters shifted in the original call.
 
vector< InjectParameterinputlist
 List of input parameters to this payload.
 
vector< InjectParameteroutput
 List of output parameters.
 

Member Function Documentation

◆ restoreXml()

void InjectPayloadCallfixup::restoreXml ( const Element el)
virtual

Restore this payload from an XML stream.

The base class version of this method restores from a <pcode> tag. Derived classes may restore from a parent tag and then invoke the base class method.

Parameters
elis the XML element

Reimplemented from InjectPayloadSleigh.


The documentation for this class was generated from the following files: