Nobody ever did anything with the HOME argument at all. Passing in PW
might have been slightly valuable, but configuration is only retrieved
infrequently.
Besides, this is the start of a sequence of changes to how configuration
files are found.
/** @brief Save current login details */
static void login_save_config(void) {
/** @brief Save current login details */
static void login_save_config(void) {
- char *path = config_userconf(0, 0), *tmp;
+ char *path = config_userconf(), *tmp;
FILE *fp;
byte_xasprintf(&tmp, "%s.tmp", path);
FILE *fp;
byte_xasprintf(&tmp, "%s.tmp", path);
xfree(privconf);
#endif
/* if we have a password file, read it */
xfree(privconf);
#endif
/* if we have a password file, read it */
- if((privconf = config_userconf(0, pw))
+ if((privconf = config_userconf())
&& access(privconf, F_OK) == 0
&& config_include(c, privconf))
return -1;
&& access(privconf, F_OK) == 0
&& config_include(c, privconf))
return -1;
}
/** @brief Return the path to user's personal configuration file */
}
/** @brief Return the path to user's personal configuration file */
-char *config_userconf(const char *home, const struct passwd *pw) {
+char *config_userconf(void) {
char *s;
#if _WIN32
wchar_t *wpath = 0;
char *s;
#if _WIN32
wchar_t *wpath = 0;
CoTaskMemFree(wpath);
byte_xasprintf(&s, "%s\\DisOrder\\passwd", appdata);
#else
CoTaskMemFree(wpath);
byte_xasprintf(&s, "%s\\DisOrder\\passwd", appdata);
#else
- if(!home && !pw && !(pw = getpwuid(getuid())))
+ struct passwd *pw;
+ if(!(pw = getpwuid(getuid())))
disorder_fatal(0, "cannot determine our username");
disorder_fatal(0, "cannot determine our username");
- byte_xasprintf(&s, "%s/.disorder/passwd", home ? home : pw->pw_dir);
+ byte_xasprintf(&s, "%s/.disorder/passwd", pw->pw_dir);
-char *config_userconf(const char *home, const struct passwd *pw);
-/* get the user's own private conffile, assuming their home dir is
- * @home@ if not null and using @pw@ otherwise */
+char *config_userconf(void);
+/* get the user's own private conffile */
char *config_usersysconf(const struct passwd *pw );
/* get the user's conffile in /etc */
char *config_usersysconf(const struct passwd *pw );
/* get the user's conffile in /etc */