]> git.lizzy.rs Git - minetest.git/blobdiff - src/util/srp.cpp
Increase `ftos` precision (#13141)
[minetest.git] / src / util / srp.cpp
index a3452e022b3578d4b351f1360a8a890dc653b82c..daa7f332bd70ab94b21e6404c4b8c8e56ac6d951 100644 (file)
@@ -27,6 +27,9 @@
  */
 
 // clang-format off
+
+#include <cstddef>
+
 #ifdef WIN32
        #include <windows.h>
        #include <wincrypt.h>
@@ -43,7 +46,7 @@
 
 #include <config.h>
 
-#if USE_SYSTEM_GMP || defined (__ANDROID__) || defined (ANDROID)
+#if USE_SYSTEM_GMP
        #include <gmp.h>
 #else
        #include <mini-gmp.h>
@@ -351,7 +354,7 @@ static size_t hash_length(SRP_HashAlgorithm alg)
                case SRP_SHA384: return SHA384_DIGEST_LENGTH;
                case SRP_SHA512: return SHA512_DIGEST_LENGTH;
                */
-               default: return -1;
+               default: return 0;
        };
 }
 // clang-format on
@@ -419,7 +422,7 @@ static SRP_Result H_nn(
 }
 
 static SRP_Result H_ns(mpz_t result, SRP_HashAlgorithm alg, const unsigned char *n,
-       size_t len_n, const unsigned char *bytes, uint32_t len_bytes)
+       size_t len_n, const unsigned char *bytes, size_t len_bytes)
 {
        unsigned char buff[SHA512_DIGEST_LENGTH];
        size_t nbytes = len_n + len_bytes;
@@ -1012,10 +1015,10 @@ void  srp_user_process_challenge(struct SRPUser *usr,
                        goto cleanup_and_exit;
 
                *bytes_M = usr->M;
-               if (len_M) *len_M = hash_length(usr->hash_alg);
+               *len_M = hash_length(usr->hash_alg);
        } else {
                *bytes_M = NULL;
-               if (len_M) *len_M = 0;
+               *len_M = 0;
        }
 
 cleanup_and_exit: