GATE
C/C++ Framework
|
OS user account utilities. More...
#include "gate/system/gate_system_api.h"
#include "gate/gatetypes.h"
#include "gate/strings.h"
#include "gate/properties.h"
Data Structures | |
struct | gate_account_user_class |
user account record More... | |
struct | gate_account_group_class |
account group record More... |
Typedefs | |
typedef struct gate_account_user_class | gate_account_user_t |
user account record | |
typedef struct gate_account_group_class | gate_account_group_t |
account group record | |
typedef gate_bool_t(* | gate_account_enum_users_callback_t) (gate_account_user_t const *account_user, void *userparam) |
Callback function type to enumerate user accounts. | |
typedef gate_bool_t(* | gate_account_enum_groups_callback_t) (gate_account_group_t const *account_group, void *userparam) |
Callback function type to enumerate account groups. |
Functions | |
GATE_SYSTEM_API gate_result_t | gate_account_enum_users (gate_account_enum_users_callback_t callback, void *param) |
Enumerate all available system user accounts. | |
GATE_SYSTEM_API gate_result_t | gate_account_enum_groups (gate_account_enum_groups_callback_t callback, void *userparam) |
Enumerate all available system account groups. | |
GATE_SYSTEM_API gate_result_t | gate_account_enum_group_members (gate_account_group_t const *group, gate_account_enum_users_callback_t callback, void *param) |
Enumerate all user accounts in a group. | |
GATE_SYSTEM_API gate_result_t | gate_account_enum_user_memberships (gate_account_user_t const *user, gate_account_enum_groups_callback_t callback, void *param) |
Enumerate all group memberships a user account is connected with. | |
GATE_SYSTEM_API gate_result_t | gate_account_get_user (gate_string_t const *user_id, gate_account_user_t *user) |
Resolves a user account by its unique ID. | |
GATE_SYSTEM_API gate_result_t | gate_account_resolve_user (gate_string_t const *user_name, gate_account_user_t *user) |
Resolves a user account by its login name. | |
GATE_SYSTEM_API gate_result_t | gate_account_get_group (gate_string_t const *group_id, gate_account_group_t *group) |
Resolves an account group by its unique ID. | |
GATE_SYSTEM_API gate_result_t | gate_account_resolve_group (gate_string_t const *group_name, gate_account_group_t *group) |
Resolves an account group by its group name. | |
GATE_SYSTEM_API gate_result_t | gate_account_create_user (gate_string_t const *user_name, gate_string_t const *password) |
Create an new default system user account. | |
GATE_SYSTEM_API gate_result_t | gate_account_delete_user (gate_account_user_t const *user) |
Deletes an existing user account. | |
GATE_SYSTEM_API gate_result_t | gate_account_create_group (gate_string_t const *group_name) |
Creates a new default system account group. | |
GATE_SYSTEM_API gate_result_t | gate_account_delete_group (gate_account_group_t const *group) |
Deletes an existing account group. | |
GATE_SYSTEM_API gate_result_t | gate_account_add_user_to_group (gate_account_user_t const *user, gate_account_group_t const *group) |
Adds a user account to an account group. | |
GATE_SYSTEM_API gate_result_t | gate_account_remove_user_from_group (gate_account_user_t const *user, gate_account_group_t const *group) |
Removes a user account from a group membership. | |
GATE_SYSTEM_API gate_result_t | gate_account_get_user_properties (gate_account_user_t const *user, gate_property_t *properties) |
Read advanced user properties. | |
GATE_SYSTEM_API gate_result_t | gate_account_set_user_property (gate_account_user_t const *user, gate_string_t const *key, gate_property_t const *value) |
Changes an advanced user property. |
OS user account utilities.
GATE_SYSTEM_API gate_result_t gate_account_enum_users | ( | gate_account_enum_users_callback_t | callback, |
void * | param ) |
Enumerate all available system user accounts.
[in] | callback | Callback function to be invoked with each found account |
[in] | userparam | User parameter to be attached to each callback call |
GATE_SYSTEM_API gate_result_t gate_account_enum_groups | ( | gate_account_enum_groups_callback_t | callback, |
void * | userparam ) |
Enumerate all available system account groups.
[in] | callback | Callback function to be invoked with each found group |
[in] | userparam | User parameter to be attached to each callback call |
GATE_SYSTEM_API gate_result_t gate_account_enum_group_members | ( | gate_account_group_t const * | group, |
gate_account_enum_users_callback_t | callback, | ||
void * | param ) |
Enumerate all user accounts in a group.
[in] | group | Pointer to group record to be accessed |
[in] | callback | Callback function to be invoked with each found account in a group |
[in] | userparam | User parameter to be attached to each callback call |
GATE_SYSTEM_API gate_result_t gate_account_enum_user_memberships | ( | gate_account_user_t const * | user, |
gate_account_enum_groups_callback_t | callback, | ||
void * | param ) |
Enumerate all group memberships a user account is connected with.
[in] | user | Pointer to user record to be accessed |
[in] | callback | Callback function to be invoked with each found group membership |
[in] | userparam | User parameter to be attached to each callback call |
GATE_SYSTEM_API gate_result_t gate_account_get_user | ( | gate_string_t const * | user_id, |
gate_account_user_t * | user ) |
Resolves a user account by its unique ID.
[in] | user_id | ID of user to be resolved |
[out] | user | Pointer to user account record to be initialized with resolved data |
GATE_SYSTEM_API gate_result_t gate_account_resolve_user | ( | gate_string_t const * | user_name, |
gate_account_user_t * | user ) |
Resolves a user account by its login name.
[in] | user_name | Login name of user to be resolved |
[out] | user | Pointer to user account record to be initialized with resolved data |
GATE_SYSTEM_API gate_result_t gate_account_get_group | ( | gate_string_t const * | group_id, |
gate_account_group_t * | group ) |
Resolves an account group by its unique ID.
[in] | group_id | ID of group to be resolved |
[out] | user | Pointer to group account record to be initialized with resolved data |
GATE_SYSTEM_API gate_result_t gate_account_resolve_group | ( | gate_string_t const * | group_name, |
gate_account_group_t * | group ) |
Resolves an account group by its group name.
[in] | group_name | name of group to be resolved |
[out] | user | Pointer to group account record to be initialized with resolved data |
GATE_SYSTEM_API gate_result_t gate_account_create_user | ( | gate_string_t const * | user_name, |
gate_string_t const * | password ) |
Create an new default system user account.
[in] | user_name | User login name |
[in] | passowrd | User login password |
GATE_SYSTEM_API gate_result_t gate_account_delete_user | ( | gate_account_user_t const * | user | ) |
Deletes an existing user account.
[in] | user | Pointer to user record to be accessed |
GATE_SYSTEM_API gate_result_t gate_account_create_group | ( | gate_string_t const * | group_name | ) |
Creates a new default system account group.
[in] | group_name | Name of group to be created |
GATE_SYSTEM_API gate_result_t gate_account_delete_group | ( | gate_account_group_t const * | group | ) |
Deletes an existing account group.
[in] | group | Pointer to group record to be accessed |
GATE_SYSTEM_API gate_result_t gate_account_add_user_to_group | ( | gate_account_user_t const * | user, |
gate_account_group_t const * | group ) |
Adds a user account to an account group.
[in] | user | Pointer to user to be added to a group |
[in] | group | Pointer to group to add the user as a member |
GATE_SYSTEM_API gate_result_t gate_account_remove_user_from_group | ( | gate_account_user_t const * | user, |
gate_account_group_t const * | group ) |
Removes a user account from a group membership.
[in] | user | Pointer to user to be removed from a group |
[in] | group | Pointer to group to remove the user as member |
GATE_SYSTEM_API gate_result_t gate_account_get_user_properties | ( | gate_account_user_t const * | user, |
gate_property_t * | properties ) |
Read advanced user properties.
[in] | user | Pointer to user record to be accessed |
[out] | properties | Pointer to property object to be initialized with a property-mapping |
GATE_SYSTEM_API gate_result_t gate_account_set_user_property | ( | gate_account_user_t const * | user, |
gate_string_t const * | key, | ||
gate_property_t const * | value ) |
Changes an advanced user property.
[in] | user | Pointer to user record to be accessed |
[in] | key | Name of property to update |
[in] | value | New value of property to be applied |