peer->readtime = peer->resettime = bgp_clock();
/* Default TTL set. */
- peer->ttl = (peer->sort == BGP_PEER_IBGP) ? MAXTTL : 1;
+ peer->ttl = (peer->sort == BGP_PEER_IBGP) ? MAXTTL : BGP_DEFAULT_TTL;
SET_FLAG(peer->flags, PEER_FLAG_CONFIG_NODE);
if (peer_sort(peer) == BGP_PEER_IBGP)
peer->ttl = MAXTTL;
else if (type == BGP_PEER_IBGP)
- peer->ttl = 1;
+ peer->ttl = BGP_DEFAULT_TTL;
/* reflector-client reset */
if (peer_sort(peer) != BGP_PEER_IBGP) {
group->conf->host = XSTRDUP(MTYPE_BGP_PEER_HOST, name);
group->conf->group = group;
group->conf->as = 0;
- group->conf->ttl = 1;
+ group->conf->ttl = BGP_DEFAULT_TTL;
group->conf->gtsm_hops = 0;
group->conf->v_routeadv = BGP_DEFAULT_EBGP_ROUTEADV;
SET_FLAG(group->conf->sflags, PEER_STATUS_GROUP);
if (!CHECK_FLAG(peer->flags_override, PEER_FLAG_LOCAL_AS))
peer->change_local_as = conf->change_local_as;
- /* TTL */
- peer->ttl = conf->ttl;
+ /* If peer-group has configured TTL then override it */
+ if (conf->ttl != BGP_DEFAULT_TTL)
+ peer->ttl = conf->ttl;
/* GTSM hops */
peer->gtsm_hops = conf->gtsm_hops;
if (peer_group_active(peer))
peer->ttl = peer->group->conf->ttl;
else
- peer->ttl = 1;
+ peer->ttl = BGP_DEFAULT_TTL;
if (!CHECK_FLAG(peer->sflags, PEER_STATUS_GROUP)) {
if (BGP_IS_VALID_STATE_FOR_NOTIF(peer->status))
if (peer->sort == BGP_PEER_IBGP)
continue;
- peer->ttl = 1;
+ peer->ttl = BGP_DEFAULT_TTL;
if (peer->fd >= 0) {
if (BGP_IS_VALID_STATE_FOR_NOTIF(peer->status))