1/*
2 * Copyright (C) 2020-2022 The opuntiaOS Project Authors.
3 * + Contributed by Nikita Melekhin <nimelehin@gmail.com>
4 *
5 * Use of this source code is governed by a BSD-style license that can be
6 * found in the LICENSE file.
7 */
8
9#ifndef _KERNEL_TASKING_BITS_DUMP_H
10#define _KERNEL_TASKING_BITS_DUMP_H
11
12#include <libkern/types.h>
13#include <tasking/proc.h>
14
15typedef int (*dump_saver_t)(const char*);
16typedef ssize_t (*sym_resolver_t)(void* symtab, size_t syms_n, uint32_t tp);
17
18struct dump_data {
19 proc_t* p;
20 uint32_t entry_point;
21 void* syms;
22 size_t symsn;
23 char* strs;
24 dump_saver_t writer;
25 sym_resolver_t sym_resolver;
26};
27typedef struct dump_data dump_data_t;
28
29#endif // _KERNEL_TASKING_BITS_DUMP_H