/*
* slocal.c -- asynchronously filter and deliver new mail
*
- * $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.
/* deliver the message */
status = localmail (fd, mdlvr);
- return done (status != -1 ? RCV_MOK : RCV_MBX);
+ done (status != -1 ? RCV_MOK : RCV_MBX);
+ return 1;
}
split (char *cp, char **vec)
{
int i;
- char *s;
+ unsigned char *s;
s = cp;
while ((utp = getutent()) != NULL) {
if (
-#ifdef HAVE_UTMP_UT_TYPE
+#ifdef HAVE_STRUCT_UTMP_UT_TYPE
utp->ut_type == USER_PROCESS
&&
#endif
}
/* close and unlock file */
- mbx_close (mailbox, md);
+ if (mbx_close (mailbox, md) == NOTOK) {
+ if (verbose)
+ adorn ("", "error closing:");
+ return -1;
+ }
if (verbose)
verbose_printf (", success.\n");
get_sender (char *envelope, char **sender)
{
int i;
- char *cp;
- char buffer[BUFSIZ];
+ unsigned char *cp;
+ unsigned char buffer[BUFSIZ];
if (envelope == NULL) {
*sender = getcpy ("");
int i, first = 1, fd1, fd2;
char buffer[BUFSIZ];
FILE *qfp, *ffp;
+ char *tfile = NULL;
- strcpy (tmpfil, m_tmpfil (invo_name));
-
- /* open temporary file to put message in */
- if ((fd1 = open (tmpfil, O_RDWR | O_CREAT | O_TRUNC, 0600)) == -1)
- return -1;
+ tfile = m_mktemp2(NULL, invo_name, &fd1, NULL);
+ if (tfile == NULL) return -1;
+ fchmod(fd1, 0600);
+ strncpy (tmpfil, tfile, BUFSIZ);
if (!fold) {
while ((i = read (qd, buffer, sizeof(buffer))) > 0)
/* return path for UUCP style addressing */
ep = strchr(++hp, '\n');
snprintf (buffer, sizeof(buffer), "Return-Path: %.*s!%.*s\n",
- ep - hp, hp, cp - fp, fp);
+ (int)(ep - hp), hp, (int)(cp - fp), fp);
} else {
/* return path for standard domain addressing */
snprintf (buffer, sizeof(buffer), "Return-Path: %.*s\n",
- cp - fp, fp);
+ (int)(cp - fp), fp);
}
/* Add Return-Path header to message */
trim (char *cp)
{
char buffer[BUFSIZ*4];
- char *bp, *sp;
+ unsigned char *bp, *sp;
if (cp == NULL)
return NULL;