X-Git-Url: http://git.marmaro.de/?p=mmh;a=blobdiff_plain;f=config%2Fconfig.c;h=cc1212849dad1c1c7edd9d27dc54f7d423f77bb3;hp=d72cd917904cb32b41cc048e1639f8ccff982078;hb=d39e2c447b0d163a5a63f480b23d06edb7a73aa0;hpb=ced6090a330d3d83d0bce709f756aa3d7d65fea4 diff --git a/config/config.c b/config/config.c index d72cd91..cc12128 100644 --- a/config/config.c +++ b/config/config.c @@ -12,10 +12,6 @@ # include #endif -#define nmhbindir(file) NMHBINDIR#file -#define nmhetcdir(file) NMHETCDIR#file -#define nmhlibdir(file) NMHLIBDIR#file - /* ** Find the location of a format or configuration @@ -35,19 +31,9 @@ etcpath (char *file) #ifdef MHRC char *pp; struct passwd *pw; -#endif -#ifdef MHRC context_read(); -#endif - - switch (*file) { - case '/': - /* If already absolute pathname, return it */ - return file; - -#ifdef MHRC - case '~': + if (*file == '~') { /* Expand ~username */ if ((cp = strchr(pp = file + 1, '/'))) *cp++ = '\0'; @@ -69,17 +55,22 @@ etcpath (char *file) if (access (epath, R_OK) != NOTOK) return epath; /* else fall */ + } try_it: #endif /* MHRC */ - default: - /* Check nmh Mail directory */ - if (access ((cp = m_mailpath (file)), R_OK) != NOTOK) - return cp; + if (*file == '/') { + /* If already absolute pathname, return it */ + return file; } + /* Check nmh Mail directory */ + strncpy(epath, toabsdir(file), sizeof epath); + if (access (epath, R_OK) != NOTOK) + return epath; + /* Check nmh `etc' directory */ - snprintf (epath, sizeof(epath), nmhetcdir(/%s), file); + snprintf (epath, sizeof(epath), NMHETCDIR"/%s", file); return (access (epath, R_OK) != NOTOK ? epath : file); } @@ -99,7 +90,7 @@ struct swit anoyes[] = { */ /* initial profile for new users */ -char *mh_defaults = nmhetcdir (/mh.profile); +char *mh_defaults = NMHETCDIR"/mh.profile"; /* default name of user profile */ char *mh_profile = ".mh_profile"; @@ -121,10 +112,10 @@ char *mhlformat = "mhl.format"; /* show */ char *mhlreply = "mhl.reply"; /* repl -filter */ char *mhlforward = "mhl.forward"; /* forw -filter */ -char *draftfolder = "drafts"; +char *draftfolder = "+drafts"; char *inbox = "Inbox"; -char *defaultfolder = "inbox"; +char *defaultfolder = "+inbox"; char *pfolder = "Current-Folder"; char *usequence = "Unseen-Sequence"; @@ -180,7 +171,7 @@ struct node *m_defs; /* profile/context structure */ /* ** This is the program to process MIME composition files */ -char *buildmimeproc = nmhbindir (/mhbuild); +char *buildmimeproc = NMHBINDIR"/mhbuild"; /* ** This is the program to `cat' a file. */ @@ -196,18 +187,18 @@ char *faceproc = NULL; ** also invoked by the spost program to process an "Fcc", or by ** comp/repl/forw/dist to refile a draft message. */ -char *fileproc = nmhbindir (/refile); +char *fileproc = NMHBINDIR"/refile"; /* ** This program is called to incorporate messages into a folder. */ -char *incproc = nmhbindir (/inc); +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); +char *installproc = NMHLIBDIR"/install-mh"; /* ** This is the default program invoked by a "list" response @@ -220,7 +211,7 @@ char *lproc = "more"; /* ** This is the path for the Bell equivalent mail program. */ -char *mailproc = nmhbindir (/mhmail); +char *mailproc = NMHBINDIR"/mhmail"; /* ** This is used by mhl as a front-end. It is also used @@ -237,29 +228,29 @@ char *moreproc = "more"; ** It is used by send/spost (with -filter) to filter the message ** for "Bcc:" recipients. */ -char *mhlproc = nmhlibdir (/mhl); +char *mhlproc = NMHLIBDIR"/mhl"; /* ** This program is called to pack a folder. */ -char *packproc = nmhbindir (/packf); +char *packproc = NMHBINDIR"/packf"; /* ** This is the delivery program called by send to actually ** deliver mail to users. This is the interface to the MTS. */ -char *postproc = nmhlibdir (/spost); +char *postproc = NMHLIBDIR"/spost"; /* ** This is program is called by slocal to handle ** the action `folder' or `+'. */ -char *rcvstoreproc = nmhlibdir (/rcvstore); +char *rcvstoreproc = NMHLIBDIR"/rcvstore"; /* ** This program is called to remove a folder. */ -char *rmfproc = nmhbindir (/rmf); +char *rmfproc = NMHBINDIR"/rmf"; /* ** This program is called to remove a message by rmm or refile -nolink. @@ -271,13 +262,13 @@ char *rmmproc = NULL; ** This program is usually called by the user's whatnowproc, but it ** may also be called directly to send a message previously composed. */ -char *sendproc = nmhbindir (/send); +char *sendproc = NMHBINDIR"/send"; /* ** This is the path to the program used by "show" ** to display non-text (MIME) messages. */ -char *showmimeproc = nmhbindir (/mhshow); +char *showmimeproc = NMHBINDIR"/mhshow"; /* ** This is the default program called by "show" to filter @@ -285,12 +276,12 @@ char *showmimeproc = nmhbindir (/mhshow); ** changed to a pager (such as "more" or "less") if you prefer ** that such message not be filtered in any way. */ -char *showproc = nmhlibdir (/mhl); +char *showproc = NMHLIBDIR"/mhl"; /* ** This program is called after comp, et. al., have built a draft */ -char *whatnowproc = nmhbindir (/whatnow); +char *whatnowproc = NMHBINDIR"/whatnow"; /* ** This is the sendmail interface to use for sending mail. @@ -320,7 +311,7 @@ char *altmsglink = "@"; ** This is the global nmh alias file. It is somewhat obsolete, since ** global aliases should be handled by the Mail Transport Agent (MTA). */ -char *AliasFile = nmhetcdir (/MailAliases); +char *AliasFile = NMHETCDIR"/MailAliases"; /* ** File protections