/*
* rcvtty.c -- a rcvmail program (a lot like rcvalert) handling IPC ttys
*
- * $Id$
- *
* This code is Copyright (c) 2002, by the authors of nmh. See the
* COPYRIGHT file in the root directory of the nmh distribution for
* complete copyright information.
char tmpfil[BUFSIZ];
struct stat st;
-#ifdef HAVE_MKSTEMP
fd = mkstemp (strncpy (tmpfil, "/tmp/rcvttyXXXXX", sizeof(tmpfil)));
-#else
- unlink (mktemp (strncpy (tmpfil, "/tmp/rcvttyXXXXX", sizeof(tmpfil))));
- if ((fd = open (tmpfil, O_RDWR | O_CREAT | O_TRUNC, 0600)) == NOTOK)
- return header_fd ();
-#endif
unlink (tmpfil);
if ((child_id = vfork()) == NOTOK) {
* Ruthlessly kill the child and anything
* else in its process group.
*/
- KILLPG(child_id, SIGKILL);
+ killpg(child_id, SIGKILL);
}
close (fd);
return header_fd ();
header_fd (void)
{
int fd;
- char *nfs, tmpfil[BUFSIZ];
+ char *nfs;
+ char *tfile = NULL;
- strncpy (tmpfil, m_tmpfil (invo_name), sizeof(tmpfil));
- if ((fd = open (tmpfil, O_RDWR | O_CREAT | O_TRUNC, 0600)) == NOTOK)
- return NOTOK;
- unlink (tmpfil);
+ tfile = m_mktemp2(NULL, invo_name, &fd, NULL);
+ if (tfile == NULL) return NOTOK;
+ unlink (tfile);
rewind (stdin);