#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <ipc/bd.h>
#include <async.h>
#include <as.h>
#include <fibril_synch.h>
#include <devmap.h>
#include <sys/types.h>
#include <sys/typefmt.h>
#include <inttypes.h>
#include <libblock.h>
#include <errno.h>
#include <bool.h>
#include <byteorder.h>
#include <assert.h>
#include <macros.h>
#include <task.h>
#include "gpt.h"
Go to the source code of this file.
Data Structures | |
struct | part |
Partition. More... | |
Defines | |
#define | NAME "guid_part" |
Typedefs | |
typedef part | part_t |
Partition. | |
Functions | |
static int | gpt_bd_read (part_t *p, aoff64_t ba, size_t cnt, void *buf) |
Read blocks from partition. | |
static int | gpt_bd_write (part_t *p, aoff64_t ba, size_t cnt, const void *buf) |
Write blocks to partition. | |
static int | gpt_bsa_translate (part_t *p, aoff64_t ba, size_t cnt, aoff64_t *gba) |
Translate block segment address with range checking. | |
static void | gpt_connection (ipc_callid_t iid, ipc_call_t *icall) |
static int | gpt_init (const char *dev_name) |
static part_t * | gpt_part_new (void) |
Allocate a new part_t structure. | |
static void | gpt_pte_to_part (const gpt_entry_t *pte, part_t *part) |
Parse partition table entry. | |
static int | gpt_read (void) |
Read in partition records. | |
int | main (int argc, char **argv) |
Variables | |
static size_t | block_size |
const uint8_t | efi_signature [8] |
static devmap_handle_t | indev_handle |
Partitioned device (inbound device). | |
static part_t | plist_head |
List of partitions. |
Handles the GUID partitioning scheme. Uses a block device and provides one for each partition.
References: UEFI Specification Version 2.3, Chapter 5 GUID Partition Table (GPT) Format, http://www.uefi.org/specs/
Definition in file guid_part.c.