summaryrefslogtreecommitdiff
path: root/packages/google-compute-engine-oslogin/src/nss/nss_oslogin.cc
diff options
context:
space:
mode:
Diffstat (limited to 'packages/google-compute-engine-oslogin/src/nss/nss_oslogin.cc')
-rw-r--r--packages/google-compute-engine-oslogin/src/nss/nss_oslogin.cc5
1 files changed, 3 insertions, 2 deletions
diff --git a/packages/google-compute-engine-oslogin/src/nss/nss_oslogin.cc b/packages/google-compute-engine-oslogin/src/nss/nss_oslogin.cc
index f928dcf..2a34c83 100644
--- a/packages/google-compute-engine-oslogin/src/nss/nss_oslogin.cc
+++ b/packages/google-compute-engine-oslogin/src/nss/nss_oslogin.cc
@@ -25,6 +25,7 @@
#include <sys/types.h>
#include <syslog.h>
#include <unistd.h>
+#include <stdlib.h>
#include <iostream>
#include <sstream>
@@ -147,7 +148,7 @@ enum nss_status _nss_oslogin_initgroups_dyn(const char *user, gid_t skipgroup,
}
gid_t *groups = *groupsp;
- for (auto &group : grouplist) {
+ for (int i = 0; i < (int) grouplist.size(); i++) {
// Resize the buffer if needed.
if (*start == *size) {
gid_t *newgroups;
@@ -168,7 +169,7 @@ enum nss_status _nss_oslogin_initgroups_dyn(const char *user, gid_t skipgroup,
*groupsp = groups = newgroups;
*size = newsize;
}
- groups[(*start)++] = group.gid;
+ groups[(*start)++] = grouplist[i].gid;
}
return NSS_STATUS_SUCCESS;
}