Skip to content
View in the app

A better way to browse. Learn more.

ResHax

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.
Help us keep the site running.

Problems compiling QuickBMS on Linux

Featured Replies

  • Author
  • Localization

einstein95, posted Fri Apr 14, 2017 6:15 am (22198)


Previously compiled fine, but now having problems recompiling possibly due to updating libssl from 1.0.0 to 1.1.

Linux version: 4.10.8-1-ARCH

Code:
$ make
cc quickbms.c -m32 -s -O0 -fstack-protector-all -fno-unit-at-a-time -fno-omit-frame-pointer -w -o quickbms \
\
-D_7ZIP_ST \
\
[snip]
\
-lstdc -ldl -lcrypto -lssl -lz -lbz2 -lstdc -lm -lpthread -llzo2 -DDISABLE_UCL -DDISABLE_MCRYPT -DDISABLE_TOMCRYPT
In file included from quickbms.c:586:0:
perform.c: In function 'do_quickbms_hmac':
perform.c:925:31: error: invalid application of 'sizeof' to incomplete type 'EVP_MD_CTX {aka struct evp_md_ctx_st}'
     tmpctx = calloc(1, sizeof(EVP_MD_CTX));
                               ^~~~~~~~~~
perform.c: In function 'perform_encryption':
perform.c:976:24: error: dereferencing pointer to incomplete type 'EVP_CIPHER_CTX {aka struct evp_cipher_ctx_st}'
             i = evp_ctx->encrypt;
                        ^~
In file included from quickbms.c:589:0:
cmd.c: In function 'createRSA':
cmd.c:4384:16: error: dereferencing pointer to incomplete type 'RSA {aka struct rsa_st}'
         rsa_key->n = BN_bin2bn(key,  keysz,  rsa_key->n);   // n
                ^~
cmd.c: In function 'CMD_Encryption_func':
cmd.c:5323:42: error: invalid application of 'sizeof' to incomplete type 'EVP_MD_CTX {aka struct evp_md_ctx_st}'
             evpmd_ctx = calloc(1, sizeof(EVP_MD_CTX));
                                          ^~~~~~~~~~
cmd.c:5328:41: error: invalid application of 'sizeof' to incomplete type 'HMAC_CTX {aka struct hmac_ctx_st}'
             hmac_ctx = calloc(1, sizeof(HMAC_CTX));
                                         ^~~~~~~~
In file included from quickbms.c:589:0:
cmd.c:5374:36: error: invalid application of 'sizeof' to incomplete type 'EVP_CIPHER_CTX {aka struct evp_cipher_ctx_st}'
         evp_ctx = calloc(1, sizeof(EVP_CIPHER_CTX));
                                    ^~~~~~~~~~~~~~
In file included from quickbms.c:589:0:
cmd.c:5392:38: error: invalid application of 'sizeof' to incomplete type 'EVP_MD_CTX {aka struct evp_md_ctx_st}'
         evpmd_ctx = calloc(1, sizeof(EVP_MD_CTX));
                                      ^~~~~~~~~~
cmd.c:5400:41: error: invalid application of 'sizeof' to incomplete type 'HMAC_CTX {aka struct hmac_ctx_st}'
             hmac_ctx = calloc(1, sizeof(HMAC_CTX));
                                         ^~~~~~~~
make: *** [Makefile:25: all] Error 1


The commands used:
Code:
wget http://aluigi.altervista.org/papers/quickbms_src.zip
7z x quickbms_src.zip
rm quickbms_src.zip
cd src/
make


EDIT: It appears so, there were a number of API changes: https://wiki.openssl.org/index.php/Open ... .0_Changes
  • Author
  • Localization

aluigi, posted Mon Apr 17, 2017 2:33 pm (22298)


Yeah, I'm thinking about supporting both the new 1.1 and the old versions in the next quickbms.
evp is mandatory for quickbms so it's removing in 1.1 must be reimplemented in some way, if it's a painful process then I can't support 1.1
Guest
This topic is now closed to further replies.

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.