Commit bf6d91dc authored by Ondrej Zajicek's avatar Ondrej Zajicek
Browse files

Use undefined scope for undefined IPv6 addresses.

parent 4116db18
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -27,9 +27,9 @@
char *
ip_scope_text(unsigned scope)
{
  static char *scope_table[] = { "host", "link", "site", "org", "univ" };
  static char *scope_table[] = { "host", "link", "site", "org", "univ", "undef" };

  if (scope > SCOPE_UNIVERSE)
  if (scope > SCOPE_UNDEFINED)
    return "?";
  else
    return scope_table[scope];
+1 −0
Original line number Diff line number Diff line
@@ -37,6 +37,7 @@
#define SCOPE_SITE 2
#define SCOPE_ORGANIZATION 3
#define SCOPE_UNIVERSE 4
#define SCOPE_UNDEFINED 5

char *ip_scope_text(unsigned);

+2 −1
Original line number Diff line number Diff line
@@ -85,6 +85,7 @@ ipv6_classify(ip_addr *a)
	case 5:  return IADDR_MULTICAST | SCOPE_SITE;
	case 8:  return IADDR_MULTICAST | SCOPE_ORGANIZATION;
	case 14: return IADDR_MULTICAST | SCOPE_UNIVERSE;
	default: return IADDR_MULTICAST | SCOPE_UNDEFINED;
	}
    }
  if (!x && !a->addr[1] && !a->addr[2])
@@ -102,7 +103,7 @@ ipv6_classify(ip_addr *a)
      if (y >= 0x01000000 && y < 0xe0000000)
	return IADDR_HOST | SCOPE_UNIVERSE;
    }
  return IADDR_INVALID;
  return IADDR_HOST | SCOPE_UNDEFINED;
}

void
+1 −1
Original line number Diff line number Diff line
@@ -49,7 +49,7 @@ CF_KEYWORDS(RELOAD, IN, OUT, MRTDUMP, MESSAGES, RESTRICT, MEMORY, IGP_METRIC)

CF_ENUM(T_ENUM_RTS, RTS_, DUMMY, STATIC, INHERIT, DEVICE, STATIC_DEVICE, REDIRECT,
	RIP, OSPF, OSPF_IA, OSPF_EXT1, OSPF_EXT2, BGP, PIPE)
CF_ENUM(T_ENUM_SCOPE, SCOPE_, HOST, LINK, SITE, ORGANIZATION, UNIVERSE)
CF_ENUM(T_ENUM_SCOPE, SCOPE_, HOST, LINK, SITE, ORGANIZATION, UNIVERSE, UNDEFINED)
CF_ENUM(T_ENUM_RTC, RTC_, UNICAST, BROADCAST, MULTICAST, ANYCAST)
CF_ENUM(T_ENUM_RTD, RTD_, ROUTER, DEVICE, BLACKHOLE, UNREACHABLE, PROHIBIT, MULTIPATH)