rdataset revision 9c3531d72aeaad6c5f01efe6a1c82023e1379e4d
44aae046c38e796e581110b7ecdf4478167d684dBob HalleyCopyright (C) 1999, 2000 Internet Software Consortium.
3523e19da21545ade45394cb64d7462f20b77347Tinderbox UserSee COPYRIGHT in the source root or http://www.isc.org/copyright for terms.
40f53fa8d9c6a4fc38c0014495e7a42b08f52481David Lawrence
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews$Id: rdataset,v 1.3 2000/06/22 21:53:56 tale Exp $
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark AndrewsNeed way to "dup" an rdataset (i.e. different rdataset handle, same underlying
44aae046c38e796e581110b7ecdf4478167d684dBob Halleydata).
44aae046c38e796e581110b7ecdf4478167d684dBob Halley
c1aef54e14bb92518b1c062ba8c0292a7cb949cbAutomatic UpdaterDB addnode routine should take an rdataset *, which, if non-NULL, would be
9c3531d72aeaad6c5f01efe6a1c82023e1379e4dDavid Lawrenceattached to the added rdataset.
1a69a1a78cfaa86f3b68bbc965232b7876d4da2aDavid Lawrence
1a69a1a78cfaa86f3b68bbc965232b7876d4da2aDavid LawrenceNeed credibility, security status.
1a69a1a78cfaa86f3b68bbc965232b7876d4da2aDavid Lawrence
1a69a1a78cfaa86f3b68bbc965232b7876d4da2aDavid LawrenceCache security status in rdataset. Have rdataset supply methods to get/set
1a69a1a78cfaa86f3b68bbc965232b7876d4da2aDavid Lawrencethe security status. For RBTDB, it goes something like this:
1a69a1a78cfaa86f3b68bbc965232b7876d4da2aDavid Lawrence
1a69a1a78cfaa86f3b68bbc965232b7876d4da2aDavid Lawrence get:
6028d1ce0380d0ba7f6c6ecd1ad20b31ddd1becbDavid Lawrence if (cached status == pending)
1a69a1a78cfaa86f3b68bbc965232b7876d4da2aDavid Lawrence lock node lock
1a69a1a78cfaa86f3b68bbc965232b7876d4da2aDavid Lawrence read rdataset's status
1a69a1a78cfaa86f3b68bbc965232b7876d4da2aDavid Lawrence unlock node lock
1a69a1a78cfaa86f3b68bbc965232b7876d4da2aDavid Lawrence update cached status
1a69a1a78cfaa86f3b68bbc965232b7876d4da2aDavid Lawrence return (cached status)
1a69a1a78cfaa86f3b68bbc965232b7876d4da2aDavid Lawrence
1a69a1a78cfaa86f3b68bbc965232b7876d4da2aDavid Lawrence set:
fe56f2116b9522abab760e63c9f827f4949e351eDavid Lawrence require that status cannot go backwards (e.g. OK to pending)
1a69a1a78cfaa86f3b68bbc965232b7876d4da2aDavid Lawrence lock node lock
1a69a1a78cfaa86f3b68bbc965232b7876d4da2aDavid Lawrence write rdataset's status
44aae046c38e796e581110b7ecdf4478167d684dBob Halley unlock node lock
44aae046c38e796e581110b7ecdf4478167d684dBob Halley update cached status
44aae046c38e796e581110b7ecdf4478167d684dBob Halley