+ <orderedlist>
+ <listitem>
+ <para>'inst'</para>
+
+ <para>Install. The boot state cooresponds to a new node that has not
+ yet been installed, but record of it does exist. When the boot
+ manager starts, and the node is in this state, the user is prompted
+ to continue with the installation. The intention here is to prevent
+ a non-PlanetLab machine (like a user's desktop machine) from
+ becoming inadvertantly wiped and installed with the PlanetLab node
+ software. This is the default state for new nodes.</para>
+ </listitem>
+
+ <listitem>
+ <para>'rins'</para>
+
+ <para>Reinstall. In this state, a node will reinstall the node
+ software, erasing anything that might have been on the disk
+ before.</para>
+ </listitem>
+
+ <listitem>
+ <para>'boot'</para>
+
+ <para>Boot. This state cooresponds with nodes that have sucessfully
+ installed, and can be chain booted to the runtime node
+ kernel.</para>
+ </listitem>
+
+ <listitem>
+ <para>'dbg'</para>
+
+ <para>Debug. Regardless of whether or not a machine has been
+ installed, this state sets up a node to be debugged by
+ administrators.</para>
+ </listitem>
+ </orderedlist>
+ </section>
+ </section>
+
+ <section>
+ <title>Existing Management Authority API Calls</title>
+
+ <para>These calls, take from the PlanetLab Core Specification and extended
+ with additional parameters, are used by Principals to maintain the set of
+ nodes managed by a MA. See the Core Specification for more information.
+ The MA may provide an easy to use interface, such as a web interface, that
+ calls these directly.</para>
+
+ <para><itemizedlist>
+ <listitem>
+ <para>AddNode( authentication, node_values )</para>
+
+ <para>Add a new node record. node_values contains hostname,
+ ipaddress, and the new fields: boot_state. The resultant node_id is
+ returned.</para>
+ </listitem>
+
+ <listitem>
+ <para>UpdateNode( authentication, node_id, update_values )</para>
+
+ <para>Update an existing node record. update_values can include
+ hostname, ipaddress, and the new fields: boot_state.</para>
+ </listitem>
+
+ <listitem>
+ <para>DeleteNode( authentication, node_id )</para>
+
+ <para>Delete a node record.</para>
+ </listitem>
+ </itemizedlist></para>
+ </section>
+
+ <section>
+ <title>New Management Authority API Calls</title>
+
+ <para>The API calls available as part of the MA API that are intended to
+ be run by principals leverage existing authentication mechanisms. However,
+ the API calls described below that will be run by the nodes themselves
+ need a new authentication mechanism.</para>
+
+ <section>
+ <title>Node Authentication</title>
+
+ <para>As is done with other MA API calls, the first parameter to all
+ BootManager related calls will be an authentication structure,