From 4a5f0d325b723dcfdcc540f83ae8a3c08a589d7e Mon Sep 17 00:00:00 2001 From: Damien Miller Date: Mon, 22 Mar 2010 05:53:04 +1100 Subject: - markus@cvs.openbsd.org 2010/03/12 11:37:40 [servconf.c] do not prepend AuthorizedKeysFile with getcwd(), unbreaks relative paths free() (not xfree()) the buffer returned by getcwd() --- ChangeLog | 4 ++++ servconf.c | 6 +++--- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index 3112f6457..95c87ba26 100644 --- a/ChangeLog +++ b/ChangeLog @@ -15,6 +15,10 @@ [servconf.c] unbreak AuthorizedKeys option with a $HOME-relative path; reported by vinschen AT redhat.com, ok dtucker@ + - markus@cvs.openbsd.org 2010/03/12 11:37:40 + [servconf.c] + do not prepend AuthorizedKeysFile with getcwd(), unbreaks relative paths + free() (not xfree()) the buffer returned by getcwd() 20100314 - (djm) [ssh-pkcs11-helper.c] Move #ifdef to after #defines to fix diff --git a/servconf.c b/servconf.c index e09e0f1c8..fa442bcea 100644 --- a/servconf.c +++ b/servconf.c @@ -1,4 +1,4 @@ -/* $OpenBSD: servconf.c,v 1.205 2010/03/12 01:06:25 djm Exp $ */ +/* $OpenBSD: servconf.c,v 1.206 2010/03/12 11:37:40 markus Exp $ */ /* * Copyright (c) 1995 Tatu Ylonen , Espoo, Finland * All rights reserved @@ -478,7 +478,7 @@ derelativise_path(const char *path) if ((cwd = getcwd(NULL, 0)) == NULL) fatal("%s: getcwd: %s", __func__, strerror(errno)); xasprintf(&ret, "%s/%s", cwd, expanded); - xfree(cwd); + free(cwd); xfree(expanded); return ret; } @@ -1228,7 +1228,7 @@ process_server_config_line(ServerOptions *options, char *line, fatal("%s line %d: missing file name.", filename, linenum); if (*activep && *charptr == NULL) { - *charptr = derelativise_path(arg); + *charptr = tilde_expand_filename(arg, getuid()); /* increase optional counter */ if (intptr != NULL) *intptr = *intptr + 1; -- cgit v1.2.3