PolicyKit Library Reference Manual | ||||
---|---|---|---|---|
Top | Description |
Synopsis
PolKitConfig; PolKitConfig * polkit_config_new (const char *path, PolKitError **error); PolKitConfig * polkit_config_ref (PolKitConfig *pk_config); void polkit_config_unref (PolKitConfig *pk_config); PolKitResult polkit_config_can_session_do_action (PolKitConfig *pk_config, PolKitAction *action, PolKitSession *session); PolKitResult polkit_config_can_caller_do_action (PolKitConfig *pk_config, PolKitAction *action, PolKitCaller *caller); enum PolKitConfigAdminAuthType; polkit_bool_t polkit_config_determine_admin_auth_type (PolKitConfig *pk_config, PolKitAction *action, PolKitCaller *caller, PolKitConfigAdminAuthType *out_admin_auth_type, const char **out_data);
Description
This class is used to represent the /etc/PolicyKit/PolicyKit.conf configuration file. Applications using PolicyKit should never use this class; it's only here for integration with other PolicyKit components.
Details
PolKitConfig
typedef struct _PolKitConfig PolKitConfig;
This class represents the system-wide configuration file for PolicyKit. Applications using PolicyKit should never use this class; it's only here for integration with other PolicyKit components.
polkit_config_new ()
PolKitConfig * polkit_config_new (const char *path, PolKitError **error);
Load and parse a PolicyKit configuration file.
|
Path to configuration, typically /etc/PolicyKit/PolicyKit.conf is passed. |
|
return location for error |
Returns : |
the configuration file object |
polkit_config_ref ()
PolKitConfig * polkit_config_ref (PolKitConfig *pk_config);
Increase reference count.
|
the object |
Returns : |
the object |
polkit_config_unref ()
void polkit_config_unref (PolKitConfig *pk_config);
Decreases the reference count of the object. If it becomes zero, the object is freed. Before freeing, reference counts on embedded objects are decresed by one.
|
the object |
polkit_config_can_session_do_action ()
PolKitResult polkit_config_can_session_do_action (PolKitConfig *pk_config, PolKitAction *action, PolKitSession *session);
Determine if the /etc/PolicyKit/PolicyKit.conf configuration file says that a given session can do a given action.
|
the PolicyKit context |
|
the type of access to check for |
|
the session in question |
Returns : |
A PolKitResult - returns POLKIT_RESULT_UNKNOWN if there was no match in the configuration file. |
polkit_config_can_caller_do_action ()
PolKitResult polkit_config_can_caller_do_action (PolKitConfig *pk_config, PolKitAction *action, PolKitCaller *caller);
Determine if the /etc/PolicyKit/PolicyKit.conf configuration file says that a given caller can do a given action.
|
the PolicyKit context |
|
the type of access to check for |
|
the caller in question |
Returns : |
A PolKitResult - returns POLKIT_RESULT_UNKNOWN if there was no match in the configuration file. |
enum PolKitConfigAdminAuthType
typedef enum { POLKIT_CONFIG_ADMIN_AUTH_TYPE_USER, POLKIT_CONFIG_ADMIN_AUTH_TYPE_GROUP } PolKitConfigAdminAuthType;
This enumeration reflects results defined in the "define_admin_auth" configuration element.
polkit_config_determine_admin_auth_type ()
polkit_bool_t polkit_config_determine_admin_auth_type (PolKitConfig *pk_config, PolKitAction *action, PolKitCaller *caller, PolKitConfigAdminAuthType *out_admin_auth_type, const char **out_data);
Determine what "Authenticate as admin" means for a given caller and a given action. This basically returns the result of the "define_admin_auth" in the configuration file when drilling down for a specific caller / action.
|
the PolicyKit context |
|
the type of access to check for |
|
the caller in question |
|
return location for the authentication type |
|
return location for the match value of the given authentication type. Caller shall not manipulate or free this string. |
Returns : |
TRUE if value was returned |