lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date:   Tue, 27 Aug 2019 14:49:18 +0300
From:   Heikki Krogerus <heikki.krogerus@...ux.intel.com>
To:     Christoph Hellwig <hch@....de>,
        Andy Shevchenko <andriy.shevchenko@...ux.intel.com>
Cc:     linux-kernel@...r.kernel.org
Subject: [PATCH] uuid: Add helpers for finding UUID from an array

Matching function that compares every UUID in an array to a
given UUID with guid_equal().

Signed-off-by: Heikki Krogerus <heikki.krogerus@...ux.intel.com>
---
Hi,

I don't have a user for these helpers, but since they are pretty
trivial, I figured that might as well propose them in any case.
Though, I think there was somebody proposing of doing the same thing
that these helpers do at one point, but just the hard way in the
drivers, right Andy?

thanks,
---
 include/linux/uuid.h | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/include/linux/uuid.h b/include/linux/uuid.h
index 0c631e2a73b6..13e4d99f26dd 100644
--- a/include/linux/uuid.h
+++ b/include/linux/uuid.h
@@ -48,6 +48,16 @@ static inline bool guid_is_null(const guid_t *guid)
 	return guid_equal(guid, &guid_null);
 }
 
+static inline bool guid_match(const guid_t *guids, const guid_t *guid)
+{
+	const guid_t *id;
+
+	for (id = guids; !guid_is_null(id); id++)
+		if (guid_equal(id, guid))
+			return true;
+	return false;
+}
+
 static inline bool uuid_equal(const uuid_t *u1, const uuid_t *u2)
 {
 	return memcmp(u1, u2, sizeof(uuid_t)) == 0;
@@ -63,6 +73,16 @@ static inline bool uuid_is_null(const uuid_t *uuid)
 	return uuid_equal(uuid, &uuid_null);
 }
 
+static inline bool uuid_match(const uuid_t *uuids, const uuid_t *uuid)
+{
+	const uuid_t *id;
+
+	for (id = uuids; !uuid_is_null(id); id++)
+		if (uuid_equal(id, uuid))
+			return true;
+	return false;
+}
+
 void generate_random_uuid(unsigned char uuid[16]);
 
 extern void guid_gen(guid_t *u);
-- 
2.23.0.rc1

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ