Xinqi Bao's Git

Implement fmt_human_2() and fmt_human_10()
[slstatus.git] / components / user.c
1 /* See LICENSE file for copyright and license details. */
2 #include <errno.h>
3 #include <pwd.h>
4 #include <stdio.h>
5 #include <string.h>
6 #include <sys/types.h>
7 #include <unistd.h>
8
9 #include "../util.h"
10
11 const char *
12 gid(void)
13 {
14 return bprintf("%d", getgid());
15 }
16
17 const char *
18 username(void)
19 {
20 struct passwd *pw;
21
22 if (!(pw = getpwuid(geteuid()))) {
23 warn("getpwuid '%d':", geteuid());
24 return NULL;
25 }
26
27 return bprintf("%s", pw->pw_name);
28 }
29
30 const char *
31 uid(void)
32 {
33 return bprintf("%d", geteuid());
34 }