-/*
- * $Id$
- *
- * a setuid helper program for machines which use shadow passwords
- * by Nathan Bryant, March 1999
- *
- */
+//
+// a setuid helper program for machines which use shadow passwords
+// by Nathan Bryant, March 1999
+//
+// Copyright (c) 1987-2012 by the citadel.org team
+//
+// This program is open source software. Use, duplication, or disclosure
+// is subject to the terms of the GNU General Public License, version 3.
+// The program is distributed without any warranty, expressed or implied.
#include <pwd.h>
#include <stdio.h>
#include <unistd.h>
#include <sys/types.h>
+#include <libcitadel.h>
+
#include "auth.h"
#include "config.h"
#include "citadel_dirs.h"
char buf[SIZ];
while (1) {
- read(0, buf, 16); /* uid */
- uid = atoi(buf);
+ buf[0] = '\0';
+ read(0, &uid, sizeof(uid_t)); /* uid */
read(0, buf, 256); /* password */
+ if (buf[0] == '\0')
+ return (0);
if (validate_password(uid, buf)) {
write(1, "PASS", 4);
}