projects
/
oweals
/
u-boot.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge tag 'efi-2020-07-rc5-2' of https://gitlab.denx.de/u-boot/custodians/u-boot-efi
[oweals/u-boot.git]
/
lib
/
uuid.c
diff --git
a/lib/uuid.c
b/lib/uuid.c
index 7d7a2749b6410650362b6b0fa9c1b618872b893f..e62d5ca2643f60b1aedee970af95e353a5d10b73 100644
(file)
--- a/
lib/uuid.c
+++ b/
lib/uuid.c
@@
-4,6
+4,11
@@
*/
#include <common.h>
*/
#include <common.h>
+#include <command.h>
+#include <env.h>
+#include <rand.h>
+#include <time.h>
+#include <uuid.h>
#include <linux/ctype.h>
#include <errno.h>
#include <common.h>
#include <linux/ctype.h>
#include <errno.h>
#include <common.h>
@@
-119,7
+124,7
@@
int uuid_guid_get_bin(const char *guid_str, unsigned char *guid_bin)
* @param guid_bin - pointer to string with partition type guid [16B]
* @param guid_str - pointer to allocated partition type string [7B]
*/
* @param guid_bin - pointer to string with partition type guid [16B]
* @param guid_str - pointer to allocated partition type string [7B]
*/
-int uuid_guid_get_str(unsigned char *guid_bin, char *guid_str)
+int uuid_guid_get_str(
const
unsigned char *guid_bin, char *guid_str)
{
int i;
{
int i;
@@
-141,7
+146,8
@@
int uuid_guid_get_str(unsigned char *guid_bin, char *guid_str)
* @param uuid_bin - pointer to allocated array for big endian output [16B]
* @str_format - UUID string format: 0 - UUID; 1 - GUID
*/
* @param uuid_bin - pointer to allocated array for big endian output [16B]
* @str_format - UUID string format: 0 - UUID; 1 - GUID
*/
-int uuid_str_to_bin(char *uuid_str, unsigned char *uuid_bin, int str_format)
+int uuid_str_to_bin(const char *uuid_str, unsigned char *uuid_bin,
+ int str_format)
{
uint16_t tmp16;
uint32_t tmp32;
{
uint16_t tmp16;
uint32_t tmp32;
@@
-192,7
+198,8
@@
int uuid_str_to_bin(char *uuid_str, unsigned char *uuid_bin, int str_format)
* @str_format: bit 0: 0 - UUID; 1 - GUID
* bit 1: 0 - lower case; 2 - upper case
*/
* @str_format: bit 0: 0 - UUID; 1 - GUID
* bit 1: 0 - lower case; 2 - upper case
*/
-void uuid_bin_to_str(unsigned char *uuid_bin, char *uuid_str, int str_format)
+void uuid_bin_to_str(const unsigned char *uuid_bin, char *uuid_str,
+ int str_format)
{
const u8 uuid_char_order[UUID_BIN_LEN] = {0, 1, 2, 3, 4, 5, 6, 7, 8,
9, 10, 11, 12, 13, 14, 15};
{
const u8 uuid_char_order[UUID_BIN_LEN] = {0, 1, 2, 3, 4, 5, 6, 7, 8,
9, 10, 11, 12, 13, 14, 15};
@@
-240,25
+247,25
@@
void uuid_bin_to_str(unsigned char *uuid_bin, char *uuid_str, int str_format)
#if defined(CONFIG_RANDOM_UUID) || defined(CONFIG_CMD_UUID)
void gen_rand_uuid(unsigned char *uuid_bin)
{
#if defined(CONFIG_RANDOM_UUID) || defined(CONFIG_CMD_UUID)
void gen_rand_uuid(unsigned char *uuid_bin)
{
-
struct uuid uuid
;
-
unsigned int *ptr = (unsigned int *)&uuid
;
+
u32 ptr[4]
;
+
struct uuid *uuid = (struct uuid *)ptr
;
int i;
srand(get_ticks() + rand());
/* Set all fields randomly */
int i;
srand(get_ticks() + rand());
/* Set all fields randomly */
- for (i = 0; i <
sizeof(struct uuid) / sizeof(*ptr)
; i++)
-
*(ptr + i) = cpu_to_be32(rand()
);
+ for (i = 0; i <
4
; i++)
+
ptr[i] = rand(
);
- clrsetbits_be16(&uuid
.
time_hi_and_version,
+ clrsetbits_be16(&uuid
->
time_hi_and_version,
UUID_VERSION_MASK,
UUID_VERSION << UUID_VERSION_SHIFT);
UUID_VERSION_MASK,
UUID_VERSION << UUID_VERSION_SHIFT);
- clrsetbits_8(&uuid
.
clock_seq_hi_and_reserved,
+ clrsetbits_8(&uuid
->
clock_seq_hi_and_reserved,
UUID_VARIANT_MASK,
UUID_VARIANT << UUID_VARIANT_SHIFT);
UUID_VARIANT_MASK,
UUID_VARIANT << UUID_VARIANT_SHIFT);
- memcpy(uuid_bin,
&uuid, sizeof(struct uuid)
);
+ memcpy(uuid_bin,
uuid, 16
);
}
/*
}
/*
@@
-280,7
+287,7
@@
void gen_rand_uuid_str(char *uuid_str, int str_format)
}
#if !defined(CONFIG_SPL_BUILD) && defined(CONFIG_CMD_UUID)
}
#if !defined(CONFIG_SPL_BUILD) && defined(CONFIG_CMD_UUID)
-int do_uuid(
cmd_tbl_t *cmdtp, int flag, int argc, char *
const argv[])
+int do_uuid(
struct cmd_tbl *cmdtp, int flag, int argc, char *
const argv[])
{
char uuid[UUID_STR_LEN + 1];
int str_format;
{
char uuid[UUID_STR_LEN + 1];
int str_format;