Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
return 0;
}
+static PyObject* File_get_capabilities(FileObject* self) {
+ PyObject* result = NULL;
+ char* caps = NULL;
+
+ // No capabilities
+ if (!pakfire_file_has_caps(self->file))
+ Py_RETURN_NONE;
+
+ // Fetch capabilities
+ caps = pakfire_file_get_caps(self->file);
+ if (!caps) {
+ PyErr_SetFromErrno(PyExc_OSError);
+ goto ERROR;
+ }
+
+ // Convert to Python string object
+ result = PyUnicode_FromString(caps);
+
+ERROR:
+ if (caps)
+ free(caps);
+
+ return result;
+}
+
static struct PyMethodDef File_methods[] = {
{
"digest",
};
static struct PyGetSetDef File_getsetters[] = {
+ {
+ "capabilities",
+ (getter)File_get_capabilities,
+ NULL,
+ NULL,
+ NULL,
+ },
{
"ctime",
(getter)File_get_ctime,