Bugfix signed/unsigned typecast.
[skeinsum.git] / skein_cli.c
index 23f3e1d0747f655d3f0d2b88025a5dee8b5d13ce..c8ae45b48ff37219fd4369ba9011ae10dd5979ca 100644 (file)
@@ -233,7 +233,8 @@ int HashMatch(const char StoredDigest[], const char *filename, int quiet)
 
 int VerifyHashesFromFile(FILE *fp, int status, int warn, int quiet)
 {
-       char hash[500], MsgDigest_tmp[hashbitlen/2];
+       char hash[PATH_MAX + hashbitlen/4 + 4];
+       char MsgDigest_tmp[hashbitlen/2];
        int NoMatch = 0, NotProper = 0, Computed = 0;
        int line = 0;
 
@@ -242,7 +243,7 @@ int VerifyHashesFromFile(FILE *fp, int status, int warn, int quiet)
                char file_tmp[PATH_MAX];
                line ++;
                Computed++;
-               unsigned int hashVersion = decomposeHashLine(hash,MsgDigest_tmp,file_tmp);
+               int hashVersion = decomposeHashLine(hash,MsgDigest_tmp,file_tmp);
                if (hashVersion == -1)
                {
                        fprintf(stderr, "skein%d: %s is using newer version of skein%d algorithm\n",hashbitlen,file_tmp,hashbitlen);