diff options
| author | Donald Sharp <sharpd@cumulusnetworks.com> | 2016-11-17 08:17:25 -0500 | 
|---|---|---|
| committer | Donald Sharp <sharpd@cumulusnetworks.com> | 2016-12-21 20:26:16 -0500 | 
| commit | 8bfb8b67ae63eb0ee81e9c928b11836dcd690d6c (patch) | |
| tree | 49baa69966e7ef2aff40e05fcf8c2c2a3d3230d5 /pimd/pim_str.c | |
| parent | 9d8b5695fe8229c86fc606f90a0078e599384c6d (diff) | |
pimd: Allow storing of sg in string format
Debugs are extremely expensive currently.  Let's
store 'struct prefix_sg sg' string format in
the ifchannel, upstream and msdp_sa structures.
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Diffstat (limited to 'pimd/pim_str.c')
| -rw-r--r-- | pimd/pim_str.c | 18 | 
1 files changed, 16 insertions, 2 deletions
diff --git a/pimd/pim_str.c b/pimd/pim_str.c index 4c25c00294..5144031794 100644 --- a/pimd/pim_str.c +++ b/pimd/pim_str.c @@ -67,10 +67,24 @@ pim_str_sg_dump (const struct prefix_sg *sg)  {    char src_str[INET_ADDRSTRLEN];    char grp_str[INET_ADDRSTRLEN]; -  static char sg_str[200]; +  static char sg_str[PIM_SG_LEN];    pim_inet4_dump ("<src?>", sg->src, src_str, sizeof(src_str));    pim_inet4_dump ("<grp?>", sg->grp, grp_str, sizeof(grp_str)); -  snprintf (sg_str, 200, "(%s,%s)", src_str, grp_str); +  snprintf (sg_str, PIM_SG_LEN, "(%s,%s)", src_str, grp_str); + +  return sg_str; +} + +char * +pim_str_sg_set (const struct prefix_sg *sg, char *sg_str) +{ +  char src_str[INET_ADDRSTRLEN]; +  char grp_str[INET_ADDRSTRLEN]; + +  pim_inet4_dump ("<src?>", sg->src, src_str, sizeof(src_str)); +  pim_inet4_dump ("<grp?>", sg->grp, grp_str, sizeof(grp_str)); +  snprintf (sg_str, PIM_SG_LEN, "(%s,%s)", src_str, grp_str); +    return sg_str;  }  | 
