add 'string' field getter to parttype

'string' getter wraps fdisk_parttype_get_string to fetch the partition
type UUID in case of a GPT label device.

This is useful to confirm or check the partition type UUID of any device
with a GPT label.

>>> import fdisk
>>> cxt = fdisk.Context('./disk.bin', readonly=False)
>>> pa = cxt.partitions[0]
>>> pa.type.string
'C12A7328-F81F-11D2-BA4B-00A0C93EC93B'
>>> pa.type.name
'EFI System'
master
Jose M. Guisado 2023-01-11 15:45:50 +01:00
parent dce0b0c1e3
commit 34fd2cbe48
1 changed files with 6 additions and 0 deletions

View File

@ -25,6 +25,11 @@ static PyMethodDef PartType_methods[] = {
{NULL} {NULL}
}; };
static PyObject *PartType_get_string(PartTypeObject *self)
{
return PyObjectResultStr(fdisk_parttype_get_string(self->type));
}
static PyObject *PartType_get_name(PartTypeObject *self) static PyObject *PartType_get_name(PartTypeObject *self)
{ {
return PyObjectResultStr(fdisk_parttype_get_name(self->type)); return PyObjectResultStr(fdisk_parttype_get_name(self->type));
@ -36,6 +41,7 @@ static PyObject *PartType_get_code(PartTypeObject *self)
} }
static PyGetSetDef PartType_getseters[] = { static PyGetSetDef PartType_getseters[] = {
{"string", (getter)PartType_get_string, NULL, "partition type string (GUID for GPT)", NULL},
{"name", (getter)PartType_get_name, NULL, "parttype human readable name", NULL}, {"name", (getter)PartType_get_name, NULL, "parttype human readable name", NULL},
{"code", (getter)PartType_get_code, NULL, "parttype DOS code", NULL}, {"code", (getter)PartType_get_code, NULL, "parttype DOS code", NULL},
{NULL} {NULL}