summaryrefslogtreecommitdiff
path: root/servconf.c
diff options
context:
space:
mode:
Diffstat (limited to 'servconf.c')
-rw-r--r--servconf.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/servconf.c b/servconf.c
index fa442bcea..7d027ddb9 100644
--- a/servconf.c
+++ b/servconf.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: servconf.c,v 1.206 2010/03/12 11:37:40 markus Exp $ */ 1/* $OpenBSD: servconf.c,v 1.207 2010/03/25 23:38:28 djm Exp $ */
2/* 2/*
3 * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland 3 * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
4 * All rights reserved 4 * All rights reserved
@@ -470,15 +470,14 @@ parse_token(const char *cp, const char *filename,
470char * 470char *
471derelativise_path(const char *path) 471derelativise_path(const char *path)
472{ 472{
473 char *expanded, *ret, *cwd; 473 char *expanded, *ret, cwd[MAXPATHLEN];
474 474
475 expanded = tilde_expand_filename(path, getuid()); 475 expanded = tilde_expand_filename(path, getuid());
476 if (*expanded == '/') 476 if (*expanded == '/')
477 return expanded; 477 return expanded;
478 if ((cwd = getcwd(NULL, 0)) == NULL) 478 if (getcwd(cwd, sizeof(cwd)) == NULL)
479 fatal("%s: getcwd: %s", __func__, strerror(errno)); 479 fatal("%s: getcwd: %s", __func__, strerror(errno));
480 xasprintf(&ret, "%s/%s", cwd, expanded); 480 xasprintf(&ret, "%s/%s", cwd, expanded);
481 free(cwd);
482 xfree(expanded); 481 xfree(expanded);
483 return ret; 482 return ret;
484} 483}