From: Quentin Young Date: Wed, 15 May 2019 22:42:41 +0000 (+0000) Subject: lib: use static storage for vty_cwd X-Git-Tag: base_7.2~293^2~2 X-Git-Url: https://git.puffer.fish/?a=commitdiff_plain;h=daeb97e980ab7e28caf11a15deccc1d36a08042b;p=matthieu%2Ffrr.git lib: use static storage for vty_cwd Why are we allocating this Signed-off-by: Quentin Young --- diff --git a/lib/vty.c b/lib/vty.c index 9bee7b6c83..2d97cca351 100644 --- a/lib/vty.c +++ b/lib/vty.c @@ -84,7 +84,7 @@ static char *vty_ipv6_accesslist_name = NULL; static vector Vvty_serv_thread; /* Current directory. */ -char *vty_cwd = NULL; +char vty_cwd[MAXPATHLEN]; /* Login password check. */ static int no_password_check = 0; @@ -3056,10 +3056,9 @@ void vty_reset(void) static void vty_save_cwd(void) { - char cwd[MAXPATHLEN]; char *c; - c = getcwd(cwd, MAXPATHLEN); + c = getcwd(vty_cwd, sizeof(vty_cwd)); if (!c) { /* @@ -3073,16 +3072,12 @@ static void vty_save_cwd(void) SYSCONFDIR, errno); exit(-1); } - if (getcwd(cwd, MAXPATHLEN) == NULL) { + if (getcwd(vty_cwd, sizeof(vty_cwd)) == NULL) { flog_err_sys(EC_LIB_SYSTEM_CALL, "Failure to getcwd, errno: %d", errno); exit(-1); } } - - size_t vty_cwd_sz = strlen(cwd) + 1; - vty_cwd = XMALLOC(MTYPE_TMP, vty_cwd_sz); - strlcpy(vty_cwd, cwd, vty_cwd_sz); } char *vty_get_cwd(void) @@ -3148,7 +3143,7 @@ void vty_init(struct thread_master *master_thread) void vty_terminate(void) { - XFREE(MTYPE_TMP, vty_cwd); + memset(vty_cwd, 0x00, sizeof(vty_cwd)); if (vtyvec && Vvty_serv_thread) { vty_reset();