]> diplodocus.org Git - nmh/blobdiff - config/config.c
Replace getcpy() with mh_xstrdup() where the string isn't NULL.
[nmh] / config / config.c
index 2b999f87ceb9559ff8adf69c3b4ad37cf69f9a06..e1c4e5b80676fc244ec5eb50e0084bd211522229 100644 (file)
@@ -8,12 +8,12 @@
  */
 
 #include <h/mh.h>
  */
 
 #include <h/mh.h>
-#include <stdio.h>
 #include <pwd.h>
 
 #define nmhbindir(file) NMHBINDIR#file
 #include <pwd.h>
 
 #define nmhbindir(file) NMHBINDIR#file
+#define nmhlibexecdir(file) NMHLIBEXECDIR#file
 #define nmhetcdir(file) NMHETCDIR#file
 #define nmhetcdir(file) NMHETCDIR#file
-#define nmhlibdir(file) NMHLIBDIR#file
+#define nmhdocdir(file) NMHDOCDIR#file
 
 
 /*
 
 
 /*
@@ -68,8 +68,13 @@ try_it:
 
        default: 
            /* Check nmh Mail directory */
 
        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;
                return cp;
+           } else {
+               free (cp);
+           }
     }
 
     /* Check nmh `etc' directory */
     }
 
     /* Check nmh `etc' directory */
@@ -98,6 +103,12 @@ char *mh_defaults = nmhetcdir (/mh.profile);
 /* default name of user profile */
 char *mh_profile = ".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";
 
 /* name of current message "sequence" */
 char *current = "cur";
 
@@ -133,8 +144,13 @@ char *nmhprivcache = "nmh-private-cache";
 /* profile entry for external ftp access command */
 char *nmhaccessftp = "nmh-access-ftp";
 
 /* 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 *mhetcdir = NMHETCDIR;
+char *mhdocdir = NMHDOCDIR;
 
 /* 
  * nmh not-so constants
 
 /* 
  * nmh not-so constants
@@ -146,15 +162,11 @@ char *mhetcdir = NMHETCDIR;
 char *context = "context";
 
 /*
 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";
 char *mh_seq = ".mh_sequences";
-#endif
 
 /* 
  * nmh globals
 
 /* 
  * nmh globals
@@ -233,14 +245,7 @@ char *moreproc = NULL;
  * for "Bcc:" recipients.
  */
 
  * 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.  
 
 /* 
  * This program is called to pack a folder.  
@@ -253,14 +258,14 @@ char *packproc = nmhbindir (/packf);
  * deliver mail to users.  This is the interface to the MTS.
  */
 
  * 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 `+'.
  */
 
 
 /*
  * 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.
 
 /* 
  * This program is called to remove a message by rmm or refile -nolink.
@@ -290,14 +295,7 @@ char *showmimeproc = nmhbindir (/mhshow);
  * that such message not be filtered in any way.
  */
 
  * 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
 
 /* 
  * This program is called after comp, et. al., have built a draft