#include <pwd.h>
#include <setjmp.h>
-#include <signal.h>
#include <h/msh.h>
#include <h/vmhsbr.h>
char *cp, *file = NULL, *folder = NULL;
char **argp, **arguments, buf[BUFSIZ];
-#ifdef LOCALE
- setlocale(LC_ALL, "");
-#endif
- invo_name = r1bindex (argv[0], '/');
-
- /* read user profile/context */
- context_read();
+ if (nmh_init(argv[0], 1)) { return 1; }
mts_init (invo_name);
arguments = getarguments (invo_name, argc,argv, 1);
padios (maildir, "unable to change directory to");
/* read folder and create message structure */
- if (!(mp = folder_read (folder)))
+ if (!(mp = folder_read (folder, 0)))
padios (NULL, "unable to read folder %s", folder);
/* check for empty folder */
}
m_init ();
- mp->msgattrs[0] = getcpy ("unseen");
- mp->msgattrs[1] = NULL;
+ svector_push_back (mp->msgattrs, getcpy ("unseen"));
scan_detect_mbox_style (fp); /* the MAGIC invocation */
if (fmsh) {
low = mp->hghmsg + 1;
folder_free (mp); /* free folder/message structure */
- if (!(mp = folder_read (fmsh)))
+ if (!(mp = folder_read (fmsh, 0)))
padios (NULL, "unable to re-read folder %s", fmsh);
hgh = mp->hghmsg;
switch (state = m_getfld (&gstate, name, buf, &bufsz, zp)) {
case FLD:
case FLDPLUS:
- if (!mh_strcasecmp (name, BBoard_ID)) {
+ if (!strcasecmp (name, BBoard_ID)) {
bp = getcpy (buf);
while (state == FLDPLUS) {
bufsz = sizeof buf;
if (vmh)
ttyNaux (NULLCMD, "FAST");
cp = NULL;
- if ((dp = lkfopen (mp->foldpath, "r")) == NULL) {
+ if ((dp = lkfopendata (mp->foldpath, "r")) == NULL) {
advise (mp->foldpath, "unable to lock");
if (vmh) {
ttyR (NULLCMD);
close (i);
else
advise (mp->foldpath, "error zero'ing");
- unlink (map_name (mp->foldpath));/* XXX */
+ (void) m_unlink (map_name (mp->foldpath));/* XXX */
}
goto release;
}
for (msgnum = mp->lowmsg; msgnum <= mp->hghmsg; msgnum++)
if (does_exist(mp, msgnum) && pack (tmpfil, md, msgnum) == NOTOK) {
mbx_close (tmpfil, md);
- unlink (tmpfil);
- unlink (map_name (tmpfil));
+ (void) m_unlink (tmpfil);
+ (void) m_unlink (map_name (tmpfil));
goto release;
}
mbx_close (tmpfil, md);
if (rename (map1, map2) == NOTOK) {
admonish (map2, "unable to rename %s to", map1);
- unlink (map1);
- unlink (map2);
+ (void) m_unlink (map1);
+ (void) m_unlink (map2);
}
}
release: ;
if (cp)
free (cp);
- lkfclose (dp, mp->foldpath);
+ lkfclosedata (dp, mp->foldpath);
if (vmh) {
ttyR (NULLCMD);
pFIN ();