#ifndef lint
static const char rcsid[] =
- "@(#) $Header: /tcpdump/master/tcpdump/print-ospf.c,v 1.26 1999-10-30 05:11:19 itojun Exp $ (LBL)";
+ "@(#) $Header: /tcpdump/master/tcpdump/print-ospf.c,v 1.31 2001-06-28 04:34:51 fenner Exp $ (LBL)";
+#endif
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
#endif
#include <sys/param.h>
#include <sys/socket.h>
#include <netinet/in.h>
-#include <netinet/in_systm.h>
-#include <netinet/ip.h>
-#include <netinet/ip_var.h>
#include <ctype.h>
#include <stdio.h>
#include "ospf.h"
+#include "ip.h"
+
struct bits {
u_int32_t bit;
const char *str;
printf(" bdr %s",
ipaddr_string(&op->ospf_hello.hello_bdr));
if (vflag) {
- printf(" nbrs");
ap = op->ospf_hello.hello_neighbor;
+ if ((u_char *)ap < dataend)
+ printf(" nbrs");
while ((u_char *)ap < dataend) {
TCHECK(*ap);
printf(" %s", ipaddr_string(ap));
op = (struct ospfhdr *)bp;
ip = (struct ip *)bp2;
- /* Print the source and destination address */
-#if 0
- (void) printf("%s > %s:",
- ipaddr_string(&ip->ip_src),
- ipaddr_string(&ip->ip_dst));
-#endif
/* XXX Before we do anything else, strip off the MD5 trailer */
TCHECK(op->ospf_authtype);
/* value. If it's not valid, say so and return */
TCHECK(op->ospf_type);
cp = tok2str(type2str, "type%d", op->ospf_type);
- printf(" OSPFv%d-%s %d:", op->ospf_version, cp, length);
+ printf("OSPFv%d-%s %d:", op->ospf_version, cp, length);
if (*cp == 't')
return;