{
int i;
char *str;
- char *pnt;
int len;
int first;
uint32_t comval;
}
/* Allocate memory. */
- str = pnt = XMALLOC(MTYPE_COMMUNITY_STR, len);
+ str = XMALLOC(MTYPE_COMMUNITY_STR, len);
first = 1;
/* Fill in string. */
}
break;
case COMMUNITY_GSHUT:
- strlcat(pnt, "graceful-shutdown", len);
+ strlcat(str, "graceful-shutdown", len);
if (make_json) {
json_string = json_object_new_string(
"gracefulShutdown");
}
break;
case COMMUNITY_ACCEPT_OWN:
- strlcat(pnt, "accept-own", len);
+ strlcat(str, "accept-own", len);
if (make_json) {
json_string = json_object_new_string(
"acceptown");
}
break;
case COMMUNITY_ROUTE_FILTER_TRANSLATED_v4:
- strlcat(pnt, "route-filter-translated-v4", len);
+ strlcat(str, "route-filter-translated-v4", len);
if (make_json) {
json_string = json_object_new_string(
"routeFilterTranslatedV4");
}
break;
case COMMUNITY_ROUTE_FILTER_v4:
- strlcat(pnt, "route-filter-v4", len);
+ strlcat(str, "route-filter-v4", len);
if (make_json) {
json_string = json_object_new_string(
"routeFilterV4");
}
break;
case COMMUNITY_ROUTE_FILTER_TRANSLATED_v6:
- strlcat(pnt, "route-filter-translated-v6", len);
+ strlcat(str, "route-filter-translated-v6", len);
if (make_json) {
json_string = json_object_new_string(
"routeFilterTranslatedV6");
}
break;
case COMMUNITY_ROUTE_FILTER_v6:
- strlcat(pnt, "route-filter-v6", len);
+ strlcat(str, "route-filter-v6", len);
if (make_json) {
json_string = json_object_new_string(
"routeFilterV6");
}
break;
case COMMUNITY_LLGR_STALE:
- strlcat(pnt, "llgr-stale", len);
+ strlcat(str, "llgr-stale", len);
if (make_json) {
json_string = json_object_new_string(
"llgrStale");
}
break;
case COMMUNITY_NO_LLGR:
- strlcat(pnt, "no-llgr", len);
+ strlcat(str, "no-llgr", len);
if (make_json) {
json_string = json_object_new_string(
"noLlgr");
}
break;
case COMMUNITY_ACCEPT_OWN_NEXTHOP:
- strlcat(pnt, "accept-own-nexthop", len);
+ strlcat(str, "accept-own-nexthop", len);
if (make_json) {
json_string = json_object_new_string(
"acceptownnexthop");
}
break;
case COMMUNITY_BLACKHOLE:
- strlcat(pnt, "blackhole", len);
+ strlcat(str, "blackhole", len);
if (make_json) {
json_string = json_object_new_string(
"blackhole");
}
break;
case COMMUNITY_NO_EXPORT:
- strlcat(pnt, "no-export", len);
+ strlcat(str, "no-export", len);
if (make_json) {
json_string =
json_object_new_string("noExport");
}
break;
case COMMUNITY_NO_ADVERTISE:
- strlcat(pnt, "no-advertise", len);
+ strlcat(str, "no-advertise", len);
if (make_json) {
json_string =
json_object_new_string("noAdvertise");
}
break;
case COMMUNITY_LOCAL_AS:
- strlcat(pnt, "local-AS", len);
+ strlcat(str, "local-AS", len);
if (make_json) {
json_string = json_object_new_string("localAs");
json_object_array_add(json_community_list,
}
break;
case COMMUNITY_NO_PEER:
- strlcat(pnt, "no-peer", len);
+ strlcat(str, "no-peer", len);
if (make_json) {
json_string = json_object_new_string("noPeer");
json_object_array_add(json_community_list,
default:
as = (comval >> 16) & 0xFFFF;
val = comval & 0xFFFF;
- sprintf(pnt, "%u:%d", as, val);
+ char buf[32];
+ snprintf(buf, sizeof(buf), "%u:%d", as, val);
+ strlcat(str, buf, len);
if (make_json) {
- json_string = json_object_new_string(pnt);
+ json_string = json_object_new_string(buf);
json_object_array_add(json_community_list,
json_string);
}
- pnt += strlen(pnt);
break;
}
}
- *pnt = '\0';
if (make_json) {
json_object_string_add(com->json, "string", str);