summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--bfdd/bfd.c4
-rw-r--r--bfdd/bfd_packet.c36
-rw-r--r--bgpd/bgp_fsm.c5
-rw-r--r--bgpd/bgp_route.c16
-rw-r--r--bgpd/bgp_routemap.c4
-rw-r--r--bgpd/bgp_updgrp.c2
-rw-r--r--bgpd/bgpd.c5
-rw-r--r--eigrpd/eigrp_network.c4
-rw-r--r--eigrpd/eigrp_packet.c8
-rw-r--r--eigrpd/eigrpd.c3
-rw-r--r--lib/routemap.c6
11 files changed, 46 insertions, 47 deletions
diff --git a/bfdd/bfd.c b/bfdd/bfd.c
index a1fb67d357..4367f253e1 100644
--- a/bfdd/bfd.c
+++ b/bfdd/bfd.c
@@ -348,7 +348,7 @@ int bfd_session_enable(struct bfd_session *bs)
/* Sanity check: don't leak open sockets. */
if (bs->sock != -1) {
if (bglobal.debug_peer_event)
- zlog_debug("session-enable: previous socket open");
+ zlog_debug("%s: previous socket open", __func__);
close(bs->sock);
bs->sock = -1;
@@ -952,7 +952,7 @@ int ptm_bfd_sess_del(struct bfd_peer_cfg *bpc)
}
if (bglobal.debug_peer_event)
- zlog_debug("session-delete: %s", bs_to_string(bs));
+ zlog_debug("%s: %s", __func__, bs_to_string(bs));
control_notify_config(BCM_NOTIFY_CONFIG_DELETE, bs);
diff --git a/bfdd/bfd_packet.c b/bfdd/bfd_packet.c
index 98411a8732..382f78a0f6 100644
--- a/bfdd/bfd_packet.c
+++ b/bfdd/bfd_packet.c
@@ -578,8 +578,8 @@ ssize_t bfd_recv_ipv4(int sd, uint8_t *msgbuf, size_t msgbuflen, uint8_t *ttl,
memcpy(&ttlval, CMSG_DATA(cm), sizeof(ttlval));
if (ttlval > 255) {
if (bglobal.debug_network)
- zlog_debug("ipv4-recv: invalid TTL: %u",
- ttlval);
+ zlog_debug("%s: invalid TTL: %u",
+ __func__, ttlval);
return -1;
}
*ttl = ttlval;
@@ -686,8 +686,8 @@ ssize_t bfd_recv_ipv6(int sd, uint8_t *msgbuf, size_t msgbuflen, uint8_t *ttl,
memcpy(&ttlval, CMSG_DATA(cm), sizeof(ttlval));
if (ttlval > 255) {
if (bglobal.debug_network)
- zlog_debug("ipv6-recv: invalid TTL: %u",
- ttlval);
+ zlog_debug("%s: invalid TTL: %u",
+ __func__, ttlval);
return -1;
}
@@ -1127,13 +1127,13 @@ int bp_udp_send_fp(int sd, uint8_t *data, size_t datalen,
if (wlen <= 0) {
if (bglobal.debug_network)
- zlog_debug("udp-send: loopback failure: (%d) %s", errno,
- strerror(errno));
+ zlog_debug("%s: loopback failure: (%d) %s", __func__,
+ errno, strerror(errno));
return -1;
} else if (wlen < (ssize_t)datalen) {
if (bglobal.debug_network)
- zlog_debug("udp-send: partial send: %zd expected %zu",
- wlen, datalen);
+ zlog_debug("%s: partial send: %zd expected %zu",
+ __func__, wlen, datalen);
return -1;
}
@@ -1194,13 +1194,13 @@ int bp_udp_send(int sd, uint8_t ttl, uint8_t *data, size_t datalen,
wlen = sendmsg(sd, &msg, 0);
if (wlen <= 0) {
if (bglobal.debug_network)
- zlog_debug("udp-send: loopback failure: (%d) %s", errno,
- strerror(errno));
+ zlog_debug("%s: loopback failure: (%d) %s", __func__,
+ errno, strerror(errno));
return -1;
} else if (wlen < (ssize_t)datalen) {
if (bglobal.debug_network)
- zlog_debug("udp-send: partial send: %zd expected %zu",
- wlen, datalen);
+ zlog_debug("%s: partial send: %zd expected %zu",
+ __func__, wlen, datalen);
return -1;
}
@@ -1221,7 +1221,7 @@ int bp_set_ttl(int sd, uint8_t value)
int ttl = value;
if (setsockopt(sd, IPPROTO_IP, IP_TTL, &ttl, sizeof(ttl)) == -1) {
- zlog_warn("set-ttl: setsockopt(IP_TTL, %d): %s", value,
+ zlog_warn("%s: setsockopt(IP_TTL, %d): %s", __func__, value,
strerror(errno));
return -1;
}
@@ -1234,7 +1234,7 @@ int bp_set_tos(int sd, uint8_t value)
int tos = value;
if (setsockopt(sd, IPPROTO_IP, IP_TOS, &tos, sizeof(tos)) == -1) {
- zlog_warn("set-tos: setsockopt(IP_TOS, %d): %s", value,
+ zlog_warn("%s: setsockopt(IP_TOS, %d): %s", __func__, value,
strerror(errno));
return -1;
}
@@ -1247,8 +1247,8 @@ static bool bp_set_reuse_addr(int sd)
int one = 1;
if (setsockopt(sd, SOL_SOCKET, SO_REUSEADDR, &one, sizeof(one)) == -1) {
- zlog_warn("set-reuse-addr: setsockopt(SO_REUSEADDR, %d): %s",
- one, strerror(errno));
+ zlog_warn("%s: setsockopt(SO_REUSEADDR, %d): %s", __func__, one,
+ strerror(errno));
return false;
}
return true;
@@ -1259,8 +1259,8 @@ static bool bp_set_reuse_port(int sd)
int one = 1;
if (setsockopt(sd, SOL_SOCKET, SO_REUSEPORT, &one, sizeof(one)) == -1) {
- zlog_warn("set-reuse-port: setsockopt(SO_REUSEPORT, %d): %s",
- one, strerror(errno));
+ zlog_warn("%s: setsockopt(SO_REUSEPORT, %d): %s", __func__, one,
+ strerror(errno));
return false;
}
return true;
diff --git a/bgpd/bgp_fsm.c b/bgpd/bgp_fsm.c
index 1164546df7..a8accc25f5 100644
--- a/bgpd/bgp_fsm.c
+++ b/bgpd/bgp_fsm.c
@@ -300,11 +300,6 @@ static struct peer *peer_xfer_conn(struct peer *from_peer)
peer->afc_recv[afi][safi] = from_peer->afc_recv[afi][safi];
peer->orf_plist[afi][safi] = from_peer->orf_plist[afi][safi];
peer->llgr[afi][safi] = from_peer->llgr[afi][safi];
- if (from_peer->soo[afi][safi]) {
- ecommunity_free(&peer->soo[afi][safi]);
- peer->soo[afi][safi] =
- ecommunity_dup(from_peer->soo[afi][safi]);
- }
}
if (bgp_getsockname(peer) < 0) {
diff --git a/bgpd/bgp_route.c b/bgpd/bgp_route.c
index eaf4201844..365f13324d 100644
--- a/bgpd/bgp_route.c
+++ b/bgpd/bgp_route.c
@@ -1776,10 +1776,20 @@ static void bgp_peer_remove_private_as(struct bgp *bgp, afi_t afi, safi_t safi,
static void bgp_peer_as_override(struct bgp *bgp, afi_t afi, safi_t safi,
struct peer *peer, struct attr *attr)
{
+ struct aspath *aspath;
+
if (peer->sort == BGP_PEER_EBGP &&
- peer_af_flag_check(peer, afi, safi, PEER_FLAG_AS_OVERRIDE))
- attr->aspath = aspath_replace_specific_asn(attr->aspath,
- peer->as, bgp->as);
+ peer_af_flag_check(peer, afi, safi, PEER_FLAG_AS_OVERRIDE)) {
+ if (attr->aspath->refcnt)
+ aspath = aspath_dup(attr->aspath);
+ else
+ aspath = attr->aspath;
+
+ attr->aspath = aspath_intern(
+ aspath_replace_specific_asn(aspath, peer->as, bgp->as));
+
+ aspath_free(aspath);
+ }
}
void bgp_attr_add_llgr_community(struct attr *attr)
diff --git a/bgpd/bgp_routemap.c b/bgpd/bgp_routemap.c
index 40bbdccff4..64c867f988 100644
--- a/bgpd/bgp_routemap.c
+++ b/bgpd/bgp_routemap.c
@@ -2270,6 +2270,8 @@ route_set_aspath_replace(void *rule, const struct prefix *dummy, void *object)
aspath_new, replace_asn, own_asn);
}
+ aspath_free(aspath_new);
+
return RMAP_OKAY;
}
@@ -4143,8 +4145,6 @@ static void bgp_route_map_process_update_cb(char *rmap_name)
void bgp_route_map_update_timer(struct thread *thread)
{
- bm->t_rmap_update = NULL;
-
route_map_walk_update_list(bgp_route_map_process_update_cb);
}
diff --git a/bgpd/bgp_updgrp.c b/bgpd/bgp_updgrp.c
index d198aec983..0219535b0d 100644
--- a/bgpd/bgp_updgrp.c
+++ b/bgpd/bgp_updgrp.c
@@ -254,6 +254,8 @@ static void conf_release(struct peer *src, afi_t afi, safi_t safi)
XFREE(MTYPE_BGP_FILTER_NAME, srcfilter->advmap.cname);
XFREE(MTYPE_BGP_PEER_HOST, src->host);
+
+ ecommunity_free(&src->soo[afi][safi]);
}
static void peer2_updgrp_copy(struct update_group *updgrp, struct peer_af *paf)
diff --git a/bgpd/bgpd.c b/bgpd/bgpd.c
index a889a737eb..4c151b2d37 100644
--- a/bgpd/bgpd.c
+++ b/bgpd/bgpd.c
@@ -1473,11 +1473,6 @@ void peer_xfer_config(struct peer *peer_dst, struct peer *peer_src)
peer_dst->weight[afi][safi] = peer_src->weight[afi][safi];
peer_dst->addpath_type[afi][safi] =
peer_src->addpath_type[afi][safi];
- if (peer_src->soo[afi][safi]) {
- ecommunity_free(&peer_dst->soo[afi][safi]);
- peer_dst->soo[afi][safi] =
- ecommunity_dup(peer_src->soo[afi][safi]);
- }
}
for (afidx = BGP_AF_START; afidx < BGP_AF_MAX; afidx++) {
diff --git a/eigrpd/eigrp_network.c b/eigrpd/eigrp_network.c
index 6b3a0afc12..13db38ce91 100644
--- a/eigrpd/eigrp_network.c
+++ b/eigrpd/eigrp_network.c
@@ -69,8 +69,8 @@ int eigrp_sock_init(struct vrf *vrf)
AF_INET, SOCK_RAW, IPPROTO_EIGRPIGP, vrf->vrf_id,
vrf->vrf_id != VRF_DEFAULT ? vrf->name : NULL);
if (eigrp_sock < 0) {
- zlog_err("eigrp_read_sock_init: socket: %s",
- safe_strerror(errno));
+ zlog_err("%s: socket: %s",
+ __func__, safe_strerror(errno));
exit(1);
}
diff --git a/eigrpd/eigrp_packet.c b/eigrpd/eigrp_packet.c
index dd5ba8a164..1ea6f9813b 100644
--- a/eigrpd/eigrp_packet.c
+++ b/eigrpd/eigrp_packet.c
@@ -727,8 +727,8 @@ static struct stream *eigrp_recv_packet(struct eigrp *eigrp,
if ((unsigned int)ret < sizeof(*iph)) /* ret must be > 0 now */
{
zlog_warn(
- "eigrp_recv_packet: discarding runt packet of length %d (ip header size is %u)",
- ret, (unsigned int)sizeof(*iph));
+ "%s: discarding runt packet of length %d (ip header size is %u)",
+ __func__, ret, (unsigned int)sizeof(*iph));
return NULL;
}
@@ -772,8 +772,8 @@ static struct stream *eigrp_recv_packet(struct eigrp *eigrp,
if (ret != ip_len) {
zlog_warn(
- "eigrp_recv_packet read length mismatch: ip_len is %d, but recvmsg returned %d",
- ip_len, ret);
+ "%s read length mismatch: ip_len is %d, but recvmsg returned %d",
+ __func__, ip_len, ret);
return NULL;
}
diff --git a/eigrpd/eigrpd.c b/eigrpd/eigrpd.c
index 7bc7be9706..0ec9574813 100644
--- a/eigrpd/eigrpd.c
+++ b/eigrpd/eigrpd.c
@@ -163,7 +163,8 @@ static struct eigrp *eigrp_new(uint16_t as, vrf_id_t vrf_id)
if (eigrp->fd < 0) {
flog_err_sys(
EC_LIB_SOCKET,
- "eigrp_new: fatal error: eigrp_sock_init was unable to open a socket");
+ "%s: fatal error: eigrp_sock_init was unable to open a socket",
+ __func__);
exit(1);
}
diff --git a/lib/routemap.c b/lib/routemap.c
index 9529b79419..e6310465e3 100644
--- a/lib/routemap.c
+++ b/lib/routemap.c
@@ -812,17 +812,13 @@ int route_map_mark_updated(const char *name)
return (ret);
}
-static int route_map_clear_updated(struct route_map *map)
+static void route_map_clear_updated(struct route_map *map)
{
- int ret = -1;
-
if (map) {
map->to_be_processed = false;
if (map->deleted)
route_map_free_map(map);
}
-
- return (ret);
}
/* Lookup route map. If there isn't route map create one and return