int delempty(mode_t mode, char *mailname) { char *del_empty = Xgetenv("DEL_EMPTY_MFILE"); size_t del_len; int do_del = 0; del_len = strlen(del_empty); /* "yes" means always remove the mailfile */ if (casncmp(del_empty, "yes", (ssize_t)del_len)) do_del = 1; /* "no" means never remove the mailfile */ else if (!casncmp(del_empty, "no", (ssize_t)del_len)) { /* check for mode 0660 */ if ((mode & 07777) == MFMODE) do_del = 1; } if (do_del) (void) unlink(mailname); return (do_del); }
/* * If in default display mode from printmail(), selectively output * header lines. Any recognized header lines will have flag stored in * header[] structure. Other header lines which should be displayed in * the default output mode will be listed in the seldisp[] array. * This can all be overridden via the 'P' command at the ? prompt. */ int sel_disp(int type, int hdrtype, char *s) { static char pn[] = "sel_disp"; register char *p; static int sav_lastrc = 0; int i, rc = 0; if (sending || Pflg || (type != TTY)) { return (0); } switch (hdrtype) { case H_CONT: rc = sav_lastrc; break; case H_NAMEVALUE: for (i=0,p=seldisp[i]; p; p=seldisp[++i]) { if (casncmp(s, p, strlen(p)) == 0) { break; } } if (p == (char *)NULL) { rc = -1; } break; default: if (header[hdrtype].default_display == FALSE) { rc = -1; break; } } Dout(pn, 2, "type = %d, hdrtype = %d/'%s', rc = %d\n", type, hdrtype, header[hdrtype].tag, rc); sav_lastrc = rc; /* In case next one is H_CONT... */ return (rc); }