summaryrefslogtreecommitdiffstats
path: root/util/userlist.c
diff options
context:
space:
mode:
Diffstat (limited to 'util/userlist.c')
-rw-r--r--util/userlist.c23
1 files changed, 20 insertions, 3 deletions
diff --git a/util/userlist.c b/util/userlist.c
index 3faf5364..12f6b3d9 100644
--- a/util/userlist.c
+++ b/util/userlist.c
@@ -20,11 +20,28 @@ int main(int argc, char **argv) {
perror("shmat");
exit(0);
}
-
- if(argc > 1) {
+
+ if(argc == 2) {
+ /* list specific id */
+ for (i = 0; i < USHM_SIZE; i++)
+ {
+ userinfo_t *f = &SHM->uinfo[i];
+ if(!f->pid)
+ continue;
+ if(strcmp(f->userid, argv[1]) != 0)
+ continue;
+ printf(
+ "id=%s money=%d\n",
+ f->userid, SHM->money[f->uid - 1]);
+ }
+ }
+ else if(argc > 1)
+ {
for(i = 1; i < argc; i++)
SHM->uinfo[atoi(argv[i])].pid = 0;
- } else {
+ }
+ else
+ {
for(i = counter = 0; i < USHM_SIZE; i++)
if(SHM->uinfo[i].pid) {
userinfo_t *f;