]> git.sur5r.net Git - u-boot/blob - lib/efi_selftest/efi_selftest_util.c
efi_loader: Ensure efi_dp_find_obj() finds exact matches
[u-boot] / lib / efi_selftest / efi_selftest_util.c
1 /*
2  * efi_selftest_util
3  *
4  * Copyright (c) 2017 Heinrich Schuchardt <xypron.glpk@gmx.de>
5  *
6  * SPDX-License-Identifier:     GPL-2.0+
7  *
8  * Utility functions
9  */
10
11 #include <efi_selftest.h>
12
13 int efi_st_memcmp(const void *buf1, const void *buf2, size_t length)
14 {
15         const u8 *pos1 = buf1;
16         const u8 *pos2 = buf2;
17
18         for (; length; --length) {
19                 if (*pos1 != *pos2)
20                         return *pos1 - *pos2;
21                 ++pos1;
22                 ++pos2;
23         }
24         return 0;
25 }
26
27 int efi_st_strcmp_16_8(const u16 *buf1, const char *buf2)
28 {
29         for (; *buf1 || *buf2; ++buf1, ++buf2) {
30                 if (*buf1 != *buf2)
31                         return *buf1 - *buf2;
32         }
33         return 0;
34 }