summaryrefslogtreecommitdiff
path: root/src/auto-uid.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/auto-uid.c')
-rw-r--r--src/auto-uid.c48
1 files changed, 0 insertions, 48 deletions
diff --git a/src/auto-uid.c b/src/auto-uid.c
deleted file mode 100644
index 4eaaa2d..0000000
--- a/src/auto-uid.c
+++ /dev/null
@@ -1,48 +0,0 @@
-#include <pwd.h>
-#include <sys/types.h>
-#include <unistd.h>
-
-#include "buffer.h"
-#include "exit.h"
-#include "fmt.h"
-#include "scan.h"
-
-char inbuf[256];
-buffer b = BUFFER_INIT(write, 1, inbuf, sizeof(inbuf));
-
-void outs(char *s) /* was named puts, but Solaris pwd.h includes stdio.h. dorks. */
-{
- if (buffer_puts(&b, s) == -1) _exit(111);
-}
-
-int main(int argc, char **argv)
-{
- char *name;
- char *value;
- struct passwd *pw;
- char strnum[FMT_ULONG];
-
- name = argv[1];
- if (!name) _exit(100);
- value = argv[2];
- if (!value) _exit(100);
-
- pw = getpwnam(value);
- if (!pw) {
- buffer_puts(buffer_2, "fatal: unable to find user ");
- buffer_puts(buffer_2, value);
- buffer_puts(buffer_2, "\n");
- buffer_flush(buffer_2);
- _exit(111);
- }
-
- strnum[fmt_ulong(strnum, (unsigned long)pw->pw_uid)] = 0;
-
- outs("int ");
- outs(name);
- outs(" = ");
- outs(strnum);
- outs(";\n");
- if (buffer_flush(&b) == -1) _exit(111);
- _exit(0);
-}