diff options
author | Pau Espin Pedrol <pespin@sysmocom.de> | 2019-08-20 11:43:25 +0200 |
---|---|---|
committer | Pau Espin Pedrol <pespin@sysmocom.de> | 2019-08-28 11:13:32 +0200 |
commit | 60ee0dbfa479adfa2af10a8bf0f652a9a92d5c3b (patch) | |
tree | 082f6dc920f6fed72c6b0f2f4b4451610359e94f /lib | |
parent | d950134c530526f03ed908dcf5e02f88b3f1c9fc (diff) |
Introduce in46a_is_v{4,6}() helpers
It's clearer having size-related checks in one place for a data structure
in46_addr, instead of spread around the code.
Change-Id: Idc94bf0c8c01bb5a30e36d3c284b99f66b972abb
Diffstat (limited to 'lib')
-rw-r--r-- | lib/in46_addr.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/lib/in46_addr.h b/lib/in46_addr.h index e4654cc..153df00 100644 --- a/lib/in46_addr.h +++ b/lib/in46_addr.h @@ -31,3 +31,11 @@ unsigned int in46a_netmasklen(const struct in46_addr *netmask); int in46a_to_eua(const struct in46_addr *src, unsigned int size, struct ul66_t *eua); int in46a_from_eua(const struct ul66_t *eua, struct in46_addr *dst); + +static inline bool in46a_is_v6(const struct in46_addr *addr) { + return addr->len == 8 || addr->len == 16; +} + +static inline bool in46a_is_v4(const struct in46_addr *addr) { + return addr->len == sizeof(struct in_addr); +} |