![]() | ![]() | ![]() | libuser Reference Manual | ![]() |
---|
entity — Functions for manipulating lu_ent structures.
#define LU_USERNAME #define LU_USERPASSWORD #define LU_UIDNUMBER #define LU_GIDNUMBER #define LU_GECOS #define LU_HOMEDIRECTORY #define LU_LOGINSHELL #define LU_GROUPNAME #define LU_GROUPPASSWORD #define LU_MEMBERNAME #define LU_ADMINISTRATORNAME #define LU_SHADOWNAME #define LU_SHADOWPASSWORD #define LU_SHADOWLASTCHANGE #define LU_SHADOWMIN #define LU_SHADOWMAX #define LU_SHADOWWARNING #define LU_SHADOWINACTIVE #define LU_SHADOWEXPIRE #define LU_SHADOWFLAG #define LU_COMMONNAME #define LU_GIVENNAME #define LU_SN #define LU_ROOMNUMBER #define LU_TELEPHONENUMBER #define LU_HOMEPHONE #define LU_EMAIL lu_ent_t* lu_ent_new (void); void lu_ent_free (lu_ent_t *ent); void lu_ent_copy (lu_ent_t *source, lu_ent_t *dest); void lu_ent_commit (lu_ent_t *ent); void lu_ent_revert (lu_ent_t *ent); void lu_ent_add (lu_ent_t *ent, const char *attr, const GValue *value); void lu_ent_add_current (lu_ent_t *ent, const char *attr, const GValue *value); void lu_ent_clear (lu_ent_t *ent, const char *attr); void lu_ent_clear_all (lu_ent_t *ent); void lu_ent_clear_all_current (lu_ent_t *ent); void lu_ent_clear_current (lu_ent_t *ent, const char *attr); void lu_ent_del (lu_ent_t *ent, const char *attr, const GValue *value); void lu_ent_del_current (lu_ent_t *ent, const char *attr, const GValue *value); void lu_ent_dump (lu_ent_t *ent, FILE *fp); GValueArray* lu_ent_get (lu_ent_t *ent, const char *attribute); GList* lu_ent_get_attributes (lu_ent_t *ent); GList* lu_ent_get_attributes_current (lu_ent_t *ent); GValueArray* lu_ent_get_current (lu_ent_t *ent, const char *attribute); gboolean lu_ent_has (lu_ent_t *ent, const char *attribute); gboolean lu_ent_has_current (lu_ent_t *ent, const char *attribute); void lu_ent_set (lu_ent_t *ent, const char *attr, const GValueArray *values); void lu_ent_set_current (lu_ent_t *ent, const char *attr, const GValueArray *values);
entity.h declares functions for manipulating lu_ent structures, which are used by libuser, its modules, and applications to hold data about a particular user or group account.
Each struct lu_ent contains two sets of attributes: pending and current. The pending attributes are modified by default, the current attributes are modified by functions ending with _current.
lu_ent_t* lu_ent_new (void);
Creates a new, empty struct lu_ent.
Returns : | the created entity, which should be deallocated by lu_ent_free() |
void lu_ent_free (lu_ent_t *ent);
Frees an struct lu_ent, including all strings it owns.
ent : | the entity to free |
void lu_ent_copy (lu_ent_t *source, lu_ent_t *dest);
Copies one struct lu_ent over another.
source : | the entity to copy |
dest : | the destination space, must be already allocated by lu_ent_new() |
void lu_ent_commit (lu_ent_t *ent);
Sets pending attribute changes as current values of the entity.
ent : | an entity |
void lu_ent_revert (lu_ent_t *ent);
Replaces all attributes with changes pending by their current values, forgetting the pending changes.
ent : | an entity |
void lu_ent_add (lu_ent_t *ent, const char *attr, const GValue *value);
Appends value to pending attribute attr in a struct lu_ent if value is not yet in the list of attr values.
ent : | an entity |
attr : | attribute name |
value : | new attribute value |
void lu_ent_add_current (lu_ent_t *ent, const char *attr, const GValue *value);
Appends value to current attribute attr in a struct lu_ent if value is not yet in the list of attr values.
ent : | an entity |
attr : | attribute name |
value : | new attribute value |
void lu_ent_clear (lu_ent_t *ent, const char *attr);
Removes all values of pending attribute attribute from a struct lu_ent.
ent : | an entity |
attr : | attribute name |
void lu_ent_clear_all (lu_ent_t *ent);
Removes all pending attributes from a struct lu_ent.
ent : | an entity |
void lu_ent_clear_all_current (lu_ent_t *ent);
Removes all current attributes from a struct lu_ent.
ent : | an entity |
void lu_ent_clear_current (lu_ent_t *ent, const char *attr);
Removes all values of current attribute attribute from a struct lu_ent.
ent : | an entity |
attr : | attribute name |
void lu_ent_del (lu_ent_t *ent, const char *attr, const GValue *value);
Removes a pending attribute attr value value from a struct lu_ent, if present.
ent : | an entity |
attr : | attribute name |
value : | attribute value |
void lu_ent_del_current (lu_ent_t *ent, const char *attr, const GValue *value);
Removes a current attribute attr value value from a struct lu_ent, if present.
ent : | an entity |
attr : | attribute name |
value : | attribute value |
void lu_ent_dump (lu_ent_t *ent, FILE *fp);
Dumps an struct lu_ent to a file in text form, for debugging.
ent : | the entity to dump |
fp : | destination file |
GValueArray* lu_ent_get (lu_ent_t *ent, const char *attribute);
Returns values associated with a pending attribute in a struct lu_ent.
ent : | an entity |
attribute : | attribute name |
Returns : | a list of values, valid at least until they are modified or deleted. The list should not be freed by the caller. Returns NULL if the attribute is not present at all or on error. |
GList* lu_ent_get_attributes (lu_ent_t *ent);
Returns a list of all pending attributes in a struct lu_ent.
ent : | an entity |
Returns : | a GList of attribute names. The list (but not the strings in the list) should be freed by the caller. |
GList* lu_ent_get_attributes_current (lu_ent_t *ent);
Returns a list of all current attributes in a struct lu_ent.
ent : | an entity |
Returns : | a GList of attribute names. The list (but not the strings in the list) should be freed by the caller. |
GValueArray* lu_ent_get_current (lu_ent_t *ent, const char *attribute);
Returns values associated with a current attribute in a struct lu_ent.
ent : | an entity |
attribute : | attribute name |
Returns : | a list of values, valid at least until they are modified or deleted. The list should not be freed by the caller. Returns NULL if the attribute is not present at all or on error. |
gboolean lu_ent_has (lu_ent_t *ent, const char *attribute);
Checks if a struct lu_ent has at least one pending attribute attribute.
ent : | an entity |
attribute : | attribute name |
Returns : | TRUE if attribute has a value in ent. |
gboolean lu_ent_has_current (lu_ent_t *ent, const char *attribute);
Checks if a struct lu_ent has at least one current attribute attribute.
ent : | an entity |
attribute : | attribute name |
Returns : | TRUE if attribute has a value in ent. |
void lu_ent_set (lu_ent_t *ent, const char *attr, const GValueArray *values);
Replaces all pending attributes attr in a struct lu_ent by a copy of values.
ent : | an entity |
attr : | attribute name |
values : | an array of values |
void lu_ent_set_current (lu_ent_t *ent, const char *attr, const GValueArray *values);
Replaces all current attributes attr in a struct lu_ent by a copy of values.
ent : | an entity |
attr : | attribute name |
values : | an array of values |
<< config | error >> |