| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
python-libfdisk raises Python exceptions when the libfdisk reports an
error when executing some function. libfdisk returns negative
errno values when reporting some error.
Adds utility function to set PyErr string based on the strerror of
a given errno code. Useful when raising Python exceptions.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Parttype is a container for partition types in libfdisk.
In python-libfdisk, the only way to create parttype instances
is using the corresponding label-specific function:
get_parttype_from_{code,string}
This function wraps libfdisk's label_get_parttype_from_code (lookup DOS
label parttype by hex code) and label_get_parttype_from_string (lookup
GPT parttype by type uuid)
For example, to get the parttype instance of 'EFI System'
partition type of a GPT label, with type uuid
'c12a7328-f81f-11d2-ba4b-00a0c93ec93b':
>>> import fdisk
>>> cxt = fdisk.Context('./disk.bin', readonly=False)
>>> cxt.create_disklabel('gpt')
>>> efitype = cxt.label.get_parttype_from_string("c12a7328-f81f-11d2-ba4b-00a0c93ec93b")
>>> efitype
<libfdisk.PartType object at 0x7f503e4a5270, name=EFI System>
See:
https://cdn.kernel.org/pub/linux/utils/util-linux/v2.34/libfdisk-docs/libfdisk-Partition-types.html
https://cdn.kernel.org/pub/linux/utils/util-linux/v2.34/libfdisk-docs/libfdisk-Label.html#fdisk-label-get-parttype-from-code
https://cdn.kernel.org/pub/linux/utils/util-linux/v2.34/libfdisk-docs/libfdisk-Label.html#fdisk-label-get-parttype-from-string
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Call Partition_AddModuleObject when initializing the python module.
Fixes bug when using the Partition class but the class has not
been added to the module via Py_TypeReady.
A common error was the type not being ready (missing attributes):
>>> for pa in cxt.parts:
... print(pa.partno)
...
Traceback (most recent call last):
File "<stdin>", line 2, in <module>
AttributeError: 'libfdisk.Partition' object has no attribute 'partno'
|
|
|
|
| |
LGPL2.1 or later.
|
|
Add sources, setup.py and .gitignore
Build/Install:
python setup.py build
python setup.py install
|