frysk.proc.live
Class LinuxPtraceTaskState.Running
java.lang.Object
frysk.proc.live.State
frysk.proc.live.LinuxPtraceTaskState
frysk.proc.live.LinuxPtraceTaskState.Running
- Direct Known Subclasses:
- LinuxPtraceTaskState.Stepping
- Enclosing class:
- LinuxPtraceTaskState
private static class LinuxPtraceTaskState.Running
- extends LinuxPtraceTaskState
Keep the task running.
Method Summary |
(package private) LinuxPtraceTaskState |
blockedContinue()
Returns a blocked LinuxPtraceTaskState depending on whether we are
syscall tracing the LinuxPtraceTask and being inside or outside a syscall. |
(package private) int |
checkWatchpoint(LinuxPtraceTask task)
Returns the number of blockers if a watchpoint was hit, or -1 when no watchpoint
was hit for this Task. |
(package private) LinuxPtraceTaskState |
handleAddObservation(LinuxPtraceTask task,
TaskObservation observation)
|
(package private) LinuxPtraceTaskState |
handleClonedEvent(LinuxPtraceTask task,
LinuxPtraceTask clone)
|
(package private) LinuxPtraceTaskState |
handleContinue(LinuxPtraceTask task)
|
(package private) LinuxPtraceTaskState |
handleDeleteObservation(LinuxPtraceTask task,
TaskObservation observation)
|
(package private) LinuxPtraceTaskState |
handleDetach(LinuxPtraceTask task,
boolean shouldRemoveObservers)
|
(package private) LinuxPtraceTaskState |
handleExecedEvent(LinuxPtraceTask task)
|
(package private) LinuxPtraceTaskState |
handleForkedEvent(LinuxPtraceTask task,
LinuxPtraceTask fork)
|
(package private) LinuxPtraceTaskState |
handleSignaledEvent(LinuxPtraceTask task,
Signal sig)
|
(package private) LinuxPtraceTaskState |
handleStoppedEvent(LinuxPtraceTask task,
Signal signal)
|
(package private) LinuxPtraceTaskState |
handleSyscalledEvent(LinuxPtraceTask task)
|
(package private) LinuxPtraceTaskState |
handleTerminatedEvent(LinuxPtraceTask task,
Signal signal,
int status)
The process was terminated (can happen at any time and hence
must always be handled). |
(package private) LinuxPtraceTaskState |
handleTerminatingEvent(LinuxPtraceTask task,
Signal signal,
int status)
|
(package private) LinuxPtraceTaskState |
handleTrappedEvent(LinuxPtraceTask task)
Handles traps caused by breakpoints or instruction
stepping. |
(package private) LinuxPtraceTaskState |
handleUnblock(LinuxPtraceTask task,
TaskObserver observer)
|
(package private) LinuxPtraceTaskState.Running |
sendContinue(LinuxPtraceTask task,
Signal sig)
Tells the LinuxPtraceTask to continue, keeping in kind pending
breakpoints, with or without syscall tracing. |
insyscall
private final boolean insyscall
LinuxPtraceTaskState.Running
protected LinuxPtraceTaskState.Running(String state,
boolean insyscall)
sendContinue
LinuxPtraceTaskState.Running sendContinue(LinuxPtraceTask task,
Signal sig)
- Tells the LinuxPtraceTask to continue, keeping in kind pending
breakpoints, with or without syscall tracing.
Returns the new Running (sub) state of the Task.
blockedContinue
LinuxPtraceTaskState blockedContinue()
- Returns a blocked LinuxPtraceTaskState depending on whether we are
syscall tracing the LinuxPtraceTask and being inside or outside a syscall.
handleSignaledEvent
LinuxPtraceTaskState handleSignaledEvent(LinuxPtraceTask task,
Signal sig)
handleStoppedEvent
LinuxPtraceTaskState handleStoppedEvent(LinuxPtraceTask task,
Signal signal)
- Overrides:
handleStoppedEvent
in class LinuxPtraceTaskState
handleTerminatingEvent
LinuxPtraceTaskState handleTerminatingEvent(LinuxPtraceTask task,
Signal signal,
int status)
- Overrides:
handleTerminatingEvent
in class LinuxPtraceTaskState
handleTerminatedEvent
LinuxPtraceTaskState handleTerminatedEvent(LinuxPtraceTask task,
Signal signal,
int status)
- Description copied from class:
LinuxPtraceTaskState
- The process was terminated (can happen at any time and hence
must always be handled).
- Specified by:
handleTerminatedEvent
in class LinuxPtraceTaskState
handleExecedEvent
LinuxPtraceTaskState handleExecedEvent(LinuxPtraceTask task)
- Overrides:
handleExecedEvent
in class LinuxPtraceTaskState
handleContinue
LinuxPtraceTaskState handleContinue(LinuxPtraceTask task)
- Overrides:
handleContinue
in class LinuxPtraceTaskState
handleDetach
LinuxPtraceTaskState handleDetach(LinuxPtraceTask task,
boolean shouldRemoveObservers)
- Overrides:
handleDetach
in class LinuxPtraceTaskState
handleClonedEvent
LinuxPtraceTaskState handleClonedEvent(LinuxPtraceTask task,
LinuxPtraceTask clone)
- Overrides:
handleClonedEvent
in class LinuxPtraceTaskState
handleForkedEvent
LinuxPtraceTaskState handleForkedEvent(LinuxPtraceTask task,
LinuxPtraceTask fork)
- Overrides:
handleForkedEvent
in class LinuxPtraceTaskState
checkWatchpoint
int checkWatchpoint(LinuxPtraceTask task)
- Returns the number of blockers if a watchpoint was hit, or -1 when no watchpoint
was hit for this Task.
handleTrappedEvent
LinuxPtraceTaskState handleTrappedEvent(LinuxPtraceTask task)
- Handles traps caused by breakpoints or instruction
stepping. If there are any Code observers at the address of
the trap they get notified. If none of the Code observers
blocks we continue over the breakpoint (breakpoint stepping
state), otherwise we block till all blocking observers are
happy (breakpoint stopped state). If there are no Code observers
installed at the address, but we are stepping then all instruction
observers are notified. Otherwise it is a real trap event and we
pass it on to the task itself.
handleAddObservation
LinuxPtraceTaskState handleAddObservation(LinuxPtraceTask task,
TaskObservation observation)
- Overrides:
handleAddObservation
in class LinuxPtraceTaskState
handleDeleteObservation
LinuxPtraceTaskState handleDeleteObservation(LinuxPtraceTask task,
TaskObservation observation)
- Overrides:
handleDeleteObservation
in class LinuxPtraceTaskState
handleUnblock
LinuxPtraceTaskState handleUnblock(LinuxPtraceTask task,
TaskObserver observer)
- Overrides:
handleUnblock
in class LinuxPtraceTaskState
handleSyscalledEvent
LinuxPtraceTaskState handleSyscalledEvent(LinuxPtraceTask task)
- Overrides:
handleSyscalledEvent
in class LinuxPtraceTaskState