mirror of
https://github.com/samba-team/samba.git
synced 2024-12-23 17:34:34 +03:00
Use GUID_from_string.
This commit is contained in:
parent
1f3e4f39c5
commit
a62c510d8b
@ -1763,7 +1763,6 @@ int islower_ascii(int c);
|
||||
void smb_uuid_pack(const struct GUID uu, UUID_FLAT *ptr);
|
||||
void smb_uuid_unpack(const UUID_FLAT in, struct GUID *uu);
|
||||
void smb_uuid_generate_random(struct GUID *uu);
|
||||
bool smb_string_to_uuid(const char *in, struct GUID* uu);
|
||||
char *guid_binstring(const struct GUID *guid);
|
||||
|
||||
/* The following definitions come from lib/version.c */
|
||||
|
@ -20,12 +20,6 @@
|
||||
|
||||
#include "includes.h"
|
||||
|
||||
/*
|
||||
* Offset between 15-Oct-1582 and 1-Jan-70
|
||||
*/
|
||||
#define TIME_OFFSET_HIGH 0x01B21DD2
|
||||
#define TIME_OFFSET_LOW 0x13814000
|
||||
|
||||
void smb_uuid_pack(const struct GUID uu, UUID_FLAT *ptr)
|
||||
{
|
||||
SIVAL(ptr->info, 0, uu.time_low);
|
||||
@ -55,51 +49,6 @@ void smb_uuid_generate_random(struct GUID *uu)
|
||||
uu->time_hi_and_version = (uu->time_hi_and_version & 0x0FFF) | 0x4000;
|
||||
}
|
||||
|
||||
bool smb_string_to_uuid(const char *in, struct GUID* uu)
|
||||
{
|
||||
bool ret = False;
|
||||
const char *ptr = in;
|
||||
char *end = (char *)in;
|
||||
int i;
|
||||
unsigned v1, v2;
|
||||
|
||||
if (!in || !uu) goto out;
|
||||
|
||||
uu->time_low = strtoul(ptr, &end, 16);
|
||||
if ((end - ptr) != 8 || *end != '-') goto out;
|
||||
ptr = (end + 1);
|
||||
|
||||
uu->time_mid = strtoul(ptr, &end, 16);
|
||||
if ((end - ptr) != 4 || *end != '-') goto out;
|
||||
ptr = (end + 1);
|
||||
|
||||
uu->time_hi_and_version = strtoul(ptr, &end, 16);
|
||||
if ((end - ptr) != 4 || *end != '-') goto out;
|
||||
ptr = (end + 1);
|
||||
|
||||
if (sscanf(ptr, "%02x%02x", &v1, &v2) != 2) {
|
||||
goto out;
|
||||
}
|
||||
uu->clock_seq[0] = v1;
|
||||
uu->clock_seq[1] = v2;
|
||||
ptr += 4;
|
||||
|
||||
if (*ptr != '-') goto out;
|
||||
ptr++;
|
||||
|
||||
for (i = 0; i < 6; i++) {
|
||||
if (sscanf(ptr, "%02x", &v1) != 1) {
|
||||
goto out;
|
||||
}
|
||||
uu->node[i] = v1;
|
||||
ptr += 2;
|
||||
}
|
||||
|
||||
ret = True;
|
||||
out:
|
||||
return ret;
|
||||
}
|
||||
|
||||
/*****************************************************************
|
||||
Return the binary string representation of a GUID.
|
||||
Caller must free.
|
||||
|
@ -3536,7 +3536,7 @@ bool is_printer_published(Printer_entry *print_hnd, int snum,
|
||||
case REG_SZ:
|
||||
rpcstr_pull( guid_str, regval_data_p(guid_val),
|
||||
sizeof(guid_str)-1, -1, STR_TERMINATE );
|
||||
ret = smb_string_to_uuid( guid_str, guid );
|
||||
ret = NT_STATUS_IS_OK(GUID_from_string( guid_str, guid ));
|
||||
break;
|
||||
case REG_BINARY:
|
||||
if ( regval_size(guid_val) != sizeof(struct GUID) ) {
|
||||
|
Loading…
Reference in New Issue
Block a user