X-Git-Url: http://git.marmaro.de/?p=mmh;a=blobdiff_plain;f=uip%2Frcvtty.c;h=333a3b2fe737dd982b8b68ee6e15a6532e000a87;hp=d769b40a6e3e8a095bdbea74510e9d7a24915457;hb=2f689a1cb907a5de04e6d39ffd217a69af3216c7;hpb=7879ea4084333b448c5a3a49c1cb52023e3808d1 diff --git a/uip/rcvtty.c b/uip/rcvtty.c index d769b40..333a3b2 100644 --- a/uip/rcvtty.c +++ b/uip/rcvtty.c @@ -3,6 +3,10 @@ * 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. */ /* Changed to use getutent() and friends. Assumes that when getutent() exists, @@ -15,7 +19,7 @@ #include #include #include -#include +#include #include #include @@ -172,10 +176,14 @@ main (int argc, char **argv) #ifdef HAVE_GETUTENT setutent(); while ((utp = getutent()) != NULL) { - if (utp->ut_type == USER_PROCESS - && utp->ut_user[0] != 0 + if ( +#ifdef HAVE_STRUCT_UTMP_UT_TYPE + utp->ut_type == USER_PROCESS + && +#endif + utp->ut_name[0] != 0 && utp->ut_line[0] != 0 - && strncmp (user, utp->ut_user, sizeof(utp->ut_user)) == 0) { + && strncmp (user, utp->ut_name, sizeof(utp->ut_name)) == 0) { strncpy (tty, utp->ut_line, sizeof(utp->ut_line)); alert (tty, md); } @@ -279,12 +287,12 @@ static int 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);