Return Type | Function name | Arguments |
---|---|---|
hzEcode | hzGroupinfo::Load | (void) |
Declared in file: hzUnixacc.h
Defined in file : hzUnixacc.cpp
Function Logic:
Function body:
hzEcode hzGroupinfo::Load (void) { _hzfunc("hzGroupinfo::Load") ; std::ifstream is ; hzGroupinfo* pGI ; char* i ; char* cpGroupname ; char* cpGroupID ; char cvLine[256]; is.open("/etc/group") ; if (is.fail()) { hzerr(E_OPENFAIL, "Could not open group file") ; return E_OPENFAIL ; } for (;;) { is.getline(cvLine, 256); if (!is.gcount()) break ; pGI = new hzGroupinfo() ; if (!pGI) hzexit(E_MEMORY, "No memory for system user DB") ; i = cvLine ; for (cpGroupname = i ; *i && *i != '':'';i++) ; *i++ = 0; for (cpGroupID = i ; *i && *i != '':'';i++) ; *i++ = 0; pGI->m_Groupname = cpGroupname ; pGI->m_nGroupID = atoi(cpGroupID) ; _hzGlobal_Grouplist.Insert(pGI->m_Groupname, pGI) ; } is.close() ; return E_OK ; }