summaryrefslogtreecommitdiffstats
path: root/proto/ospf
diff options
context:
space:
mode:
authorOndrej Zajicek <santiago@crfreenet.org>2010-03-29 19:29:03 +0200
committerOndrej Zajicek <santiago@crfreenet.org>2010-03-29 19:29:03 +0200
commit126683feeda03ffb5a4ce23611e59a4598382d49 (patch)
tree9aeb9632949113b218b485100a9e52e008e8c1b9 /proto/ospf
parenteb0f129fcedcecbee85403095abad8f59b82683c (diff)
downloadbird-126683feeda03ffb5a4ce23611e59a4598382d49.tar
bird-126683feeda03ffb5a4ce23611e59a4598382d49.zip
Filter language updates; new route attributes and datatype.
- Adds bgp_originator_id and bgp_cluster_list route attributes. - Adds dotted quad filter datatype (for router IDs, used by bgp_originator_id and ospf_router_id route attributes). - Fixes pair ~ pair set matching. - Documentation updates.
Diffstat (limited to 'proto/ospf')
-rw-r--r--proto/ospf/config.Y2
-rw-r--r--proto/ospf/ospf.c10
2 files changed, 6 insertions, 6 deletions
diff --git a/proto/ospf/config.Y b/proto/ospf/config.Y
index aeb8a0d..da7c97e 100644
--- a/proto/ospf/config.Y
+++ b/proto/ospf/config.Y
@@ -304,7 +304,7 @@ opttext:
CF_ADDTO(dynamic_attr, OSPF_METRIC1 { $$ = f_new_dynamic_attr(EAF_TYPE_INT | EAF_TEMP, T_INT, EA_OSPF_METRIC1); })
CF_ADDTO(dynamic_attr, OSPF_METRIC2 { $$ = f_new_dynamic_attr(EAF_TYPE_INT | EAF_TEMP, T_INT, EA_OSPF_METRIC2); })
CF_ADDTO(dynamic_attr, OSPF_TAG { $$ = f_new_dynamic_attr(EAF_TYPE_INT | EAF_TEMP, T_INT, EA_OSPF_TAG); })
-CF_ADDTO(dynamic_attr, OSPF_ROUTER_ID { $$ = f_new_dynamic_attr(EAF_TYPE_INT | EAF_TEMP, T_INT, EA_OSPF_ROUTER_ID); })
+CF_ADDTO(dynamic_attr, OSPF_ROUTER_ID { $$ = f_new_dynamic_attr(EAF_TYPE_ROUTER_ID | EAF_TEMP, T_QUAD, EA_OSPF_ROUTER_ID); })
CF_CLI(SHOW OSPF, optsym, [<name>], [[Show information about OSPF protocol]])
{ ospf_sh(proto_get_named($3, &proto_ospf)); };
diff --git a/proto/ospf/ospf.c b/proto/ospf/ospf.c
index d345e49..5ed8abb 100644
--- a/proto/ospf/ospf.c
+++ b/proto/ospf/ospf.c
@@ -333,7 +333,7 @@ ospf_build_attrs(ea_list * next, struct linpool *pool, u32 m1, u32 m2,
l->attrs[2].u.data = tag;
l->attrs[3].id = EA_OSPF_ROUTER_ID;
l->attrs[3].flags = 0;
- l->attrs[3].type = EAF_TYPE_INT | EAF_TEMP;
+ l->attrs[3].type = EAF_TYPE_ROUTER_ID | EAF_TEMP;
l->attrs[3].u.data = rid;
return l;
}
@@ -598,11 +598,11 @@ ospf_get_attr(eattr * a, byte * buf, int buflen UNUSED)
bsprintf(buf, "metric2");
return GA_NAME;
case EA_OSPF_TAG:
- bsprintf(buf, "tag: %08x (%u)", a->u.data, a->u.data);
- return GA_FULL;
- case EA_OSPF_ROUTER_ID:
- bsprintf(buf, "router_id: %R (%u)", a->u.data, a->u.data);
+ bsprintf(buf, "tag: 0x%08x", a->u.data);
return GA_FULL;
+ case EA_OSPF_ROUTER_ID:
+ bsprintf(buf, "router_id");
+ return GA_NAME;
default:
return GA_UNKNOWN;
}