kf = para_strdup(CLIENT_OPT_STRING_VAL(KEY_FILE, lpr));
else {
struct stat statbuf;
- const char *home = get_homedir();
- kf = make_message("%s/.paraslash/key.%s", home, user);
+ const char *confdir = get_confdir();
+ kf = make_message("%s/key.%s", confdir, user);
if (stat(kf, &statbuf) != 0) { /* assume file does not exist */
+ const char *home = getenv("HOME");
+ if (!home || !*home) {
+ ret = -ERRNO_TO_PARA_ERROR(EINVAL);
+ errctx = make_message("HOME unset or empty");
+ goto out;
+ }
free(kf);
kf = make_message("%s/.ssh/id_rsa", home);
}