00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #ifndef DBUS_CREDENTIALS_H
00024 #define DBUS_CREDENTIALS_H
00025
00026 #include <dbus/dbus-macros.h>
00027 #include <dbus/dbus-errors.h>
00028 #include <dbus/dbus-string.h>
00029 #include <dbus/dbus-sysdeps.h>
00030
00031 DBUS_BEGIN_DECLS
00032
00033 typedef enum {
00034 DBUS_CREDENTIAL_UNIX_PROCESS_ID,
00035 DBUS_CREDENTIAL_UNIX_USER_ID,
00036 DBUS_CREDENTIAL_WINDOWS_SID
00037 } DBusCredentialType;
00038
00039 DBusCredentials* _dbus_credentials_new_from_current_process (void);
00040 DBusCredentials* _dbus_credentials_new (void);
00041 void _dbus_credentials_ref (DBusCredentials *credentials);
00042 void _dbus_credentials_unref (DBusCredentials *credentials);
00043 dbus_bool_t _dbus_credentials_add_unix_pid (DBusCredentials *credentials,
00044 dbus_pid_t pid);
00045 dbus_bool_t _dbus_credentials_add_unix_uid (DBusCredentials *credentials,
00046 dbus_uid_t uid);
00047 dbus_bool_t _dbus_credentials_add_windows_sid (DBusCredentials *credentials,
00048 const char *windows_sid);
00049 dbus_bool_t _dbus_credentials_include (DBusCredentials *credentials,
00050 DBusCredentialType type);
00051 dbus_pid_t _dbus_credentials_get_unix_pid (DBusCredentials *credentials);
00052 dbus_uid_t _dbus_credentials_get_unix_uid (DBusCredentials *credentials);
00053 const char* _dbus_credentials_get_windows_sid (DBusCredentials *credentials);
00054 dbus_bool_t _dbus_credentials_are_superset (DBusCredentials *credentials,
00055 DBusCredentials *possible_subset);
00056 dbus_bool_t _dbus_credentials_are_empty (DBusCredentials *credentials);
00057 dbus_bool_t _dbus_credentials_are_anonymous (DBusCredentials *credentials);
00058 dbus_bool_t _dbus_credentials_add_credentials (DBusCredentials *credentials,
00059 DBusCredentials *other_credentials);
00060
00061 dbus_bool_t _dbus_credentials_add_credential (DBusCredentials *credentials,
00062 DBusCredentialType which,
00063 DBusCredentials *other_credentials);
00064 void _dbus_credentials_clear (DBusCredentials *credentials);
00065 DBusCredentials* _dbus_credentials_copy (DBusCredentials *credentials);
00066 dbus_bool_t _dbus_credentials_same_user (DBusCredentials *credentials,
00067 DBusCredentials *other_credentials);
00068
00069
00070 DBUS_END_DECLS
00071
00072 #endif