in src/oslogin_utils.cc [1161:1190]
bool GetUsersForGroup(string groupname, std::vector<string>* users, int* errnop) {
string response;
long http_code;
string pageToken ("");
std::stringstream url;
do {
url.str("");
url << kMetadataServerUrl << "users?groupname=" << groupname;
if (pageToken != "")
url << "&pagetoken=" << pageToken;
response.clear();
http_code = 0;
if (!HttpGet(url.str(), &response, &http_code) || http_code != 200 ||
response.empty()) {
*errnop = EAGAIN;
return false;
}
if (!ParseJsonToKey(response, "nextPageToken", &pageToken)) {
*errnop = EINVAL;
return false;
}
if (!ParseJsonToUsers(response, users)) {
*errnop = EINVAL;
return false;
}
} while (pageToken != "0");
return true;
}