/**
 * File:
 *   disk.scr
 * Summary:
 *   SCR Agent for reading/writing partition information
 * Access:
 *   read/write
 * Authors:
 *   Unknown <yast2-hacker@suse.de>
 * See:
 *   y2a_fdsk/fdisk.txt
 *   anyagent
 *   libscr
 *   man fdisk
 * Example:
 *   Read(.disk.sda.partitions)
 *   ([$["fsid":131, 
 *       "fstype":"Linux native", 
 *       "nr":1, 
 *       "region":[0, 3], 
 *       "type":`primary], 
 *    ...
 *   ])
 **
 *   Read(.disk.sda.bytes_per_unit)
 *   (8224768)
 **
 *   Read(.disk.sda.disk_size)
 *   (1115)
 **
 *   Read(.disk.sda.max_primary)
 *   (4)
 **
 *   Read(.disk.sda.has_extended)
 *   (false)
 *
 * $Id: disk.scr 2924 2002-06-27 08:23:03Z kkaempf $
 *
 * <p>
 * The last component of the .disk.* path is taken as the command
 * All other path components between .disk and the command are taken
 * as a file name (below /dev). This will support RAID devices which are
 * not accessed as /dev/hdX or /dev/sdX but as (.e.g) /dev/X/Y
 * </p>
 * 
 * <p>
 * <b>Commands:</b>
 * <pre>
 * .disk.&lt;name&gt;.partitions
 *     Read or write the partition table.  On writing the return value is
 *     true if successfull.
 * .disk.&lt;name&gt;.bytes_per_unit:
 *     Return the size of a unit in the partition format (eg, cylinder).
 *     All other sizes are expressed in this unit.
 * .disk.&lt;name&gt;.disk_size:
 *     Return the size of the disk.
 * .disk.&lt;name&gt;.max_primary:
 *     Return the maximum number of primary partition that are possible.
 * .disk.&lt;name&gt;.has_extended:
 *     Return whether the partition format supports the concept of
 *     extended partitions.
 * </pre>
 * </p>
 * 
 * <p>
 * <b>Read result / Write argument</b> (for command "partitions"):<br>
 * The partition table is a list of maps for every partition.  Each map
 * contains the following keys:
 * <pre>
 * "type":   one of `primary, `extended, `logical
 * "nr":     the partition number
 * "fsid":   the file system id
 * "fstype": the textual description of the file system id (ignored on writing)
 * "region": a list of two numbers
 *           - the start of the partition
 *           - the length of the partition
 *           both expressed in units of bytes_per_unit.
 * </pre>
 * On writing the following additional entries are recognised:
 * <pre>
 * "create": whether this partition should be created
 * "delete": whether this partition should be deleted
 * </pre>
 * Additional entries may be present and are ignored.
 *
 * The Fdisk agent uses the fdisk program to read and write the partition
 * information.
 *
 */
.disk

`ag_fdisk ()
