Размер хранилища OpenSSL для hashctx неизвестен - PullRequest
0 голосов
/ 04 мая 2019

Несмотря на то, что я только что обновил openssl до 1.0.2r, я получаю сообщение об ошибке, указанное в заголовке.Я немного осмотрелся и предположительно это обычно вызвано установкой более старой версии, поэтому я и обновился, хотя это не исправило ошибку.Неисправный код:

            EVP_MD_CTX hashctx;
            EVP_MD *hashptr = EVP_get_digestbyname("SHA512");

            EVP_MD_CTX_init(&hashctx);
            EVP_DigestInit_ex(&hashctx, hashptr, NULL));

            do {
              len = fread(buffer, 1, BUFSIZ, hashInBuf);
              EVP_DigestUpdate(&hashctx, buffer, len);
            } while (len == BUFSIZ);

            EVP_DigestFinal_ex(&hashctx, buffer, &len);
            EVP_MD_CTX_cleanup(&hashctx);

Я попытался определить hashctx после main, однако это не устранило проблему.

hashInBuf определено / открытоfile, len установлен как size_t len;, а BUFSIZ установлен как unsigned char buffer[BUFSIZ] (все ниже основного).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...