コード例 #1
0
ファイル: asn.c プロジェクト: RichiH/mtr
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;
}
コード例 #2
0
ファイル: asn.c プロジェクト: russor/mtr
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;
}
コード例 #3
0
ファイル: asn.c プロジェクト: bzruk/mtr
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;
}