diff options
author | Thomas Haller <thaller@redhat.com> | 2022-07-22 18:30:44 +0200 |
---|---|---|
committer | Thomas Haller <thaller@redhat.com> | 2022-07-26 12:28:03 +0200 |
commit | 76d63c66d773afe40640c1199ebdcc7e5a85b15b (patch) | |
tree | 0a69e00e60eb8d390b5eb368d8afa225cbfab869 | |
parent | 51625013d4bc610569422ad22f824a82a92a21e1 (diff) | |
download | NetworkManager-76d63c66d773afe40640c1199ebdcc7e5a85b15b.tar.gz |
glib-aux: add nm_utils_ip4_address_is_loopback()
-rw-r--r-- | src/libnm-glib-aux/nm-shared-utils.h | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/libnm-glib-aux/nm-shared-utils.h b/src/libnm-glib-aux/nm-shared-utils.h index 20810e4cd5..81c7260612 100644 --- a/src/libnm-glib-aux/nm-shared-utils.h +++ b/src/libnm-glib-aux/nm-shared-utils.h @@ -508,8 +508,16 @@ gboolean nm_utils_ip_is_site_local(int addr_family, const void *address); /*****************************************************************************/ -#define NM_IPV4LL_NETWORK ((in_addr_t) (htonl(0xA9FE0000lu))) -#define NM_IPV4LL_NETMASK ((in_addr_t) (htonl(0xFFFF0000lu))) +#define NM_IPV4LL_NETWORK ((in_addr_t) htonl(0xA9FE0000lu)) +#define NM_IPV4LL_NETMASK ((in_addr_t) htonl(0xFFFF0000lu)) + +static inline gboolean +nm_utils_ip4_address_is_loopback(in_addr_t addr) +{ + /* There is also IN_LOOPBACK() in <linux/in.h>, but there the + * argument is in host order not `in_addr_t`. */ + return (addr & htonl(0xFF000000u)) == htonl(0x7F000000u); +} static inline gboolean nm_utils_ip4_address_is_link_local(in_addr_t addr) |