Kaydet (Commit) 13a48837 authored tarafından Bahadır Kandemir's avatar Bahadır Kandemir

More PolicyKit 1.0 changes

üst 9156d489
...@@ -251,14 +251,11 @@ bus_execute2(DBusConnection *conn, const char *destination, const char *path, co ...@@ -251,14 +251,11 @@ bus_execute2(DBusConnection *conn, const char *destination, const char *path, co
} }
dbus_error_init(&err); dbus_error_init(&err);
printf("******* 1\n");
reply = dbus_connection_send_with_reply_and_block(conn, msg, timeout, &err); reply = dbus_connection_send_with_reply_and_block(conn, msg, timeout, &err);
printf("******* 2\n");
dbus_message_unref(msg); dbus_message_unref(msg);
// Unable to call method, raise an exception // Unable to call method, raise an exception
if (dbus_error_is_set(&err)) { if (dbus_error_is_set(&err)) {
printf("******* 2.1\n");
PyErr_Format(PyExc_DBus, "Unable to call method: %s", err.message); PyErr_Format(PyExc_DBus, "Unable to call method: %s", err.message);
dbus_error_free(&err); dbus_error_free(&err);
return NULL; return NULL;
...@@ -269,9 +266,7 @@ bus_execute2(DBusConnection *conn, const char *destination, const char *path, co ...@@ -269,9 +266,7 @@ bus_execute2(DBusConnection *conn, const char *destination, const char *path, co
switch (dbus_message_get_type(reply)) { switch (dbus_message_get_type(reply)) {
case DBUS_MESSAGE_TYPE_METHOD_RETURN: case DBUS_MESSAGE_TYPE_METHOD_RETURN:
// Method returned a reply // Method returned a reply
printf("******* 3\n");
ret = pydbus_import(reply); ret = pydbus_import(reply);
printf("******* 3.1\n");
if (ret && PyTuple_Size(ret) == 1) { if (ret && PyTuple_Size(ret) == 1) {
ret = PyTuple_GetItem(ret, 0); ret = PyTuple_GetItem(ret, 0);
} }
...@@ -279,9 +274,7 @@ bus_execute2(DBusConnection *conn, const char *destination, const char *path, co ...@@ -279,9 +274,7 @@ bus_execute2(DBusConnection *conn, const char *destination, const char *path, co
return ret; return ret;
case DBUS_MESSAGE_TYPE_ERROR: case DBUS_MESSAGE_TYPE_ERROR:
// Method retuned an error, raise an exception // Method retuned an error, raise an exception
printf("******* 4\n");
PyErr_SetString(PyExc_DBus, dbus_message_get_error_name(reply)); PyErr_SetString(PyExc_DBus, dbus_message_get_error_name(reply));
printf("******* 4.1\n");
dbus_message_unref(reply); dbus_message_unref(reply);
return NULL; return NULL;
} }
......
...@@ -78,12 +78,14 @@ policy_check(const char *sender, const char *action, int *result) ...@@ -78,12 +78,14 @@ policy_check(const char *sender, const char *action, int *result)
PyTuple_SetItem(obj, 0, subject); PyTuple_SetItem(obj, 0, subject);
PyTuple_SetItem(obj, 1, PyString_FromString(action)); PyTuple_SetItem(obj, 1, PyString_FromString(action));
PyTuple_SetItem(obj, 2, details2); PyTuple_SetItem(obj, 2, details2);
PyTuple_SetItem(obj, 3, PyInt_FromLong((long) 0)); PyTuple_SetItem(obj, 3, PyInt_FromLong((long) 1));
PyTuple_SetItem(obj, 4, PyString_FromString("abc")); PyTuple_SetItem(obj, 4, PyString_FromString("abc"));
printf("DEB: %s\n", PyString_AsString(PyObject_Repr(obj)));
PyObject *ret = bus_execute2(conn, "org.freedesktop.PolicyKit1", "/org/freedesktop/PolicyKit1/Authority", "org.freedesktop.PolicyKit1.Authority", "CheckAuthorization", obj, 25, "(sa{sv})sa{ss}us"); PyObject *ret = bus_execute2(conn, "org.freedesktop.PolicyKit1", "/org/freedesktop/PolicyKit1/Authority", "org.freedesktop.PolicyKit1.Authority", "CheckAuthorization", obj, 25, "(sa{sv})sa{ss}us");
printf("DEB: %s\n", PyString_AsString(PyObject_Repr(ret)));
if (PyTuple_GetItem(ret, 0) == Py_False) {
*result = POLICY_YES;
}
return 0; return 0;
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment