[PATCH v3 2/4] erofs-utils: lib: add helper function erofs_uuid_unparse_as_tag
Lucas Karpinski <[email protected]>
| Newsgroups | org.ozlabs.lists.linux-erofs |
|---|---|
| Message-ID | <[email protected]> |
Add helper function for converting uuid to tag. Signed-off-by: Lucas Karpinski <[email protected]> --- lib/liberofs_uuid.h | 1 + lib/uuid_unparse.c | 16 +++++++++++++++- mkfs/main.c | 11 +---------- 3 files changed, 17 insertions(+), 11 deletions(-) diff --git a/lib/liberofs_uuid.h b/lib/liberofs_uuid.h index e8bb1be9..1a2a067a 100644 --- a/lib/liberofs_uuid.h +++ b/lib/liberofs_uuid.h @@ -4,6 +4,7 @@ void erofs_uuid_generate(unsigned char *out); void erofs_uuid_unparse_lower(const unsigned char *buf, char *out); +void erofs_uuid_unparse_as_tag(const unsigned char *buf, char *out); int erofs_uuid_parse(const char *in, unsigned char *uu); #endif diff --git a/lib/uuid_unparse.c b/lib/uuid_unparse.c index 890acda8..53e5f936 100644 --- a/lib/uuid_unparse.c +++ b/lib/uuid_unparse.c @@ -8,7 +8,8 @@ #include "erofs/config.h" #include "liberofs_uuid.h" -void erofs_uuid_unparse_lower(const unsigned char *buf, char *out) { +void erofs_uuid_unparse_lower(const unsigned char *buf, char *out) +{ sprintf(out, "%04x%04x-%04x-%04x-%04x-%04x%04x%04x", (buf[0] << 8) | buf[1], (buf[2] << 8) | buf[3], @@ -19,3 +20,16 @@ void erofs_uuid_unparse_lower(const unsigned char *buf, char *out) { (buf[12] << 8) | buf[13], (buf[14] << 8) | buf[15]); } + +void erofs_uuid_unparse_as_tag(const unsigned char *buf, char *out) +{ + sprintf(out, "%04x%04x%04x%04x%04x%04x%04x%04x", + (buf[0] << 8) | buf[1], + (buf[2] << 8) | buf[3], + (buf[4] << 8) | buf[5], + (buf[6] << 8) | buf[7], + (buf[8] << 8) | buf[9], + (buf[10] << 8) | buf[11], + (buf[12] << 8) | buf[13], + (buf[14] << 8) | buf[15]); +} diff --git a/mkfs/main.c b/mkfs/main.c index 5006f76f..6867478b 100644 --- a/mkfs/main.c +++ b/mkfs/main.c @@ -1788,16 +1788,7 @@ static int erofs_mkfs_rebuild_load_trees(struct erofs_inode *root) memcpy(devs[idx].tag, tag, sizeof(devs[0].tag)); else /* convert UUID of the source image to a hex string */ - sprintf((char *)g_sbi.devs[idx].tag, - "%04x%04x%04x%04x%04x%04x%04x%04x", - (src->uuid[0] << 8) | src->uuid[1], - (src->uuid[2] << 8) | src->uuid[3], - (src->uuid[4] << 8) | src->uuid[5], - (src->uuid[6] << 8) | src->uuid[7], - (src->uuid[8] << 8) | src->uuid[9], - (src->uuid[10] << 8) | src->uuid[11], - (src->uuid[12] << 8) | src->uuid[13], - (src->uuid[14] << 8) | src->uuid[15]); + erofs_uuid_unparse_as_tag(src->uuid, (char *)g_sbi.devs[idx].tag); } return 0; } -- Git-155)