-/*
- *
- */
+//
+// Copyright (c) 1987-2021 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 <errno.h>
#include <stdlib.h>
static int validpw(uid_t uid, const char *pass)
{
char buf[256];
+ int rv;
- write(chkpwd_write_pipe[1], &uid, sizeof(uid_t));
- write(chkpwd_write_pipe[1], pass, 256);
- read(chkpwd_read_pipe[0], buf, 4);
+ rv = write(chkpwd_write_pipe[1], &uid, sizeof(uid_t));
+ if (rv == -1) {
+ printf( "Communicatino with chkpwd broken: %s\n", strerror(errno));
+ return 0;
+ }
+ rv = write(chkpwd_write_pipe[1], pass, 256);
+ if (rv == -1) {
+ printf( "Communicatino with chkpwd broken: %s\n", strerror(errno));
+ return 0;
+ }
+ rv = read(chkpwd_read_pipe[0], buf, 4);
+ if (rv == -1) {
+ printf( "Communicatino with chkpwd broken: %s\n", strerror(errno));
+ return 0;
+ }
if (!strncmp(buf, "PASS", 4)) {
printf("pass\n");
return(1);
int uid;
char ctdldir[PATH_MAX]=CTDLDIR;
- calc_dirs_n_files(0,0,"", ctdldir, 0);
-
printf("\n\n ** host auth mode test utility **\n\n");
start_chkpwd_daemon();