Does not build against openssl-1.1? #6

Open
opened 2020-09-30 09:16:00 +00:00 by roseswe · 2 comments
roseswe commented 2020-09-30 09:16:00 +00:00 (Migrated from github.com)

As openssl 1.1 is now default, it seems to have build issues....

$ make
cc -L/usr/local/lib/ -L/opt/local/lib src/skipfish.c -o skipfish
-O3 -Wno-format -Wall -funsigned-char -g -ggdb -I/usr/local/include/ -I/opt/local/include/ -DVERSION="2.10b" src/http_client.c src/database.c src/crawler.c src/analysis.c src/report.c src/checks.c src/signatures.c src/auth.c src/options.c -lcrypto -lssl -lidn -lz -lpcre
src/http_client.c: In function 'check_ssl':
src/http_client.c:1965:10: error: dereferencing pointer to incomplete type 'SSL_CIPHER {aka const struct ssl_cipher_st}'
if(!(cp->algo_strength & SSL_MEDIUM) && !(cp->algo_strength & SSL_HIGH))
^~
src/http_client.c:1982:34: error: dereferencing pointer to incomplete type 'X509 {aka struct x509_st}'
if (ASN1_UTCTIME_cmp_time_t(p->cert_info->validity->notBefore, cur_time)
^~
src/http_client.c:2027:11: warning: 'ASN1_STRING_data' is deprecated [-Wdeprecated-declarations]
buf = (char*)ASN1_STRING_data(name->d.dNSName);
^~~
In file included from /usr/include/openssl/e_os2.h:13:0,
from /usr/include/openssl/ssl.h:45,
from src/http_client.c:37:
/usr/include/openssl/asn1.h:553:1: note: declared here
DEPRECATEDIN_1_1_0(unsigned char *ASN1_STRING_data(ASN1_STRING *x))
^
src/report.c: In function 'collect_samples':
src/report.c:447:5: warning: this 'for' clause does not guard... [-Wmisleading-indentation]
for (i=0;i<m_samp_cnt;i++)
^~~
src/report.c:450:7: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'for'
if (i == m_samp_cnt) {
^~
make: *** [Makefile:48: skipfish] Error 1

As openssl 1.1 is now default, it seems to have build issues.... $ make cc -L/usr/local/lib/ -L/opt/local/lib src/skipfish.c -o skipfish \ -O3 -Wno-format -Wall -funsigned-char -g -ggdb -I/usr/local/include/ -I/opt/local/include/ -DVERSION=\"2.10b\" src/http_client.c src/database.c src/crawler.c src/analysis.c src/report.c src/checks.c src/signatures.c src/auth.c src/options.c -lcrypto -lssl -lidn -lz -lpcre src/http_client.c: In function 'check_ssl': src/http_client.c:1965:10: error: dereferencing pointer to incomplete type 'SSL_CIPHER {aka const struct ssl_cipher_st}' if(!(cp->algo_strength & SSL_MEDIUM) && !(cp->algo_strength & SSL_HIGH)) ^~ src/http_client.c:1982:34: error: dereferencing pointer to incomplete type 'X509 {aka struct x509_st}' if (ASN1_UTCTIME_cmp_time_t(p->cert_info->validity->notBefore, cur_time) ^~ src/http_client.c:2027:11: warning: 'ASN1_STRING_data' is deprecated [-Wdeprecated-declarations] buf = (char*)ASN1_STRING_data(name->d.dNSName); ^~~ In file included from /usr/include/openssl/e_os2.h:13:0, from /usr/include/openssl/ssl.h:45, from src/http_client.c:37: /usr/include/openssl/asn1.h:553:1: note: declared here DEPRECATEDIN_1_1_0(unsigned char *ASN1_STRING_data(ASN1_STRING *x)) ^ src/report.c: In function 'collect_samples': src/report.c:447:5: warning: this 'for' clause does not guard... [-Wmisleading-indentation] for (i=0;i<m_samp_cnt;i++) ^~~ src/report.c:450:7: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'for' if (i == m_samp_cnt) { ^~ make: *** [Makefile:48: skipfish] Error 1
yut148 commented 2020-10-22 02:50:02 +00:00 (Migrated from github.com)

Hi.
I don't know exactly.
However, the following error was resolved with openssl-1.0.1u.
I'm using CentOS 8.

Error: Incomplete type'Reverse reference of pointer to SSL_CIPHER

I think it will work if I compile it using openssl-1.0.1u.

reference
LDFLAGS = "-L /usr/local/openssl-1.0.1u/lib" CC = "gcc -I / usr / local / openssl-1.0.1u / include /" make

I used the following openssl.
https://www.openssl.org/source/old/1.0.1/openssl-1.0.1u.tar.gz
I used the openssl shared library.

If you get another error, try installing the following files as well:
pcre-devel libidn-devel
I don't know the specific package name because I don't know the distribution I'm using.

I solved the error, but I haven't used it much as a scanner yet.
Please give it a try.

Hi. I don't know exactly. However, the following error was resolved with openssl-1.0.1u. I'm using CentOS 8. Error: Incomplete type'Reverse reference of pointer to SSL_CIPHER I think it will work if I compile it using openssl-1.0.1u. reference LDFLAGS = "-L /usr/local/openssl-1.0.1u/lib" CC = "gcc -I / usr / local / openssl-1.0.1u / include /" make I used the following openssl. https://www.openssl.org/source/old/1.0.1/openssl-1.0.1u.tar.gz I used the openssl shared library. If you get another error, try installing the following files as well: pcre-devel libidn-devel I don't know the specific package name because I don't know the distribution I'm using. I solved the error, but I haven't used it much as a scanner yet. Please give it a try.
Yablargo commented 2021-05-30 20:40:59 +00:00 (Migrated from github.com)

You can build this without much issue against alpine 3.3 docker image, I just setup an alias skipfish = docker run ....

You can build this without much issue against alpine 3.3 docker image, I just setup an alias skipfish = docker run ....
Sign in to join this conversation.
No Label
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: crt0mega/skipfish#6
No description provided.