/* Route map apply. */
if (rmap) {
+ memset(&info, 0, sizeof(struct bgp_info));
/* Duplicate current value to new strucutre for modification. */
info.peer = peer;
info.attr = attr;
if (rmap == NULL)
return RMAP_DENY;
+ memset(&info, 0, sizeof(struct bgp_info));
/* Route map apply. */
/* Duplicate current value to new strucutre for modification. */
info.peer = peer;
struct bgp_info_extra dummy_info_extra;
struct attr dummy_attr;
+ memset(&info, 0, sizeof(struct bgp_info));
info.peer = peer;
info.attr = attr;
/* Apply route-map. */
if (bgp_static->rmap.name) {
struct attr attr_tmp = attr;
+
+ memset(&info, 0, sizeof(struct bgp_info));
info.peer = bgp->peer_self;
info.attr = &attr_tmp;
/* Apply route-map. */
if (red->rmap.name) {
+ memset(&info, 0, sizeof(struct bgp_info));
info.peer = bgp->peer_self;
info.attr = &attr_new;
vni = *((vni_t *)rule);
bgp_info = (struct bgp_info *)object;
+ if (bgp_info->extra == NULL)
+ return RMAP_NOMATCH;
+
if (vni == label2vni(&bgp_info->extra->label[0]))
return RMAP_MATCH;
}