From 8ccd79ad087a913256cb8a759ff86989dee7754d Mon Sep 17 00:00:00 2001 From: Oleg Hahm Date: Fri, 3 Mar 2023 00:45:47 +0100 Subject: [PATCH] modules/network: do not use IPv6 link-local Probably you don't want to see your IPv6 link-local address but rather a global one. --- CHANGELOG.md | 2 ++ modules/network.c | 3 ++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 507275c..bfbf6c6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -28,8 +28,10 @@ * battery/network/script: `poll-interval` unit changed from seconds to milliseconds ([#244][244]). * all modules: minimum poll interval changed from 500ms to 250ms. +* network: do not use IPv6 link-local ([#281][281]) [244]: https://codeberg.org/dnkl/yambar/issues/244 +[281]: https://codeberg.org/dnkl/yambar/pulls/281 ### Deprecated diff --git a/modules/network.c b/modules/network.c index 6773fcf..7166e24 100644 --- a/modules/network.c +++ b/modules/network.c @@ -150,7 +150,8 @@ content(struct module *mod) if (it->item.family == AF_INET) inet_ntop(AF_INET, &it->item.addr.ipv4, ipv4_str, sizeof(ipv4_str)); else if (it->item.family == AF_INET6) - inet_ntop(AF_INET6, &it->item.addr.ipv6, ipv6_str, sizeof(ipv6_str)); + if(!IN6_IS_ADDR_LINKLOCAL(&it->item.addr.ipv6)) + inet_ntop(AF_INET6, &it->item.addr.ipv6, ipv6_str, sizeof(ipv6_str)); } struct tag_set tags = {