X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/c703902741e0f7ce55f87e48ef0d00901195f1bc..7d81fd0ae7fc14189d7758c78a5168921c7ef11b:/config/config.c diff --git a/config/config.c b/config/config.c index 02265c0a..c44f1396 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,13 @@ */ #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 +#define nmhdocdir(file) NMHDOCDIR#file /* @@ -58,18 +57,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 */ @@ -98,6 +102,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 +143,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 +161,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 +212,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 +244,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 +257,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 +294,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 @@ -342,4 +332,3 @@ char *foldprot = "700"; */ char *msgprot = "600"; -