#include <limits.h>
#include <locale.h>
#include <netdb.h>
+#include <pwd.h>
#include <stdarg.h>
#include <stdio.h>
#include <stdlib.h>
return smprintf("%d", entropy);
}
+/* gid */
+char *
+gid(const char *null)
+{
+ gid_t gid;
+
+ if ((gid = getgid()) < 0) {
+ fprintf(stderr, "Could no get gid.");
+ return smprintf("n/a");
+ } else {
+ return smprintf("%d", gid);
+ }
+
+ return smprintf("n/a");
+}
+
/* hostname */
char *
hostname(const char *null)
return smprintf("%d°C", temperature / 1000);
}
+/* username */
+char *
+username(const char *null)
+{
+ register struct passwd *pw;
+ register uid_t uid;
+
+ /* get the values */
+ uid = geteuid ();
+ pw = getpwuid (uid);
+
+ /* if it worked, return */
+ if (pw) {
+ return smprintf("%s", pw->pw_name);
+ }
+ else {
+ fprintf(stderr, "Could not get username.\n");
+ return smprintf("n/a");
+ }
+
+ return smprintf("n/a");
+}
+
+/* uid */
+char *
+uid(const char *null)
+{
+ register uid_t uid;
+
+ /* get the values */
+ uid = geteuid ();
+
+ /* if it worked, return */
+ if (uid) {
+ return smprintf("%d", uid);
+ }
+ else {
+ fprintf(stderr, "Could not get uid.\n");
+ return smprintf("n/a");
+ }
+
+ return smprintf("n/a");
+}
+
+
/* alsa volume percentage */
char *
vol_perc(const char *soundcard)