summaryrefslogtreecommitdiffstats
path: root/sqwebmail/sqwebpasswd.c
blob: b9599448e93aa320c4ae8690496c91db28cdea61 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#include "config.h"
/*
** Copyright 2000-2001 Double Precision, Inc.  See COPYING for
** distribution information.
*/

#include	"auth.h"
#include	<stdio.h>
#include	<stdlib.h>
#include	<string.h>
#if	HAVE_UNISTD_H
#include	<unistd.h>
#endif
#include	<fcntl.h>
#include        <unistd.h>
#include        <stdlib.h>
#include        <errno.h>
#include	<signal.h>


extern int authdaemondopasswd(char *, int);

int main()
{
	char buf[BUFSIZ];
	char *p;

	strcpy(buf,"PASSWD ");

	if (fgets(buf+7, sizeof(buf)-10, stdin) == NULL)
		exit(1);

	if ((p=strchr(buf, '\n')) != 0)
		*p=0;

	strcat(buf, "\n");
	signal(SIGPIPE, SIG_IGN);
	if (authdaemondopasswd(buf, sizeof(buf)))
	{
		sleep(5);
		exit(1);
	}
	exit(0);
	return (0);
}