Inherits threading::Thread.
Public Member Functions | |
def | __init__ |
Constructor of Communication thread. | |
def | run |
Runs thread. | |
Public Attributes | |
hotEngine | |
Pointer to PpAction object. | |
peachEngine | |
Pointer to Peach Engine. | |
hotGuiPort | |
Communication port. | |
guiCommunicatorSocket | |
Try to bind new Communication socket to Communication port. |
Gui Communication class.
It handles communication between graphical user interface and recording/fuzzing process. Communication runs parallely with recording/fuzzing process in a separate thread. Thread receives udp packets from all local interfaces on port specified on commandline using option --hotGuiPort.
Received messages are expected to be 32-bit integers encoded into hexaformat, so the length of the messages is expected to be 8 bytes. Messages are decoded and following values are recognized as instructions:
2: Store address from which the packet was received and periodicaly send number of current iteration to this address 3: Interupt recording/fuzzing process 4: Pause recording/fuzzing process 5: Unpause recording/fuzzing process
1 was reserved for instructing single agent to stop running application, but is not currently used.
The interation with recording/fuzzing process is handled mainly by changing values of specific shared variables. Method PpAction.guiCommunicator() complements the functionality on site of running/fuzzing process.
def Peach::Engine::ppGuiCommunicator::GuiCommunicationThread::__init__ | ( | self, | ||
hotEngine, | ||||
peachEngine, | ||||
hotGuiPort | ||||
) |
def Peach::Engine::ppGuiCommunicator::GuiCommunicationThread::run | ( | self | ) |
Runs thread.
Try to bind new Communication socket to Communication port.
Pointer to PpAction object.
Used for interaction with recording/fuzzing process.
Communication port.