50 return (
const char *)0;
56 {
int j = (cnt > NGROUPS_MAX ? NGROUPS_MAX : cnt);
57 if (cnt){memcpy((
void *)
grouptab, (
const void *)gtable,
58 (
size_t)(j *
sizeof(
char *)));
61 (
size_t)((NGROUPS_MAX-j+1)*
sizeof(
char *)));
153int addGroup(
const char *user,
const gid_t gid,
char *gname,
154 char **Gtab,
int gtabi);
155char *
Dotran(
const gid_t gid,
char *gname);
XrdAccGroupType
Definition XrdAccGroups.hh:90
@ XrdAccNoGroup
Definition XrdAccGroups.hh:90
@ XrdAccNetGroup
Definition XrdAccGroups.hh:90
@ XrdAccUnixGroup
Definition XrdAccGroups.hh:90
XrdAccGroups_Options
Definition XrdAccGroups.hh:81
@ Groups_Debug
Definition XrdAccGroups.hh:82
@ No_Group_Opt
Definition XrdAccGroups.hh:83
@ Primary_Only
Definition XrdAccGroups.hh:81
Definition XrdAccGroups.hh:44
const char * Next()
Definition XrdAccGroups.hh:49
~XrdAccGroupList()
Definition XrdAccGroups.hh:70
XrdAccGroupList(XrdAccGroupList &rv)
Definition XrdAccGroups.hh:65
const char * First()
Definition XrdAccGroups.hh:47
XrdAccGroupList(const int cnt=0, const char **gtable=0)
Definition XrdAccGroups.hh:55
const char * grouptab[NGROUPS_MAX+1]
Definition XrdAccGroups.hh:73
int nextgroup
Definition XrdAccGroups.hh:74
void Reset()
Definition XrdAccGroups.hh:53
Definition XrdAccGroups.hh:97
XrdOucHash< char > NetGroup_Names
Definition XrdAccGroups.hh:172
time_t LifeTime
Definition XrdAccGroups.hh:159
char * AddName(const XrdAccGroupType gtype, const char *name)
int Retran(const gid_t gid)
char * Dotran(const gid_t gid, char *gname)
gid_t retrangid[128]
Definition XrdAccGroups.hh:157
int HaveNetGroups
Definition XrdAccGroups.hh:164
int HaveGroups
Definition XrdAccGroups.hh:163
XrdOucHash< XrdAccGroupList > NetGroup_Cache
Definition XrdAccGroups.hh:169
XrdAccGroups_Options options
Definition XrdAccGroups.hh:162
XrdSysMutex NetGroup_Cache_Context
Definition XrdAccGroups.hh:167
XrdAccGroupList * Groups(const char *user)
XrdSysMutex Group_Build_Context
Definition XrdAccGroups.hh:166
XrdOucHash< char > Group_Names
Definition XrdAccGroups.hh:171
int retrancnt
Definition XrdAccGroups.hh:158
const char * domain
Definition XrdAccGroups.hh:160
XrdAccGroupList * NetGroups(const char *user, const char *host)
void SetOptions(XrdAccGroups_Options opts)
Definition XrdAccGroups.hh:145
XrdOucHash< XrdAccGroupList > Group_Cache
Definition XrdAccGroups.hh:170
void SetLifetime(const int seconds)
Definition XrdAccGroups.hh:141
int addGroup(const char *user, const gid_t gid, char *gname, char **Gtab, int gtabi)
~XrdAccGroups()
Definition XrdAccGroups.hh:149
char * FindName(const XrdAccGroupType gtype, const char *name)
XrdSysMutex Group_Name_Context
Definition XrdAccGroups.hh:166
const char * Domain()
Definition XrdAccGroups.hh:102
XrdSysMutex Group_Cache_Context
Definition XrdAccGroups.hh:167
void SetDomain(const char *dname)
Definition XrdAccGroups.hh:137
Definition XrdOucHash.hh:128
Definition XrdSysPthread.hh:165