X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/e6bb9ec43b332fd1a4b0faddbe3c9f2f2ee80dde..63621a81d16ab743de6b57d47578a9a2c670ad22:/config/config.c?ds=sidebyside diff --git a/config/config.c b/config/config.c index 72da2cd9..5b08db28 100644 --- a/config/config.c +++ b/config/config.c @@ -1,6 +1,4 @@ - -/* - * config.c -- master nmh configuration file +/* config.c -- master nmh configuration file * * This code is Copyright (c) 2002, by the authors of nmh. See the * COPYRIGHT file in the root directory of the nmh distribution for @@ -8,12 +6,12 @@ */ #include -#include +#include "sbr/m_maildir.h" #include #define nmhbindir(file) NMHBINDIR#file +#define nmhlibexecdir(file) NMHLIBEXECDIR#file #define nmhetcdir(file) NMHETCDIR#file -#define nmhlibdir(file) NMHLIBDIR#file /* @@ -58,18 +56,23 @@ etcpath (char *file) } } - snprintf (epath, sizeof(epath), "%s/%s", pp, cp ? cp : ""); + snprintf (epath, sizeof(epath), "%s/%s", pp, FENDNULL(cp)); if (cp) *--cp = '/'; if (access (epath, R_OK) != NOTOK) - return epath; /* else fall */ -try_it: + return epath; + /* FALLTHRU */ +try_it: default: /* Check nmh Mail directory */ - if (access ((cp = m_mailpath (file)), R_OK) != NOTOK) + if (access ((cp = m_mailpath (file)), R_OK) != NOTOK) { + /* Will leak because caller doesn't know cp was + dynamically allocated. */ return cp; + } + free (cp); } /* Check nmh `etc' directory */ @@ -83,9 +86,9 @@ try_it: */ struct swit anoyes[] = { - { "no", 0 }, - { "yes", 0 }, - { NULL, 0 } + { "no", 0, 0 }, + { "yes", 0, 1 }, + { NULL, 0, 0 } }; /* @@ -98,6 +101,12 @@ char *mh_defaults = nmhetcdir (/mh.profile); /* default name of user profile */ char *mh_profile = ".mh_profile"; +/* name of credentials file, defaults to .netrc in either Path or $HOME. */ +char *credentials_file; + +/* if set to 1, do not check permissions on credentials file */ +int credentials_no_perm_check = 0; + /* name of current message "sequence" */ char *current = "cur"; @@ -133,8 +142,13 @@ char *nmhprivcache = "nmh-private-cache"; /* profile entry for external ftp access command */ char *nmhaccessftp = "nmh-access-ftp"; -char *mhlibdir = NMHLIBDIR; +/* profile entry for external url access command */ +char *nmhaccessurl = "nmh-access-url"; + +char *mhbindir = NMHBINDIR; +char *mhlibexecdir = NMHLIBEXECDIR; char *mhetcdir = NMHETCDIR; +char *mhdocdir = NMHDOCDIR; /* * nmh not-so constants @@ -146,15 +160,11 @@ char *mhetcdir = NMHETCDIR; char *context = "context"; /* - * Default name of file for public sequences. If NULL, - * then nmh will use private sequences by default, unless the - * user defines a value using the "mh-sequences" profile entry. + * Default name of file for public sequences. If "\0" (an empty + * "mh-sequences" profile entry), then nmh will use private sequences by + * default. */ -#ifdef NOPUBLICSEQ -char *mh_seq = NULL; -#else char *mh_seq = ".mh_sequences"; -#endif /* * nmh globals @@ -201,13 +211,6 @@ char *formatproc = NULL; char *incproc = nmhbindir (/inc); -/* - * When a user runs an nmh program for the first time, this program - * is called to create his nmh profile, and mail directory. - */ - -char *installproc = nmhlibdir (/install-mh); - /* * This is the default program invoked by a "list" response * at the "What now?" prompt. It is also used by the draft @@ -240,14 +243,7 @@ char *moreproc = NULL; * for "Bcc:" recipients. */ -char *mhlproc = nmhlibdir (/mhl); - -/* - * This is the super handy BBoard reading program, which is - * really just the nmh shell program. - */ - -char *mshproc = nmhbindir (/msh); +char *mhlproc = nmhlibexecdir (/mhl); /* * This program is called to pack a folder. @@ -260,14 +256,14 @@ char *packproc = nmhbindir (/packf); * deliver mail to users. This is the interface to the MTS. */ -char *postproc = nmhlibdir (/post); +char *postproc = nmhlibexecdir (/post); /* * This is program is called by slocal to handle * the action `folder' or `+'. */ -char *rcvstoreproc = nmhlibdir (/rcvstore); +char *rcvstoreproc = nmhlibexecdir (/rcvstore); /* * This program is called to remove a message by rmm or refile -nolink. @@ -297,14 +293,7 @@ char *showmimeproc = nmhbindir (/mhshow); * that such message not be filtered in any way. */ -char *showproc = nmhlibdir (/mhl); - -/* - * This program is called by vmh as the back-end to the window management - * protocol - */ - -char *vmhproc = nmhbindir (/msh); +char *showproc = nmhlibexecdir (/mhl); /* * This program is called after comp, et. al., have built a draft @@ -318,14 +307,6 @@ char *whatnowproc = nmhbindir (/whatnow); char *whomproc = nmhbindir (/whom); -/* - * This is the editor invoked by the various message - * composition programs. It SHOULD be a full screen - * editor, such as vi or emacs, but any editor will work. - */ - -char *defaulteditor = DEFAULT_EDITOR; - /* * This is the global nmh alias file. It is somewhat obsolete, since * global aliases should be handled by the Mail Transport Agent (MTA). @@ -350,4 +331,3 @@ char *foldprot = "700"; */ char *msgprot = "600"; -