fwAccessControl  8.4.2
Group-manipulation functions

Group-related functions

see also the module Group manipulation functions

void fwAccessControl_getAllGroups (dyn_string &grouplist, dyn_string &fullGroupNames, dyn_string &exceptionInfo)
 
void fwAccessControl_getGroup (string groupName, string &groupFullName, string &description, int &groupId, dyn_string &exceptionInfo)
 
void fwAccessControl_deleteGroup (string groupName, dyn_string &exceptionInfo) synchronized(_fwAccessControl_mutex)
 
void fwAccessControl_createGroup (string groupName, string groupFullName, string groupComment, dyn_string privileges, dyn_string &exceptionInfo) synchronized(_fwAccessControl_mutex)
 
void fwAccessControl_updateGroup (string groupName, string newGroupName, string groupFullName, string groupComment, dyn_string privileges, dyn_string &exceptionInfo) synchronized(_fwAccessControl_mutex)
 
void fwAccessControl_getGroupMembers (string groupName, dyn_string &members, dyn_string &exceptionInfo)
 
void fwAccessControl_resolveGroupsRecursively (dyn_string groupNames, dyn_string &includedGroups, dyn_string &includedBy, dyn_string &exceptionInfo, bool recursive=TRUE)
 
void fwAccessControl_getGroupsInGroup (string groupName, dyn_string &includedGroups, dyn_string &exceptionInfo, bool recursive=FALSE)
 
void fwAccessControl_setGroupsInGroup (string groupName, dyn_string includedGroups, dyn_string &exceptionInfo)
 

Detailed Description

Function Documentation

void fwAccessControl_getAllGroups ( dyn_string &  grouplist,
dyn_string &  fullGroupNames,
dyn_string &  exceptionInfo 
)

get the list of all groups

void fwAccessControl_getGroup ( string  groupName,
string &  groupFullName,
string &  description,
int &  groupId,
dyn_string &  exceptionInfo 
)

get details concerning a group

void fwAccessControl_deleteGroup ( string  groupName,
dyn_string &  exceptionInfo 
)

delete a group

void fwAccessControl_createGroup ( string  groupName,
string  groupFullName,
string  groupComment,
dyn_string  privileges,
dyn_string &  exceptionInfo 
)

creates new group

void fwAccessControl_updateGroup ( string  groupName,
string  newGroupName,
string  groupFullName,
string  groupComment,
dyn_string  privileges,
dyn_string &  exceptionInfo 
)

modifies a group

void fwAccessControl_getGroupMembers ( string  groupName,
dyn_string &  members,
dyn_string &  exceptionInfo 
)

get list of users belonging to a group

void fwAccessControl_resolveGroupsRecursively ( dyn_string  groupNames,
dyn_string &  includedGroups,
dyn_string &  includedBy,
dyn_string &  exceptionInfo,
bool  recursive = TRUE 
)
resolves groups recursively

for a set of groups specified in groupNames, returns the list of groups that are included by them (with recursive processing) and returns their names in the includedGroups ; the includedGroups will include all the entries specified in groupNames. For the subgroups being resolved recursively, the includedBy will contain the name of the "main" groups that include this group; for the "main" groups it will be empty

Parameters
groupNamesthe list of names of the groups, the names of which are to be resolved
includedGroupson return, it will contain the names of all groups that specified in groupNames, plus the groups that are included in them; if recursive=TRUE, the included groups will be resolved recursively
includedByon return, for every entry in includedGroups it will either contain an empty string (for groups that were originally specified in groupNames) or the name of the group, that made the entry included in the list;
exceptionInfostandard exception handling parameter
recursive(optional, default TRUE) determines if the group hierarchy should be traversed recursively, so that all children are returned.

Note that if a group is specified in groupNames, and then it turns out that it is also included by some other group, the includedBy for this group will be empty.

void fwAccessControl_getGroupsInGroup ( string  groupName,
dyn_string &  includedGroups,
dyn_string &  exceptionInfo,
bool  recursive = FALSE 
)
get groups hierarchy - list of groups included in a group
Parameters
groupNamethe name of the group, for which subgroups are to be returned
includedGroupson return, will contain the names of the subgroups included in the group passed in the groupName parameter; note that the group specified in groupName is not returned in includedGroups
exceptionInfostandard exception handling parameter
recursive(optional, default FALSE) specifies if the group hierarchy is to be traversed recursively, i.e. if it should return only the direct children, or also children-of-children and so on
void fwAccessControl_setGroupsInGroup ( string  groupName,
dyn_string  includedGroups,
dyn_string &  exceptionInfo 
)
set groups hierarchy - list of groups included in a group
Parameters
groupNamethe name of the group, for which the subgroups are to be set
includedGroupsthe list of groups to be included in the group.
exceptionInfostandard exception handling parameter

Note that the function detects circular references, and reports an error in such case (e.g. A includes B and C, C includes D, and D includes A)