summary refs log tree commit diff
path: root/src/libnm-glib-aux
diff options
context:
space:
mode:
Diffstat (limited to 'src/libnm-glib-aux')
-rw-r--r--src/libnm-glib-aux/nm-shared-utils.c11
-rw-r--r--src/libnm-glib-aux/nm-shared-utils.h2
2 files changed, 13 insertions, 0 deletions
diff --git a/src/libnm-glib-aux/nm-shared-utils.c b/src/libnm-glib-aux/nm-shared-utils.c
index 421e4d1b..25c78fd3 100644
--- a/src/libnm-glib-aux/nm-shared-utils.c
+++ b/src/libnm-glib-aux/nm-shared-utils.c
@@ -58,6 +58,17 @@ nm_ether_addr_from_string(NMEtherAddr *addr, const char *str)
     return addr;
 }
 
+guint
+nm_ether_addr_hash(const NMEtherAddr *a)
+{
+    NMHashState h;
+
+    nm_hash_init(&h, 1947951703u);
+    nm_hash_update(&h, a, sizeof(NMEtherAddr));
+
+    return nm_hash_complete(&h);
+}
+
 /*****************************************************************************/
 
 /**
diff --git a/src/libnm-glib-aux/nm-shared-utils.h b/src/libnm-glib-aux/nm-shared-utils.h
index ca9feb60..70f1912e 100644
--- a/src/libnm-glib-aux/nm-shared-utils.h
+++ b/src/libnm-glib-aux/nm-shared-utils.h
@@ -240,6 +240,8 @@ nm_ether_addr_is_zero(const NMEtherAddr *a)
     return nm_memeq(a, &nm_ether_addr_zero, sizeof(NMEtherAddr));
 }
 
+guint nm_ether_addr_hash(const NMEtherAddr *a);
+
 /*****************************************************************************/
 
 struct ether_addr;