From 4e36e08e90dbd3c27f566ca396f4284b77f1bf40 Mon Sep 17 00:00:00 2001 From: Denys Fedoryshchenko Date: Tue, 4 Aug 2026 17:50:49 +0300 Subject: crypto: drop the dangling crypto.h symlink and its last references c912d090 ("crypto: Removed internal tomcat crypto.") deleted the crypto/ tree but left accel-pppd/include/crypto.h behind, a tracked symlink to ../../crypto/crypto.h which has pointed at nothing since. backup_file.c still includes it, so it fails to compile with fatal error: crypto.h: No such file or directory That goes unnoticed because accel-pppd/CMakeLists.txt has ADD_SUBDIRECTORY(backup) commented out, i.e. backup_file.c is not part of any build; the breakage only shows up for whoever re-enables it. Include instead, which is what the file actually needs (MD5_CTX and friends) and what c912d090 did for every file it touched. sstp.c and radius/packet.c defer to crypto.h for the rationale behind their OPENSSL_API_COMPAT define. Spell it out locally instead, and point at the project wide ADD_DEFINITIONS() in the top level CMakeLists.txt added by c1689506 ("openssl: suppress deprecated API warnings"), noting why the local define is kept despite being redundant with it: it has to be visible before the first OpenSSL header. Then remove the symlink, which nothing references anymore. --- accel-pppd/backup/backup_file.c | 3 ++- accel-pppd/ctrl/sstp/sstp.c | 7 +++++-- accel-pppd/include/crypto.h | 1 - accel-pppd/radius/packet.c | 7 +++++-- 4 files changed, 12 insertions(+), 6 deletions(-) delete mode 120000 accel-pppd/include/crypto.h diff --git a/accel-pppd/backup/backup_file.c b/accel-pppd/backup/backup_file.c index 06dc02d4..472694f0 100644 --- a/accel-pppd/backup/backup_file.c +++ b/accel-pppd/backup/backup_file.c @@ -10,11 +10,12 @@ #include #include +#include + #include "triton.h" #include "log.h" #include "ap_session.h" #include "backup.h" -#include "crypto.h" #include "memdebug.h" #define VERSION 1 diff --git a/accel-pppd/ctrl/sstp/sstp.c b/accel-pppd/ctrl/sstp/sstp.c index 2fd8cb35..db08ae93 100644 --- a/accel-pppd/ctrl/sstp/sstp.c +++ b/accel-pppd/ctrl/sstp/sstp.c @@ -21,8 +21,11 @@ #include "linux_ppp.h" /* - * Suppress OpenSSL 3.0 deprecation warnings for DH API. - * See crypto.h for detailed explanation. + * Suppress OpenSSL 3.0 deprecation warnings for the DH API: it is deprecated + * but still functional, and still required for protocol compatibility. The + * project sets this for every target (see the top level CMakeLists.txt); it + * is repeated here because it only takes effect if it is defined before the + * first OpenSSL header is pulled in. */ #define OPENSSL_API_COMPAT 0x10100000L #include diff --git a/accel-pppd/include/crypto.h b/accel-pppd/include/crypto.h deleted file mode 120000 index 2f3f63cb..00000000 --- a/accel-pppd/include/crypto.h +++ /dev/null @@ -1 +0,0 @@ -../../crypto/crypto.h \ No newline at end of file diff --git a/accel-pppd/radius/packet.c b/accel-pppd/radius/packet.c index cfc0bc29..c7e91349 100644 --- a/accel-pppd/radius/packet.c +++ b/accel-pppd/radius/packet.c @@ -10,8 +10,11 @@ #include /* - * Suppress OpenSSL 3.0 deprecation warnings for HMAC API. - * See crypto.h for detailed explanation. + * Suppress OpenSSL 3.0 deprecation warnings for the HMAC API: it is + * deprecated but still functional, and still required for protocol + * compatibility. The project sets this for every target (see the top level + * CMakeLists.txt); it is repeated here because it only takes effect if it is + * defined before the first OpenSSL header is pulled in. */ #define OPENSSL_API_COMPAT 0x10100000L #include -- cgit v1.2.3