1 /* $OpenBSD: db_watch.h,v 1.9 2010/11/27 19:59:11 miod Exp $ */
2 /* $NetBSD: db_watch.h,v 1.9 1996/02/05 01:57:24 christos Exp $ */
5 * Mach Operating System
6 * Copyright (c) 1993,1992,1991,1990 Carnegie Mellon University
9 * Permission to use, copy, modify and distribute this software and its
10 * documentation is hereby granted, provided that both the copyright
11 * notice and this permission notice appear in all copies of the
12 * software, derivative works or modified versions, and any portions
13 * thereof, and that both notices appear in supporting documentation.
15 * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
16 * CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR
17 * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
19 * Carnegie Mellon requests users of this software to return to
21 * Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU
22 * School of Computer Science
23 * Carnegie Mellon University
24 * Pittsburgh PA 15213-3890
26 * any improvements or extensions that they make and grant Carnegie Mellon
27 * the rights to redistribute these changes.
29 * Author: David B. Golub, Carnegie Mellon University
33 #ifndef _DDB_DB_WATCH_
34 #define _DDB_DB_WATCH_
39 typedef struct db_watchpoint
{
40 db_addr_t loaddr
; /* from this address */
41 db_addr_t hiaddr
; /* to this address */
42 struct db_watchpoint
*link
; /* link in in-use or free chain */
45 db_watchpoint_t
db_watchpoint_alloc(void);
46 void db_watchpoint_free(db_watchpoint_t
);
47 void db_set_watchpoint(db_addr_t
, vsize_t
);
48 void db_delete_watchpoint(db_addr_t
);
49 void db_list_watchpoints(void);
50 void db_deletewatch_cmd(db_expr_t
, int, db_expr_t
, char *);
51 void db_watchpoint_cmd(db_expr_t
, int, db_expr_t
, char *);
52 void db_listwatch_cmd(db_expr_t
, int, db_expr_t
, char *);
53 void db_set_watchpoints(void);
54 void db_clear_watchpoints(void);
56 #endif /* _DDB_DB_WATCH_ */