func isMemberOf()

in pam_linux.go [36:55]


func isMemberOf(groupName string) bool {
	if len(groupName) == 0 {
		return false
	}

	CgroupName := C.CString(groupName)
	if CgroupName == nil {
		pamLog("bad group name: %s", groupName)
		return false
	}
	defer C.free(unsafe.Pointer(CgroupName))

	groupEnt := C.getgrnam(CgroupName)
	if groupEnt == nil {
		pamLog("bad group: %s", groupName)
		return false
	}

	return C.group_member(C.int(groupEnt.gr_gid)) != 0
}