mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-08-14 10:37:29 +00:00
lib: use static storage for vty_cwd
Why are we allocating this Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
This commit is contained in:
parent
6e0b62b428
commit
daeb97e980
13
lib/vty.c
13
lib/vty.c
@ -84,7 +84,7 @@ static char *vty_ipv6_accesslist_name = NULL;
|
|||||||
static vector Vvty_serv_thread;
|
static vector Vvty_serv_thread;
|
||||||
|
|
||||||
/* Current directory. */
|
/* Current directory. */
|
||||||
char *vty_cwd = NULL;
|
char vty_cwd[MAXPATHLEN];
|
||||||
|
|
||||||
/* Login password check. */
|
/* Login password check. */
|
||||||
static int no_password_check = 0;
|
static int no_password_check = 0;
|
||||||
@ -3056,10 +3056,9 @@ void vty_reset(void)
|
|||||||
|
|
||||||
static void vty_save_cwd(void)
|
static void vty_save_cwd(void)
|
||||||
{
|
{
|
||||||
char cwd[MAXPATHLEN];
|
|
||||||
char *c;
|
char *c;
|
||||||
|
|
||||||
c = getcwd(cwd, MAXPATHLEN);
|
c = getcwd(vty_cwd, sizeof(vty_cwd));
|
||||||
|
|
||||||
if (!c) {
|
if (!c) {
|
||||||
/*
|
/*
|
||||||
@ -3073,16 +3072,12 @@ static void vty_save_cwd(void)
|
|||||||
SYSCONFDIR, errno);
|
SYSCONFDIR, errno);
|
||||||
exit(-1);
|
exit(-1);
|
||||||
}
|
}
|
||||||
if (getcwd(cwd, MAXPATHLEN) == NULL) {
|
if (getcwd(vty_cwd, sizeof(vty_cwd)) == NULL) {
|
||||||
flog_err_sys(EC_LIB_SYSTEM_CALL,
|
flog_err_sys(EC_LIB_SYSTEM_CALL,
|
||||||
"Failure to getcwd, errno: %d", errno);
|
"Failure to getcwd, errno: %d", errno);
|
||||||
exit(-1);
|
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)
|
char *vty_get_cwd(void)
|
||||||
@ -3148,7 +3143,7 @@ void vty_init(struct thread_master *master_thread)
|
|||||||
|
|
||||||
void vty_terminate(void)
|
void vty_terminate(void)
|
||||||
{
|
{
|
||||||
XFREE(MTYPE_TMP, vty_cwd);
|
memset(vty_cwd, 0x00, sizeof(vty_cwd));
|
||||||
|
|
||||||
if (vtyvec && Vvty_serv_thread) {
|
if (vtyvec && Vvty_serv_thread) {
|
||||||
vty_reset();
|
vty_reset();
|
||||||
|
Loading…
Reference in New Issue
Block a user