X-Git-Url: http://git.marmaro.de/?p=mmh;a=blobdiff_plain;f=config%2Fconfig.c;h=9add9e29e9c65f9c99a4effb33fb27d2aecb607d;hp=e282b257efa64760faef1a3c25e66351c0acafeb;hb=6c75e2f0f00732488aa03b967713d95037edd895;hpb=7a5e53498290dc876ee21feff9611c4640fabec4 diff --git a/config/config.c b/config/config.c index e282b25..9add9e2 100644 --- a/config/config.c +++ b/config/config.c @@ -7,91 +7,54 @@ */ #include -#include + /* -** Find the location of a format or configuration -** file, and return its absolute pathname. -** -** 1) If already absolute pathname, then leave unchanged. -** 2) Next, if it begins with ~user, then expand it. -** 3) Next, check in nmh Mail directory. -** 4) Next, check in nmh `etc' directory. +** nmh globals */ -char * -etcpath(char *file) -{ - static char epath[PATH_MAX]; - char *cp; - char *pp; - struct passwd *pw; - - context_read(); - if (*file == '~') { - /* Expand ~username */ - if ((cp = strchr(pp = file + 1, '/'))) - *cp++ = '\0'; - if (*pp == '\0') { - pp = mypath; - } else { - if ((pw = getpwnam(pp))) - pp = pw->pw_dir; - else { - if (cp) - *--cp = '/'; - goto try_it; - } - } - - snprintf(epath, sizeof epath, "%s/%s", pp, cp ? cp : ""); - if (cp) - *--cp = '/'; - - if (access(epath, R_OK) != NOTOK) - return epath; /* else fall */ - } - -try_it: - 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); - return (access(epath, R_OK) != NOTOK ? epath : file); -} +char *mhlibdir = NMHLIBDIR; +char *mhetcdir = NMHETCDIR; -/* -** Standard yes/no switches structure -*/ +char *invo_name; /* command invocation name */ +char *mypath; /* user's $HOME */ +char *mmhpath; /* pathname of user's mmh dir */ +char *defpath; /* pathname of user's profile */ +char *ctxpath; /* pathname of user's context */ +char ctxflags; /* status of user's context */ +struct node *m_defs; /* profile/context structure */ -struct swit anoyes[] = { - { "no", 0 }, - { "yes", 0 }, - { NULL, 0 } -}; /* ** nmh constants +** +** Important: Adjust uip/mmh.sh if you make changes here! */ -/* initial profile for new users */ -char *mh_defaults = NMHETCDIR"/mh.profile"; +/* default name of the mail storage */ +char *mailstore = "Mail"; + +/* default name of user profile */ +char *mmhdir = ".mmh"; /* default name of user profile */ -char *mh_profile = ".mh_profile"; +char *profile = "profile"; + +/* default name for the nmh context file */ +char *context = "context"; + +/* +** Default name of file for public sequences. Gets overridden +** by a `Mh-Sequences' entry in the user's profile. Set to NULL +** or the empty string to use private sequences by default. +*/ +char *mh_seq = ".mh_sequences"; /* name of current message "sequence" */ char *current = "cur"; + /* standard component files */ char *components = "components"; /* comp */ char *replcomps = "replcomps"; /* repl */ @@ -106,11 +69,11 @@ char *mhlformat = "mhl.format"; /* show */ char *mhlreply = "mhl.reply"; /* repl -filter */ char *mhlforward = "mhl.forward"; /* forw -filter */ -char *draftfolder = "+drafts"; - char *inbox = "Inbox"; char *defaultfolder = "+inbox"; +char *draftfolder = "+drafts"; + char *curfolder = "Current-Folder"; char *usequence = "Unseen-Sequence"; char *psequence = "Previous-Sequence"; @@ -124,39 +87,6 @@ char *nmhprivcache = "nmh-private-cache"; /* profile entry for external ftp access command */ char *nmhaccessftp = "nmh-access-ftp"; -char *mhlibdir = NMHLIBDIR; -char *mhetcdir = NMHETCDIR; - -/* -** nmh not-so constants -*/ - -/* -** Default name for the nmh context file. -*/ -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. -*/ -#ifdef NOPUBLICSEQ -char *mh_seq = NULL; -#else -char *mh_seq = ".mh_sequences"; -#endif - -/* -** nmh globals -*/ - -char ctxflags; /* status of user's context */ -char *invo_name; /* command invocation name */ -char *mypath; /* user's $HOME */ -char *defpath; /* pathname of user's profile */ -char *ctxpath; /* pathname of user's context */ -struct node *m_defs; /* profile/context structure */ /* ** nmh processes @@ -166,6 +96,7 @@ struct node *m_defs; /* profile/context structure */ ** This is the program to process MIME composition files */ char *buildmimeproc = NMHBINDIR"/mhbuild"; + /* ** This is the program to `cat' a file. */ @@ -302,16 +233,6 @@ char *defaulteditor = "vi"; 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"; - -/* -** File protections -*/ - -/* ** Folders (directories) are created with this protection (mode) */ char *foldprot = "700"; @@ -322,3 +243,15 @@ char *foldprot = "700"; ** to messages coming in through inc. */ char *msgprot = "600"; + + + +/* +** Standard yes/no switches structure +*/ +struct swit anoyes[] = { + { "no", 0 }, + { "yes", 0 }, + { NULL, 0 } +}; +