mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-08-16 10:38:05 +00:00
*: style for EC replacements
Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
This commit is contained in:
parent
450971aa99
commit
1c50c1c0d6
@ -997,8 +997,7 @@ bgp_attr_flags_diagnose(struct bgp_attr_parser_args *args,
|
|||||||
for (i = 0; i <= 2; i++) /* O,T,P, but not E */
|
for (i = 0; i <= 2; i++) /* O,T,P, but not E */
|
||||||
if (CHECK_FLAG(desired_flags, attr_flag_str[i].key)
|
if (CHECK_FLAG(desired_flags, attr_flag_str[i].key)
|
||||||
!= CHECK_FLAG(real_flags, attr_flag_str[i].key)) {
|
!= CHECK_FLAG(real_flags, attr_flag_str[i].key)) {
|
||||||
flog_err(
|
flog_err(EC_BGP_ATTR_FLAG,
|
||||||
EC_BGP_ATTR_FLAG,
|
|
||||||
"%s attribute must%s be flagged as \"%s\"",
|
"%s attribute must%s be flagged as \"%s\"",
|
||||||
lookup_msg(attr_str, attr_code, NULL),
|
lookup_msg(attr_str, attr_code, NULL),
|
||||||
CHECK_FLAG(desired_flags, attr_flag_str[i].key)
|
CHECK_FLAG(desired_flags, attr_flag_str[i].key)
|
||||||
@ -1237,8 +1236,8 @@ static int bgp_attr_as4_path(struct bgp_attr_parser_args *args,
|
|||||||
/* In case of IBGP, length will be zero. */
|
/* In case of IBGP, length will be zero. */
|
||||||
if (!*as4_path) {
|
if (!*as4_path) {
|
||||||
flog_err(EC_BGP_ATTR_MAL_AS_PATH,
|
flog_err(EC_BGP_ATTR_MAL_AS_PATH,
|
||||||
"Malformed AS4 path from %s, length is %d",
|
"Malformed AS4 path from %s, length is %d", peer->host,
|
||||||
peer->host, length);
|
length);
|
||||||
return bgp_attr_malformed(args, BGP_NOTIFY_UPDATE_MAL_AS_PATH,
|
return bgp_attr_malformed(args, BGP_NOTIFY_UPDATE_MAL_AS_PATH,
|
||||||
0);
|
0);
|
||||||
}
|
}
|
||||||
@ -1387,8 +1386,8 @@ static int bgp_attr_aggregator(struct bgp_attr_parser_args *args)
|
|||||||
|
|
||||||
if (length != wantedlen) {
|
if (length != wantedlen) {
|
||||||
flog_err(EC_BGP_ATTR_LEN,
|
flog_err(EC_BGP_ATTR_LEN,
|
||||||
"AGGREGATOR attribute length isn't %u [%u]",
|
"AGGREGATOR attribute length isn't %u [%u]", wantedlen,
|
||||||
wantedlen, length);
|
length);
|
||||||
return bgp_attr_malformed(args, BGP_NOTIFY_UPDATE_ATTR_LENG_ERR,
|
return bgp_attr_malformed(args, BGP_NOTIFY_UPDATE_ATTR_LENG_ERR,
|
||||||
args->total);
|
args->total);
|
||||||
}
|
}
|
||||||
@ -1416,8 +1415,8 @@ bgp_attr_as4_aggregator(struct bgp_attr_parser_args *args,
|
|||||||
const bgp_size_t length = args->length;
|
const bgp_size_t length = args->length;
|
||||||
|
|
||||||
if (length != 8) {
|
if (length != 8) {
|
||||||
flog_err(EC_BGP_ATTR_LEN,
|
flog_err(EC_BGP_ATTR_LEN, "New Aggregator length is not 8 [%d]",
|
||||||
"New Aggregator length is not 8 [%d]", length);
|
length);
|
||||||
return bgp_attr_malformed(args, BGP_NOTIFY_UPDATE_ATTR_LENG_ERR,
|
return bgp_attr_malformed(args, BGP_NOTIFY_UPDATE_ATTR_LENG_ERR,
|
||||||
0);
|
0);
|
||||||
}
|
}
|
||||||
@ -1600,8 +1599,7 @@ bgp_attr_cluster_list(struct bgp_attr_parser_args *args)
|
|||||||
|
|
||||||
/* Check length. */
|
/* Check length. */
|
||||||
if (length % 4) {
|
if (length % 4) {
|
||||||
flog_err(EC_BGP_ATTR_LEN, "Bad cluster list length %d",
|
flog_err(EC_BGP_ATTR_LEN, "Bad cluster list length %d", length);
|
||||||
length);
|
|
||||||
|
|
||||||
return bgp_attr_malformed(args, BGP_NOTIFY_UPDATE_ATTR_LENG_ERR,
|
return bgp_attr_malformed(args, BGP_NOTIFY_UPDATE_ATTR_LENG_ERR,
|
||||||
args->total);
|
args->total);
|
||||||
@ -2208,8 +2206,8 @@ bgp_attr_pmsi_tunnel(struct bgp_attr_parser_args *args)
|
|||||||
* can only support that.
|
* can only support that.
|
||||||
*/
|
*/
|
||||||
if (length < 2) {
|
if (length < 2) {
|
||||||
flog_err(EC_BGP_ATTR_LEN,
|
flog_err(EC_BGP_ATTR_LEN, "Bad PMSI tunnel attribute length %d",
|
||||||
"Bad PMSI tunnel attribute length %d", length);
|
length);
|
||||||
return bgp_attr_malformed(args, BGP_NOTIFY_UPDATE_ATTR_LENG_ERR,
|
return bgp_attr_malformed(args, BGP_NOTIFY_UPDATE_ATTR_LENG_ERR,
|
||||||
args->total);
|
args->total);
|
||||||
}
|
}
|
||||||
|
@ -226,8 +226,7 @@ static struct vrf_irt_node *lookup_vrf_import_rt(struct ecommunity_val *rt)
|
|||||||
|
|
||||||
bgp_def = bgp_get_default();
|
bgp_def = bgp_get_default();
|
||||||
if (!bgp_def) {
|
if (!bgp_def) {
|
||||||
flog_err(
|
flog_err(EC_BGP_NO_DFLT,
|
||||||
EC_BGP_NO_DFLT,
|
|
||||||
"vrf import rt lookup - def instance not created yet");
|
"vrf import rt lookup - def instance not created yet");
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
@ -1389,8 +1388,7 @@ static int update_evpn_type4_route(struct bgp *bgp,
|
|||||||
&attr, 1, &ri,
|
&attr, 1, &ri,
|
||||||
&route_changed);
|
&route_changed);
|
||||||
if (ret != 0) {
|
if (ret != 0) {
|
||||||
flog_err(
|
flog_err(EC_BGP_ES_INVALID,
|
||||||
EC_BGP_ES_INVALID,
|
|
||||||
"%u ERROR: Failed to updated ES route ESI: %s VTEP %s",
|
"%u ERROR: Failed to updated ES route ESI: %s VTEP %s",
|
||||||
bgp->vrf_id,
|
bgp->vrf_id,
|
||||||
esi_to_str(&p->prefix.es_addr.esi, buf, sizeof(buf)),
|
esi_to_str(&p->prefix.es_addr.esi, buf, sizeof(buf)),
|
||||||
@ -3186,8 +3184,7 @@ static int install_uninstall_route_in_vnis(struct bgp *bgp, afi_t afi,
|
|||||||
ret = uninstall_evpn_route_entry(bgp, vpn, evp, ri);
|
ret = uninstall_evpn_route_entry(bgp, vpn, evp, ri);
|
||||||
|
|
||||||
if (ret) {
|
if (ret) {
|
||||||
flog_err(
|
flog_err(EC_BGP_EVPN_FAIL,
|
||||||
EC_BGP_EVPN_FAIL,
|
|
||||||
"%u: Failed to %s EVPN %s route in VNI %u",
|
"%u: Failed to %s EVPN %s route in VNI %u",
|
||||||
bgp->vrf_id, install ? "install" : "uninstall",
|
bgp->vrf_id, install ? "install" : "uninstall",
|
||||||
evp->prefix.route_type == BGP_EVPN_MAC_IP_ROUTE
|
evp->prefix.route_type == BGP_EVPN_MAC_IP_ROUTE
|
||||||
|
@ -1890,7 +1890,8 @@ static struct bgpevpn *evpn_create_update_vni(struct bgp *bgp, vni_t vni)
|
|||||||
if (!vpn) {
|
if (!vpn) {
|
||||||
/* Check if this L2VNI is already configured as L3VNI */
|
/* Check if this L2VNI is already configured as L3VNI */
|
||||||
if (bgp_evpn_lookup_l3vni_l2vni_table(vni)) {
|
if (bgp_evpn_lookup_l3vni_l2vni_table(vni)) {
|
||||||
flog_err(EC_BGP_VNI,
|
flog_err(
|
||||||
|
EC_BGP_VNI,
|
||||||
"%u: Failed to create L2VNI %u, it is configured as L3VNI",
|
"%u: Failed to create L2VNI %u, it is configured as L3VNI",
|
||||||
bgp->vrf_id, vni);
|
bgp->vrf_id, vni);
|
||||||
return NULL;
|
return NULL;
|
||||||
|
@ -104,8 +104,7 @@ int bgp_nlri_parse_flowspec(struct peer *peer, struct attr *attr,
|
|||||||
safi = packet->safi;
|
safi = packet->safi;
|
||||||
|
|
||||||
if (afi == AFI_IP6) {
|
if (afi == AFI_IP6) {
|
||||||
flog_err(EC_LIB_DEVELOPMENT,
|
flog_err(EC_LIB_DEVELOPMENT, "BGP flowspec IPv6 not supported");
|
||||||
"BGP flowspec IPv6 not supported");
|
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -128,13 +127,15 @@ int bgp_nlri_parse_flowspec(struct peer *peer, struct attr *attr,
|
|||||||
|
|
||||||
/* When packet overflow occur return immediately. */
|
/* When packet overflow occur return immediately. */
|
||||||
if (pnt + psize > lim) {
|
if (pnt + psize > lim) {
|
||||||
flog_err(EC_BGP_FLOWSPEC_PACKET,
|
flog_err(
|
||||||
|
EC_BGP_FLOWSPEC_PACKET,
|
||||||
"Flowspec NLRI length inconsistent ( size %u seen)",
|
"Flowspec NLRI length inconsistent ( size %u seen)",
|
||||||
psize);
|
psize);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
if (bgp_fs_nlri_validate(pnt, psize) < 0) {
|
if (bgp_fs_nlri_validate(pnt, psize) < 0) {
|
||||||
flog_err(EC_BGP_FLOWSPEC_PACKET,
|
flog_err(
|
||||||
|
EC_BGP_FLOWSPEC_PACKET,
|
||||||
"Bad flowspec format or NLRI options not supported");
|
"Bad flowspec format or NLRI options not supported");
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
@ -69,8 +69,7 @@ static int bgp_flowspec_call_non_opaque_decode(uint8_t *nlri_content, int len,
|
|||||||
mval, error);
|
mval, error);
|
||||||
if (*error < 0)
|
if (*error < 0)
|
||||||
flog_err(EC_BGP_FLOWSPEC_PACKET,
|
flog_err(EC_BGP_FLOWSPEC_PACKET,
|
||||||
"%s: flowspec_op_decode error %d",
|
"%s: flowspec_op_decode error %d", __func__, *error);
|
||||||
__func__, *error);
|
|
||||||
else
|
else
|
||||||
*match_num = *error;
|
*match_num = *error;
|
||||||
return ret;
|
return ret;
|
||||||
@ -542,7 +541,8 @@ int bgp_flowspec_match_rules_fill(uint8_t *nlri_content, int len,
|
|||||||
len - offset,
|
len - offset,
|
||||||
&bpem->tcpflags, &error);
|
&bpem->tcpflags, &error);
|
||||||
if (error < 0)
|
if (error < 0)
|
||||||
flog_err(EC_BGP_FLOWSPEC_PACKET,
|
flog_err(
|
||||||
|
EC_BGP_FLOWSPEC_PACKET,
|
||||||
"%s: flowspec_tcpflags_decode error %d",
|
"%s: flowspec_tcpflags_decode error %d",
|
||||||
__func__, error);
|
__func__, error);
|
||||||
else
|
else
|
||||||
@ -557,7 +557,8 @@ int bgp_flowspec_match_rules_fill(uint8_t *nlri_content, int len,
|
|||||||
len - offset, &bpem->fragment,
|
len - offset, &bpem->fragment,
|
||||||
&error);
|
&error);
|
||||||
if (error < 0)
|
if (error < 0)
|
||||||
flog_err(EC_BGP_FLOWSPEC_PACKET,
|
flog_err(
|
||||||
|
EC_BGP_FLOWSPEC_PACKET,
|
||||||
"%s: flowspec_fragment_type_decode error %d",
|
"%s: flowspec_fragment_type_decode error %d",
|
||||||
__func__, error);
|
__func__, error);
|
||||||
else
|
else
|
||||||
|
@ -1492,9 +1492,8 @@ static int bgp_fsm_open(struct peer *peer)
|
|||||||
peer and change to Idle status. */
|
peer and change to Idle status. */
|
||||||
static int bgp_fsm_event_error(struct peer *peer)
|
static int bgp_fsm_event_error(struct peer *peer)
|
||||||
{
|
{
|
||||||
flog_err(EC_BGP_FSM,
|
flog_err(EC_BGP_FSM, "%s [FSM] unexpected packet received in state %s",
|
||||||
"%s [FSM] unexpected packet received in state %s", peer->host,
|
peer->host, lookup_msg(bgp_status_msg, peer->status, NULL));
|
||||||
lookup_msg(bgp_status_msg, peer->status, NULL));
|
|
||||||
|
|
||||||
return bgp_stop_with_notify(peer, BGP_NOTIFY_FSM_ERR, 0);
|
return bgp_stop_with_notify(peer, BGP_NOTIFY_FSM_ERR, 0);
|
||||||
}
|
}
|
||||||
|
@ -218,8 +218,7 @@ int bgp_nlri_parse_vpn(struct peer *peer, struct attr *attr,
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
default:
|
default:
|
||||||
flog_err(EC_BGP_UPDATE_RCV, "Unknown RD type %d",
|
flog_err(EC_BGP_UPDATE_RCV, "Unknown RD type %d", type);
|
||||||
type);
|
|
||||||
break; /* just report */
|
break; /* just report */
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -222,8 +222,7 @@ static int bgp_get_instance_for_inc_conn(int sock, struct bgp **bgp_inst)
|
|||||||
rc = getsockopt(sock, SOL_SOCKET, SO_BINDTODEVICE, name, &name_len);
|
rc = getsockopt(sock, SOL_SOCKET, SO_BINDTODEVICE, name, &name_len);
|
||||||
if (rc != 0) {
|
if (rc != 0) {
|
||||||
#if defined(HAVE_CUMULUS)
|
#if defined(HAVE_CUMULUS)
|
||||||
flog_err(
|
flog_err(EC_LIB_SOCKET,
|
||||||
EC_LIB_SOCKET,
|
|
||||||
"[Error] BGP SO_BINDTODEVICE get failed (%s), sock %d",
|
"[Error] BGP SO_BINDTODEVICE get failed (%s), sock %d",
|
||||||
safe_strerror(errno), sock);
|
safe_strerror(errno), sock);
|
||||||
return -1;
|
return -1;
|
||||||
@ -665,8 +664,7 @@ static int bgp_listener(int sock, struct sockaddr *sa, socklen_t salen,
|
|||||||
|
|
||||||
ret = listen(sock, SOMAXCONN);
|
ret = listen(sock, SOMAXCONN);
|
||||||
if (ret < 0) {
|
if (ret < 0) {
|
||||||
flog_err_sys(EC_LIB_SOCKET, "listen: %s",
|
flog_err_sys(EC_LIB_SOCKET, "listen: %s", safe_strerror(errno));
|
||||||
safe_strerror(errno));
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -653,7 +653,8 @@ static int bgp_pbr_build_and_validate_entry(struct prefix *p,
|
|||||||
action_count++;
|
action_count++;
|
||||||
if (action_count > ACTIONS_MAX_NUM) {
|
if (action_count > ACTIONS_MAX_NUM) {
|
||||||
if (BGP_DEBUG(pbr, PBR_ERROR))
|
if (BGP_DEBUG(pbr, PBR_ERROR))
|
||||||
flog_err(EC_BGP_FLOWSPEC_PACKET,
|
flog_err(
|
||||||
|
EC_BGP_FLOWSPEC_PACKET,
|
||||||
"%s: flowspec actions exceeds limit (max %u)",
|
"%s: flowspec actions exceeds limit (max %u)",
|
||||||
__func__, action_count);
|
__func__, action_count);
|
||||||
break;
|
break;
|
||||||
@ -2252,8 +2253,7 @@ void bgp_pbr_update_entry(struct bgp *bgp, struct prefix *p,
|
|||||||
if (!bgp_zebra_tm_chunk_obtained()) {
|
if (!bgp_zebra_tm_chunk_obtained()) {
|
||||||
if (BGP_DEBUG(pbr, PBR_ERROR))
|
if (BGP_DEBUG(pbr, PBR_ERROR))
|
||||||
flog_err(EC_BGP_TABLE_CHUNK,
|
flog_err(EC_BGP_TABLE_CHUNK,
|
||||||
"%s: table chunk not obtained yet",
|
"%s: table chunk not obtained yet", __func__);
|
||||||
__func__);
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -9890,11 +9890,13 @@ static int bgp_peer_count_walker(struct thread *t)
|
|||||||
if (CHECK_FLAG(ri->flags, BGP_INFO_COUNTED)) {
|
if (CHECK_FLAG(ri->flags, BGP_INFO_COUNTED)) {
|
||||||
pc->count[PCOUNT_COUNTED]++;
|
pc->count[PCOUNT_COUNTED]++;
|
||||||
if (CHECK_FLAG(ri->flags, BGP_INFO_UNUSEABLE))
|
if (CHECK_FLAG(ri->flags, BGP_INFO_UNUSEABLE))
|
||||||
flog_err(EC_LIB_DEVELOPMENT,
|
flog_err(
|
||||||
|
EC_LIB_DEVELOPMENT,
|
||||||
"Attempting to count but flags say it is unusable");
|
"Attempting to count but flags say it is unusable");
|
||||||
} else {
|
} else {
|
||||||
if (!CHECK_FLAG(ri->flags, BGP_INFO_UNUSEABLE))
|
if (!CHECK_FLAG(ri->flags, BGP_INFO_UNUSEABLE))
|
||||||
flog_err(EC_LIB_DEVELOPMENT,
|
flog_err(
|
||||||
|
EC_LIB_DEVELOPMENT,
|
||||||
"Not counted but flags say we should");
|
"Not counted but flags say we should");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -3897,8 +3897,7 @@ rfapiBgpInfoFilteredImportFunction(safi_t safi)
|
|||||||
|
|
||||||
default:
|
default:
|
||||||
/* not expected */
|
/* not expected */
|
||||||
flog_err(EC_LIB_DEVELOPMENT, "%s: bad safi %d", __func__,
|
flog_err(EC_LIB_DEVELOPMENT, "%s: bad safi %d", __func__, safi);
|
||||||
safi);
|
|
||||||
return rfapiBgpInfoFilteredImportBadSafi;
|
return rfapiBgpInfoFilteredImportBadSafi;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -188,8 +188,8 @@ void vnc_direct_bgp_add_route_ce(struct bgp *bgp, struct agg_node *rn,
|
|||||||
|
|
||||||
|
|
||||||
if (!afi) {
|
if (!afi) {
|
||||||
flog_err(EC_LIB_DEVELOPMENT,
|
flog_err(EC_LIB_DEVELOPMENT, "%s: can't get afi of route node",
|
||||||
"%s: can't get afi of route node", __func__);
|
__func__);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -700,8 +700,8 @@ void vnc_direct_bgp_add_prefix(struct bgp *bgp,
|
|||||||
afi_t afi = family2afi(rn->p.family);
|
afi_t afi = family2afi(rn->p.family);
|
||||||
|
|
||||||
if (!afi) {
|
if (!afi) {
|
||||||
flog_err(EC_LIB_DEVELOPMENT,
|
flog_err(EC_LIB_DEVELOPMENT, "%s: can't get afi of route node",
|
||||||
"%s: can't get afi of route node", __func__);
|
__func__);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -926,8 +926,8 @@ void vnc_direct_bgp_add_nve(struct bgp *bgp, struct rfapi_descriptor *rfd)
|
|||||||
afi_t afi = family2afi(rfd->vn_addr.addr_family);
|
afi_t afi = family2afi(rfd->vn_addr.addr_family);
|
||||||
|
|
||||||
if (!afi) {
|
if (!afi) {
|
||||||
flog_err(EC_LIB_DEVELOPMENT,
|
flog_err(EC_LIB_DEVELOPMENT, "%s: can't get afi of nve vn addr",
|
||||||
"%s: can't get afi of nve vn addr", __func__);
|
__func__);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1073,8 +1073,8 @@ void vnc_direct_bgp_del_nve(struct bgp *bgp, struct rfapi_descriptor *rfd)
|
|||||||
afi_t afi = family2afi(rfd->vn_addr.addr_family);
|
afi_t afi = family2afi(rfd->vn_addr.addr_family);
|
||||||
|
|
||||||
if (!afi) {
|
if (!afi) {
|
||||||
flog_err(EC_LIB_DEVELOPMENT,
|
flog_err(EC_LIB_DEVELOPMENT, "%s: can't get afi of nve vn addr",
|
||||||
"%s: can't get afi of nve vn addr", __func__);
|
__func__);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1642,8 +1642,8 @@ void vnc_direct_bgp_rh_add_route(struct bgp *bgp, afi_t afi,
|
|||||||
struct attr *iattr;
|
struct attr *iattr;
|
||||||
|
|
||||||
if (!afi) {
|
if (!afi) {
|
||||||
flog_err(EC_LIB_DEVELOPMENT,
|
flog_err(EC_LIB_DEVELOPMENT, "%s: can't get afi of route node",
|
||||||
"%s: can't get afi of route node", __func__);
|
__func__);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -354,8 +354,8 @@ int eigrp_write(struct thread *thread)
|
|||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
if (ep->length < EIGRP_HEADER_LEN) {
|
if (ep->length < EIGRP_HEADER_LEN) {
|
||||||
flog_err(EC_EIGRP_PACKET,
|
flog_err(EC_EIGRP_PACKET, "%s: Packet just has a header?",
|
||||||
"%s: Packet just has a header?", __PRETTY_FUNCTION__);
|
__PRETTY_FUNCTION__);
|
||||||
eigrp_header_dump((struct eigrp_header *)ep->s->data);
|
eigrp_header_dump((struct eigrp_header *)ep->s->data);
|
||||||
eigrp_packet_delete(ei);
|
eigrp_packet_delete(ei);
|
||||||
goto out;
|
goto out;
|
||||||
@ -1214,8 +1214,7 @@ uint16_t eigrp_add_internalTLV_to_stream(struct stream *s,
|
|||||||
stream_putw(s, length);
|
stream_putw(s, length);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
flog_err(EC_LIB_DEVELOPMENT,
|
flog_err(EC_LIB_DEVELOPMENT, "%s: Unexpected prefix length: %d",
|
||||||
"%s: Unexpected prefix length: %d",
|
|
||||||
__PRETTY_FUNCTION__, pe->destination->prefixlen);
|
__PRETTY_FUNCTION__, pe->destination->prefixlen);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@ -170,7 +170,8 @@ void eigrp_reply_receive(struct eigrp *eigrp, struct ip *iph,
|
|||||||
if (!dest) {
|
if (!dest) {
|
||||||
char buf[PREFIX_STRLEN];
|
char buf[PREFIX_STRLEN];
|
||||||
|
|
||||||
flog_err(EC_EIGRP_PACKET,
|
flog_err(
|
||||||
|
EC_EIGRP_PACKET,
|
||||||
"%s: Received prefix %s which we do not know about",
|
"%s: Received prefix %s which we do not know about",
|
||||||
__PRETTY_FUNCTION__,
|
__PRETTY_FUNCTION__,
|
||||||
prefix2str(&dest_addr, buf, sizeof(buf)));
|
prefix2str(&dest_addr, buf, sizeof(buf)));
|
||||||
|
12
lib/agentx.c
12
lib/agentx.c
@ -142,20 +142,16 @@ static int agentx_log_callback(int major, int minor, void *serverarg,
|
|||||||
msg[strlen(msg) - 1] = '\0';
|
msg[strlen(msg) - 1] = '\0';
|
||||||
switch (slm->priority) {
|
switch (slm->priority) {
|
||||||
case LOG_EMERG:
|
case LOG_EMERG:
|
||||||
flog_err(EC_LIB_SNMP,
|
flog_err(EC_LIB_SNMP, "snmp[emerg]: %s", msg ? msg : slm->msg);
|
||||||
"snmp[emerg]: %s", msg ? msg : slm->msg);
|
|
||||||
break;
|
break;
|
||||||
case LOG_ALERT:
|
case LOG_ALERT:
|
||||||
flog_err(EC_LIB_SNMP,
|
flog_err(EC_LIB_SNMP, "snmp[alert]: %s", msg ? msg : slm->msg);
|
||||||
"snmp[alert]: %s", msg ? msg : slm->msg);
|
|
||||||
break;
|
break;
|
||||||
case LOG_CRIT:
|
case LOG_CRIT:
|
||||||
flog_err(EC_LIB_SNMP,
|
flog_err(EC_LIB_SNMP, "snmp[crit]: %s", msg ? msg : slm->msg);
|
||||||
"snmp[crit]: %s", msg ? msg : slm->msg);
|
|
||||||
break;
|
break;
|
||||||
case LOG_ERR:
|
case LOG_ERR:
|
||||||
flog_err(EC_LIB_SNMP,
|
flog_err(EC_LIB_SNMP, "snmp[err]: %s", msg ? msg : slm->msg);
|
||||||
"snmp[err]: %s", msg ? msg : slm->msg);
|
|
||||||
break;
|
break;
|
||||||
case LOG_WARNING:
|
case LOG_WARNING:
|
||||||
flog_warn(EC_LIB_SNMP, "snmp[warning]: %s",
|
flog_warn(EC_LIB_SNMP, "snmp[warning]: %s",
|
||||||
|
12
lib/if.h
12
lib/if.h
@ -297,32 +297,28 @@ DECLARE_QOBJ_TYPE(interface)
|
|||||||
|
|
||||||
#define IFNAME_RB_INSERT(vrf, ifp) \
|
#define IFNAME_RB_INSERT(vrf, ifp) \
|
||||||
if (RB_INSERT(if_name_head, &vrf->ifaces_by_name, (ifp))) \
|
if (RB_INSERT(if_name_head, &vrf->ifaces_by_name, (ifp))) \
|
||||||
flog_err( \
|
flog_err(EC_LIB_INTERFACE, \
|
||||||
EC_LIB_INTERFACE, \
|
|
||||||
"%s(%s): corruption detected -- interface with this " \
|
"%s(%s): corruption detected -- interface with this " \
|
||||||
"name exists already in VRF %u!", \
|
"name exists already in VRF %u!", \
|
||||||
__func__, (ifp)->name, (ifp)->vrf_id);
|
__func__, (ifp)->name, (ifp)->vrf_id);
|
||||||
|
|
||||||
#define IFNAME_RB_REMOVE(vrf, ifp) \
|
#define IFNAME_RB_REMOVE(vrf, ifp) \
|
||||||
if (RB_REMOVE(if_name_head, &vrf->ifaces_by_name, (ifp)) == NULL) \
|
if (RB_REMOVE(if_name_head, &vrf->ifaces_by_name, (ifp)) == NULL) \
|
||||||
flog_err( \
|
flog_err(EC_LIB_INTERFACE, \
|
||||||
EC_LIB_INTERFACE, \
|
|
||||||
"%s(%s): corruption detected -- interface with this " \
|
"%s(%s): corruption detected -- interface with this " \
|
||||||
"name doesn't exist in VRF %u!", \
|
"name doesn't exist in VRF %u!", \
|
||||||
__func__, (ifp)->name, (ifp)->vrf_id);
|
__func__, (ifp)->name, (ifp)->vrf_id);
|
||||||
|
|
||||||
#define IFINDEX_RB_INSERT(vrf, ifp) \
|
#define IFINDEX_RB_INSERT(vrf, ifp) \
|
||||||
if (RB_INSERT(if_index_head, &vrf->ifaces_by_index, (ifp))) \
|
if (RB_INSERT(if_index_head, &vrf->ifaces_by_index, (ifp))) \
|
||||||
flog_err( \
|
flog_err(EC_LIB_INTERFACE, \
|
||||||
EC_LIB_INTERFACE, \
|
|
||||||
"%s(%u): corruption detected -- interface with this " \
|
"%s(%u): corruption detected -- interface with this " \
|
||||||
"ifindex exists already in VRF %u!", \
|
"ifindex exists already in VRF %u!", \
|
||||||
__func__, (ifp)->ifindex, (ifp)->vrf_id);
|
__func__, (ifp)->ifindex, (ifp)->vrf_id);
|
||||||
|
|
||||||
#define IFINDEX_RB_REMOVE(vrf, ifp) \
|
#define IFINDEX_RB_REMOVE(vrf, ifp) \
|
||||||
if (RB_REMOVE(if_index_head, &vrf->ifaces_by_index, (ifp)) == NULL) \
|
if (RB_REMOVE(if_index_head, &vrf->ifaces_by_index, (ifp)) == NULL) \
|
||||||
flog_err( \
|
flog_err(EC_LIB_INTERFACE, \
|
||||||
EC_LIB_INTERFACE, \
|
|
||||||
"%s(%u): corruption detected -- interface with this " \
|
"%s(%u): corruption detected -- interface with this " \
|
||||||
"ifindex doesn't exist in VRF %u!", \
|
"ifindex doesn't exist in VRF %u!", \
|
||||||
__func__, (ifp)->ifindex, (ifp)->vrf_id);
|
__func__, (ifp)->ifindex, (ifp)->vrf_id);
|
||||||
|
14
lib/libfrr.c
14
lib/libfrr.c
@ -274,12 +274,14 @@ static void frr_guard_daemon(void)
|
|||||||
lock.l_type = F_WRLCK;
|
lock.l_type = F_WRLCK;
|
||||||
lock.l_whence = SEEK_SET;
|
lock.l_whence = SEEK_SET;
|
||||||
if (fcntl(fd, F_GETLK, &lock) < 0) {
|
if (fcntl(fd, F_GETLK, &lock) < 0) {
|
||||||
flog_err_sys(EC_LIB_SYSTEM_CALL,
|
flog_err_sys(
|
||||||
|
EC_LIB_SYSTEM_CALL,
|
||||||
"Could not do F_GETLK pid_file %s (%s), exiting",
|
"Could not do F_GETLK pid_file %s (%s), exiting",
|
||||||
path, safe_strerror(errno));
|
path, safe_strerror(errno));
|
||||||
exit(1);
|
exit(1);
|
||||||
} else if (lock.l_type == F_WRLCK) {
|
} else if (lock.l_type == F_WRLCK) {
|
||||||
flog_err_sys(EC_LIB_SYSTEM_CALL,
|
flog_err_sys(
|
||||||
|
EC_LIB_SYSTEM_CALL,
|
||||||
"Process %d has a write lock on file %s already! Error: (%s)",
|
"Process %d has a write lock on file %s already! Error: (%s)",
|
||||||
lock.l_pid, path, safe_strerror(errno));
|
lock.l_pid, path, safe_strerror(errno));
|
||||||
exit(1);
|
exit(1);
|
||||||
@ -543,15 +545,15 @@ static void frr_mkdir(const char *path, bool strip)
|
|||||||
if (errno == EEXIST)
|
if (errno == EEXIST)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
flog_err(EC_LIB_SYSTEM_CALL, "failed to mkdir \"%s\": %s",
|
flog_err(EC_LIB_SYSTEM_CALL, "failed to mkdir \"%s\": %s", path,
|
||||||
path, strerror(errno));
|
strerror(errno));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
zprivs_get_ids(&ids);
|
zprivs_get_ids(&ids);
|
||||||
if (chown(path, ids.uid_normal, ids.gid_normal))
|
if (chown(path, ids.uid_normal, ids.gid_normal))
|
||||||
flog_err(EC_LIB_SYSTEM_CALL, "failed to chown \"%s\": %s",
|
flog_err(EC_LIB_SYSTEM_CALL, "failed to chown \"%s\": %s", path,
|
||||||
path, strerror(errno));
|
strerror(errno));
|
||||||
}
|
}
|
||||||
|
|
||||||
static struct thread_master *master;
|
static struct thread_master *master;
|
||||||
|
@ -1005,8 +1005,7 @@ static const struct zebra_desc_table *zroute_lookup(unsigned int zroute)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
flog_err(EC_LIB_DEVELOPMENT,
|
flog_err(EC_LIB_DEVELOPMENT,
|
||||||
"internal error: cannot find route type %u in table!",
|
"internal error: cannot find route type %u in table!", zroute);
|
||||||
zroute);
|
|
||||||
return &unknown;
|
return &unknown;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -129,8 +129,7 @@ int setsockopt_ipv6_multicast_hops(int sock, int val)
|
|||||||
ret = setsockopt(sock, IPPROTO_IPV6, IPV6_MULTICAST_HOPS, &val,
|
ret = setsockopt(sock, IPPROTO_IPV6, IPV6_MULTICAST_HOPS, &val,
|
||||||
sizeof(val));
|
sizeof(val));
|
||||||
if (ret < 0)
|
if (ret < 0)
|
||||||
flog_err(EC_LIB_SOCKET,
|
flog_err(EC_LIB_SOCKET, "can't setsockopt IPV6_MULTICAST_HOPS");
|
||||||
"can't setsockopt IPV6_MULTICAST_HOPS");
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -171,8 +170,7 @@ int setsockopt_ipv6_multicast_loop(int sock, int val)
|
|||||||
ret = setsockopt(sock, IPPROTO_IPV6, IPV6_MULTICAST_LOOP, &val,
|
ret = setsockopt(sock, IPPROTO_IPV6, IPV6_MULTICAST_LOOP, &val,
|
||||||
sizeof(val));
|
sizeof(val));
|
||||||
if (ret < 0)
|
if (ret < 0)
|
||||||
flog_err(EC_LIB_SOCKET,
|
flog_err(EC_LIB_SOCKET, "can't setsockopt IPV6_MULTICAST_LOOP");
|
||||||
"can't setsockopt IPV6_MULTICAST_LOOP");
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -576,8 +576,7 @@ union sockunion *sockunion_getpeername(int fd)
|
|||||||
len = sizeof name;
|
len = sizeof name;
|
||||||
ret = getpeername(fd, (struct sockaddr *)&name, &len);
|
ret = getpeername(fd, (struct sockaddr *)&name, &len);
|
||||||
if (ret < 0) {
|
if (ret < 0) {
|
||||||
flog_err(EC_LIB_SOCKET,
|
flog_err(EC_LIB_SOCKET, "Can't get remote address and port: %s",
|
||||||
"Can't get remote address and port: %s",
|
|
||||||
safe_strerror(errno));
|
safe_strerror(errno));
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
@ -2420,9 +2420,8 @@ static void vty_read_file(FILE *confp)
|
|||||||
nl = strchr(vty->error_buf, '\n');
|
nl = strchr(vty->error_buf, '\n');
|
||||||
if (nl)
|
if (nl)
|
||||||
*nl = '\0';
|
*nl = '\0';
|
||||||
flog_err(EC_LIB_VTY,
|
flog_err(EC_LIB_VTY, "ERROR: %s on config line %u: %s", message,
|
||||||
"ERROR: %s on config line %u: %s", message, line_num,
|
line_num, vty->error_buf);
|
||||||
vty->error_buf);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
vty_close(vty);
|
vty_close(vty);
|
||||||
|
@ -315,7 +315,8 @@ int zclient_read_header(struct stream *s, int sock, uint16_t *size,
|
|||||||
STREAM_GETW(s, *cmd);
|
STREAM_GETW(s, *cmd);
|
||||||
|
|
||||||
if (*version != ZSERV_VERSION || *marker != ZEBRA_HEADER_MARKER) {
|
if (*version != ZSERV_VERSION || *marker != ZEBRA_HEADER_MARKER) {
|
||||||
flog_err(EC_LIB_ZAPI_MISSMATCH,
|
flog_err(
|
||||||
|
EC_LIB_ZAPI_MISSMATCH,
|
||||||
"%s: socket %d version mismatch, marker %d, version %d",
|
"%s: socket %d version mismatch, marker %d, version %d",
|
||||||
__func__, sock, *marker, *version);
|
__func__, sock, *marker, *version);
|
||||||
return -1;
|
return -1;
|
||||||
@ -1451,7 +1452,8 @@ static void link_params_set_value(struct stream *s, struct if_link_params *iflp)
|
|||||||
for (i = 0; i < bwclassnum && i < MAX_CLASS_TYPE; i++)
|
for (i = 0; i < bwclassnum && i < MAX_CLASS_TYPE; i++)
|
||||||
iflp->unrsv_bw[i] = stream_getf(s);
|
iflp->unrsv_bw[i] = stream_getf(s);
|
||||||
if (i < bwclassnum)
|
if (i < bwclassnum)
|
||||||
flog_err(EC_LIB_ZAPI_MISSMATCH,
|
flog_err(
|
||||||
|
EC_LIB_ZAPI_MISSMATCH,
|
||||||
"%s: received %d > %d (MAX_CLASS_TYPE) bw entries"
|
"%s: received %d > %d (MAX_CLASS_TYPE) bw entries"
|
||||||
" - outdated library?",
|
" - outdated library?",
|
||||||
__func__, bwclassnum, MAX_CLASS_TYPE);
|
__func__, bwclassnum, MAX_CLASS_TYPE);
|
||||||
@ -1823,8 +1825,8 @@ static int zclient_read_sync_response(struct zclient *zclient,
|
|||||||
size);
|
size);
|
||||||
}
|
}
|
||||||
if (ret != 0) {
|
if (ret != 0) {
|
||||||
flog_err(EC_LIB_ZAPI_ENCODE,
|
flog_err(EC_LIB_ZAPI_ENCODE, "%s: Invalid Sync Message Reply",
|
||||||
"%s: Invalid Sync Message Reply", __func__);
|
__func__);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1893,11 +1895,13 @@ int lm_label_manager_connect(struct zclient *zclient)
|
|||||||
|
|
||||||
/* sanity */
|
/* sanity */
|
||||||
if (proto != zclient->redist_default)
|
if (proto != zclient->redist_default)
|
||||||
flog_err(EC_LIB_ZAPI_ENCODE,
|
flog_err(
|
||||||
|
EC_LIB_ZAPI_ENCODE,
|
||||||
"Wrong proto (%u) in LM connect response. Should be %u",
|
"Wrong proto (%u) in LM connect response. Should be %u",
|
||||||
proto, zclient->redist_default);
|
proto, zclient->redist_default);
|
||||||
if (instance != zclient->instance)
|
if (instance != zclient->instance)
|
||||||
flog_err(EC_LIB_ZAPI_ENCODE,
|
flog_err(
|
||||||
|
EC_LIB_ZAPI_ENCODE,
|
||||||
"Wrong instId (%u) in LM connect response. Should be %u",
|
"Wrong instId (%u) in LM connect response. Should be %u",
|
||||||
instance, zclient->instance);
|
instance, zclient->instance);
|
||||||
|
|
||||||
@ -1988,15 +1992,13 @@ int lm_get_label_chunk(struct zclient *zclient, uint8_t keep,
|
|||||||
|
|
||||||
ret = writen(zclient->sock, s->data, stream_get_endp(s));
|
ret = writen(zclient->sock, s->data, stream_get_endp(s));
|
||||||
if (ret < 0) {
|
if (ret < 0) {
|
||||||
flog_err(EC_LIB_ZAPI_SOCKET,
|
flog_err(EC_LIB_ZAPI_SOCKET, "Can't write to zclient sock");
|
||||||
"Can't write to zclient sock");
|
|
||||||
close(zclient->sock);
|
close(zclient->sock);
|
||||||
zclient->sock = -1;
|
zclient->sock = -1;
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
if (ret == 0) {
|
if (ret == 0) {
|
||||||
flog_err(EC_LIB_ZAPI_SOCKET,
|
flog_err(EC_LIB_ZAPI_SOCKET, "Zclient sock closed");
|
||||||
"Zclient sock closed");
|
|
||||||
close(zclient->sock);
|
close(zclient->sock);
|
||||||
zclient->sock = -1;
|
zclient->sock = -1;
|
||||||
return -1;
|
return -1;
|
||||||
@ -2033,15 +2035,16 @@ int lm_get_label_chunk(struct zclient *zclient, uint8_t keep,
|
|||||||
|
|
||||||
/* not owning this response */
|
/* not owning this response */
|
||||||
if (keep != response_keep) {
|
if (keep != response_keep) {
|
||||||
flog_err(EC_LIB_ZAPI_ENCODE,
|
flog_err(
|
||||||
|
EC_LIB_ZAPI_ENCODE,
|
||||||
"Invalid Label chunk: %u - %u, keeps mismatch %u != %u",
|
"Invalid Label chunk: %u - %u, keeps mismatch %u != %u",
|
||||||
*start, *end, keep, response_keep);
|
*start, *end, keep, response_keep);
|
||||||
}
|
}
|
||||||
/* sanity */
|
/* sanity */
|
||||||
if (*start > *end || *start < MPLS_LABEL_UNRESERVED_MIN
|
if (*start > *end || *start < MPLS_LABEL_UNRESERVED_MIN
|
||||||
|| *end > MPLS_LABEL_UNRESERVED_MAX) {
|
|| *end > MPLS_LABEL_UNRESERVED_MAX) {
|
||||||
flog_err(EC_LIB_ZAPI_ENCODE,
|
flog_err(EC_LIB_ZAPI_ENCODE, "Invalid Label chunk: %u - %u",
|
||||||
"Invalid Label chunk: %u - %u", *start, *end);
|
*start, *end);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2097,8 +2100,7 @@ int lm_release_label_chunk(struct zclient *zclient, uint32_t start,
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
if (ret == 0) {
|
if (ret == 0) {
|
||||||
flog_err(EC_LIB_ZAPI_SOCKET,
|
flog_err(EC_LIB_ZAPI_SOCKET, "Zclient sock connection closed");
|
||||||
"Zclient sock connection closed");
|
|
||||||
close(zclient->sock);
|
close(zclient->sock);
|
||||||
zclient->sock = -1;
|
zclient->sock = -1;
|
||||||
return -1;
|
return -1;
|
||||||
@ -2201,8 +2203,8 @@ int tm_get_table_chunk(struct zclient *zclient, uint32_t chunk_size,
|
|||||||
|
|
||||||
ret = writen(zclient->sock, s->data, stream_get_endp(s));
|
ret = writen(zclient->sock, s->data, stream_get_endp(s));
|
||||||
if (ret < 0) {
|
if (ret < 0) {
|
||||||
flog_err(EC_LIB_ZAPI_SOCKET,
|
flog_err(EC_LIB_ZAPI_SOCKET, "%s: can't write to zclient->sock",
|
||||||
"%s: can't write to zclient->sock", __func__);
|
__func__);
|
||||||
close(zclient->sock);
|
close(zclient->sock);
|
||||||
zclient->sock = -1;
|
zclient->sock = -1;
|
||||||
return -1;
|
return -1;
|
||||||
@ -2295,8 +2297,7 @@ int zebra_send_pw(struct zclient *zclient, int command, struct zapi_pw *pw)
|
|||||||
stream_write(s, (uint8_t *)&pw->nexthop.ipv6, 16);
|
stream_write(s, (uint8_t *)&pw->nexthop.ipv6, 16);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
flog_err(EC_LIB_ZAPI_ENCODE,
|
flog_err(EC_LIB_ZAPI_ENCODE, "%s: unknown af", __func__);
|
||||||
"%s: unknown af", __func__);
|
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2398,7 +2399,8 @@ static int zclient_read(struct thread *thread)
|
|||||||
command = stream_getw(zclient->ibuf);
|
command = stream_getw(zclient->ibuf);
|
||||||
|
|
||||||
if (marker != ZEBRA_HEADER_MARKER || version != ZSERV_VERSION) {
|
if (marker != ZEBRA_HEADER_MARKER || version != ZSERV_VERSION) {
|
||||||
flog_err(EC_LIB_ZAPI_MISSMATCH,
|
flog_err(
|
||||||
|
EC_LIB_ZAPI_MISSMATCH,
|
||||||
"%s: socket %d version mismatch, marker %d, version %d",
|
"%s: socket %d version mismatch, marker %d, version %d",
|
||||||
__func__, zclient->sock, marker, version);
|
__func__, zclient->sock, marker, version);
|
||||||
return zclient_failed(zclient);
|
return zclient_failed(zclient);
|
||||||
|
@ -198,7 +198,8 @@ void resolver_resolve(struct resolver_query *query, int af,
|
|||||||
union sockunion *))
|
union sockunion *))
|
||||||
{
|
{
|
||||||
if (query->callback != NULL) {
|
if (query->callback != NULL) {
|
||||||
flog_err(EC_NHRP_RESOLVER,
|
flog_err(
|
||||||
|
EC_NHRP_RESOLVER,
|
||||||
"Trying to resolve '%s', but previous query was not finished yet",
|
"Trying to resolve '%s', but previous query was not finished yet",
|
||||||
hostname);
|
hostname);
|
||||||
return;
|
return;
|
||||||
|
@ -218,7 +218,8 @@ static void parse_sa_message(struct vici_message_ctx *ctx,
|
|||||||
if (str2sockunion(buf,
|
if (str2sockunion(buf,
|
||||||
&sactx->local.host)
|
&sactx->local.host)
|
||||||
< 0)
|
< 0)
|
||||||
flog_err(EC_NHRP_SWAN,
|
flog_err(
|
||||||
|
EC_NHRP_SWAN,
|
||||||
"VICI: bad strongSwan local-host: %s",
|
"VICI: bad strongSwan local-host: %s",
|
||||||
buf);
|
buf);
|
||||||
} else if (blob_equal(key, "local-id")
|
} else if (blob_equal(key, "local-id")
|
||||||
@ -236,7 +237,8 @@ static void parse_sa_message(struct vici_message_ctx *ctx,
|
|||||||
if (str2sockunion(buf,
|
if (str2sockunion(buf,
|
||||||
&sactx->remote.host)
|
&sactx->remote.host)
|
||||||
< 0)
|
< 0)
|
||||||
flog_err(EC_NHRP_SWAN,
|
flog_err(
|
||||||
|
EC_NHRP_SWAN,
|
||||||
"VICI: bad strongSwan remote-host: %s",
|
"VICI: bad strongSwan remote-host: %s",
|
||||||
buf);
|
buf);
|
||||||
} else if (blob_equal(key, "remote-id")
|
} else if (blob_equal(key, "remote-id")
|
||||||
@ -340,7 +342,8 @@ static void vici_recv_message(struct vici_conn *vici, struct zbuf *msg)
|
|||||||
break;
|
break;
|
||||||
case VICI_EVENT_UNKNOWN:
|
case VICI_EVENT_UNKNOWN:
|
||||||
case VICI_CMD_UNKNOWN:
|
case VICI_CMD_UNKNOWN:
|
||||||
flog_err(EC_NHRP_SWAN,
|
flog_err(
|
||||||
|
EC_NHRP_SWAN,
|
||||||
"VICI: StrongSwan does not support mandatory events (unpatched?)");
|
"VICI: StrongSwan does not support mandatory events (unpatched?)");
|
||||||
break;
|
break;
|
||||||
case VICI_EVENT_CONFIRM:
|
case VICI_EVENT_CONFIRM:
|
||||||
|
@ -1559,8 +1559,7 @@ int ospf6_receive(struct thread *thread)
|
|||||||
/* receive message */
|
/* receive message */
|
||||||
len = ospf6_recvmsg(&src, &dst, &ifindex, iovector);
|
len = ospf6_recvmsg(&src, &dst, &ifindex, iovector);
|
||||||
if (len > iobuflen) {
|
if (len > iobuflen) {
|
||||||
flog_err(EC_LIB_DEVELOPMENT,
|
flog_err(EC_LIB_DEVELOPMENT, "Excess message read");
|
||||||
"Excess message read");
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -575,7 +575,8 @@ static void route_table_assert(struct ospf6_route_table *table)
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
flog_err(EC_LIB_DEVELOPMENT, "PANIC !!");
|
flog_err(EC_LIB_DEVELOPMENT, "PANIC !!");
|
||||||
flog_err(EC_LIB_DEVELOPMENT, "Something has gone wrong with ospf6_route_table[%p]", table);
|
flog_err(EC_LIB_DEVELOPMENT,
|
||||||
|
"Something has gone wrong with ospf6_route_table[%p]", table);
|
||||||
zlog_debug("table count = %d, real number = %d", table->count, num);
|
zlog_debug("table count = %d, real number = %d", table->count, num);
|
||||||
zlog_debug("DUMP START");
|
zlog_debug("DUMP START");
|
||||||
for (r = ospf6_route_head(table); r; r = ospf6_route_next(r)) {
|
for (r = ospf6_route_head(table); r; r = ospf6_route_next(r)) {
|
||||||
|
@ -273,8 +273,8 @@ static void ospf6_nexthop_calc(struct ospf6_vertex *w, struct ospf6_vertex *v,
|
|||||||
ifindex = (VERTEX_IS_TYPE(NETWORK, v) ? ospf6_spf_get_ifindex_from_nh(v)
|
ifindex = (VERTEX_IS_TYPE(NETWORK, v) ? ospf6_spf_get_ifindex_from_nh(v)
|
||||||
: ROUTER_LSDESC_GET_IFID(lsdesc));
|
: ROUTER_LSDESC_GET_IFID(lsdesc));
|
||||||
if (ifindex == 0) {
|
if (ifindex == 0) {
|
||||||
flog_err(EC_LIB_DEVELOPMENT,
|
flog_err(EC_LIB_DEVELOPMENT, "No nexthop ifindex at vertex %s",
|
||||||
"No nexthop ifindex at vertex %s", v->name);
|
v->name);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -225,8 +225,7 @@ int ospf_sock_init(struct ospf *ospf)
|
|||||||
}
|
}
|
||||||
#else /* !IPTOS_PREC_INTERNETCONTROL */
|
#else /* !IPTOS_PREC_INTERNETCONTROL */
|
||||||
#warning "IP_HDRINCL not available, nor is IPTOS_PREC_INTERNETCONTROL"
|
#warning "IP_HDRINCL not available, nor is IPTOS_PREC_INTERNETCONTROL"
|
||||||
flog_err(EC_LIB_UNAVAILABLE,
|
flog_err(EC_LIB_UNAVAILABLE, "IP_HDRINCL option not available");
|
||||||
"IP_HDRINCL option not available");
|
|
||||||
#endif /* IP_HDRINCL */
|
#endif /* IP_HDRINCL */
|
||||||
|
|
||||||
ret = setsockopt_ifindex(AF_INET, ospf_sock, 1);
|
ret = setsockopt_ifindex(AF_INET, ospf_sock, 1);
|
||||||
|
@ -342,9 +342,8 @@ static int ospf_check_md5_digest(struct ospf_interface *oi,
|
|||||||
ck = ospf_crypt_key_lookup(OSPF_IF_PARAM(oi, auth_crypt),
|
ck = ospf_crypt_key_lookup(OSPF_IF_PARAM(oi, auth_crypt),
|
||||||
ospfh->u.crypt.key_id);
|
ospfh->u.crypt.key_id);
|
||||||
if (ck == NULL) {
|
if (ck == NULL) {
|
||||||
flog_warn(EC_OSPF_MD5,
|
flog_warn(EC_OSPF_MD5, "interface %s: ospf_check_md5 no key %d",
|
||||||
"interface %s: ospf_check_md5 no key %d", IF_NAME(oi),
|
IF_NAME(oi), ospfh->u.crypt.key_id);
|
||||||
ospfh->u.crypt.key_id);
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1336,8 +1335,7 @@ static void ospf_db_desc(struct ip *iph, struct ospf_header *ospfh,
|
|||||||
* In Hello protocol, optional capability must have checked
|
* In Hello protocol, optional capability must have checked
|
||||||
* to prevent this T-bit enabled router be my neighbor.
|
* to prevent this T-bit enabled router be my neighbor.
|
||||||
*/
|
*/
|
||||||
flog_warn(EC_OSPF_PACKET,
|
flog_warn(EC_OSPF_PACKET, "Packet[DD]: Neighbor %s: T-bit on?",
|
||||||
"Packet[DD]: Neighbor %s: T-bit on?",
|
|
||||||
inet_ntoa(nbr->router_id));
|
inet_ntoa(nbr->router_id));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -1956,8 +1954,8 @@ static void ospf_ls_upd(struct ospf *ospf, struct ip *iph,
|
|||||||
inet_ntop(AF_INET, &lsa->data->id,
|
inet_ntop(AF_INET, &lsa->data->id,
|
||||||
buf2, INET_ADDRSTRLEN),
|
buf2, INET_ADDRSTRLEN),
|
||||||
inet_ntop(AF_INET,
|
inet_ntop(AF_INET,
|
||||||
&lsa->data->adv_router,
|
&lsa->data->adv_router, buf3,
|
||||||
buf3, INET_ADDRSTRLEN));
|
INET_ADDRSTRLEN));
|
||||||
flog_err(
|
flog_err(
|
||||||
EC_OSPF_DOMAIN_CORRUPT,
|
EC_OSPF_DOMAIN_CORRUPT,
|
||||||
"OSPF domain compromised by attack or corruption. "
|
"OSPF domain compromised by attack or corruption. "
|
||||||
|
@ -1231,8 +1231,7 @@ void ospf_sr_ri_lsa_delete(struct ospf_lsa *lsa)
|
|||||||
}
|
}
|
||||||
|
|
||||||
if ((srn->instance != 0) && (srn->instance != ntohl(lsah->id.s_addr))) {
|
if ((srn->instance != 0) && (srn->instance != ntohl(lsah->id.s_addr))) {
|
||||||
flog_err(
|
flog_err(EC_OSPF_SR_INVALID_LSA_ID,
|
||||||
EC_OSPF_SR_INVALID_LSA_ID,
|
|
||||||
"SR (%s): Abort! Wrong LSA ID 4.0.0.%u for SR node %s",
|
"SR (%s): Abort! Wrong LSA ID 4.0.0.%u for SR node %s",
|
||||||
__func__, GET_OPAQUE_ID(ntohl(lsah->id.s_addr)),
|
__func__, GET_OPAQUE_ID(ntohl(lsah->id.s_addr)),
|
||||||
inet_ntoa(lsah->adv_router));
|
inet_ntoa(lsah->adv_router));
|
||||||
|
@ -74,8 +74,8 @@ static int pim_msdp_sock_accept(struct thread *thread)
|
|||||||
/* re-register accept thread */
|
/* re-register accept thread */
|
||||||
accept_sock = THREAD_FD(thread);
|
accept_sock = THREAD_FD(thread);
|
||||||
if (accept_sock < 0) {
|
if (accept_sock < 0) {
|
||||||
flog_err(EC_LIB_DEVELOPMENT,
|
flog_err(EC_LIB_DEVELOPMENT, "accept_sock is negative value %d",
|
||||||
"accept_sock is negative value %d", accept_sock);
|
accept_sock);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
pim->msdp.listener.thread = NULL;
|
pim->msdp.listener.thread = NULL;
|
||||||
@ -141,8 +141,7 @@ int pim_msdp_sock_listen(struct pim_instance *pim)
|
|||||||
|
|
||||||
sock = socket(AF_INET, SOCK_STREAM, 0);
|
sock = socket(AF_INET, SOCK_STREAM, 0);
|
||||||
if (sock < 0) {
|
if (sock < 0) {
|
||||||
flog_err_sys(EC_LIB_SOCKET, "socket: %s",
|
flog_err_sys(EC_LIB_SOCKET, "socket: %s", safe_strerror(errno));
|
||||||
safe_strerror(errno));
|
|
||||||
return sock;
|
return sock;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -24,16 +24,13 @@
|
|||||||
#include "rip_errors.h"
|
#include "rip_errors.h"
|
||||||
|
|
||||||
static struct log_ref ferr_rip_err[] = {
|
static struct log_ref ferr_rip_err[] = {
|
||||||
{
|
{.code = EC_RIP_PACKET,
|
||||||
.code = EC_RIP_PACKET,
|
|
||||||
.title = "RIP Packet Error",
|
.title = "RIP Packet Error",
|
||||||
.description = "RIP has detected a packet encode/decode issue",
|
.description = "RIP has detected a packet encode/decode issue",
|
||||||
.suggestion = "Gather log files from both sides and open a Issue"
|
.suggestion = "Gather log files from both sides and open a Issue"},
|
||||||
},
|
|
||||||
{
|
{
|
||||||
.code = END_FERR,
|
.code = END_FERR,
|
||||||
}
|
}};
|
||||||
};
|
|
||||||
|
|
||||||
void rip_error_init(void)
|
void rip_error_init(void)
|
||||||
{
|
{
|
||||||
|
@ -1056,7 +1056,8 @@ static void rip_auth_md5_set(struct stream *s, struct rip_interface *ri,
|
|||||||
|
|
||||||
/* Check packet length. */
|
/* Check packet length. */
|
||||||
if (len < (RIP_HEADER_SIZE + RIP_RTE_SIZE)) {
|
if (len < (RIP_HEADER_SIZE + RIP_RTE_SIZE)) {
|
||||||
flog_err(EC_RIP_PACKET,
|
flog_err(
|
||||||
|
EC_RIP_PACKET,
|
||||||
"rip_auth_md5_set(): packet length %ld is less than minimum length.",
|
"rip_auth_md5_set(): packet length %ld is less than minimum length.",
|
||||||
len);
|
len);
|
||||||
return;
|
return;
|
||||||
|
@ -204,9 +204,8 @@ int ripng_send_packet(caddr_t buf, int bufsize, struct sockaddr_in6 *to,
|
|||||||
ifp->name, inet6_ntoa(to->sin6_addr),
|
ifp->name, inet6_ntoa(to->sin6_addr),
|
||||||
safe_strerror(errno));
|
safe_strerror(errno));
|
||||||
else
|
else
|
||||||
flog_err_sys(EC_LIB_SOCKET,
|
flog_err_sys(EC_LIB_SOCKET, "RIPng send fail on %s: %s",
|
||||||
"RIPng send fail on %s: %s", ifp->name,
|
ifp->name, safe_strerror(errno));
|
||||||
safe_strerror(errno));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
|
@ -504,8 +504,8 @@ static int wakeup_init(struct thread *t_wakeup)
|
|||||||
static void daemon_down(struct daemon *dmn, const char *why)
|
static void daemon_down(struct daemon *dmn, const char *why)
|
||||||
{
|
{
|
||||||
if (IS_UP(dmn) || (dmn->state == DAEMON_INIT))
|
if (IS_UP(dmn) || (dmn->state == DAEMON_INIT))
|
||||||
flog_err(EC_WATCHFRR_CONNECTION,
|
flog_err(EC_WATCHFRR_CONNECTION, "%s state -> down : %s",
|
||||||
"%s state -> down : %s", dmn->name, why);
|
dmn->name, why);
|
||||||
else if (gs.loglevel > LOG_DEBUG)
|
else if (gs.loglevel > LOG_DEBUG)
|
||||||
zlog_debug("%s still down : %s", dmn->name, why);
|
zlog_debug("%s still down : %s", dmn->name, why);
|
||||||
if (IS_UP(dmn))
|
if (IS_UP(dmn))
|
||||||
|
@ -43,7 +43,8 @@ int ipforward(void)
|
|||||||
|
|
||||||
len = sizeof ipforwarding;
|
len = sizeof ipforwarding;
|
||||||
if (sysctl(mib, MIB_SIZ, &ipforwarding, &len, 0, 0) < 0) {
|
if (sysctl(mib, MIB_SIZ, &ipforwarding, &len, 0, 0) < 0) {
|
||||||
flog_err_sys(EC_LIB_SYSTEM_CALL, "Can't get ipforwarding value");
|
flog_err_sys(EC_LIB_SYSTEM_CALL,
|
||||||
|
"Can't get ipforwarding value");
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
return ipforwarding;
|
return ipforwarding;
|
||||||
|
@ -90,8 +90,7 @@ int irdp_sock_init(void)
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (sock < 0) {
|
if (sock < 0) {
|
||||||
flog_err_sys(EC_LIB_SOCKET,
|
flog_err_sys(EC_LIB_SOCKET, "IRDP: can't create irdp socket %s",
|
||||||
"IRDP: can't create irdp socket %s",
|
|
||||||
safe_strerror(save_errno));
|
safe_strerror(save_errno));
|
||||||
return sock;
|
return sock;
|
||||||
};
|
};
|
||||||
|
@ -453,8 +453,7 @@ static void netlink_install_filter(int sock, __u32 pid)
|
|||||||
|
|
||||||
if (setsockopt(sock, SOL_SOCKET, SO_ATTACH_FILTER, &prog, sizeof(prog))
|
if (setsockopt(sock, SOL_SOCKET, SO_ATTACH_FILTER, &prog, sizeof(prog))
|
||||||
< 0)
|
< 0)
|
||||||
flog_err_sys(EC_LIB_SOCKET,
|
flog_err_sys(EC_LIB_SOCKET, "Can't install socket filter: %s\n",
|
||||||
"Can't install socket filter: %s\n",
|
|
||||||
safe_strerror(errno));
|
safe_strerror(errno));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -803,8 +802,7 @@ int netlink_parse_info(int (*filter)(struct nlmsghdr *, ns_id_t, int),
|
|||||||
|
|
||||||
if (h->nlmsg_len
|
if (h->nlmsg_len
|
||||||
< NLMSG_LENGTH(sizeof(struct nlmsgerr))) {
|
< NLMSG_LENGTH(sizeof(struct nlmsgerr))) {
|
||||||
flog_err(
|
flog_err(EC_ZEBRA_NETLINK_LENGTH_ERROR,
|
||||||
EC_ZEBRA_NETLINK_LENGTH_ERROR,
|
|
||||||
"%s error: message truncated",
|
"%s error: message truncated",
|
||||||
nl->name);
|
nl->name);
|
||||||
return -1;
|
return -1;
|
||||||
|
@ -1392,8 +1392,7 @@ static void routing_socket(struct zebra_ns *zns)
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (routing_sock < 0) {
|
if (routing_sock < 0) {
|
||||||
flog_err_sys(EC_LIB_SOCKET,
|
flog_err_sys(EC_LIB_SOCKET, "Can't init kernel routing socket");
|
||||||
"Can't init kernel routing socket");
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -148,8 +148,7 @@ struct table_manager_chunk *assign_table_chunk(uint8_t proto, uint16_t instance,
|
|||||||
tmc->start = start;
|
tmc->start = start;
|
||||||
if (RT_TABLE_ID_UNRESERVED_MAX - size + 1 < start) {
|
if (RT_TABLE_ID_UNRESERVED_MAX - size + 1 < start) {
|
||||||
flog_err(EC_ZEBRA_TM_EXHAUSTED_IDS,
|
flog_err(EC_ZEBRA_TM_EXHAUSTED_IDS,
|
||||||
"Reached max table id. Start/Size %u/%u", start,
|
"Reached max table id. Start/Size %u/%u", start, size);
|
||||||
size);
|
|
||||||
XFREE(MTYPE_TM_CHUNK, tmc);
|
XFREE(MTYPE_TM_CHUNK, tmc);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
@ -1518,8 +1518,7 @@ static inline void zfpm_init_message_format(const char *format)
|
|||||||
|
|
||||||
if (!strcmp("netlink", format)) {
|
if (!strcmp("netlink", format)) {
|
||||||
if (!have_netlink) {
|
if (!have_netlink) {
|
||||||
flog_err(
|
flog_err(EC_ZEBRA_NETLINK_NOT_AVAILABLE,
|
||||||
EC_ZEBRA_NETLINK_NOT_AVAILABLE,
|
|
||||||
"FPM netlink message format is not available");
|
"FPM netlink message format is not available");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -181,8 +181,8 @@ static int zebra_ptm_flush_messages(struct thread *thread)
|
|||||||
|
|
||||||
switch (buffer_flush_available(ptm_cb.wb, ptm_cb.ptm_sock)) {
|
switch (buffer_flush_available(ptm_cb.wb, ptm_cb.ptm_sock)) {
|
||||||
case BUFFER_ERROR:
|
case BUFFER_ERROR:
|
||||||
flog_err_sys(EC_LIB_SOCKET, "%s ptm socket error: %s",
|
flog_err_sys(EC_LIB_SOCKET, "%s ptm socket error: %s", __func__,
|
||||||
__func__, safe_strerror(errno));
|
safe_strerror(errno));
|
||||||
close(ptm_cb.ptm_sock);
|
close(ptm_cb.ptm_sock);
|
||||||
ptm_cb.ptm_sock = -1;
|
ptm_cb.ptm_sock = -1;
|
||||||
zebra_ptm_reset_status(0);
|
zebra_ptm_reset_status(0);
|
||||||
@ -207,8 +207,8 @@ static int zebra_ptm_send_message(char *data, int size)
|
|||||||
errno = 0;
|
errno = 0;
|
||||||
switch (buffer_write(ptm_cb.wb, ptm_cb.ptm_sock, data, size)) {
|
switch (buffer_write(ptm_cb.wb, ptm_cb.ptm_sock, data, size)) {
|
||||||
case BUFFER_ERROR:
|
case BUFFER_ERROR:
|
||||||
flog_err_sys(EC_LIB_SOCKET, "%s ptm socket error: %s",
|
flog_err_sys(EC_LIB_SOCKET, "%s ptm socket error: %s", __func__,
|
||||||
__func__, safe_strerror(errno));
|
safe_strerror(errno));
|
||||||
close(ptm_cb.ptm_sock);
|
close(ptm_cb.ptm_sock);
|
||||||
ptm_cb.ptm_sock = -1;
|
ptm_cb.ptm_sock = -1;
|
||||||
zebra_ptm_reset_status(0);
|
zebra_ptm_reset_status(0);
|
||||||
|
@ -798,9 +798,8 @@ void zserv_start(char *path)
|
|||||||
ret = bind(zebrad.sock, (struct sockaddr *)&sa, sa_len);
|
ret = bind(zebrad.sock, (struct sockaddr *)&sa, sa_len);
|
||||||
}
|
}
|
||||||
if (ret < 0) {
|
if (ret < 0) {
|
||||||
flog_err_sys(EC_LIB_SOCKET,
|
flog_err_sys(EC_LIB_SOCKET, "Can't bind zserv socket on %s: %s",
|
||||||
"Can't bind zserv socket on %s: %s", path,
|
path, safe_strerror(errno));
|
||||||
safe_strerror(errno));
|
|
||||||
close(zebrad.sock);
|
close(zebrad.sock);
|
||||||
zebrad.sock = -1;
|
zebrad.sock = -1;
|
||||||
return;
|
return;
|
||||||
|
Loading…
Reference in New Issue
Block a user