mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-08-06 23:29:36 +00:00
lib: Update zclient.c warn code
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
This commit is contained in:
parent
29c7044c63
commit
decbd92979
@ -62,7 +62,7 @@ static struct log_ref ferr_lib_err[] = {
|
||||
.code = LIB_ERR_ZAPI_ENCODE,
|
||||
.title = "ZAPI Error",
|
||||
.description = "The ZAPI subsystem has detected an encoding issue, between zebra and a client protocol",
|
||||
.suggestion = "Restart FRR"
|
||||
.suggestion = "Gather data and open an Issue, also Restart FRR"
|
||||
},
|
||||
{
|
||||
.code = LIB_ERR_ZAPI_SOCKET,
|
||||
|
@ -221,7 +221,7 @@ int zclient_socket_connect(struct zclient *zclient)
|
||||
ret = connect(sock, (struct sockaddr *)&zclient_addr, zclient_addr_len);
|
||||
if (ret < 0) {
|
||||
if (zclient_debug)
|
||||
zlog_warn("%s connect failure: %d(%s)",
|
||||
zlog_debug("%s connect failure: %d(%s)",
|
||||
__PRETTY_FUNCTION__, errno,
|
||||
safe_strerror(errno));
|
||||
close(sock);
|
||||
@ -249,7 +249,7 @@ static int zclient_flush_data(struct thread *thread)
|
||||
return -1;
|
||||
switch (buffer_flush_available(zclient->wb, zclient->sock)) {
|
||||
case BUFFER_ERROR:
|
||||
zlog_warn(
|
||||
flog_err(LIB_ERR_ZAPI_SOCKET,
|
||||
"%s: buffer_flush_available failed on zclient fd %d, closing",
|
||||
__func__, zclient->sock);
|
||||
return zclient_failed(zclient);
|
||||
@ -273,7 +273,8 @@ int zclient_send_message(struct zclient *zclient)
|
||||
STREAM_DATA(zclient->obuf),
|
||||
stream_get_endp(zclient->obuf))) {
|
||||
case BUFFER_ERROR:
|
||||
zlog_warn("%s: buffer_write failed to zclient fd %d, closing",
|
||||
flog_err(LIB_ERR_ZAPI_SOCKET,
|
||||
"%s: buffer_write failed to zclient fd %d, closing",
|
||||
__func__, zclient->sock);
|
||||
return zclient_failed(zclient);
|
||||
break;
|
||||
@ -575,7 +576,8 @@ int zclient_start(struct zclient *zclient)
|
||||
}
|
||||
|
||||
if (set_nonblocking(zclient->sock) < 0)
|
||||
zlog_warn("%s: set_nonblocking(%d) failed", __func__,
|
||||
flog_err(LIB_ERR_ZAPI_SOCKET,
|
||||
"%s: set_nonblocking(%d) failed", __func__,
|
||||
zclient->sock);
|
||||
|
||||
/* Clear fail count. */
|
||||
@ -771,9 +773,8 @@ int zapi_route_encode(uint8_t cmd, struct stream *s, struct zapi_route *api)
|
||||
char buf[PREFIX2STR_BUFFER];
|
||||
|
||||
prefix2str(&api->prefix, buf, sizeof(buf));
|
||||
zlog_warn(
|
||||
"%s: prefix %s: can't encode %u nexthops "
|
||||
"(maximum is %u)",
|
||||
flog_err(LIB_ERR_ZAPI_ENCODE,
|
||||
"%s: prefix %s: can't encode %u nexthops (maximum is %u)",
|
||||
__func__, buf, api->nexthop_num, MULTIPATH_NUM);
|
||||
return -1;
|
||||
}
|
||||
@ -808,11 +809,6 @@ int zapi_route_encode(uint8_t cmd, struct stream *s, struct zapi_route *api)
|
||||
16);
|
||||
stream_putl(s, api_nh->ifindex);
|
||||
break;
|
||||
default:
|
||||
zlog_warn(
|
||||
"%s: Specified Nexthop type %d does not exist",
|
||||
__PRETTY_FUNCTION__, api_nh->type);
|
||||
return -1;
|
||||
}
|
||||
|
||||
/* MPLS labels for BGP-LU or Segment Routing */
|
||||
@ -871,7 +867,8 @@ int zapi_route_decode(struct stream *s, struct zapi_route *api)
|
||||
/* Type, flags, message. */
|
||||
STREAM_GETC(s, api->type);
|
||||
if (api->type > ZEBRA_ROUTE_MAX) {
|
||||
zlog_warn("%s: Specified route type: %d is not a legal value\n",
|
||||
flog_err(LIB_ERR_ZAPI_ENCODE,
|
||||
"%s: Specified route type: %d is not a legal value\n",
|
||||
__PRETTY_FUNCTION__, api->type);
|
||||
return -1;
|
||||
}
|
||||
@ -887,7 +884,7 @@ int zapi_route_decode(struct stream *s, struct zapi_route *api)
|
||||
switch (api->prefix.family) {
|
||||
case AF_INET:
|
||||
if (api->prefix.prefixlen > IPV4_MAX_PREFIXLEN) {
|
||||
zlog_warn(
|
||||
flog_err(LIB_ERR_ZAPI_ENCODE,
|
||||
"%s: V4 prefixlen is %d which should not be more than 32",
|
||||
__PRETTY_FUNCTION__, api->prefix.prefixlen);
|
||||
return -1;
|
||||
@ -895,14 +892,15 @@ int zapi_route_decode(struct stream *s, struct zapi_route *api)
|
||||
break;
|
||||
case AF_INET6:
|
||||
if (api->prefix.prefixlen > IPV6_MAX_PREFIXLEN) {
|
||||
zlog_warn(
|
||||
flog_err(LIB_ERR_ZAPI_ENCODE,
|
||||
"%s: v6 prefixlen is %d which should not be more than 128",
|
||||
__PRETTY_FUNCTION__, api->prefix.prefixlen);
|
||||
return -1;
|
||||
}
|
||||
break;
|
||||
default:
|
||||
zlog_warn("%s: Specified family %d is not v4 or v6",
|
||||
flog_err(LIB_ERR_ZAPI_ENCODE,
|
||||
"%s: Specified family %d is not v4 or v6",
|
||||
__PRETTY_FUNCTION__, api->prefix.family);
|
||||
return -1;
|
||||
}
|
||||
@ -912,7 +910,7 @@ int zapi_route_decode(struct stream *s, struct zapi_route *api)
|
||||
api->src_prefix.family = AF_INET6;
|
||||
STREAM_GETC(s, api->src_prefix.prefixlen);
|
||||
if (api->src_prefix.prefixlen > IPV6_MAX_PREFIXLEN) {
|
||||
zlog_warn(
|
||||
flog_err(LIB_ERR_ZAPI_ENCODE,
|
||||
"%s: SRC Prefix prefixlen received: %d is too large",
|
||||
__PRETTY_FUNCTION__, api->src_prefix.prefixlen);
|
||||
return -1;
|
||||
@ -922,7 +920,7 @@ int zapi_route_decode(struct stream *s, struct zapi_route *api)
|
||||
|
||||
if (api->prefix.family != AF_INET6
|
||||
|| api->src_prefix.prefixlen == 0) {
|
||||
zlog_warn(
|
||||
flog_err(LIB_ERR_ZAPI_ENCODE,
|
||||
"%s: SRC prefix specified in some manner that makes no sense",
|
||||
__PRETTY_FUNCTION__);
|
||||
return -1;
|
||||
@ -933,7 +931,8 @@ int zapi_route_decode(struct stream *s, struct zapi_route *api)
|
||||
if (CHECK_FLAG(api->message, ZAPI_MESSAGE_NEXTHOP)) {
|
||||
STREAM_GETW(s, api->nexthop_num);
|
||||
if (api->nexthop_num > MULTIPATH_NUM) {
|
||||
zlog_warn("%s: invalid number of nexthops (%u)",
|
||||
flog_err(LIB_ERR_ZAPI_ENCODE,
|
||||
"%s: invalid number of nexthops (%u)",
|
||||
__func__, api->nexthop_num);
|
||||
return -1;
|
||||
}
|
||||
@ -966,11 +965,6 @@ int zapi_route_decode(struct stream *s, struct zapi_route *api)
|
||||
STREAM_GET(&api_nh->gate.ipv6, s, 16);
|
||||
STREAM_GETL(s, api_nh->ifindex);
|
||||
break;
|
||||
default:
|
||||
zlog_warn(
|
||||
"%s: Specified nexthop type %d does not exist",
|
||||
__PRETTY_FUNCTION__, api_nh->type);
|
||||
return -1;
|
||||
}
|
||||
|
||||
/* MPLS labels for BGP-LU or Segment Routing */
|
||||
@ -978,9 +972,8 @@ int zapi_route_decode(struct stream *s, struct zapi_route *api)
|
||||
STREAM_GETC(s, api_nh->label_num);
|
||||
|
||||
if (api_nh->label_num > MPLS_MAX_LABELS) {
|
||||
zlog_warn(
|
||||
"%s: invalid number of MPLS "
|
||||
"labels (%u)",
|
||||
flog_err(LIB_ERR_ZAPI_ENCODE,
|
||||
"%s: invalid number of MPLS labels (%u)",
|
||||
__func__, api_nh->label_num);
|
||||
return -1;
|
||||
}
|
||||
@ -1239,7 +1232,8 @@ bool zapi_nexthop_update_decode(struct stream *s, struct zapi_route *nhr)
|
||||
}
|
||||
STREAM_GETC(s, nhr->nexthops[i].label_num);
|
||||
if (nhr->nexthops[i].label_num > MPLS_MAX_LABELS) {
|
||||
zlog_warn("%s: invalid number of MPLS labels (%u)",
|
||||
flog_err(LIB_ERR_ZAPI_ENCODE,
|
||||
"%s: invalid number of MPLS labels (%u)",
|
||||
__func__, nhr->nexthops[i].label_num);
|
||||
return false;
|
||||
}
|
||||
@ -1424,7 +1418,8 @@ struct interface *zebra_interface_state_read(struct stream *s, vrf_id_t vrf_id)
|
||||
/* Lookup this by interface index. */
|
||||
ifp = if_lookup_by_name(ifname_tmp, vrf_id);
|
||||
if (ifp == NULL) {
|
||||
zlog_warn("INTERFACE_STATE: Cannot find IF %s in VRF %d",
|
||||
flog_err(LIB_ERR_ZAPI_ENCODE,
|
||||
"INTERFACE_STATE: Cannot find IF %s in VRF %d",
|
||||
ifname_tmp, vrf_id);
|
||||
return NULL;
|
||||
}
|
||||
@ -1633,7 +1628,8 @@ struct connected *zebra_interface_address_read(int type, struct stream *s,
|
||||
/* Lookup index. */
|
||||
ifp = if_lookup_by_index(ifindex, vrf_id);
|
||||
if (ifp == NULL) {
|
||||
zlog_warn("INTERFACE_ADDRESS_%s: Cannot find IF %u in VRF %d",
|
||||
flog_err(LIB_ERR_ZAPI_ENCODE,
|
||||
"INTERFACE_ADDRESS_%s: Cannot find IF %u in VRF %d",
|
||||
(type == ZEBRA_INTERFACE_ADDRESS_ADD) ? "ADD" : "DEL",
|
||||
ifindex, vrf_id);
|
||||
return NULL;
|
||||
@ -1670,9 +1666,8 @@ struct connected *zebra_interface_address_read(int type, struct stream *s,
|
||||
/* carp interfaces on OpenBSD with 0.0.0.0/0 as
|
||||
* "peer" */
|
||||
char buf[PREFIX_STRLEN];
|
||||
zlog_warn(
|
||||
"warning: interface %s address %s "
|
||||
"with peer flag set, but no peer address!",
|
||||
flog_err(LIB_ERR_ZAPI_ENCODE,
|
||||
"warning: interface %s address %s with peer flag set, but no peer address!",
|
||||
ifp->name,
|
||||
prefix2str(ifc->address, buf,
|
||||
sizeof buf));
|
||||
@ -1725,7 +1720,8 @@ zebra_interface_nbr_address_read(int type, struct stream *s, vrf_id_t vrf_id)
|
||||
/* Lookup index. */
|
||||
ifp = if_lookup_by_index(ifindex, vrf_id);
|
||||
if (ifp == NULL) {
|
||||
zlog_warn("INTERFACE_NBR_%s: Cannot find IF %u in VRF %d",
|
||||
flog_err(LIB_ERR_ZAPI_ENCODE,
|
||||
"INTERFACE_NBR_%s: Cannot find IF %u in VRF %d",
|
||||
(type == ZEBRA_INTERFACE_NBR_ADDRESS_ADD) ? "ADD"
|
||||
: "DELETE",
|
||||
ifindex, vrf_id);
|
||||
@ -1774,7 +1770,8 @@ struct interface *zebra_interface_vrf_update_read(struct stream *s,
|
||||
/* Lookup interface. */
|
||||
ifp = if_lookup_by_index(ifindex, vrf_id);
|
||||
if (ifp == NULL) {
|
||||
zlog_warn("INTERFACE_VRF_UPDATE: Cannot find IF %u in VRF %d",
|
||||
flog_err(LIB_ERR_ZAPI_ENCODE,
|
||||
"INTERFACE_VRF_UPDATE: Cannot find IF %u in VRF %d",
|
||||
ifindex, vrf_id);
|
||||
return NULL;
|
||||
}
|
||||
@ -2410,7 +2407,7 @@ static int zclient_read(struct thread *thread)
|
||||
/* Length check. */
|
||||
if (length > STREAM_SIZE(zclient->ibuf)) {
|
||||
struct stream *ns;
|
||||
zlog_warn(
|
||||
flog_err(LIB_ERR_ZAPI_ENCODE,
|
||||
"%s: message size %u exceeds buffer size %lu, expanding...",
|
||||
__func__, length,
|
||||
(unsigned long)STREAM_SIZE(zclient->ibuf));
|
||||
|
Loading…
Reference in New Issue
Block a user