uint8_t *data = pnt + 3;
uint8_t *end = pnt + hdr->length;
size_t len = end - data;
+ afi_t afi;
+ safi_t safi;
if (action == CAPABILITY_ACTION_SET) {
if (len < sizeof(gr_restart_flag_time)) {
data += GRACEFUL_RESTART_CAPABILITY_PER_AFI_SAFI_SIZE;
}
} else {
+ FOREACH_AFI_SAFI (afi, safi) {
+ UNSET_FLAG(peer->af_cap[afi][safi],
+ PEER_CAP_RESTART_AF_RCV);
+ UNSET_FLAG(peer->af_cap[afi][safi],
+ PEER_CAP_RESTART_AF_PRESERVE_RCV);
+ }
+
+ UNSET_FLAG(peer->cap, PEER_CAP_GRACEFUL_RESTART_R_BIT_RCV);
+ UNSET_FLAG(peer->cap, PEER_CAP_GRACEFUL_RESTART_N_BIT_RCV);
UNSET_FLAG(peer->cap, PEER_CAP_RESTART_RCV);
}
}