Stackdb
Stackdb is a stackable, multi-target and -level source debugger and memory forensics library.
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Functions
target_process.c File Reference
#include <assert.h>
#include <glib.h>
#include "common.h"
#include "glib_wrapper.h"
#include "object.h"
#include "target.h"
#include "target_process.h"
Include dependency graph for target_process.c:

Go to the source code of this file.

Functions

struct target_processtarget_process_create (struct target *target, struct target_thread *tthread, struct addrspace *space)
 
void target_process_obj_flags_propagate (struct target_process *process, obj_flags_t orf, obj_flags_t nandf)
 
REFCNT target_process_free (struct target_process *process, int force)
 

Function Documentation

struct target_process* target_process_create ( struct target target,
struct target_thread tthread,
struct addrspace space 
)

Creates a target_process.

Parameters
targetThe target object this process is associated with. If the target program is a process, the target object is the target itself; if the target program is an OS, the target object is the target object for the OS. Hopefully, this will not lead to confusion!
tthreadThe main thread in the process. The thread's target object should be the same as the target object parameter above.
spaceThe addrspace associated with the process. Again, the space's target should be the same as the target param above.
Returns
A target_process.

Definition at line 43 of file target_process.c.

REFCNT target_process_free ( struct target_process process,
int  force 
)

Definition at line 86 of file target_process.c.

void target_process_obj_flags_propagate ( struct target_process process,
obj_flags_t  orf,
obj_flags_t  nandf 
)

This is a noop. We don't propagate any flags, because technically we don't own any of our children — they can exist independently of us.

The driver needs to be aware of this! We assume it is maintaining the address space separately; but perhaps not. At any rate, we cannot propagate.

Definition at line 81 of file target_process.c.