gsstest: fixed compilation errors
[tridge/bind9.git] / doc / design / rdataset
1 Copyright (C) 2004  Internet Systems Consortium, Inc. ("ISC")
2 Copyright (C) 1999-2001  Internet Software Consortium.
3 See COPYRIGHT in the source root or http://isc.org/copyright.html for terms.
4
5 $Id: rdataset,v 1.6 2004/03/05 05:04:46 marka Exp $
6
7 Need way to "dup" an rdataset (i.e. different rdataset handle, same underlying
8 data).
9
10 DB addnode routine should take an rdataset *, which, if non-NULL, would be
11 attached to the added rdataset.
12
13 Need credibility, security status.
14
15 Cache security status in rdataset.  Have rdataset supply methods to get/set
16 the security status.  For RBTDB, it goes something like this:
17
18         get:
19                 if (cached status == pending)
20                         lock node lock
21                         read rdataset's status
22                         unlock node lock
23                         update cached status
24                 return (cached status)
25
26         set:
27                 require that status cannot go backwards (e.g. OK to pending)
28                 lock node lock
29                 write rdataset's status
30                 unlock node lock
31                 update cached status