diff options
Diffstat (limited to 'sqmail-4.3.07/src/auto-uid.c')
-rw-r--r-- | sqmail-4.3.07/src/auto-uid.c | 47 |
1 files changed, 0 insertions, 47 deletions
diff --git a/sqmail-4.3.07/src/auto-uid.c b/sqmail-4.3.07/src/auto-uid.c deleted file mode 100644 index 21f469b..0000000 --- a/sqmail-4.3.07/src/auto-uid.c +++ /dev/null @@ -1,47 +0,0 @@ -#include <unistd.h> -#include <sys/types.h> -#include <pwd.h> -#include "buffer.h" -#include "exit.h" -#include "scan.h" -#include "fmt.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); -} |