On platforms without decent group support, the build failed:
Cannot export virGetGroupList: symbol not defined
./.libs/libvirt_security_manager.a(libvirt_security_manager_la-security_dac.o): In
function `virSecurityDACPreFork':
/home/eblake/libvirt-tmp/build/src/../../src/security/security_dac.c:248: undefined
reference to `virGetGroupList'
collect2: error: ld returned 1 exit status
* src/util/virutil.c (virGetGroupList): Provide dummy implementation.
Signed-off-by: Eric Blake <eblake(a)redhat.com>
---
src/util/virutil.c | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/src/util/virutil.c b/src/util/virutil.c
index c6c817f..adcdb3c 100644
--- a/src/util/virutil.c
+++ b/src/util/virutil.c
@@ -1036,6 +1036,14 @@ virSetUIDGID(uid_t uid, gid_t gid, gid_t *groups ATTRIBUTE_UNUSED,
#else /* ! HAVE_GETPWUID_R */
+int
+virGetGroupList(uid_t uid ATTRIBUTE_UNUSED, gid_t gid ATTRIBUTE_UNUSED,
+ gid_t **list)
+{
+ *list = NULL;
+ return 0;
+}
+
# ifdef WIN32
/* These methods are adapted from GLib2 under terms of LGPLv2+ */
static int
@@ -1166,6 +1174,7 @@ virGetUserRuntimeDirectory(void)
{
return virGetUserCacheDirectory();
}
+
# else /* !HAVE_GETPWUID_R && !WIN32 */
char *
virGetUserDirectory(void)
--
1.8.3.1