summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/hidden (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Make some more x509 conf stuff internaltb2024-08-311-12/+1
| | | | | | | This internalizes a particularly scary layer of conf used for X.509 extensions. Again unused public API... ok beck jsing
* Retire X509V3_set_conf_lhash()tb2024-08-311-2/+1
| | | | | | | | Thankfully sthen removed the out-of-support PHP versions 7.4 and 8.0, which were the last users of this API, which in turn permitted much of this conf rampage. Now the stub can join its guts in the attic. ok beck jsing
* Retire X509V3_EXT_{,CRL_,REQ_}add_conf()tb2024-08-311-4/+1
| | | | | | | | Fortunately all projects who want to configure their extensions using a dangerous string DSL/API figured out the fact that one was supposed to be using the nconf version of these (the hint is the 'n', as in new). ok beck jsing
* Remove OPENSSL_load_builtin_modulestb2024-08-311-2/+1
| | | | | | | This became obsolete with the automatic library initialization. Now it is time for it to become an internal API. ok beck jsing
* Unexport CONF_set_nconf()tb2024-08-311-2/+1
| | | | | | | This translation device from old to new conf guts will need to stay for a while. However, it's only needed internally. ok beck jsing
* Remove more CONF_* functions that are no longer neededtb2024-08-311-9/+1
| | | | | | | | This is the next layer of unused cruft that can now go. The code lovingly called it 'the "CONF classic" functions'. No tear was shed. Don't worry, we still have the "New CONF" functions! ok beck jsing
* Unexport NCONF_defaulttb2024-08-311-2/+1
| | | | | | | | The only project I'm aware of that ever used this was rust-openssl and they did so for no good reason. So remove this API, the crate's code is already adjusted accordingly. ok beck jsing
* Inline NCONF_free_data in its only usertb2024-08-311-2/+1
| | | | ok beck jsing
* Remove NCONF_WIN32tb2024-08-311-2/+1
| | | | | | | Undocumented and entirely unused. Gets rid of a big, modifiable, global table. ok beck jsing
* Retire conf_api.h and the API thereintb2024-08-311-36/+0
| | | | | | | This makes the _CONF_* layer of the conf module internal and gets rid of the entirely unused conf_api.h. ok beck jsing
* Unexport some conf layers unused outside of libcryptotb2024-08-311-13/+1
| | | | | | | | | | | | | imodules are called imodules because they contain Information about modules that have been Initialized. Which one of these two I it is is anyone's best guess. Why anything outside of libcrypto would ever possibly care will also remain a mystery. Remove the old way of adding a conf module, user data, stop allowing to set a method (it's opaque now, remember?) and drop a couple bits more from the public api interface. ok beck jsing
* Remove unused {,N}CONF_dump_{bio,fp}()tb2024-08-311-5/+1
| | | | | | | | It's time to start removing some horrors from the conf/ garbage. If the current top layer wasn't terrible enough, you could always slap another one on top of it and it would then be truly marvellous. ok beck jsing
* Remove EVP_PKEY_*check againtb2024-08-311-4/+1
| | | | | | | | | | | | | | | This API turned out to be a really bad idea. OpenSSL 3 extended it, with the result that basically every key type had its own DoS issues fixed in a recent security release. We eschewed these by having some upper bounds that kick in when keys get insanely large. Initially added on tobhe's request who fortunately never used it in iked, this was picked up only by ruby/openssl (one of the rare projects doing proper configure checks rather than branching on VERSION defines) and of course xca, since it uses everything it can. So it was easy to get rid of this again. ok beck jsing
* Get rid of last use of db_methtb2024-08-281-3/+3
| | | | | | | | | | | | Nothing touches db_meth in ports. Thus only way a db_meth can be set is now as a side effect X509V3_set_conf() in which case the db is an NCONF database and the db_meth will be a thin wrapper of NCONF_get_section(). Make that explicit in the implementation, remove the guts of the unused X509V3_get_string() and X509V3_string_free(), turn X509V3_section_free() into a noop and replace several checks for ctx->db, ctx->db->meth, ... with a simple ctx->db != NULL check. ok beck jsing
* Turn X509V3_set_conf_lhash() into a nooptb2024-08-281-2/+2
| | | | | | Another legacy turd that was only used by PHP 7.4 and 8.0. ok beck jsing
* Add LCRYPTO_USED(X509_get_signature_info)tb2024-08-281-1/+2
|
* Disable X509V3_EXT{,_CRL,_REQ}_add_conf()tb2024-08-281-4/+4
| | | | | | | These legacy interfaces were only used by PHP 7.4 and 8.0 and they will be removed in an upcoming bump. ok beck jsing
* Switch UI_UTIL_read_pw* to LCRYPTO_UNUSED()tb2024-08-241-3/+3
| | | | ok jsing
* Mark X509at_get_attr{,_count}() and X509at_delete_attr() as unusedtb2024-07-261-4/+4
| | | | ok jsing
* Switch the EVP_PKEY_*attr* API to LCRYPTO_UNUSED()tb2024-07-151-10/+10
| | | | This would have prevented the PKCS12 oopsie.
* Despite being an ELF citizen, hppa is its own special snowflake and requiresmiod2024-07-111-1/+5
| | | | | | | different asm stanzas to produce strong aliases. This unbreaks libcrypto (and thus ssh, among other things) on hppa after the recent switch to LIBRESSL_CRYPTO_NAMESPACE.
* Hide remaining unused ERR functions in err.hbeck2024-07-091-1/+3
| | | | ok tb@
* Hide CRYPTO_get_dynlock_create_callbackbeck2024-07-091-1/+2
| | | | ok tb@
* Hide DES global variablesbeck2024-07-091-1/+5
| | | | ok tb@
* Hide symbols for two missed public functions in bio.hbeck2024-07-091-1/+3
| | | | ok tb@
* Hide global _it symbols in pkcs12.hbeck2024-07-091-1/+5
| | | | ok tb@
* Hide global _it symbola in cms.hbeck2024-07-091-1/+5
| | | | ok tb@
* Hide global _it symbols in dsa.hbeck2024-07-081-1/+6
| | | | ok tb@
* Hide global _it symbols in rsa.hbeck2024-07-081-1/+7
| | | | ok tb@
* Guard variable declarations to unbreak non-namespaced builds.beck2024-07-086-8/+18
| | | | ok tb@
* Hide global _it symbols in asn1t.hbeck2024-07-081-1/+6
| | | | ok tb@
* Hide global _it symbols in pkcs7.hbeck2024-07-081-1/+14
| | | | ok tb@
* Hide global _it variables in ocsp.hbeck2024-07-081-1/+17
| | | | ok tb@
* Hide global _it variables in asn1.hbeck2024-07-081-1/+24
| | | | ok tb@
* Hide global _it variables in x509.hbeck2024-07-081-1/+22
| | | | ok tb@
* Hide global _it variables in x509v3.hbeck2024-07-081-1/+35
| | | | ok tb@
* Hide deprecated functions in ec.hbeck2024-04-101-1/+10
| | | | | | use LCRYPTO_UNUSED and remove the LIBRESSL_INTERNAL guard ok tb@
* Hide deprecated functions in evp.hbeck2024-04-101-1/+6
| | | | | | use LCRYPTO_UNUSED and remove the LIBRESSL_INTERNAL guard around them. ok tb@
* Hide symbols in bn.hbeck2024-04-101-1/+6
| | | | | | | Mark them LCRYPTO_UNUSED appropriately and remove the LIBRESSL_INTERNAL guards around them ok tb@
* Hide a couple of LCRYPTO_UNUSED in asn1.hbeck2024-04-101-1/+3
| | | | | | and remove the LIBRESSL_INTERNAL guards around them ok tb@
* Finish hiding symbols in rand.hbeck2024-04-101-1/+11
| | | | | This removes the LIBRESSL_INTERNAL guards and marks the functions within as LCRYPTO_UNUSED
* Finish Hiding symbols in crypto.hbeck2024-04-101-1/+32
| | | | | | | | | | | | | crypto.h already had the symbols not hidden behind LIBRESSL_INTERNAL hidden - This now picks up the reset of them marking them as LCRYPTO_UNUSED, and removes the LIBRESSL_INTERNAL guard. These symbols will now be hidden, but if we use them inside the library in a namespaced build we will get a deprecation warning. use outside the library will be as with any other hidden symbol, so fine. ok tb@
* Add hidden conf.h, missed in an earlier committb2024-04-091-0/+74
|
* Hide public symbols in x509.hbeck2024-04-091-1/+195
| | | | | | | This picks up most of the remaining public symbols in x509.h ok tb@
* Hide public symbols in evp.hbeck2024-04-091-0/+378
| | | | | | largely mechanically done by the guentherizer 9000 ok tb@
* Fix LCRYPTO_UNUSED() in namespace buildstb2024-03-301-4/+7
| | | | | | | | | If namespace builds are enabled, static links don't work due to missing _lcry_* symbols. Make LCRYPTO_UNUSED() match LCRYPTO_USED() with an extra deprecated attribute. This way we can remove the !LIBRESSL_INTERNAL #ifdef wrapping in public headers. ok beck joshua
* Hide symbols in aesjoshua2024-03-301-0/+43
| | | | ok jsing
* Hide symbols in camelliajoshua2024-03-301-0/+39
| | | | ok tb
* Hide symbols in whrlpooljoshua2024-03-301-0/+34
| | | | ok tb
* Hide symbols in CMSjoshua2024-03-301-1/+10
| | | | ok jsing