[squid-users] Error during build of version 7.1 from sources
Alex Rousskov
rousskov at measurement-factory.com
Mon Sep 15 14:43:52 UTC 2025
On 2025-09-15 09:47, alex ' wrote:
> error: invalid conversion from 'const ASN1_STRING*' [-fpermissive]
> error: invalid conversion from 'const char*' to 'char*' [-fpermissive]
These errors are caused by an outdated OpenSSL declaration of
ASN1_STRING_to_UTF8() and X509V3_EXT_conf_nid() functions. OpenSSL fixed
those and many similar problems in 2016. Those fixes are available in
OpenSSL v1.1.
Your options may include, without limitation:
* Upgrading to OpenSSL v1.1 or later
* Disabling the corresponding check using compiler flags
HTH,
Alex.
> The above errors seem to be of the same type and indicate who the
> compiler expects other variables. Perhaps the compiler needs to put a
> pointer to another place, or how to declare the type of the variable?
>
> сб, 13 сент. 2025 г. в 14:41, Francesco Chemolli <gkinkie at gmail.com>:
>>
>> Do you need snmp? If you don't, maybe it's enough to disable that
>> functionality by replacing --enable-snmp with --disable-snmp.
>>
>>
>>
>> On Fri, Sep 12, 2025 at 10:08 AM alex ' <moizakuski at gmail.com> wrote:
>>>
>>> Good afternoon!
>>> I tried to build on the most modern kernel and the latest version of
>>> the compiler running the Fedora 41 operating system - it is assembled
>>> without errors. The question here is precisely that it is necessary to
>>> build and update the version on the existing server. I use the
>>> following keys for assembly:
>>> --build=x86_64-redhat-linux-gnu --host=x86_64-redhat-linux-gnu
>>> --program-prefix= --prefix=/usr --exec-prefix=/usr --bindir=/usr/bin
>>> --sbindir=/usr/sbin --sysconfdir=/etc --datadir=/usr/share
>>> --includedir=/usr/include --libdir=/usr/lib64
>>> --libexecdir=/usr/libexec --sharedstatedir=/var/lib
>>> --mandir=/usr/share/man --infodir=/usr/share/info
>>> --libexecdir=/usr/lib64/squid --datadir=/usr/share/squid
>>> --sysconfdir=/etc/squid --with-logdir=/var/log/squid
>>> --with-pidfile=/var/run/squid.pid --disable-dependency-tracking
>>> --enable-eui --enable-follow-x-forwarded-for --enable-auth
>>> --enable-auth-basic=DB,fake,getpwnam,LDAP,NCSA,PAM,POP3,RADIUS,SASL,SMB
>>> --enable-auth-ntlm=fake --enable-auth-digest=file,LDAP
>>> --enable-auth-negotiate=kerberos,wrapper
>>> --enable-external-acl-helpers=LDAP_group,time_quota,session,unix_group,wbinfo_group,kerberos_ldap_group
>>> --enable-storeid-rewrite-helpers=file --enable-cache-digests
>>> --enable-cachemgr-hostname=localhost --enable-delay-pools
>>> --enable-epoll --enable-icap-client --enable-ident-lookups
>>> --enable-linux-netfilter --enable-removal-policies=heap,lru
>>> --enable-snmp --enable-ssl --enable-ssl-crtd
>>> --enable-storeio=aufs,diskd,ufs,rock --enable-diskio --enable-wccpv2
>>> --disable-esi --enable-ecap --with-aio --with-default-user=squid
>>> --with-dl --with-openssl --with-included-ltdl --with-pthreads
>>> --disable-arch-native --disable-security-cert-validators
>>> --disable-strict-error-checking --with-swapdir=/var/spool/squid
>>> --enable-translation build_alias=x86_64-redhat-linux-gnu
>>> host_alias=x86_64-redhat-linux-gnu
>>>
>>> чт, 11 сент. 2025 г. в 12:47, Francesco Chemolli <gkinkie at gmail.com>:
>>>>
>>>> Hi,
>>>> Centos-6 has been EOLed years ago. Any chance for you to test on a
>>>> more modern version of the OS?
>>>> Also, could you share the configure flags you used?
>>>>
>>>> On Thu, Sep 11, 2025 at 10:07 AM alex ' <moizakuski at gmail.com> wrote:
>>>>>
>>>>> Good afternoon! To build version 7.1, the gcc compiler version 9.1.1
>>>>> is used. The compiler returned an error during the build process:
>>>>>
>>>>> gadgets.cc: In function 'std::optional<SBuf> ParseAsUtf8(const ASN1_STRING&)':
>>>>> gadgets.cc:483:67: error: invalid conversion from 'const ASN1_STRING*'
>>>>> {aka 'const asn1_string_st*'} to 'ASN1_STRING*' {aka
>>>>> 'asn1_string_st*'} [-fpermissive]
>>>>> 483 | const auto conversionResult =
>>>>> ASN1_STRING_to_UTF8(&utfBuffer, &asnBuffer);
>>>>> |
>>>>> ^~~~~~~~~~
>>>>> | |
>>>>> |
>>>>> const ASN1_STRING* {aka const asn1_string_st*}
>>>>> In file included from ../../compat/openssl.h:29,
>>>>> from ../../src/security/LockingPointer.h:18,
>>>>> from ../../src/security/forward.h:15,
>>>>> from ../../src/security/ErrorDetail.h:15,
>>>>> from ../../src/security/Io.h:13,
>>>>> from gadgets.cc:15:
>>>>> /usr/include/openssl/asn1.h:1000:59: note: initializing argument 2
>>>>> of 'int ASN1_STRING_to_UTF8(unsigned char**, ASN1_STRING*)'
>>>>> 1000 | int ASN1_STRING_to_UTF8(unsigned char **out, ASN1_STRING *in);
>>>>> | ~~~~~~~~~~~~~^~
>>>>> gadgets.cc: In function 'bool addAltNameWithSubjectCn(Security::CertPointer&)':
>>>>> gadgets.cc:551:95: error: invalid conversion from 'const char*' to
>>>>> 'char*' [-fpermissive]
>>>>> 551 | const auto ext = X509V3_EXT_conf_nid(nullptr, nullptr,
>>>>> NID_subject_alt_name, altName.c_str());
>>>>> |
>>>>> ~~~~~~~~~~~~~^~
>>>>> |
>>>>> |
>>>>> |
>>>>> const char*
>>>>> In file included from ../../src/ssl/gadgets.h:34,
>>>>> from ../../src/AccessLogEntry.h:31,
>>>>> from ../../src/auth/UserRequest.h:14,
>>>>> from ../../src/HttpRequest.h:24,
>>>>> from ../../src/ssl/ErrorDetailManager.h:13,
>>>>> from ../../src/security/ErrorDetail.h:19,
>>>>> from ../../src/security/Io.h:13,
>>>>> from gadgets.cc:15:
>>>>> /usr/include/openssl/x509v3.h:613:28: note: initializing argument 4
>>>>> of 'X509_EXTENSION* X509V3_EXT_conf_nid(lhash_st_CONF_VALUE*,
>>>>> X509V3_CTX*, int, char*)'
>>>>> 613 | int ext_nid, char *value);
>>>>> | ~~~~~~^~~~~
>>>>>
>>>>> I build on CentOS 6.10 with and using the latest devtoolset-9 package
>>>>> _______________________________________________
>>>>> squid-users mailing list
>>>>> squid-users at lists.squid-cache.org
>>>>> https://lists.squid-cache.org/listinfo/squid-users
>>>>
>>>>
>>>>
>>>> --
>>>> Francesco
>>
>>
>>
>> --
>> Francesco
>> _______________________________________________
>> squid-users mailing list
>> squid-users at lists.squid-cache.org
>> https://lists.squid-cache.org/listinfo/squid-users
> _______________________________________________
> squid-users mailing list
> squid-users at lists.squid-cache.org
> https://lists.squid-cache.org/listinfo/squid-users
More information about the squid-users
mailing list