summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Jakma <paul.jakma@sun.com>2006-05-28 08:18:38 +0000
committerPaul Jakma <paul.jakma@sun.com>2006-05-28 08:18:38 +0000
commita4b303038363185f60dfef7023cb02715a9a4315 (patch)
tree1eea12d93c580da94af435666428a7a02e67da8e
parentd09552d0c7d389f83c3833bf82f7a97da37007da (diff)
[lib] vty_log shouldn't crash if called when vty isn't initiliased
2006-05-28 Paul Jakma <paul.jakma@sun.com> * vty.c: (vty_log/vty_log_fixed) dont crash if called when vty hasn't been initiliased.
-rw-r--r--lib/ChangeLog2
-rw-r--r--lib/vty.c7
2 files changed, 9 insertions, 0 deletions
diff --git a/lib/ChangeLog b/lib/ChangeLog
index 08131b03..90ddd07e 100644
--- a/lib/ChangeLog
+++ b/lib/ChangeLog
@@ -5,6 +5,8 @@
Add UINT*_MAX defines for older platforms lacking these (FBSD 4)
* memory.c: malloc.h is deprecated in favour of stdlib.h, however
we still need it on GNU Libc for mallinfo().
+ * vty.c: (vty_log/vty_log_fixed) dont crash if called when vty
+ hasn't been initiliased.
2006-05-21 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
diff --git a/lib/vty.c b/lib/vty.c
index 7696915a..b037c70c 100644
--- a/lib/vty.c
+++ b/lib/vty.c
@@ -2404,6 +2404,9 @@ vty_log (const char *level, const char *proto_str,
{
unsigned int i;
struct vty *vty;
+
+ if (!vtyvec)
+ return;
for (i = 0; i < vector_active (vtyvec); i++)
if ((vty = vector_slot (vtyvec, i)) != NULL)
@@ -2423,6 +2426,10 @@ vty_log_fixed (const char *buf, size_t len)
unsigned int i;
struct iovec iov[2];
+ /* vty may not have been initialised */
+ if (!vtyvec)
+ return;
+
iov[0].iov_base = (void *)buf;
iov[0].iov_len = len;
iov[1].iov_base = (void *)"\r\n";