]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - gdb/kod.h
Snap const char * mess.
[thirdparty/binutils-gdb.git] / gdb / kod.h
CommitLineData
c2c6d25f
JM
1/* Kernel Object Display facility for Cisco
2 Copyright 1999 Free Software Foundation, Inc.
3
4This file is part of GDB.
5
6This program is free software; you can redistribute it and/or modify
7it under the terms of the GNU General Public License as published by
8the Free Software Foundation; either version 2 of the License, or
9(at your option) any later version.
10
11This program is distributed in the hope that it will be useful,
12but WITHOUT ANY WARRANTY; without even the implied warranty of
13MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14GNU General Public License for more details.
15
16You should have received a copy of the GNU General Public License
17along with this program; if not, write to the Free Software
18Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
19
20#ifndef KOD_H
21#define KOD_H
22
23typedef void kod_display_callback_ftype (char *);
24typedef void kod_query_callback_ftype (char *, char *, int *);
25
26/* ???/???: Functions imported from the library for all supported
27 OSes. FIXME: we really should do something better, such as
28 dynamically loading the KOD modules. */
29
30/* FIXME: cagney/1999-09-20: The kod-cisco.c et.al. kernel modules
31 should register themselve with kod.c during the _initialization*()
32 phase. With that implemented the extern declarations below would
33 be replaced with the KOD register function that the various kernel
34 modules should call. An example of this mechanism can be seen in
35 gdbarch.c:register_gdbarch_init(). */
36
37#if 0
38/* Don't have ecos code yet. */
39extern char *ecos_kod_open (kod_display_callback_ftype *display_func,
40 kod_query_callback_ftype *query_func);
41extern void ecos_kod_request (char *, int);
42extern void ecos_kod_close (void);
43#endif
44
45/* Initialize and return library name and version. The gdb side of
46 KOD, kod.c, passes us two functions: one for displaying output
47 (presumably to the user) and the other for querying the target. */
48
49extern char *cisco_kod_open (kod_display_callback_ftype *display_func,
50 kod_query_callback_ftype *query_func);
51
52/* Print information about currently known kernel objects. We
53 currently ignore the argument. There is only one mode of querying
54 the Cisco kernel: we ask for a dump of everything, and it returns
55 it. */
56
a9596cd9 57extern void cisco_kod_request (const char *arg, int from_tty);
c2c6d25f
JM
58
59extern void cisco_kod_close (void);
60
61#endif