]> git.ipfire.org Git - thirdparty/util-linux.git/commitdiff
lib/sha1: use ul_/UL_prefix for symbols
authorKarel Zak <kzak@redhat.com>
Tue, 12 Dec 2017 10:29:02 +0000 (11:29 +0100)
committerKarel Zak <kzak@redhat.com>
Thu, 14 Dec 2017 14:47:54 +0000 (15:47 +0100)
Unfortunately, the symbols are visible in statically compiled libuuid
and the names are too generic.

Addresses: https://github.com/karelzak/util-linux/issues/548
Signed-off-by: Karel Zak <kzak@redhat.com>
include/sha1.h
lib/sha1.c
libuuid/src/gen_uuid.c

index 5c28bce929e78867612e74a2a6c7234e88191c6f..62af1da6f6b9f05446c6499ed0815dec871cfdb6 100644 (file)
@@ -1,5 +1,5 @@
-#ifndef SHA1_H
-#define SHA1_H
+#ifndef UTIL_LINUX_SHA1_H
+#define UTIL_LINUX_SHA1_H
 
 /*
    SHA-1 in C
@@ -9,38 +9,19 @@
 
 #include "stdint.h"
 
-#define SHA1LENGTH             20
+#define UL_SHA1LENGTH          20
 
 typedef struct
 {
-    uint32_t state[5];
-    uint32_t count[2];
-    unsigned char buffer[64];
-} SHA1_CTX;
-
-void SHA1Transform(
-    uint32_t state[5],
-    const unsigned char buffer[64]
-    );
-
-void SHA1Init(
-    SHA1_CTX * context
-    );
-
-void SHA1Update(
-    SHA1_CTX * context,
-    const unsigned char *data,
-    uint32_t len
-    );
-
-void SHA1Final(
-    unsigned char digest[SHA1LENGTH],
-    SHA1_CTX * context
-    );
-
-void SHA1(
-    char *hash_out,
-    const char *str,
-    unsigned len);
-
-#endif /* SHA1_H */
+    uint32_t   state[5];
+    uint32_t   count[2];
+    unsigned   char buffer[64];
+} UL_SHA1_CTX;
+
+void ul_SHA1Transform(uint32_t state[5], const unsigned char buffer[64]);
+void ul_SHA1Init(UL_SHA1_CTX *context);
+void ul_SHA1Update(UL_SHA1_CTX *context, const unsigned char *data, uint32_t len);
+void ul_SHA1Final(unsigned char digest[UL_SHA1LENGTH], UL_SHA1_CTX *context);
+void ul_SHA1(char *hash_out, const char *str, unsigned len);
+
+#endif /* UTIL_LINUX_SHA1_H */
index a2ac7f8ef2a5f52ee324971478677a070db963e6..62c036774b78e8554bd4bcfb7c500e26a907a3fc 100644 (file)
@@ -51,7 +51,7 @@ A million repetitions of "a"
 
 /* Hash a single 512-bit block. This is the core of the algorithm. */
 
-void SHA1Transform(
+void ul_SHA1Transform(
     uint32_t state[5],
     const unsigned char buffer[64]
 )
@@ -179,8 +179,8 @@ void SHA1Transform(
 
 /* SHA1Init - Initialize new context */
 
-void SHA1Init(
-    SHA1_CTX * context
+void ul_SHA1Init(
+    UL_SHA1_CTX * context
 )
 {
     /* SHA1 initialization constants */
@@ -195,8 +195,8 @@ void SHA1Init(
 
 /* Run your data through this. */
 
-void SHA1Update(
-    SHA1_CTX * context,
+void ul_SHA1Update(
+    UL_SHA1_CTX * context,
     const unsigned char *data,
     uint32_t len
 )
@@ -213,10 +213,10 @@ void SHA1Update(
     if ((j + len) > 63)
     {
         memcpy(&context->buffer[j], data, (i = 64 - j));
-        SHA1Transform(context->state, context->buffer);
+        ul_SHA1Transform(context->state, context->buffer);
         for (; i + 63 < len; i += 64)
         {
-            SHA1Transform(context->state, &data[i]);
+            ul_SHA1Transform(context->state, &data[i]);
         }
         j = 0;
     }
@@ -228,9 +228,9 @@ void SHA1Update(
 
 /* Add padding and return the message digest. */
 
-void SHA1Final(
+void ul_SHA1Final(
     unsigned char digest[20],
-    SHA1_CTX * context
+    UL_SHA1_CTX * context
 )
 {
     unsigned i;
@@ -262,13 +262,13 @@ void SHA1Final(
     }
 #endif
     c = 0200;
-    SHA1Update(context, &c, 1);
+    ul_SHA1Update(context, &c, 1);
     while ((context->count[0] & 504) != 448)
     {
         c = 0000;
-        SHA1Update(context, &c, 1);
+        ul_SHA1Update(context, &c, 1);
     }
-    SHA1Update(context, finalcount, 8); /* Should cause a SHA1Transform() */
+    ul_SHA1Update(context, finalcount, 8); /* Should cause a SHA1Transform() */
     for (i = 0; i < 20; i++)
     {
         digest[i] = (unsigned char)
@@ -279,18 +279,18 @@ void SHA1Final(
     memset(&finalcount, '\0', sizeof(finalcount));
 }
 
-void SHA1(
+void ul_SHA1(
     char *hash_out,
     const char *str,
     unsigned len)
 {
-    SHA1_CTX ctx;
+    UL_SHA1_CTX ctx;
     unsigned int ii;
 
-    SHA1Init(&ctx);
+    ul_SHA1Init(&ctx);
     for (ii=0; ii<len; ii+=1)
-        SHA1Update(&ctx, (const unsigned char*)str + ii, 1);
-    SHA1Final((unsigned char *)hash_out, &ctx);
+        ul_SHA1Update(&ctx, (const unsigned char*)str + ii, 1);
+    ul_SHA1Final((unsigned char *)hash_out, &ctx);
     hash_out[20] = '\0';
 }
 
index cf7cacd555d0673701d2d5e4415863c6879896a5..431bf2064a4f7b1d8f2e4f2a681c01ecb46444f7 100644 (file)
@@ -589,15 +589,15 @@ void uuid_generate_md5(uuid_t out, const uuid_t ns, const char *name, size_t len
  */
 void uuid_generate_sha1(uuid_t out, const uuid_t ns, const char *name, size_t len)
 {
-       SHA1_CTX ctx;
-       char hash[SHA1LENGTH];
+       UL_SHA1_CTX ctx;
+       char hash[UL_SHA1LENGTH];
 
-       SHA1Init(&ctx);
+       ul_SHA1Init(&ctx);
        /* hash concatenation of well-known UUID with name */
-       SHA1Update(&ctx, ns, sizeof(uuid_t));
-       SHA1Update(&ctx, (const unsigned char *)name, len);
+       ul_SHA1Update(&ctx, ns, sizeof(uuid_t));
+       ul_SHA1Update(&ctx, (const unsigned char *)name, len);
 
-       SHA1Final((unsigned char *)hash, &ctx);
+       ul_SHA1Final((unsigned char *)hash, &ctx);
 
        memcpy(out, hash, sizeof(uuid_t));