bgpd: improve logging of invalid BGP Notifications

Invalid BGP Notification messages should be logged locally, cf.
RFC4271, Sect. 6.4, p 34,
  NOTIFICATION Message Error Handling

Current notification for invalid Notification code:

  2012/10/10 02:17:54 BGP: message index 10 not found in bgp_notify_msg (max is 8)
  2012/10/10 02:17:54 BGP: 192.168.1.1 received NOTIFICATION 10/0 ((no item found)) 0 bytes

the logging should be a bit more clear. The above logging really doesn't
explain much and looks more like a programming error.

[rewrote most of it to get in something I can call a shape -David]
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
diff --git a/lib/log.h b/lib/log.h
index 27f21b3..cf247a8 100644
--- a/lib/log.h
+++ b/lib/log.h
@@ -146,8 +146,9 @@
 /* Rotate log. */
 extern int zlog_rotate (struct zlog *);
 
-/* For hackey massage lookup and check */
-#define LOOKUP(x, y) mes_lookup(x, x ## _max, y, "(no item found)", #x)
+/* For hackey message lookup and check */
+#define LOOKUP_DEF(x, y, def) mes_lookup(x, x ## _max, y, def, #x)
+#define LOOKUP(x, y) LOOKUP_DEF(x, y, "(no item found)")
 
 extern const char *lookup (const struct message *, int);
 extern const char *mes_lookup (const struct message *meslist,