char *fmt_ipinfo(ip_t *addr) { char *ipinfo = get_ipinfo(addr); char fmt[8]; snprintf(fmt, sizeof(fmt), "%s%%-%ds", ipinfo_no?"":"AS", get_iiwidth()); snprintf(fmtinfo, sizeof(fmtinfo), fmt, ipinfo?ipinfo:UNKN); return fmtinfo; }
char *fmt_ipinfo( struct mtr_ctl *ctl, ip_t * addr) { char *ipinfo = get_ipinfo(ctl, addr); char fmt[8]; snprintf(fmt, sizeof(fmt), "%s%%-%ds", ctl->ipinfo_no ? "" : "AS", get_iiwidth(ctl->ipinfo_no)); snprintf(fmtinfo, sizeof(fmtinfo), fmt, ipinfo ? ipinfo : UNKN); return fmtinfo; }
char *fmt_ipinfo(ip_t *addr) { static char fmtinfo[NAMELEN]; char fmt[16]; int len = 0; int i; for (i = 0; (i < II_ITEM_MAX) && (ipinfo_no[i] >= 0); i++) { char *ipinfo = get_ipinfo(addr, i); int width = origins[origin_no].width[ipinfo_no[i]]; if (ipinfo) { int l = strlen(ipinfo); if (!l) ipinfo = UNKN; if ((l >= width) && (width > 0)) ipinfo[width - 1] = 0; } else ipinfo = UNKN; sprintf(fmt, "%s%%-%ds", (ipinfo_no[i] == origins[origin_no].as_prfx_ndx) ? "AS" : "", width); sprintf(fmtinfo + len, fmt, ipinfo); len = strlen(fmtinfo); } return fmtinfo; }