[Proftpd-user] Compile with TLS problems

Rafael Reinoso <[email protected]> Thu, 13 Apr 2023 09:29:28 +0000
Newsgroups gmane.network.proftpd.user
Message-ID <AS4PR10MB62565FDCB5D994DF2BEC7CECAC989@AS4PR10MB6256.EURPRD10.PROD.OUTLOOK.COM>
Hi! I have had some problems compiling proftpd on my qnap with Entware. I have these packages available for me:
opkg update
Downloading http://bin.entware.net/x64-k3.2/Packages.gz

I even have proftpd there, but without TLS

cat /etc/*release
NAME="QTS"
VERSION="5.0.1 (20230322)"
ID=qts
PRETTY_NAME="QTS 5.0.1 (20230322)"
VERSION_ID="5.0.1"

uname -a
Linux TS-653A 5.10.60-qnap #1 SMP Wed Mar 22 20:14:48 CST 2023 x86_64 GNU/Linux

It worked with 1.3.6, but not with 1.3.7 or 1.3.8. I do it like this:

wget ftp://ftp.proftpd.org/distrib/source/proftpd-1.3.7f.tar.gz
tar -xzf proftpd-1.3.7f.tar.gz
cd proftpd-1.3.7f
./configure --with-modules=mod_tls --prefix=/opt --with-lastlog --enable-dso

It ends with this:
Build Summary
--------------
Building the following static modules:
  mod_auth_pam
  mod_tls
  mod_cap

The whole process is here: https://pastebin.com/AC6RA6Vj

Then I try make, it ends with this:
...
....
mod_tls.c:18389:15: warning: implicit declaration of function 'ENGINE_set_default'; did you mean 'NCONF_default'? [-Wimplicit-function-declaration]
           if (ENGINE_set_default(e, ENGINE_METHOD_ALL)) {
               ^~~~~~~~~~~~~~~~~~
               NCONF_default
mod_tls.c:18389:37: error: 'ENGINE_METHOD_ALL' undeclared (first use in this function); did you mean 'EC_KEY_METHOD_new'?
           if (ENGINE_set_default(e, ENGINE_METHOD_ALL)) {
                                     ^~~~~~~~~~~~~~~~~
                                     EC_KEY_METHOD_new
mod_tls.c:18389:37: note: each undeclared identifier is reported only once for each function it appears in
mod_tls.c:18390:13: warning: implicit declaration of function 'ENGINE_finish' [-Wimplicit-function-declaration]
             ENGINE_finish(e);
             ^~~~~~~~~~~~~
mod_tls.c:18391:13: warning: implicit declaration of function 'ENGINE_free'; did you mean 'NCONF_free'? [-Wimplicit-function-declaration]
             ENGINE_free(e);
             ^~~~~~~~~~~
             NCONF_free
make[1]: *** [Makefile:31: mod_tls.o] Error 1
make[1]: Leaving directory '/share/CACHEDEV1_DATA/.qpkg/Entware-3x/tmp/proftpd/proftpd-1.3.7f/modules'
make: *** [Makefile:57: modules] Error 2
[/opt/tmp/proftpd/proftpd-1.3.7f] #

The whole process is here: https://pastebin.com/30MUKnws

I have tried some random stuff, like:
edit contrib/mod_tls.cand edit manually (naive, right?)
ENGINE_METHOD_ALL > EC_KEY_METHOD_new
SSL_TICKET_RETURN > OCSP_CERTSTATUS
SSL_TICKET_STATUS > OCSP_CERTSTATUS
make clean
./configure --with-modules=mod_tls --prefix=/opt --with-lastlog --enable-dso
./configure --enable-dso --with-shared=mod_tls --prefix=/opt --with-lastlog
./configure --with-modules=mod_tls --prefix=/opt --with-lastlog --enable-dso --with-includes=/opt/include/openssl/ --with-libraries=/opt/lib/

I do not really understand what the problem is, so it is hard to try to solve it.
/raffe

_______________________________________________
ProFTPD Users List   <[email protected]>
Unsubscribe problems?
http://www.proftpd.org/list-unsub.html