mirror of
https://github.com/mtrojnar/osslsigncode.git
synced 2025-05-18 09:25:35 -05:00
Suppress compiler warnings
This commit is contained in:
parent
9ea7e85468
commit
10ca3a06ea
21
appx.c
21
appx.c
@ -873,11 +873,18 @@ static uint8_t *appx_calc_zip_central_directory_hash(ZIP_FILE *zip, const EVP_MD
|
|||||||
u_char *mdbuf = NULL;
|
u_char *mdbuf = NULL;
|
||||||
BIO *bhash = BIO_new(BIO_f_md());
|
BIO *bhash = BIO_new(BIO_f_md());
|
||||||
|
|
||||||
|
#if defined(__GNUC__)
|
||||||
|
#pragma GCC diagnostic push
|
||||||
|
#pragma GCC diagnostic ignored "-Wcast-qual"
|
||||||
|
#endif
|
||||||
if (!BIO_set_md(bhash, md)) {
|
if (!BIO_set_md(bhash, md)) {
|
||||||
fprintf(stderr, "Unable to set the message digest of BIO\n");
|
fprintf(stderr, "Unable to set the message digest of BIO\n");
|
||||||
BIO_free_all(bhash);
|
BIO_free_all(bhash);
|
||||||
return NULL; /* FAILED */
|
return NULL; /* FAILED */
|
||||||
}
|
}
|
||||||
|
#if defined(__GNUC__)
|
||||||
|
#pragma GCC diagnostic pop
|
||||||
|
#endif
|
||||||
BIO_push(bhash, BIO_new(BIO_s_null()));
|
BIO_push(bhash, BIO_new(BIO_s_null()));
|
||||||
if (!appx_write_central_directory(bhash, zip, 1, cdOffset)) {
|
if (!appx_write_central_directory(bhash, zip, 1, cdOffset)) {
|
||||||
fprintf(stderr, "Unable to write central directory\n");
|
fprintf(stderr, "Unable to write central directory\n");
|
||||||
@ -1000,11 +1007,18 @@ static uint8_t *appx_calc_zip_data_hash(uint64_t *cdOffset, ZIP_FILE *zip, const
|
|||||||
BIO *bhash = BIO_new(BIO_f_md());
|
BIO *bhash = BIO_new(BIO_f_md());
|
||||||
uint64_t noEntries = 0;
|
uint64_t noEntries = 0;
|
||||||
|
|
||||||
|
#if defined(__GNUC__)
|
||||||
|
#pragma GCC diagnostic push
|
||||||
|
#pragma GCC diagnostic ignored "-Wcast-qual"
|
||||||
|
#endif
|
||||||
if (!BIO_set_md(bhash, md)) {
|
if (!BIO_set_md(bhash, md)) {
|
||||||
fprintf(stderr, "Unable to set the message digest of BIO\n");
|
fprintf(stderr, "Unable to set the message digest of BIO\n");
|
||||||
BIO_free_all(bhash);
|
BIO_free_all(bhash);
|
||||||
return NULL; /* FAILED */
|
return NULL; /* FAILED */
|
||||||
}
|
}
|
||||||
|
#if defined(__GNUC__)
|
||||||
|
#pragma GCC diagnostic pop
|
||||||
|
#endif
|
||||||
BIO_push(bhash, BIO_new(BIO_s_null()));
|
BIO_push(bhash, BIO_new(BIO_s_null()));
|
||||||
*cdOffset = 0;
|
*cdOffset = 0;
|
||||||
for (entry = zip->centralDirectoryHead; entry != NULL; entry = entry->next) {
|
for (entry = zip->centralDirectoryHead; entry != NULL; entry = entry->next) {
|
||||||
@ -1758,12 +1772,19 @@ static u_char *zipCalcDigest(ZIP_FILE *zip, const char *fileName, const EVP_MD *
|
|||||||
return NULL; /* FAILED */
|
return NULL; /* FAILED */
|
||||||
}
|
}
|
||||||
bhash = BIO_new(BIO_f_md());
|
bhash = BIO_new(BIO_f_md());
|
||||||
|
#if defined(__GNUC__)
|
||||||
|
#pragma GCC diagnostic push
|
||||||
|
#pragma GCC diagnostic ignored "-Wcast-qual"
|
||||||
|
#endif
|
||||||
if (!BIO_set_md(bhash, md)) {
|
if (!BIO_set_md(bhash, md)) {
|
||||||
fprintf(stderr, "Unable to set the message digest of BIO\n");
|
fprintf(stderr, "Unable to set the message digest of BIO\n");
|
||||||
OPENSSL_free(data);
|
OPENSSL_free(data);
|
||||||
BIO_free_all(bhash);
|
BIO_free_all(bhash);
|
||||||
return NULL; /* FAILED */
|
return NULL; /* FAILED */
|
||||||
}
|
}
|
||||||
|
#if defined(__GNUC__)
|
||||||
|
#pragma GCC diagnostic pop
|
||||||
|
#endif
|
||||||
BIO_push(bhash, BIO_new(BIO_s_null()));
|
BIO_push(bhash, BIO_new(BIO_s_null()));
|
||||||
if (!bio_hash_data(bhash, (char *)data, 0, dataSize)) {
|
if (!bio_hash_data(bhash, (char *)data, 0, dataSize)) {
|
||||||
OPENSSL_free(data);
|
OPENSSL_free(data);
|
||||||
|
7
cab.c
7
cab.c
@ -205,11 +205,18 @@ static u_char *cab_digest_calc(FILE_FORMAT_CTX *ctx, const EVP_MD *md)
|
|||||||
u_char *mdbuf = NULL;
|
u_char *mdbuf = NULL;
|
||||||
BIO *bhash = BIO_new(BIO_f_md());
|
BIO *bhash = BIO_new(BIO_f_md());
|
||||||
|
|
||||||
|
#if defined(__GNUC__)
|
||||||
|
#pragma GCC diagnostic push
|
||||||
|
#pragma GCC diagnostic ignored "-Wcast-qual"
|
||||||
|
#endif
|
||||||
if (!BIO_set_md(bhash, md)) {
|
if (!BIO_set_md(bhash, md)) {
|
||||||
fprintf(stderr, "Unable to set the message digest of BIO\n");
|
fprintf(stderr, "Unable to set the message digest of BIO\n");
|
||||||
BIO_free_all(bhash);
|
BIO_free_all(bhash);
|
||||||
return 0; /* FAILED */
|
return 0; /* FAILED */
|
||||||
}
|
}
|
||||||
|
#if defined(__GNUC__)
|
||||||
|
#pragma GCC diagnostic pop
|
||||||
|
#endif
|
||||||
BIO_push(bhash, BIO_new(BIO_s_null()));
|
BIO_push(bhash, BIO_new(BIO_s_null()));
|
||||||
|
|
||||||
/* u1 signature[4] 4643534D MSCF: 0-3 */
|
/* u1 signature[4] 4643534D MSCF: 0-3 */
|
||||||
|
16
helpers.c
16
helpers.c
@ -777,6 +777,15 @@ static int X509_compare(const X509 *const *a, const X509 *const *b)
|
|||||||
size_t a_len, b_len;
|
size_t a_len, b_len;
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
|
#if OPENSSL_VERSION_NUMBER<0x30000000L
|
||||||
|
#if defined(__clang__)
|
||||||
|
#pragma clang diagnostic push
|
||||||
|
#pragma clang diagnostic ignored "-Wincompatible-pointer-types-discards-qualifiers"
|
||||||
|
#elif defined(__GNUC__)
|
||||||
|
#pragma GCC diagnostic push
|
||||||
|
#pragma GCC diagnostic ignored "-Wdiscarded-qualifiers"
|
||||||
|
#endif
|
||||||
|
#endif /* OPENSSL_VERSION_NUMBER<0x30000000L */
|
||||||
a_len = (size_t)i2d_X509(*a, NULL);
|
a_len = (size_t)i2d_X509(*a, NULL);
|
||||||
a_tmp = a_data = OPENSSL_malloc(a_len);
|
a_tmp = a_data = OPENSSL_malloc(a_len);
|
||||||
i2d_X509(*a, &a_tmp);
|
i2d_X509(*a, &a_tmp);
|
||||||
@ -784,6 +793,13 @@ static int X509_compare(const X509 *const *a, const X509 *const *b)
|
|||||||
b_len = (size_t)i2d_X509(*b, NULL);
|
b_len = (size_t)i2d_X509(*b, NULL);
|
||||||
b_tmp = b_data = OPENSSL_malloc(b_len);
|
b_tmp = b_data = OPENSSL_malloc(b_len);
|
||||||
i2d_X509(*b, &b_tmp);
|
i2d_X509(*b, &b_tmp);
|
||||||
|
#if OPENSSL_VERSION_NUMBER<0x30000000L
|
||||||
|
#if defined(__clang__)
|
||||||
|
#pragma clang diagnostic pop
|
||||||
|
#elif defined(__GNUC__)
|
||||||
|
#pragma GCC diagnostic pop
|
||||||
|
#endif
|
||||||
|
#endif /* OPENSSL_VERSION_NUMBER<0x30000000L */
|
||||||
|
|
||||||
ret = memcmp(a_data, b_data, MIN(a_len, b_len));
|
ret = memcmp(a_data, b_data, MIN(a_len, b_len));
|
||||||
OPENSSL_free(a_data);
|
OPENSSL_free(a_data);
|
||||||
|
28
msi.c
28
msi.c
@ -373,11 +373,18 @@ static u_char *msi_digest_calc(FILE_FORMAT_CTX *ctx, const EVP_MD *md)
|
|||||||
u_char *mdbuf = NULL;
|
u_char *mdbuf = NULL;
|
||||||
BIO *bhash = BIO_new(BIO_f_md());
|
BIO *bhash = BIO_new(BIO_f_md());
|
||||||
|
|
||||||
|
#if defined(__GNUC__)
|
||||||
|
#pragma GCC diagnostic push
|
||||||
|
#pragma GCC diagnostic ignored "-Wcast-qual"
|
||||||
|
#endif
|
||||||
if (!BIO_set_md(bhash, md)) {
|
if (!BIO_set_md(bhash, md)) {
|
||||||
fprintf(stderr, "Unable to set the message digest of BIO\n");
|
fprintf(stderr, "Unable to set the message digest of BIO\n");
|
||||||
BIO_free_all(bhash);
|
BIO_free_all(bhash);
|
||||||
return NULL; /* FAILED */
|
return NULL; /* FAILED */
|
||||||
}
|
}
|
||||||
|
#if defined(__GNUC__)
|
||||||
|
#pragma GCC diagnostic pop
|
||||||
|
#endif
|
||||||
BIO_push(bhash, BIO_new(BIO_s_null()));
|
BIO_push(bhash, BIO_new(BIO_s_null()));
|
||||||
if (!bio_hash_data(bhash, ctx->options->indata, 0, ctx->msi_ctx->fileend)) {
|
if (!bio_hash_data(bhash, ctx->options->indata, 0, ctx->msi_ctx->fileend)) {
|
||||||
fprintf(stderr, "Unable to calculate digest\n");
|
fprintf(stderr, "Unable to calculate digest\n");
|
||||||
@ -426,11 +433,18 @@ static int msi_verify_digests(FILE_FORMAT_CTX *ctx, PKCS7 *p7)
|
|||||||
printf("Message digest algorithm : %s\n", OBJ_nid2sn(mdtype));
|
printf("Message digest algorithm : %s\n", OBJ_nid2sn(mdtype));
|
||||||
md = EVP_get_digestbynid(mdtype);
|
md = EVP_get_digestbynid(mdtype);
|
||||||
hash = BIO_new(BIO_f_md());
|
hash = BIO_new(BIO_f_md());
|
||||||
|
#if defined(__GNUC__)
|
||||||
|
#pragma GCC diagnostic push
|
||||||
|
#pragma GCC diagnostic ignored "-Wcast-qual"
|
||||||
|
#endif
|
||||||
if (!BIO_set_md(hash, md)) {
|
if (!BIO_set_md(hash, md)) {
|
||||||
fprintf(stderr, "Unable to set the message digest of BIO\n");
|
fprintf(stderr, "Unable to set the message digest of BIO\n");
|
||||||
BIO_free_all(hash);
|
BIO_free_all(hash);
|
||||||
return 0; /* FAILED */
|
return 0; /* FAILED */
|
||||||
}
|
}
|
||||||
|
#if defined(__GNUC__)
|
||||||
|
#pragma GCC diagnostic pop
|
||||||
|
#endif
|
||||||
BIO_push(hash, BIO_new(BIO_s_null()));
|
BIO_push(hash, BIO_new(BIO_s_null()));
|
||||||
if (ctx->msi_ctx->p_msiex) {
|
if (ctx->msi_ctx->p_msiex) {
|
||||||
BIO *prehash = BIO_new(BIO_f_md());
|
BIO *prehash = BIO_new(BIO_f_md());
|
||||||
@ -440,12 +454,19 @@ static int msi_verify_digests(FILE_FORMAT_CTX *ctx, PKCS7 *p7)
|
|||||||
BIO_free_all(prehash);
|
BIO_free_all(prehash);
|
||||||
return 0; /* FAILED */
|
return 0; /* FAILED */
|
||||||
}
|
}
|
||||||
|
#if defined(__GNUC__)
|
||||||
|
#pragma GCC diagnostic push
|
||||||
|
#pragma GCC diagnostic ignored "-Wcast-qual"
|
||||||
|
#endif
|
||||||
if (!BIO_set_md(prehash, md)) {
|
if (!BIO_set_md(prehash, md)) {
|
||||||
fprintf(stderr, "Unable to set the message digest of BIO\n");
|
fprintf(stderr, "Unable to set the message digest of BIO\n");
|
||||||
BIO_free_all(hash);
|
BIO_free_all(hash);
|
||||||
BIO_free_all(prehash);
|
BIO_free_all(prehash);
|
||||||
return 0; /* FAILED */
|
return 0; /* FAILED */
|
||||||
}
|
}
|
||||||
|
#if defined(__GNUC__)
|
||||||
|
#pragma GCC diagnostic pop
|
||||||
|
#endif
|
||||||
BIO_push(prehash, BIO_new(BIO_s_null()));
|
BIO_push(prehash, BIO_new(BIO_s_null()));
|
||||||
|
|
||||||
print_hash("Current MsiDigitalSignatureEx ", "", (u_char *)ctx->msi_ctx->p_msiex,
|
print_hash("Current MsiDigitalSignatureEx ", "", (u_char *)ctx->msi_ctx->p_msiex,
|
||||||
@ -2298,11 +2319,18 @@ static int msi_calc_MsiDigitalSignatureEx(FILE_FORMAT_CTX *ctx, BIO *hash)
|
|||||||
size_t written;
|
size_t written;
|
||||||
BIO *prehash = BIO_new(BIO_f_md());
|
BIO *prehash = BIO_new(BIO_f_md());
|
||||||
|
|
||||||
|
#if defined(__GNUC__)
|
||||||
|
#pragma GCC diagnostic push
|
||||||
|
#pragma GCC diagnostic ignored "-Wcast-qual"
|
||||||
|
#endif
|
||||||
if (!BIO_set_md(prehash, ctx->options->md)) {
|
if (!BIO_set_md(prehash, ctx->options->md)) {
|
||||||
fprintf(stderr, "Unable to set the message digest of BIO\n");
|
fprintf(stderr, "Unable to set the message digest of BIO\n");
|
||||||
BIO_free_all(prehash);
|
BIO_free_all(prehash);
|
||||||
return 0; /* FAILED */
|
return 0; /* FAILED */
|
||||||
}
|
}
|
||||||
|
#if defined(__GNUC__)
|
||||||
|
#pragma GCC diagnostic pop
|
||||||
|
#endif
|
||||||
BIO_push(prehash, BIO_new(BIO_s_null()));
|
BIO_push(prehash, BIO_new(BIO_s_null()));
|
||||||
|
|
||||||
if (!msi_prehash_dir(ctx->msi_ctx->dirent, prehash, 1)) {
|
if (!msi_prehash_dir(ctx->msi_ctx->dirent, prehash, 1)) {
|
||||||
|
@ -303,10 +303,17 @@ static BIO *bio_encode_rfc3161_request(PKCS7 *p7, const EVP_MD *md)
|
|||||||
goto out;
|
goto out;
|
||||||
|
|
||||||
bhash = BIO_new(BIO_f_md());
|
bhash = BIO_new(BIO_f_md());
|
||||||
|
#if defined(__GNUC__)
|
||||||
|
#pragma GCC diagnostic push
|
||||||
|
#pragma GCC diagnostic ignored "-Wcast-qual"
|
||||||
|
#endif
|
||||||
if (!BIO_set_md(bhash, md)) {
|
if (!BIO_set_md(bhash, md)) {
|
||||||
fprintf(stderr, "Unable to set the message digest of BIO\n");
|
fprintf(stderr, "Unable to set the message digest of BIO\n");
|
||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
|
#if defined(__GNUC__)
|
||||||
|
#pragma GCC diagnostic pop
|
||||||
|
#endif
|
||||||
BIO_push(bhash, BIO_new(BIO_s_null()));
|
BIO_push(bhash, BIO_new(BIO_s_null()));
|
||||||
BIO_write(bhash, si->enc_digest->data, si->enc_digest->length);
|
BIO_write(bhash, si->enc_digest->data, si->enc_digest->length);
|
||||||
BIO_gets(bhash, (char*)mdbuf, EVP_MD_size(md));
|
BIO_gets(bhash, (char*)mdbuf, EVP_MD_size(md));
|
||||||
@ -1817,10 +1824,17 @@ static int trusted_cert(X509 *cert, int error) {
|
|||||||
const EVP_MD *md = EVP_get_digestbynid(NID_sha256);
|
const EVP_MD *md = EVP_get_digestbynid(NID_sha256);
|
||||||
BIO *bhash = BIO_new(BIO_f_md());
|
BIO *bhash = BIO_new(BIO_f_md());
|
||||||
|
|
||||||
|
#if defined(__GNUC__)
|
||||||
|
#pragma GCC diagnostic push
|
||||||
|
#pragma GCC diagnostic ignored "-Wcast-qual"
|
||||||
|
#endif
|
||||||
if (!BIO_set_md(bhash, md)) {
|
if (!BIO_set_md(bhash, md)) {
|
||||||
BIO_free_all(bhash);
|
BIO_free_all(bhash);
|
||||||
return 0; /* FAILED */
|
return 0; /* FAILED */
|
||||||
}
|
}
|
||||||
|
#if defined(__GNUC__)
|
||||||
|
#pragma GCC diagnostic pop
|
||||||
|
#endif
|
||||||
BIO_push(bhash, BIO_new(BIO_s_null()));
|
BIO_push(bhash, BIO_new(BIO_s_null()));
|
||||||
len = i2d_X509(cert, NULL);
|
len = i2d_X509(cert, NULL);
|
||||||
p = OPENSSL_malloc((size_t)len);
|
p = OPENSSL_malloc((size_t)len);
|
||||||
@ -2173,12 +2187,19 @@ static int verify_timestamp_token(PKCS7 *p7, CMS_ContentInfo *timestamp)
|
|||||||
|
|
||||||
/* compute a hash from the encrypted message digest value of the file */
|
/* compute a hash from the encrypted message digest value of the file */
|
||||||
bhash = BIO_new(BIO_f_md());
|
bhash = BIO_new(BIO_f_md());
|
||||||
|
#if defined(__GNUC__)
|
||||||
|
#pragma GCC diagnostic push
|
||||||
|
#pragma GCC diagnostic ignored "-Wcast-qual"
|
||||||
|
#endif
|
||||||
if (!BIO_set_md(bhash, md)) {
|
if (!BIO_set_md(bhash, md)) {
|
||||||
fprintf(stderr, "Unable to set the message digest of BIO\n");
|
fprintf(stderr, "Unable to set the message digest of BIO\n");
|
||||||
BIO_free_all(bhash);
|
BIO_free_all(bhash);
|
||||||
TS_TST_INFO_free(token);
|
TS_TST_INFO_free(token);
|
||||||
return 0; /* FAILED */
|
return 0; /* FAILED */
|
||||||
}
|
}
|
||||||
|
#if defined(__GNUC__)
|
||||||
|
#pragma GCC diagnostic pop
|
||||||
|
#endif
|
||||||
BIO_push(bhash, BIO_new(BIO_s_null()));
|
BIO_push(bhash, BIO_new(BIO_s_null()));
|
||||||
BIO_write(bhash, si->enc_digest->data, si->enc_digest->length);
|
BIO_write(bhash, si->enc_digest->data, si->enc_digest->length);
|
||||||
BIO_gets(bhash, (char*)mdbuf, EVP_MD_size(md));
|
BIO_gets(bhash, (char*)mdbuf, EVP_MD_size(md));
|
||||||
@ -2531,12 +2552,19 @@ static int verify_leaf_hash(X509 *cert, const char *leafhash)
|
|||||||
|
|
||||||
/* compute the leaf certificate hash */
|
/* compute the leaf certificate hash */
|
||||||
bhash = BIO_new(BIO_f_md());
|
bhash = BIO_new(BIO_f_md());
|
||||||
|
#if defined(__GNUC__)
|
||||||
|
#pragma GCC diagnostic push
|
||||||
|
#pragma GCC diagnostic ignored "-Wcast-qual"
|
||||||
|
#endif
|
||||||
if (!BIO_set_md(bhash, md)) {
|
if (!BIO_set_md(bhash, md)) {
|
||||||
fprintf(stderr, "Unable to set the message digest of BIO\n");
|
fprintf(stderr, "Unable to set the message digest of BIO\n");
|
||||||
BIO_free_all(bhash);
|
BIO_free_all(bhash);
|
||||||
OPENSSL_free(mdbuf);
|
OPENSSL_free(mdbuf);
|
||||||
return 0; /* FAILED */
|
return 0; /* FAILED */
|
||||||
}
|
}
|
||||||
|
#if defined(__GNUC__)
|
||||||
|
#pragma GCC diagnostic pop
|
||||||
|
#endif
|
||||||
BIO_push(bhash, BIO_new(BIO_s_null()));
|
BIO_push(bhash, BIO_new(BIO_s_null()));
|
||||||
certlen = (size_t)i2d_X509(cert, NULL);
|
certlen = (size_t)i2d_X509(cert, NULL);
|
||||||
certbuf = OPENSSL_malloc(certlen);
|
certbuf = OPENSSL_malloc(certlen);
|
||||||
@ -3346,7 +3374,23 @@ static int PKCS7_compare(const PKCS7 *const *a, const PKCS7 *const *b)
|
|||||||
long index_a, index_b;
|
long index_a, index_b;
|
||||||
int ret = 0;
|
int ret = 0;
|
||||||
|
|
||||||
|
#if OPENSSL_VERSION_NUMBER<0x30000000L
|
||||||
|
#if defined(__clang__)
|
||||||
|
#pragma clang diagnostic push
|
||||||
|
#pragma clang diagnostic ignored "-Wincompatible-pointer-types-discards-qualifiers"
|
||||||
|
#elif defined(__GNUC__)
|
||||||
|
#pragma GCC diagnostic push
|
||||||
|
#pragma GCC diagnostic ignored "-Wdiscarded-qualifiers"
|
||||||
|
#endif
|
||||||
|
#endif /* OPENSSL_VERSION_NUMBER<0x30000000L */
|
||||||
p7_a = PKCS7_dup(*a);
|
p7_a = PKCS7_dup(*a);
|
||||||
|
#if OPENSSL_VERSION_NUMBER<0x30000000L
|
||||||
|
#if defined(__clang__)
|
||||||
|
#pragma clang diagnostic pop
|
||||||
|
#elif defined(__GNUC__)
|
||||||
|
#pragma GCC diagnostic pop
|
||||||
|
#endif
|
||||||
|
#endif /* OPENSSL_VERSION_NUMBER>=0x30000000L */
|
||||||
if (!p7_a)
|
if (!p7_a)
|
||||||
goto out;
|
goto out;
|
||||||
signer_info = PKCS7_get_signer_info(p7_a);
|
signer_info = PKCS7_get_signer_info(p7_a);
|
||||||
@ -3358,7 +3402,23 @@ static int PKCS7_compare(const PKCS7 *const *a, const PKCS7 *const *b)
|
|||||||
time_a = asn1_time_get_si_time(si);
|
time_a = asn1_time_get_si_time(si);
|
||||||
index_a = get_sequence_number(si);
|
index_a = get_sequence_number(si);
|
||||||
|
|
||||||
|
#if OPENSSL_VERSION_NUMBER<0x30000000L
|
||||||
|
#if defined(__clang__)
|
||||||
|
#pragma clang diagnostic push
|
||||||
|
#pragma clang diagnostic ignored "-Wincompatible-pointer-types-discards-qualifiers"
|
||||||
|
#elif defined(__GNUC__)
|
||||||
|
#pragma GCC diagnostic push
|
||||||
|
#pragma GCC diagnostic ignored "-Wdiscarded-qualifiers"
|
||||||
|
#endif
|
||||||
|
#endif /* OPENSSL_VERSION_NUMBER<0x30000000L */
|
||||||
p7_b = PKCS7_dup(*b);
|
p7_b = PKCS7_dup(*b);
|
||||||
|
#if OPENSSL_VERSION_NUMBER<0x30000000L
|
||||||
|
#if defined(__clang__)
|
||||||
|
#pragma clang diagnostic pop
|
||||||
|
#elif defined(__GNUC__)
|
||||||
|
#pragma GCC diagnostic pop
|
||||||
|
#endif
|
||||||
|
#endif /* OPENSSL_VERSION_NUMBER>=0x30000000L */
|
||||||
if (!p7_b)
|
if (!p7_b)
|
||||||
goto out;
|
goto out;
|
||||||
signer_info = PKCS7_get_signer_info(p7_b);
|
signer_info = PKCS7_get_signer_info(p7_b);
|
||||||
@ -5011,9 +5071,16 @@ int main(int argc, char **argv)
|
|||||||
if (options.cmd != CMD_VERIFY) {
|
if (options.cmd != CMD_VERIFY) {
|
||||||
/* Create message digest BIO */
|
/* Create message digest BIO */
|
||||||
hash = BIO_new(BIO_f_md());
|
hash = BIO_new(BIO_f_md());
|
||||||
|
#if defined(__GNUC__)
|
||||||
|
#pragma GCC diagnostic push
|
||||||
|
#pragma GCC diagnostic ignored "-Wcast-qual"
|
||||||
|
#endif
|
||||||
if (!BIO_set_md(hash, options.md)) {
|
if (!BIO_set_md(hash, options.md)) {
|
||||||
DO_EXIT_0("Unable to set the message digest of BIO\n");
|
DO_EXIT_0("Unable to set the message digest of BIO\n");
|
||||||
}
|
}
|
||||||
|
#if defined(__GNUC__)
|
||||||
|
#pragma GCC diagnostic pop
|
||||||
|
#endif
|
||||||
/* Create outdata file */
|
/* Create outdata file */
|
||||||
outdata = BIO_new_file(options.outfile, "w+bx");
|
outdata = BIO_new_file(options.outfile, "w+bx");
|
||||||
if (!outdata && errno != EEXIST)
|
if (!outdata && errno != EEXIST)
|
||||||
|
21
pe.c
21
pe.c
@ -779,11 +779,18 @@ static BIO *pe_digest_calc_bio(FILE_FORMAT_CTX *ctx, const EVP_MD *md)
|
|||||||
uint32_t idx = 0, fileend;
|
uint32_t idx = 0, fileend;
|
||||||
BIO *bhash = BIO_new(BIO_f_md());
|
BIO *bhash = BIO_new(BIO_f_md());
|
||||||
|
|
||||||
|
#if defined(__GNUC__)
|
||||||
|
#pragma GCC diagnostic push
|
||||||
|
#pragma GCC diagnostic ignored "-Wcast-qual"
|
||||||
|
#endif
|
||||||
if (!BIO_set_md(bhash, md)) {
|
if (!BIO_set_md(bhash, md)) {
|
||||||
fprintf(stderr, "Unable to set the message digest of BIO\n");
|
fprintf(stderr, "Unable to set the message digest of BIO\n");
|
||||||
BIO_free_all(bhash);
|
BIO_free_all(bhash);
|
||||||
return 0; /* FAILED */
|
return 0; /* FAILED */
|
||||||
}
|
}
|
||||||
|
#if defined(__GNUC__)
|
||||||
|
#pragma GCC diagnostic pop
|
||||||
|
#endif
|
||||||
BIO_push(bhash, BIO_new(BIO_s_null()));
|
BIO_push(bhash, BIO_new(BIO_s_null()));
|
||||||
if (ctx->pe_ctx->sigpos)
|
if (ctx->pe_ctx->sigpos)
|
||||||
fileend = ctx->pe_ctx->sigpos;
|
fileend = ctx->pe_ctx->sigpos;
|
||||||
@ -958,11 +965,18 @@ static u_char *pe_page_hash_calc(int *rphlen, FILE_FORMAT_CTX *ctx, int phtype)
|
|||||||
phlen = pphlen * (3 + (int)nsections + (int)(ctx->pe_ctx->fileend / pagesize));
|
phlen = pphlen * (3 + (int)nsections + (int)(ctx->pe_ctx->fileend / pagesize));
|
||||||
|
|
||||||
bhash = BIO_new(BIO_f_md());
|
bhash = BIO_new(BIO_f_md());
|
||||||
|
#if defined(__GNUC__)
|
||||||
|
#pragma GCC diagnostic push
|
||||||
|
#pragma GCC diagnostic ignored "-Wcast-qual"
|
||||||
|
#endif
|
||||||
if (!BIO_set_md(bhash, md)) {
|
if (!BIO_set_md(bhash, md)) {
|
||||||
fprintf(stderr, "Unable to set the message digest of BIO\n");
|
fprintf(stderr, "Unable to set the message digest of BIO\n");
|
||||||
BIO_free_all(bhash);
|
BIO_free_all(bhash);
|
||||||
return NULL; /* FAILED */
|
return NULL; /* FAILED */
|
||||||
}
|
}
|
||||||
|
#if defined(__GNUC__)
|
||||||
|
#pragma GCC diagnostic pop
|
||||||
|
#endif
|
||||||
BIO_push(bhash, BIO_new(BIO_s_null()));
|
BIO_push(bhash, BIO_new(BIO_s_null()));
|
||||||
if (!BIO_write_ex(bhash, ctx->options->indata, ctx->pe_ctx->header_size + 88, &written)
|
if (!BIO_write_ex(bhash, ctx->options->indata, ctx->pe_ctx->header_size + 88, &written)
|
||||||
|| written != ctx->pe_ctx->header_size + 88) {
|
|| written != ctx->pe_ctx->header_size + 88) {
|
||||||
@ -1005,6 +1019,10 @@ static u_char *pe_page_hash_calc(int *rphlen, FILE_FORMAT_CTX *ctx, int phtype)
|
|||||||
for (l=0; l<rs; l+=pagesize, pi++) {
|
for (l=0; l<rs; l+=pagesize, pi++) {
|
||||||
PUT_UINT32_LE(ro + l, res + pi*pphlen);
|
PUT_UINT32_LE(ro + l, res + pi*pphlen);
|
||||||
bhash = BIO_new(BIO_f_md());
|
bhash = BIO_new(BIO_f_md());
|
||||||
|
#if defined(__GNUC__)
|
||||||
|
#pragma GCC diagnostic push
|
||||||
|
#pragma GCC diagnostic ignored "-Wcast-qual"
|
||||||
|
#endif
|
||||||
if (!BIO_set_md(bhash, md)) {
|
if (!BIO_set_md(bhash, md)) {
|
||||||
fprintf(stderr, "Unable to set the message digest of BIO\n");
|
fprintf(stderr, "Unable to set the message digest of BIO\n");
|
||||||
BIO_free_all(bhash);
|
BIO_free_all(bhash);
|
||||||
@ -1012,6 +1030,9 @@ static u_char *pe_page_hash_calc(int *rphlen, FILE_FORMAT_CTX *ctx, int phtype)
|
|||||||
OPENSSL_free(res);
|
OPENSSL_free(res);
|
||||||
return NULL; /* FAILED */
|
return NULL; /* FAILED */
|
||||||
}
|
}
|
||||||
|
#if defined(__GNUC__)
|
||||||
|
#pragma GCC diagnostic pop
|
||||||
|
#endif
|
||||||
BIO_push(bhash, BIO_new(BIO_s_null()));
|
BIO_push(bhash, BIO_new(BIO_s_null()));
|
||||||
if (rs - l < pagesize) {
|
if (rs - l < pagesize) {
|
||||||
if (!BIO_write_ex(bhash, ctx->options->indata + ro + l, rs - l, &written)
|
if (!BIO_write_ex(bhash, ctx->options->indata + ro + l, rs - l, &written)
|
||||||
|
15
script.c
15
script.c
@ -242,11 +242,18 @@ static u_char *script_digest_calc(FILE_FORMAT_CTX *ctx, const EVP_MD *md)
|
|||||||
u_char *mdbuf;
|
u_char *mdbuf;
|
||||||
BIO *hash = BIO_new(BIO_f_md());
|
BIO *hash = BIO_new(BIO_f_md());
|
||||||
|
|
||||||
|
#if defined(__GNUC__)
|
||||||
|
#pragma GCC diagnostic push
|
||||||
|
#pragma GCC diagnostic ignored "-Wcast-qual"
|
||||||
|
#endif
|
||||||
if (!BIO_set_md(hash, md)) {
|
if (!BIO_set_md(hash, md)) {
|
||||||
fprintf(stderr, "Unable to set the message digest of BIO\n");
|
fprintf(stderr, "Unable to set the message digest of BIO\n");
|
||||||
BIO_free_all(hash);
|
BIO_free_all(hash);
|
||||||
return NULL; /* FAILED */
|
return NULL; /* FAILED */
|
||||||
}
|
}
|
||||||
|
#if defined(__GNUC__)
|
||||||
|
#pragma GCC diagnostic pop
|
||||||
|
#endif
|
||||||
BIO_push(hash, BIO_new(BIO_s_null()));
|
BIO_push(hash, BIO_new(BIO_s_null()));
|
||||||
if (!script_write_bio(hash, ctx->options->indata, ctx->script_ctx->fileend)) {
|
if (!script_write_bio(hash, ctx->options->indata, ctx->script_ctx->fileend)) {
|
||||||
BIO_free_all(hash);
|
BIO_free_all(hash);
|
||||||
@ -782,12 +789,18 @@ static BIO *script_digest_calc_bio(FILE_FORMAT_CTX *ctx, const EVP_MD *md)
|
|||||||
fileend = ctx->script_ctx->sigpos;
|
fileend = ctx->script_ctx->sigpos;
|
||||||
else
|
else
|
||||||
fileend = ctx->script_ctx->fileend;
|
fileend = ctx->script_ctx->fileend;
|
||||||
|
#if defined(__GNUC__)
|
||||||
|
#pragma GCC diagnostic push
|
||||||
|
#pragma GCC diagnostic ignored "-Wcast-qual"
|
||||||
|
#endif
|
||||||
if (!BIO_set_md(hash, md)) {
|
if (!BIO_set_md(hash, md)) {
|
||||||
fprintf(stderr, "Unable to set the message digest of BIO\n");
|
fprintf(stderr, "Unable to set the message digest of BIO\n");
|
||||||
BIO_free_all(hash);
|
BIO_free_all(hash);
|
||||||
return NULL; /* FAILED */
|
return NULL; /* FAILED */
|
||||||
}
|
}
|
||||||
|
#if defined(__GNUC__)
|
||||||
|
#pragma GCC diagnostic pop
|
||||||
|
#endif
|
||||||
BIO_push(hash, BIO_new(BIO_s_null()));
|
BIO_push(hash, BIO_new(BIO_s_null()));
|
||||||
if (!script_digest_convert(hash, ctx, fileend)) {
|
if (!script_digest_convert(hash, ctx, fileend)) {
|
||||||
fprintf(stderr, "Unable calc a message digest value\n");
|
fprintf(stderr, "Unable calc a message digest value\n");
|
||||||
|
Loading…
x
Reference in New Issue
Block a user