blob: 24c934179902b237083405ee481466e76b6e2694 [file] [log] [blame]
Petr Machatae99af272012-10-26 00:29:52 +02001/*
2 * This file is part of ltrace.
Petr Machata8fdd09b2013-10-11 15:08:30 +02003 * Copyright (C) 2012,2013 Petr Machata, Red Hat Inc.
Petr Machatae99af272012-10-26 00:29:52 +02004 *
5 * This program is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU General Public License as
7 * published by the Free Software Foundation; either version 2 of the
8 * License, or (at your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful, but
11 * WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * General Public License for more details.
14 *
15 * You should have received a copy of the GNU General Public License
16 * along with this program; if not, write to the Free Software
17 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
18 * 02110-1301 USA
19 */
20
Petr Machata50b96032012-03-24 04:56:52 +010021#ifndef LTRACE_SYSDEP_H
22#define LTRACE_SYSDEP_H
Petr Machatad3dc17b2012-03-21 03:23:25 +010023
Marc Kleine-Budde584929c2010-02-03 20:24:13 +010024#include <arch.h>
Petr Machata0f6e6d92012-10-26 23:42:17 +020025#ifndef ARCH_HAVE_ADDRESS_TYPES
26/* We should in general be able to trace 64-bit processes with 32-bit
Petr Machata2f140bf2013-10-11 21:15:19 +020027 * ltrace (this is possible on PPC, and generally there should be no
28 * problem tracing x86_64 processes from x32 ltrace, though it isn't
29 * possible from i386 ltrace). But ltrace is currently hopelessly
30 * infested with using void* for host address. So keep with it, for
31 * now. */
Petr Machata0f6e6d92012-10-26 23:42:17 +020032typedef void *arch_addr_t;
33#endif
34
35#include <os.h>
Petr Machatad3dc17b2012-03-21 03:23:25 +010036
Petr Machata50b96032012-03-24 04:56:52 +010037#ifndef ARCH_HAVE_LTELF_DATA
38struct arch_ltelf_data {
39};
40#endif
41
Petr Machata9f819d52013-10-16 14:46:24 +020042#ifndef OS_HAVE_BREAKPOINT_DATA
43struct os_breakpoint_data {
44};
45#endif
46
Petr Machata50b96032012-03-24 04:56:52 +010047#ifndef ARCH_HAVE_BREAKPOINT_DATA
48struct arch_breakpoint_data {
49};
50#endif
51
Petr Machata8fdd09b2013-10-11 15:08:30 +020052#ifndef OS_HAVE_LIBRARY_SYMBOL_DATA
53struct os_library_symbol_data {
54};
55#endif
56
Petr Machatae4e693b2012-03-27 03:10:53 +020057#ifndef ARCH_HAVE_LIBRARY_SYMBOL_DATA
58struct arch_library_symbol_data {
59};
60#endif
61
Petr Machata8fdd09b2013-10-11 15:08:30 +020062#ifndef OS_HAVE_LIBRARY_DATA
63struct os_library_data {
64};
65#endif
66
Petr Machata994ad6d2012-04-17 03:07:04 +020067#ifndef ARCH_HAVE_LIBRARY_DATA
68struct arch_library_data {
69};
70#endif
71
Petr Machata0f6e6d92012-10-26 23:42:17 +020072#ifndef OS_HAVE_PROCESS_DATA
73struct os_process_data {
Petr Machata744f2552012-04-15 04:33:18 +020074};
75#endif
76
Petr Machata0f6e6d92012-10-26 23:42:17 +020077#ifndef ARCH_HAVE_PROCESS_DATA
78struct arch_process_data {
79};
Petr Machatabac2da52012-05-29 00:42:59 +020080#endif
81
Petr Machata50b96032012-03-24 04:56:52 +010082#endif /* LTRACE_SYSDEP_H */