summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Jakma <paul.jakma@sun.com>2006-05-12 23:17:38 +0000
committerPaul Jakma <paul.jakma@sun.com>2006-05-12 23:17:38 +0000
commit9376c3421ae9ccc37e51ed742c5d0bed333f8d20 (patch)
treefdcaf6f4a896a0ba80b0b4fc83325e55f65897e2
parentae128056e9bb1b52e3b6c3263f5f7fd83efa5c3a (diff)
[lib] CID #3, fix forward-null errors in vty_prefix_list_uninstall
2006-05-12 Paul Jakma <paul.jakma@sun.com> * plist.c: (vty_prefix_list_uninstall) Fix potential NULL deref of prefix and typestr strings, Coverity CID #3.
-rw-r--r--lib/ChangeLog5
-rw-r--r--lib/plist.c7
2 files changed, 12 insertions, 0 deletions
diff --git a/lib/ChangeLog b/lib/ChangeLog
index 9e6dc852..64fa8518 100644
--- a/lib/ChangeLog
+++ b/lib/ChangeLog
@@ -1,3 +1,8 @@
+2006-05-12 Paul Jakma <paul.jakma@sun.com>
+
+ * plist.c: (vty_prefix_list_uninstall) Fix potential NULL deref
+ of prefix and typestr strings, Coverity CID #3.
+
2006-03-30 Paul Jakma <paul.jakma@sun.com>
* command.h: (DEFUN_CMD_FUNC_TEXT) Annotate arguments as
diff --git a/lib/plist.c b/lib/plist.c
index 83c5aa0c..6caece0e 100644
--- a/lib/plist.c
+++ b/lib/plist.c
@@ -804,6 +804,13 @@ vty_prefix_list_uninstall (struct vty *vty, afi_t afi, const char *name,
return CMD_SUCCESS;
}
+ /* We must have, at a minimum, both the type and prefix here */
+ if ((typestr == NULL) || (prefix == NULL))
+ {
+ vty_out (vty, "%% Both prefix and type required%s", VTY_NEWLINE);
+ return CMD_WARNING;
+ }
+
/* Check sequence number. */
if (seq)
seqnum = atoi (seq);