diff options
-rw-r--r-- | lib/buffer.c | 2 | ||||
-rw-r--r-- | vtysh/vtysh_main.c | 5 |
2 files changed, 5 insertions, 2 deletions
diff --git a/lib/buffer.c b/lib/buffer.c index b689549e..ee931010 100644 --- a/lib/buffer.c +++ b/lib/buffer.c @@ -148,7 +148,7 @@ buffer_add (struct buffer *b) { struct buffer_data *d; - d = XMALLOC(MTYPE_BUFFER_DATA, offsetof(struct buffer_data, data[b->size])); + d = XMALLOC(MTYPE_BUFFER_DATA, offsetof(struct buffer_data, data) + b->size); d->cp = d->sp = 0; d->next = NULL; diff --git a/vtysh/vtysh_main.c b/vtysh/vtysh_main.c index 48958f0f..893c1a1c 100644 --- a/vtysh/vtysh_main.c +++ b/vtysh/vtysh_main.c @@ -202,9 +202,12 @@ static void log_it(const char *line) { time_t t = time(NULL); struct tm *tmp = localtime(&t); - char *user = getenv("USER") ? : "boot"; + const char *user = getenv("USER"); char tod[64]; + if (!user) + user = "boot"; + strftime(tod, sizeof tod, "%Y%m%d-%H:%M.%S", tmp); fprintf(logfile, "%s:%s %s\n", tod, user, line); |