Flyttet noe kode inn i common.c
Nå kan man også se alle brukere som gruppene man er medlem i, har
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* @(#) $Header: /tmp/cvs/mysql-admutils/mysql-useradm.c,v 1.2 2002-02-27 08:49:48 knutpett Exp $
|
||||
* @(#) $Header: /tmp/cvs/mysql-admutils/mysql-useradm.c,v 1.3 2002-03-06 17:05:05 tlan Exp $
|
||||
*
|
||||
* mysql-useradm.c
|
||||
*
|
||||
@@ -169,9 +169,10 @@ show(MYSQL *pmysql, const char *user)
|
||||
char **
|
||||
list(MYSQL *pmysql)
|
||||
{
|
||||
char query[1024];
|
||||
char query[4096];
|
||||
char **usrgroups, **cp;
|
||||
MYSQL_RES *res;
|
||||
int rows;
|
||||
int rows, numgroups;
|
||||
MYSQL_ROW row;
|
||||
char **userlist;
|
||||
int i;
|
||||
@@ -181,6 +182,15 @@ list(MYSQL *pmysql)
|
||||
sprintf(query, "select user from user where user='%s' or user like '%s_%%'",
|
||||
p->pw_name, p->pw_name);
|
||||
|
||||
numgroups = 0;
|
||||
|
||||
usrgroups = get_group_names(&numgroups);
|
||||
cp = usrgroups;
|
||||
while (*cp) {
|
||||
sprintf(&query[strlen(query)], " or user='%s' or user like '%s_%%'", *cp, *cp);
|
||||
cp++;
|
||||
}
|
||||
|
||||
if (mysql_query(pmysql, query))
|
||||
{
|
||||
dberror(pmysql, "Failed to look up %s's users.", p->pw_name);
|
||||
|
||||
Reference in New Issue
Block a user