|
Stackdb
Stackdb is a stackable, multi-target and -level source debugger and memory forensics library.
|

Go to the source code of this file.
Data Structures | |
| struct | os_linux_state |
| struct | os_linux_vma |
| struct | os_linux_mm |
| struct | os_linux_thread_state |
Macros | |
| #define | PAGE_SIZE 0x1000 |
| #define | THREAD_SIZE 8192 |
| #define | KERNEL_STACK_OFFSET (5*8) |
| #define | THREAD_INFO_GET_CPL(tid) (((tid) & (0x3 << 62)) >> 62) |
| #define | THREAD_INFO_GET_TID(tid) ((tid) & 0xffffffff) |
| #define | THREAD_INFO_SET_CPL(tid, cpl) (tid) |= (((cpl) & 0x3) << 62) |
| #define | THREAD_INFO_SET_TID(tid, pid) (tid) |= (0xffffffff & (pid)) |
| #define | TIF_32_SYSCALL_TRACE 0 /* syscall trace active */ |
| #define | TIF_32_NOTIFY_RESUME 1 /* resumption notification requested */ |
| #define | TIF_32_SIGPENDING 2 /* signal pending */ |
| #define | TIF_32_NEED_RESCHED 3 /* rescheduling necessary */ |
| #define | TIF_32_SINGLESTEP 4 /* restore singlestep on return to user mode */ |
| #define | TIF_32_IRET 5 /* return with iret */ |
| #define | TIF_32_SYSCALL_EMU 6 /* syscall emulation active */ |
| #define | TIF_32_SYSCALL_AUDIT 7 /* syscall auditing active */ |
| #define | TIF_32_SECCOMP 8 /* secure computing */ |
| #define | TIF_32_RESTORE_SIGMASK 9 /* restore signal mask in do_signal() */ |
| #define | TIF_32_MEMDIE 16 |
| #define | TIF_32_DEBUG 17 /* uses debug registers */ |
| #define | TIF_32_IO_BITMAP 18 /* uses I/O bitmap */ |
| #define | _TIF_32_SYSCALL_TRACE (1<<TIF_32_SYSCALL_TRACE) |
| #define | _TIF_32_NOTIFY_RESUME (1<<TIF_32_NOTIFY_RESUME) |
| #define | _TIF_32_SIGPENDING (1<<TIF_32_SIGPENDING) |
| #define | _TIF_32_NEED_RESCHED (1<<TIF_32_NEED_RESCHED) |
| #define | _TIF_32_SINGLESTEP (1<<TIF_32_SINGLESTEP) |
| #define | _TIF_32_IRET (1<<TIF_32_IRET) |
| #define | _TIF_32_SYSCALL_EMU (1<<TIF_32_SYSCALL_EMU) |
| #define | _TIF_32_SYSCALL_AUDIT (1<<TIF_32_SYSCALL_AUDIT) |
| #define | _TIF_32_SECCOMP (1<<TIF_32_SECCOMP) |
| #define | _TIF_32_RESTORE_SIGMASK (1<<TIF_32_RESTORE_SIGMASK) |
| #define | _TIF_32_DEBUG (1<<TIF_32_DEBUG) |
| #define | _TIF_32_IO_BITMAP (1<<TIF_32_IO_BITMAP) |
| #define | TIF_64_SYSCALL_TRACE 0 /* syscall trace active */ |
| #define | TIF_64_NOTIFY_RESUME 1 /* resumption notification requested */ |
| #define | TIF_64_SIGPENDING 2 /* signal pending */ |
| #define | TIF_64_NEED_RESCHED 3 /* rescheduling necessary */ |
| #define | TIF_64_SINGLESTEP 4 /* reenable singlestep on user return*/ |
| #define | TIF_64_IRET 5 /* force IRET */ |
| #define | TIF_64_SYSCALL_AUDIT 7 /* syscall auditing active */ |
| #define | TIF_64_SECCOMP 8 /* secure computing */ |
| #define | TIF_64_IA32 17 /* 32bit process */ |
| #define | TIF_64_FORK 18 /* ret_from_fork */ |
| #define | TIF_64_ABI_PENDING 19 |
| #define | TIF_64_MEMDIE 20 |
| #define | _TIF_64_SYSCALL_TRACE (1<<TIF_64_SYSCALL_TRACE) |
| #define | _TIF_64_NOTIFY_RESUME (1<<TIF_64_NOTIFY_RESUME) |
| #define | _TIF_64_SIGPENDING (1<<TIF_64_SIGPENDING) |
| #define | _TIF_64_SINGLESTEP (1<<TIF_64_SINGLESTEP) |
| #define | _TIF_64_NEED_RESCHED (1<<TIF_64_NEED_RESCHED) |
| #define | _TIF_64_IRET (1<<TIF_64_IRET) |
| #define | _TIF_64_SYSCALL_AUDIT (1<<TIF_64_SYSCALL_AUDIT) |
| #define | _TIF_64_SECCOMP (1<<TIF_64_SECCOMP) |
| #define | _TIF_64_IA32 (1<<TIF_64_IA32) |
| #define | _TIF_64_FORK (1<<TIF_64_FORK) |
| #define | _TIF_64_ABI_PENDING (1<<TIF_64_ABI_PENDING) |
| #define | PREEMPT_MASK 0x000000ff |
| #define | SOFTIRQ_MASK 0x0000ff00 |
| #define | HARDIRQ_MASK 0x0fff0000 |
| #define | PREEMPT_ACTIVE 0x10000000 |
| #define | PREEMPT_NEED_RESCHED 0x80000000 |
| #define | PREEMPT_BITSHIFT 0 |
| #define | SOFTIRQ_BITSHIFT 8 |
| #define | HARDIRQ_BITSHIFT 16 |
| #define | PREEMPT_COUNT(p) (((p) & PREEMPT_MASK) >> PREEMPT_BITSHIFT) |
| #define | SOFTIRQ_COUNT(p) (((p) & SOFTIRQ_MASK) >> SOFTIRQ_BITSHIFT) |
| #define | HARDIRQ_COUNT(p) (((p) & HARDIRQ_MASK) >> HARDIRQ_BITSHIFT) |
Typedefs | |
| typedef int(* | os_linux_list_iterator_t )(struct target *t, struct value *value, void *data) |
| #define _TIF_32_DEBUG (1<<TIF_32_DEBUG) |
Definition at line 58 of file target_os_linux_generic.h.
| #define _TIF_32_IO_BITMAP (1<<TIF_32_IO_BITMAP) |
Definition at line 59 of file target_os_linux_generic.h.
| #define _TIF_32_IRET (1<<TIF_32_IRET) |
Definition at line 53 of file target_os_linux_generic.h.
| #define _TIF_32_NEED_RESCHED (1<<TIF_32_NEED_RESCHED) |
Definition at line 51 of file target_os_linux_generic.h.
| #define _TIF_32_NOTIFY_RESUME (1<<TIF_32_NOTIFY_RESUME) |
Definition at line 49 of file target_os_linux_generic.h.
| #define _TIF_32_RESTORE_SIGMASK (1<<TIF_32_RESTORE_SIGMASK) |
Definition at line 57 of file target_os_linux_generic.h.
| #define _TIF_32_SECCOMP (1<<TIF_32_SECCOMP) |
Definition at line 56 of file target_os_linux_generic.h.
| #define _TIF_32_SIGPENDING (1<<TIF_32_SIGPENDING) |
Definition at line 50 of file target_os_linux_generic.h.
| #define _TIF_32_SINGLESTEP (1<<TIF_32_SINGLESTEP) |
Definition at line 52 of file target_os_linux_generic.h.
| #define _TIF_32_SYSCALL_AUDIT (1<<TIF_32_SYSCALL_AUDIT) |
Definition at line 55 of file target_os_linux_generic.h.
| #define _TIF_32_SYSCALL_EMU (1<<TIF_32_SYSCALL_EMU) |
Definition at line 54 of file target_os_linux_generic.h.
| #define _TIF_32_SYSCALL_TRACE (1<<TIF_32_SYSCALL_TRACE) |
Definition at line 48 of file target_os_linux_generic.h.
| #define _TIF_64_ABI_PENDING (1<<TIF_64_ABI_PENDING) |
Definition at line 86 of file target_os_linux_generic.h.
| #define _TIF_64_FORK (1<<TIF_64_FORK) |
Definition at line 85 of file target_os_linux_generic.h.
| #define _TIF_64_IA32 (1<<TIF_64_IA32) |
Definition at line 84 of file target_os_linux_generic.h.
| #define _TIF_64_IRET (1<<TIF_64_IRET) |
Definition at line 81 of file target_os_linux_generic.h.
| #define _TIF_64_NEED_RESCHED (1<<TIF_64_NEED_RESCHED) |
Definition at line 80 of file target_os_linux_generic.h.
| #define _TIF_64_NOTIFY_RESUME (1<<TIF_64_NOTIFY_RESUME) |
Definition at line 77 of file target_os_linux_generic.h.
| #define _TIF_64_SECCOMP (1<<TIF_64_SECCOMP) |
Definition at line 83 of file target_os_linux_generic.h.
| #define _TIF_64_SIGPENDING (1<<TIF_64_SIGPENDING) |
Definition at line 78 of file target_os_linux_generic.h.
| #define _TIF_64_SINGLESTEP (1<<TIF_64_SINGLESTEP) |
Definition at line 79 of file target_os_linux_generic.h.
| #define _TIF_64_SYSCALL_AUDIT (1<<TIF_64_SYSCALL_AUDIT) |
Definition at line 82 of file target_os_linux_generic.h.
| #define _TIF_64_SYSCALL_TRACE (1<<TIF_64_SYSCALL_TRACE) |
Definition at line 76 of file target_os_linux_generic.h.
| #define HARDIRQ_BITSHIFT 16 |
Definition at line 327 of file target_os_linux_generic.h.
| #define HARDIRQ_COUNT | ( | p | ) | (((p) & HARDIRQ_MASK) >> HARDIRQ_BITSHIFT) |
Definition at line 334 of file target_os_linux_generic.h.
| #define HARDIRQ_MASK 0x0fff0000 |
Definition at line 322 of file target_os_linux_generic.h.
| #define KERNEL_STACK_OFFSET (5*8) |
Definition at line 27 of file target_os_linux_generic.h.
| #define PAGE_SIZE 0x1000 |
Definition at line 23 of file target_os_linux_generic.h.
| #define PREEMPT_ACTIVE 0x10000000 |
Definition at line 323 of file target_os_linux_generic.h.
| #define PREEMPT_BITSHIFT 0 |
Definition at line 325 of file target_os_linux_generic.h.
| #define PREEMPT_COUNT | ( | p | ) | (((p) & PREEMPT_MASK) >> PREEMPT_BITSHIFT) |
Definition at line 332 of file target_os_linux_generic.h.
| #define PREEMPT_MASK 0x000000ff |
Definition at line 320 of file target_os_linux_generic.h.
| #define PREEMPT_NEED_RESCHED 0x80000000 |
Definition at line 324 of file target_os_linux_generic.h.
| #define SOFTIRQ_BITSHIFT 8 |
Definition at line 326 of file target_os_linux_generic.h.
| #define SOFTIRQ_COUNT | ( | p | ) | (((p) & SOFTIRQ_MASK) >> SOFTIRQ_BITSHIFT) |
Definition at line 333 of file target_os_linux_generic.h.
| #define SOFTIRQ_MASK 0x0000ff00 |
Definition at line 321 of file target_os_linux_generic.h.
| #define THREAD_INFO_GET_CPL | ( | tid | ) | (((tid) & (0x3 << 62)) >> 62) |
Definition at line 29 of file target_os_linux_generic.h.
| #define THREAD_INFO_GET_TID | ( | tid | ) | ((tid) & 0xffffffff) |
Definition at line 30 of file target_os_linux_generic.h.
| #define THREAD_INFO_SET_CPL | ( | tid, | |
| cpl | |||
| ) | (tid) |= (((cpl) & 0x3) << 62) |
Definition at line 31 of file target_os_linux_generic.h.
| #define THREAD_INFO_SET_TID | ( | tid, | |
| pid | |||
| ) | (tid) |= (0xffffffff & (pid)) |
Definition at line 32 of file target_os_linux_generic.h.
| #define THREAD_SIZE 8192 |
Definition at line 25 of file target_os_linux_generic.h.
| #define TIF_32_DEBUG 17 /* uses debug registers */ |
Definition at line 45 of file target_os_linux_generic.h.
| #define TIF_32_IO_BITMAP 18 /* uses I/O bitmap */ |
Definition at line 46 of file target_os_linux_generic.h.
| #define TIF_32_IRET 5 /* return with iret */ |
Definition at line 39 of file target_os_linux_generic.h.
| #define TIF_32_MEMDIE 16 |
Definition at line 44 of file target_os_linux_generic.h.
| #define TIF_32_NEED_RESCHED 3 /* rescheduling necessary */ |
Definition at line 37 of file target_os_linux_generic.h.
| #define TIF_32_NOTIFY_RESUME 1 /* resumption notification requested */ |
Definition at line 35 of file target_os_linux_generic.h.
| #define TIF_32_RESTORE_SIGMASK 9 /* restore signal mask in do_signal() */ |
Definition at line 43 of file target_os_linux_generic.h.
| #define TIF_32_SECCOMP 8 /* secure computing */ |
Definition at line 42 of file target_os_linux_generic.h.
| #define TIF_32_SIGPENDING 2 /* signal pending */ |
Definition at line 36 of file target_os_linux_generic.h.
| #define TIF_32_SINGLESTEP 4 /* restore singlestep on return to user mode */ |
Definition at line 38 of file target_os_linux_generic.h.
| #define TIF_32_SYSCALL_AUDIT 7 /* syscall auditing active */ |
Definition at line 41 of file target_os_linux_generic.h.
| #define TIF_32_SYSCALL_EMU 6 /* syscall emulation active */ |
Definition at line 40 of file target_os_linux_generic.h.
| #define TIF_32_SYSCALL_TRACE 0 /* syscall trace active */ |
Definition at line 34 of file target_os_linux_generic.h.
| #define TIF_64_ABI_PENDING 19 |
Definition at line 73 of file target_os_linux_generic.h.
| #define TIF_64_FORK 18 /* ret_from_fork */ |
Definition at line 72 of file target_os_linux_generic.h.
| #define TIF_64_IA32 17 /* 32bit process */ |
Definition at line 71 of file target_os_linux_generic.h.
| #define TIF_64_IRET 5 /* force IRET */ |
Definition at line 67 of file target_os_linux_generic.h.
| #define TIF_64_MEMDIE 20 |
Definition at line 74 of file target_os_linux_generic.h.
| #define TIF_64_NEED_RESCHED 3 /* rescheduling necessary */ |
Definition at line 65 of file target_os_linux_generic.h.
| #define TIF_64_NOTIFY_RESUME 1 /* resumption notification requested */ |
Definition at line 63 of file target_os_linux_generic.h.
| #define TIF_64_SECCOMP 8 /* secure computing */ |
Definition at line 69 of file target_os_linux_generic.h.
| #define TIF_64_SIGPENDING 2 /* signal pending */ |
Definition at line 64 of file target_os_linux_generic.h.
| #define TIF_64_SINGLESTEP 4 /* reenable singlestep on user return*/ |
Definition at line 66 of file target_os_linux_generic.h.
| #define TIF_64_SYSCALL_AUDIT 7 /* syscall auditing active */ |
Definition at line 68 of file target_os_linux_generic.h.
| #define TIF_64_SYSCALL_TRACE 0 /* syscall trace active */ |
Definition at line 62 of file target_os_linux_generic.h.
Definition at line 343 of file target_os_linux_generic.h.
| char* os_linux_file_get_path | ( | struct target * | target, |
| struct value * | task, | ||
| struct value * | file, | ||
| char * | buf, | ||
| int | buflen | ||
| ) |
Definition at line 3687 of file target_os_linux_generic.c.
Definition at line 3101 of file target_os_linux_generic.c.
Definition at line 3438 of file target_os_linux_generic.c.
Definition at line 3390 of file target_os_linux_generic.c.
Definition at line 3285 of file target_os_linux_generic.c.
Definition at line 3299 of file target_os_linux_generic.c.
| int os_linux_list_for_each_entry | ( | struct target * | t, |
| struct bsymbol * | btype, | ||
| struct bsymbol * | list_head, | ||
| char * | list_head_member_name, | ||
| int | nofree, | ||
| os_linux_list_iterator_t | iterator, | ||
| void * | data | ||
| ) |
Definition at line 3877 of file target_os_linux_generic.c.
| int os_linux_list_for_each_struct | ( | struct target * | t, |
| struct bsymbol * | bsymbol, | ||
| char * | list_head_member_name, | ||
| int | nofree, | ||
| os_linux_list_iterator_t | iterator, | ||
| void * | data | ||
| ) |
Definition at line 3770 of file target_os_linux_generic.c.
| struct value* os_linux_load_current_task_as_type | ( | struct target * | target, |
| struct symbol * | datatype, | ||
| REGVAL | kernel_esp | ||
| ) |
1.8.8