From a2cb3e59c275421055d095ea61f6adbcd80f46db Mon Sep 17 00:00:00 2001 From: sushen339 Date: Tue, 18 Nov 2025 17:23:31 +0800 Subject: [PATCH] --- blockip/bip | Bin 58392 -> 58392 bytes blockip/src/ban.c | 15 ++++++++++----- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/blockip/bip b/blockip/bip index 1cf2140c80bae21fcd0434a5d53af286ea97f1e5..e8caee1b5aad3404eb413627b0b37002ab1dfa8b 100644 GIT binary patch delta 11720 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 SdgkGIp6#Qj_q(ep;{O3fs7H(d delta 11485 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 diff --git a/blockip/src/ban.c b/blockip/src/ban.c index cc20501..cc91584 100644 --- a/blockip/src/ban.c +++ b/blockip/src/ban.c @@ -318,17 +318,22 @@ void show_persist_list(void) { C_CYAN, ipv4_count, C_RESET, C_YELLOW, ipv6_count, C_RESET); - printf("%s%-45s%s\n", C_YELLOW, "IP 地址", C_RESET); - printf("---------------------------------------------\n"); + printf("%s%-40s %-15s%s\n", C_YELLOW, "IP 地址", "国家/地区", C_RESET); + printf("--------------------------------------------------------\n"); rewind(fp); while (fgets(line, sizeof(line), fp)) { line[strcspn(line, "\n")] = 0; if (strlen(line) > 0) { - /* 只显示IP部分 */ + /* 解析IP和国家 */ char *pipe = strchr(line, '|'); - if (pipe) *pipe = '\0'; - printf("%-45s\n", line); + + if (pipe) { + *pipe = '\0'; + printf("%-40s %s\n", line, get_country_name(pipe + 1)); + } else { + printf("%-40s %s\n", line, "-"); + } } }