]> git.ipfire.org Git - thirdparty/curl.git/commitdiff
docs/libcurl: add TLS backend info for all TLS options
authorDaniel Stenberg <daniel@haxx.se>
Thu, 21 Mar 2024 14:46:32 +0000 (15:46 +0100)
committerDaniel Stenberg <daniel@haxx.se>
Fri, 22 Mar 2024 13:07:55 +0000 (14:07 +0100)
All man pages that are listed to be for TLS now must also specify
exactly what TLS backends the option works for, or use All if they all
work.

cd2nroff makes sure this is done and that the listed backends exist.

Closes #13168

76 files changed:
docs/CURLDOWN.md
docs/libcurl/curl_ws_recv.md
docs/libcurl/opts/CURLINFO_CAINFO.md
docs/libcurl/opts/CURLINFO_CAPATH.md
docs/libcurl/opts/CURLINFO_CERTINFO.md
docs/libcurl/opts/CURLINFO_PROXY_SSL_VERIFYRESULT.md
docs/libcurl/opts/CURLINFO_SSL_ENGINES.md
docs/libcurl/opts/CURLINFO_SSL_VERIFYRESULT.md
docs/libcurl/opts/CURLINFO_TLS_SESSION.md
docs/libcurl/opts/CURLINFO_TLS_SSL_PTR.md
docs/libcurl/opts/CURLOPT_CAINFO.md
docs/libcurl/opts/CURLOPT_CAINFO_BLOB.md
docs/libcurl/opts/CURLOPT_CAPATH.md
docs/libcurl/opts/CURLOPT_CA_CACHE_TIMEOUT.md
docs/libcurl/opts/CURLOPT_CERTINFO.md
docs/libcurl/opts/CURLOPT_CRLFILE.md
docs/libcurl/opts/CURLOPT_DOH_SSL_VERIFYHOST.md
docs/libcurl/opts/CURLOPT_DOH_SSL_VERIFYPEER.md
docs/libcurl/opts/CURLOPT_DOH_SSL_VERIFYSTATUS.md
docs/libcurl/opts/CURLOPT_EGDSOCKET.md
docs/libcurl/opts/CURLOPT_ISSUERCERT.md
docs/libcurl/opts/CURLOPT_ISSUERCERT_BLOB.md
docs/libcurl/opts/CURLOPT_KEYPASSWD.md
docs/libcurl/opts/CURLOPT_PINNEDPUBLICKEY.md
docs/libcurl/opts/CURLOPT_PROXY_CAINFO.md
docs/libcurl/opts/CURLOPT_PROXY_CAINFO_BLOB.md
docs/libcurl/opts/CURLOPT_PROXY_CAPATH.md
docs/libcurl/opts/CURLOPT_PROXY_CRLFILE.md
docs/libcurl/opts/CURLOPT_PROXY_ISSUERCERT.md
docs/libcurl/opts/CURLOPT_PROXY_ISSUERCERT_BLOB.md
docs/libcurl/opts/CURLOPT_PROXY_KEYPASSWD.md
docs/libcurl/opts/CURLOPT_PROXY_PINNEDPUBLICKEY.md
docs/libcurl/opts/CURLOPT_PROXY_SSLCERT.md
docs/libcurl/opts/CURLOPT_PROXY_SSLCERTTYPE.md
docs/libcurl/opts/CURLOPT_PROXY_SSLCERT_BLOB.md
docs/libcurl/opts/CURLOPT_PROXY_SSLKEY.md
docs/libcurl/opts/CURLOPT_PROXY_SSLKEYTYPE.md
docs/libcurl/opts/CURLOPT_PROXY_SSLKEY_BLOB.md
docs/libcurl/opts/CURLOPT_PROXY_SSLVERSION.md
docs/libcurl/opts/CURLOPT_PROXY_SSL_CIPHER_LIST.md
docs/libcurl/opts/CURLOPT_PROXY_SSL_OPTIONS.md
docs/libcurl/opts/CURLOPT_PROXY_SSL_VERIFYHOST.md
docs/libcurl/opts/CURLOPT_PROXY_SSL_VERIFYPEER.md
docs/libcurl/opts/CURLOPT_PROXY_TLS13_CIPHERS.md
docs/libcurl/opts/CURLOPT_PROXY_TLSAUTH_PASSWORD.md
docs/libcurl/opts/CURLOPT_PROXY_TLSAUTH_TYPE.md
docs/libcurl/opts/CURLOPT_PROXY_TLSAUTH_USERNAME.md
docs/libcurl/opts/CURLOPT_RANDOM_FILE.md
docs/libcurl/opts/CURLOPT_SSH_AUTH_TYPES.md
docs/libcurl/opts/CURLOPT_SSH_KEYDATA.md
docs/libcurl/opts/CURLOPT_SSLCERT.md
docs/libcurl/opts/CURLOPT_SSLCERTTYPE.md
docs/libcurl/opts/CURLOPT_SSLCERT_BLOB.md
docs/libcurl/opts/CURLOPT_SSLENGINE.md
docs/libcurl/opts/CURLOPT_SSLENGINE_DEFAULT.md
docs/libcurl/opts/CURLOPT_SSLKEY.md
docs/libcurl/opts/CURLOPT_SSLKEYTYPE.md
docs/libcurl/opts/CURLOPT_SSLKEY_BLOB.md
docs/libcurl/opts/CURLOPT_SSLVERSION.md
docs/libcurl/opts/CURLOPT_SSL_CIPHER_LIST.md
docs/libcurl/opts/CURLOPT_SSL_CTX_DATA.md
docs/libcurl/opts/CURLOPT_SSL_CTX_FUNCTION.md
docs/libcurl/opts/CURLOPT_SSL_EC_CURVES.md
docs/libcurl/opts/CURLOPT_SSL_ENABLE_ALPN.md
docs/libcurl/opts/CURLOPT_SSL_ENABLE_NPN.md
docs/libcurl/opts/CURLOPT_SSL_FALSESTART.md
docs/libcurl/opts/CURLOPT_SSL_OPTIONS.md
docs/libcurl/opts/CURLOPT_SSL_SESSIONID_CACHE.md
docs/libcurl/opts/CURLOPT_SSL_VERIFYHOST.md
docs/libcurl/opts/CURLOPT_SSL_VERIFYPEER.md
docs/libcurl/opts/CURLOPT_SSL_VERIFYSTATUS.md
docs/libcurl/opts/CURLOPT_TLS13_CIPHERS.md
docs/libcurl/opts/CURLOPT_TLSAUTH_PASSWORD.md
docs/libcurl/opts/CURLOPT_TLSAUTH_TYPE.md
docs/libcurl/opts/CURLOPT_TLSAUTH_USERNAME.md
scripts/cd2nroff

index bcb53076307befabe9789124304c15cca0032a89..d0305487ac354461377f1ef14972ee6f74798420 100644 (file)
@@ -72,6 +72,8 @@ Each curldown starts with a header with meta-data:
     See-also:
       - CURLOPT_HEADEROPT (3)
       - CURLOPT_HTTPAUTH (3)
+    TLS-backend:
+      - [name]
     ---
 
 All curldown files *must* have all the headers present and at least one
@@ -80,7 +82,21 @@ All curldown files *must* have all the headers present and at least one
 If the man page is for section 3 (library related). The `Protocol` list must
 contain at least one protocol, which can be `*` if the option is virtually for
 everything. If `*` is used, it must be the only listed protocol. Recognized
-protocols are either URL schemes (in uppercase) or `TLS`.
+protocols are either URL schemes (in uppercase), `TLS` or `TCP`.
+
+If the `Protocol` list contains `TLS`, then there must also be a `TLS-backend`
+list, specifying `*` or a list of what TLS backends that work with this
+option. The available TLS backends are:
+
+- `BearSSL`
+- `GnuTLS`
+- `mbedTLS`
+- `OpenSSL` (also covers BoringSSL, libressl, quictls, AWS-LC and AmiSSL)
+- `rustls`
+- `Schannel`
+- `Secure Transport`
+- `wolfSSL`
+- `All`: all TLS backends
 
 Following the header in the file, is the manual page using markdown-like
 syntax:
index c6740b8771ab7ebddeca3aad30e3cb19bbd6b0aa..38a8a2abc55ba0c7fadcb87c023ca2e7d8a059a4 100644 (file)
@@ -11,7 +11,7 @@ See-also:
   - curl_ws_send (3)
   - libcurl-ws (3)
 Protocol:
-  - Ws
+  - WS
 ---
 
 # NAME
index c0f86bf9df48d0aba2b1df9d40e31c41090535f7..e9ba9d34328a9d86e93ee56df21b8bed784f3174 100644 (file)
@@ -10,6 +10,8 @@ See-also:
   - curl_easy_setopt (3)
 Protocol:
   - TLS
+TLS-backend:
+  - All
 ---
 
 # NAME
index 611ce2bfc24e8e6b76827965f333f8abcf6d46f4..0c9e21dee89bf6e542aec400faeab4e08c2156a0 100644 (file)
@@ -10,6 +10,11 @@ See-also:
   - curl_easy_setopt (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
+  - GnuTLS
+  - mbedTLS
+  - wolfSSL
 ---
 
 # NAME
index cedd57cfd70a1055626c7d686d680841efb7e0a3..507c946e64a9a702a3f339699def394aae24b731 100644 (file)
@@ -10,6 +10,11 @@ See-also:
   - curl_easy_setopt (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
+  - GnuTLS
+  - Schannel
+  - Secure Transport
 ---
 
 # NAME
index 07bb011036d7a2350c561d62fab26d28bffb740c..cf76cd24308b87f776b1afb050547e5d9f117dca 100644 (file)
@@ -10,6 +10,9 @@ See-also:
   - curl_easy_setopt (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
+  - GnuTLS
 ---
 
 # NAME
index 107bbc4673bfb6d10f052efe67d4a6c4d054072b..1035bd3b01cd12bd9549a90e3fb40b22214003db 100644 (file)
@@ -10,6 +10,8 @@ See-also:
   - curl_easy_setopt (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
 ---
 
 # NAME
index 34fd445272f9d74e2224e55f923102875efee5c2..edee07e996006e0bf28a8f5c4ff9312d8db14116 100644 (file)
@@ -10,6 +10,9 @@ See-also:
   - curl_easy_setopt (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
+  - GnuTLS
 ---
 
 # NAME
index edeabae10b14df36fdffe8ae51e8b9685b1a4ff4..ccdd1cc320edd8e6380cf9d81e33ea7f34e84597 100644 (file)
@@ -10,6 +10,9 @@ See-also:
   - curl_easy_setopt (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
+  - GnuTLS
 ---
 
 # NAME
index a4a45d0f3aa0f32b825c630f7bc68ad82377ea4a..2ce6e232c450d27bbb0c8cb0905bc4cbdf4c0b28 100644 (file)
@@ -10,6 +10,14 @@ See-also:
   - curl_easy_setopt (3)
 Protocol:
   - TLS
+TLS-backend:
+  - BearSSL
+  - GnuTLS
+  - mbedTLS
+  - OpenSSL
+  - Schannel
+  - Secure Transport
+  - wolfSSL
 ---
 
 # NAME
index 565e6c4274ee5e3a208fec9cc80f8110448c0207..38ef173ff80a84cc00454a76115418bd3e499c83 100644 (file)
@@ -13,6 +13,8 @@ See-also:
   - CURLOPT_SSL_VERIFYPEER (3)
 Protocol:
   - TLS
+TLS-backend:
+  - All
 ---
 
 # NAME
index 21a0724e656956454daa069692f791379fd1463e..17079321540b09db059219b0cd6da5f8b7792036 100644 (file)
@@ -11,6 +11,14 @@ See-also:
   - CURLOPT_CAPATH (3)
   - CURLOPT_SSL_VERIFYHOST (3)
   - CURLOPT_SSL_VERIFYPEER (3)
+TLS-backend:
+  - BearSSL
+  - OpenSSL
+  - mbedTLS
+  - rustls
+  - wolfSSL
+  - Secure Transport
+  - Schannel
 ---
 
 # NAME
index 6c5d7e6194086bf6fd0ee849d609edd8c6a42eca..212b4876017a5b2afb2a10af74b36b91f5f0f33c 100644 (file)
@@ -11,6 +11,11 @@ See-also:
   - CURLOPT_STDERR (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
+  - GnuTLS
+  - mbedTLS
+  - wolfSSL
 ---
 
 # NAME
index b7121fa4bd139123c5afd017214d00e12ebcaa6a..d90b208e732df629b7d75558739ef043e57710c7 100644 (file)
@@ -12,6 +12,8 @@ See-also:
   - CURLOPT_SSL_VERIFYPEER (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
 ---
 
 # NAME
index f8ade065f98c8623774057ede20bf6eb4df9fd22..7789b29881ac962008bcbbbe2ea20ef959ae01b9 100644 (file)
@@ -12,6 +12,11 @@ See-also:
   - CURLOPT_SSL_VERIFYPEER (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
+  - GnuTLS
+  - Schannel
+  - Secure Transport
 ---
 
 # NAME
index 3ab78c377fb4b060d892f49d5814619b9a659d9a..fc11ad258118930c18f788ea851ba1928ca0b90d 100644 (file)
@@ -10,6 +10,10 @@ See-also:
   - CURLOPT_SSL_VERIFYPEER (3)
 Protocol:
   - TLS
+TLS-backend:
+  - GnuTLS
+  - mbedTLS
+  - OpenSSL
 ---
 
 # NAME
index bdd0bc0f3a455db63caf68940ef692b3928c0c75..21ac14d4dba10240b555369c8784888827ea9424 100644 (file)
@@ -12,6 +12,8 @@ See-also:
   - CURLOPT_SSL_VERIFYPEER (3)
 Protocol:
   - TLS
+TLS-backend:
+  - All
 ---
 
 # NAME
index e272b2c1ffe26c3972c96b0ee0d6ff101c27c455..ca45ce3cd81f6113a79361b177e576a94445a495 100644 (file)
@@ -14,6 +14,8 @@ See-also:
   - CURLOPT_SSL_VERIFYPEER (3)
 Protocol:
   - TLS
+TLS-backend:
+  - All
 ---
 
 # NAME
index c51ff02fbb7307fa2e1008f9f4266df49343dd9b..4b5d5bfca7aca01482f56b9f2c3665dbfa518687 100644 (file)
@@ -10,6 +10,9 @@ See-also:
   - CURLOPT_SSL_VERIFYSTATUS (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
+  - GnuTLS
 ---
 
 # NAME
index e91a8800d8b527b840a8194d9ffad88115dae603..8106fce63049427ad418e37b9e023594314f4b3c 100644 (file)
@@ -8,6 +8,8 @@ See-also:
   - CURLOPT_RANDOM_FILE (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
 ---
 
 # NAME
index 44fa216d68ea72e8d9593294f48e99aeccd1a716..559b8f224bf14a16c08da568643ee759316dd4ad 100644 (file)
@@ -10,6 +10,9 @@ See-also:
   - CURLOPT_SSL_VERIFYPEER (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
+  - GnuTLS
 ---
 
 # NAME
index 4dba669943a57456332d82e4ac738326e3ceb03e..51ed6a32e94feca2cbc9e8205bdc2cf96d1ceb71 100644 (file)
@@ -11,6 +11,8 @@ See-also:
   - CURLOPT_SSL_VERIFYPEER (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
 ---
 
 # NAME
index 7043d3442ca3b6688af634a8d0d5348d134fc669..a8bc4702aef558ab71753806b8ca3247bcd3d993 100644 (file)
@@ -9,6 +9,11 @@ See-also:
   - CURLOPT_SSLKEY (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
+  - mbedTLS
+  - Schannel
+  - wolfSSL
 ---
 
 # NAME
index eb6c05c83ad78558a808024fb68189a49424d632..52ba595aef7791ec79553aa24b58e3ad6757809b 100644 (file)
@@ -11,6 +11,13 @@ See-also:
   - CURLOPT_SSL_VERIFYPEER (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
+  - GnuTLS
+  - wolfSSL
+  - mbedTLS
+  - Secure Transport
+  - Schannel
 ---
 
 # NAME
index 543f20d027e156d5d24c3d08d4e0a6dc6144b3e6..19214bd7e039277fa1bf6a148e28261a1941fa7f 100644 (file)
@@ -16,6 +16,8 @@ See-also:
   - CURLOPT_SSL_VERIFYPEER (3)
 Protocol:
   - TLS
+TLS-backend:
+  - All
 ---
 
 # NAME
index 8022dff26217fd3589ad8309a6a044e56d3dce1a..02d282abf7c18691661aeda6ce9a31d080ef4124 100644 (file)
@@ -16,6 +16,11 @@ See-also:
   - CURLOPT_SSL_VERIFYPEER (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
+  - rustls
+  - Secure Transport
+  - Schannel
 ---
 
 # NAME
index 763214eecba4e253e16b0b8edc47e7158f0a7647..526f2d261046f8cb6954ede5dbc553c2d355b3eb 100644 (file)
@@ -12,6 +12,10 @@ See-also:
   - CURLOPT_STDERR (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
+  - GnuTLS
+  - mbedTLS
 ---
 
 # NAME
index 47762dcac78edf2c9934a03bf5aba8cdf97262d6..ffe28f9a7769afd7115547ddb4228606de22647a 100644 (file)
@@ -11,6 +11,10 @@ See-also:
   - CURLOPT_SSL_VERIFYPEER (3)
 Protocol:
   - TLS
+TLS-backend:
+  - GnuTLS
+  - mbedTLS
+  - OpenSSL
 ---
 
 # NAME
index 3ffe995a6cbfa3696cb4678ef365f2317d5a4c06..1ec2b02eb22d6d2387f558cedcdc9552bf8cfcff 100644 (file)
@@ -12,6 +12,9 @@ See-also:
   - CURLOPT_SSL_VERIFYPEER (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
+  - GnuTLS
 ---
 
 # NAME
@@ -76,7 +79,7 @@ int main(void)
 
 # AVAILABILITY
 
-Added in 7.71.0. This option is supported by the OpenSSL backends.
+Added in 7.71.0. This option is supported by the OpenSSL and GnuTLS backends.
 
 # RETURN VALUE
 
index 34eb8a9c50789a72954c436b8be5dd5a0a78d0e2..38728e51acbd72dabd2715dc1910285bc8bd33cb 100644 (file)
@@ -12,6 +12,8 @@ See-also:
   - CURLOPT_SSL_VERIFYPEER (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
 ---
 
 # NAME
index b2c7255e0b4aed2393017d4beb2de3c87e1b94a5..351af0134b7db1ccedd3be97afb7f8594d36b26d 100644 (file)
@@ -11,6 +11,11 @@ See-also:
   - CURLOPT_SSLKEY (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
+  - mbedTLS
+  - Schannel
+  - wolfSSL
 ---
 
 # NAME
index 8cfe5c34058d6d9e4949fa7a81c505b01c5721ee..61594d146e464dfbf509915a94c023da4d98e579 100644 (file)
@@ -12,6 +12,11 @@ See-also:
   - CURLOPT_PROXY_SSL_VERIFYPEER (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
+  - GnuTLS
+  - mbedTLS
+  - wolfSSL
 ---
 
 # NAME
index 9b0182b68e5ea09244a8a84833df0a44229185b6..f3db4b9764ff604a12888c019d01c08cef73dcf5 100644 (file)
@@ -10,6 +10,13 @@ See-also:
   - CURLOPT_SSLCERT (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
+  - GnuTLS
+  - mbedTLS
+  - Schannel
+  - Secure Transport
+  - wolfSSL
 ---
 
 # NAME
index 8d1f10b4dbc53ec52c9ff70b24f692195a19801b..b9a8705e9996f8272436f45f1d9a0264b3ee0a05 100644 (file)
@@ -10,6 +10,13 @@ See-also:
   - CURLOPT_SSLCERTTYPE (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
+  - GnuTLS
+  - mbedTLS
+  - Schannel
+  - Secure Transport
+  - wolfSSL
 ---
 
 # NAME
index ca5e62119f1a34fc0b87f85f388800630437fbc5..a1534d15fc3fcd1a452042aa6b813233d2f8bbaa 100644 (file)
@@ -11,6 +11,10 @@ See-also:
   - CURLOPT_SSLCERT_BLOB (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
+  - Schannel
+  - Secure Transport
 ---
 
 # NAME
index 450fcb66ff42fd20677b4a14fc6161082caeade8..2cbb24e728ad86d8d437b8fd5e243f9de33aa9de 100644 (file)
@@ -12,6 +12,11 @@ See-also:
   - CURLOPT_SSLKEYTYPE (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
+  - mbedTLS
+  - Schannel
+  - wolfSSL
 ---
 
 # NAME
index ffd2e92d85fcb25e3a3e661ddb4babcb7e91ce34..7132cecf898ec7f127d7cbed4b46dcfba70c67be 100644 (file)
@@ -10,6 +10,10 @@ See-also:
   - CURLOPT_SSLKEYTYPE (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
+  - BearSSL
+  - wolfSSL
 ---
 
 # NAME
index ae941d17baf654d3bb5b203ef9a83d4932080b21..fe5d67d00d41227f6c869caf205d876a2457646b 100644 (file)
@@ -10,6 +10,8 @@ See-also:
   - CURLOPT_SSLKEY_BLOB (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
 ---
 
 # NAME
index ae9a8ab92f64bc72d89a04ff1762ba04516e2b33..91968e750dbec9790427a72b0c5b1aa168e756c2 100644 (file)
@@ -11,6 +11,8 @@ See-also:
   - CURLOPT_USE_SSL (3)
 Protocol:
   - TLS
+TLS-backend:
+  - All
 ---
 
 # NAME
index 4cb077899375db8f56964d9958366a20d4a58873..b33136d9a8d0699992bcb112d237eaa6c6f02ca3 100644 (file)
@@ -12,6 +12,13 @@ See-also:
   - CURLOPT_TLS13_CIPHERS (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
+  - BearSSL
+  - Schannel
+  - Secure Transport
+  - wolfSSL
+  - GnuTLS
 ---
 
 # NAME
index b1fabdcd28facccf39842fc908cb837b08c3f37d..0734c14d332125db1ecffe8421328fb3a309d4e4 100644 (file)
@@ -11,6 +11,8 @@ See-also:
   - CURLOPT_SSL_CIPHER_LIST (3)
 Protocol:
   - TLS
+TLS-backend:
+  - All
 ---
 
 # NAME
index eb7b0db0488400c84d07113b94442461b6f2123e..f183697f924a8ecebd2e185ed68aec1ba50ebff0 100644 (file)
@@ -11,6 +11,8 @@ See-also:
   - CURLOPT_SSL_VERIFYPEER (3)
 Protocol:
   - TLS
+TLS-backend:
+  - All
 ---
 
 # NAME
index 0df8236a61ffd18e596dac1823aca81b7802aca0..56527ce5ac1b8569f32bc6aef9b7de7a2a5d546a 100644 (file)
@@ -10,6 +10,8 @@ See-also:
   - CURLOPT_SSL_VERIFYPEER (3)
 Protocol:
   - TLS
+TLS-backend:
+  - All
 ---
 
 # NAME
index a6c429caf7e6ed9b50fc15eb795ccd2f2481cbf1..a9ec3d1dd7eed000f01ee50c6a78055a717b271c 100644 (file)
@@ -12,6 +12,10 @@ See-also:
   - CURLOPT_TLS13_CIPHERS (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
+  - rustls
+  - Schannel
 ---
 
 # NAME
index 8cb79bfa4c37074b73d0eae8234a29ffcdc255b6..df8d25a24c5a106c7fe6724cfe72d65f7f3050a1 100644 (file)
@@ -11,6 +11,9 @@ See-also:
   - CURLOPT_TLSAUTH_USERNAME (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
+  - GnuTLS
 ---
 
 # NAME
index 03b4a2bae18909a68ba495a99c0b81f6340a06ce..ec5773b969a7c49920d4f74acf0461b57c7e63d4 100644 (file)
@@ -11,6 +11,9 @@ See-also:
   - CURLOPT_TLSAUTH_USERNAME (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
+  - GnuTLS
 ---
 
 # NAME
index 59650227882ec5dc37e2ef05a6aeb9094a0079de..edc70942f2baaaa497e0adb37759767a3d8f87b4 100644 (file)
@@ -11,6 +11,9 @@ See-also:
   - CURLOPT_TLSAUTH_TYPE (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
+  - GnuTLS
 ---
 
 # NAME
index c00bf38efaa3e0ab98f01d3ac48edb557886bd83..f2a7e8d21095141c8c7a2ee260805a165bd540a9 100644 (file)
@@ -8,6 +8,8 @@ See-also:
   - CURLOPT_EGDSOCKET (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
 ---
 
 # NAME
index 027a5129cb0ad21b5b3f6ed05e44be6617f367e5..669bd70a16776b715a584f165e8a07c7ec430057 100644 (file)
@@ -9,7 +9,7 @@ See-also:
   - CURLOPT_SSH_HOST_PUBLIC_KEY_SHA256 (3)
   - CURLOPT_SSH_PUBLIC_KEYFILE (3)
 Protocol:
-  - SFP
+  - SFTP
   - SCP
 ---
 
index 5a0838cc28e93bce54e4a2f1a7b1f579ff9ef4e7..fda68d5f0947b9f657232303c2b23303a0154b0e 100644 (file)
@@ -8,7 +8,8 @@ See-also:
   - CURLOPT_SSH_KEYDATA (3)
   - CURLOPT_SSH_KNOWNHOSTS (3)
 Protocol:
-  - TLS
+  - SFTP
+  - SCP
 ---
 
 # NAME
index 69d28672ba93c5ffc3498e9d5ad9b487693a8f36..8161698820482fd194aba96731d07e612fe840fa 100644 (file)
@@ -10,6 +10,13 @@ See-also:
   - CURLOPT_SSLKEY (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
+  - GnuTLS
+  - mbedTLS
+  - Schannel
+  - Secure Transport
+  - wolfSSL
 ---
 
 # NAME
index a8c7c589b4fbcf831d2b247d6dca3835526d58bf..5ec33af1d9fa6e7a77ee38fff6b7bdf6bc1157c2 100644 (file)
@@ -9,6 +9,13 @@ See-also:
   - CURLOPT_SSLKEY (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
+  - GnuTLS
+  - mbedTLS
+  - Schannel
+  - Secure Transport
+  - wolfSSL
 ---
 
 # NAME
index ec37a145390c5ecc786acb301a6f60d83461ed20..5e4b0c956ce0e7364e8c82c1fba50a8d5ee2700e 100644 (file)
@@ -10,6 +10,11 @@ See-also:
   - CURLOPT_SSLKEY (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
+  - Secure Transport
+  - Schannel
+  - mbedTLS
 ---
 
 # NAME
index 96fe05b568f287cf5f8b6691c746ec571b2cdd64..1ec525807846850a8cbfbc8fbe6b96ca07790fa4 100644 (file)
@@ -10,6 +10,8 @@ See-also:
   - CURLOPT_SSLKEY (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
 ---
 
 # NAME
index dc1851533f3329896c252d8db945483f075e6d20..05f22d8962c242620d2936f1a41263f6e0735715 100644 (file)
@@ -9,6 +9,8 @@ See-also:
   - CURLOPT_SSLENGINE (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
 ---
 
 # NAME
index f6777bbc1aa4895c4b12b0bcc1caf70e52d99cae..7ec6aa9cddbeeaa9ff98223747a1587cc73933ce 100644 (file)
@@ -10,6 +10,11 @@ See-also:
   - CURLOPT_SSLKEY_BLOB (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
+  - mbedTLS
+  - Schannel
+  - wolfSSL
 ---
 
 # NAME
index 27cfb37a5466398a6964acdb8b016275c5d1f492..453d8908dc8746121583a92fac4b4fb350d73923 100644 (file)
@@ -10,6 +10,10 @@ See-also:
   - CURLOPT_SSLKEY (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
+  - BearSSL
+  - wolfSSL
 ---
 
 # NAME
index 833a94a07bba5d6eb4d4b914c3cb885dc7ea1575..6aabd3fa33e9eec1efa9b3c8f9adfa4087790e0f 100644 (file)
@@ -9,6 +9,8 @@ See-also:
   - CURLOPT_SSLKEYTYPE (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
 ---
 
 # NAME
index 5978cd3071cd1a2a5cd1876dd128b6de8681b279..073fc744719aceb9d62ffc1112fe310f46e18e6b 100644 (file)
@@ -11,6 +11,8 @@ See-also:
   - CURLOPT_USE_SSL (3)
 Protocol:
   - TLS
+TLS-backend:
+  - All
 ---
 
 # NAME
index f337200be86a6e3b2b5459fab32c49583ec52a64..0143c8dfb0c1269e677d40cb0764335b7611682b 100644 (file)
@@ -12,6 +12,13 @@ See-also:
   - CURLOPT_USE_SSL (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
+  - BearSSL
+  - Schannel
+  - Secure Transport
+  - wolfSSL
+  - GnuTLS
 ---
 
 # NAME
index 76483f41c545746bd15fed534a3c246b4b53e841..be7307f8a7e0dc682e4e1c2c9431d1d684b9b66f 100644 (file)
@@ -9,6 +9,11 @@ See-also:
   - CURLOPT_SSL_CTX_FUNCTION (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
+  - wolfSSL
+  - mbedTLS
+  - BearSSL
 ---
 
 # NAME
index 995f7295ea5c32ef18ed4fa05d1d6882c07fa6eb..76e2403ff84e7d138766afe728392daa179a90f2 100644 (file)
@@ -10,6 +10,11 @@ See-also:
   - CURLOPT_CAINFO (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
+  - wolfSSL
+  - mbedTLS
+  - BearSSL
 ---
 
 # NAME
index 9b22633263ecda092542818a7ce0f58b451a1a74..17b2e846a21ab464b3b3b577343256105342f65f 100644 (file)
@@ -10,6 +10,9 @@ See-also:
   - CURLOPT_TLS13_CIPHERS (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
+  - wolfSSL
 ---
 
 # NAME
index 8ed88b6b370313d4a02d0bfbb5872620a27ccc3b..49796496d889362aa571897d814e1348dadbee90 100644 (file)
@@ -9,6 +9,8 @@ See-also:
   - CURLOPT_SSL_OPTIONS (3)
 Protocol:
   - TLS
+TLS-backend:
+  - All
 ---
 
 # NAME
index 869c70678e2f33b6eee429e1d82e5b9ce5f440df..a0a68c6af3d7ab808c86046e287effd45da07eea 100644 (file)
@@ -9,6 +9,8 @@ See-also:
   - CURLOPT_SSL_OPTIONS (3)
 Protocol:
   - TLS
+TLS-backend:
+  - All
 ---
 
 # NAME
index 754c26fddef57a8967ad96285d2b2c855487e3ee..106b6efc07ac8a209e97732f5751abdbf7dde4f5 100644 (file)
@@ -8,6 +8,8 @@ See-also:
   - CURLOPT_TCP_FASTOPEN (3)
 Protocol:
   - TLS
+TLS-backend:
+  - Secure Transport
 ---
 
 # NAME
index 8fcc721fec1c81c18c970be2d7b572c8c9b2dc89..4e33aac1ed537f6aea29d36b86f2e6a36a0065b3 100644 (file)
@@ -10,6 +10,8 @@ See-also:
   - CURLOPT_SSL_CIPHER_LIST (3)
 Protocol:
   - TLS
+TLS-backend:
+  - All
 ---
 
 # NAME
index 677ef6ca27639cd659c8a27b3bbf9d1bea94cd5e..63eab608488332d395f1667e75abc8fad2e8cefd 100644 (file)
@@ -11,6 +11,8 @@ See-also:
   - CURLOPT_SSLVERSION (3)
 Protocol:
   - TLS
+TLS-backend:
+  - All
 ---
 
 # NAME
index e96e4be530c14886cc55e382b9a5baa3c28e5312..4cee06f25abe57e6374f6e059e2330375ffdbdc7 100644 (file)
@@ -10,6 +10,8 @@ See-also:
   - CURLOPT_SSL_VERIFYPEER (3)
 Protocol:
   - TLS
+TLS-backend:
+  - All
 ---
 
 # NAME
index e636b166162b3a80a54d3548d24e740c53d0ced4..53c81c79aa5e3ff07fb9f7ffc6a2aa691f8a4a57 100644 (file)
@@ -13,6 +13,8 @@ See-also:
   - CURLOPT_SSL_VERIFYHOST (3)
 Protocol:
   - TLS
+TLS-backend:
+  - All
 ---
 
 # NAME
index 392fc2f6786aa5ba3d57775768c9079c1744794c..dc051ef4af5031809e76154cf5f299e4d6c96606 100644 (file)
@@ -10,6 +10,9 @@ See-also:
   - CURLOPT_SSL_VERIFYPEER (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
+  - GnuTLS
 ---
 
 # NAME
index 3b9eee82d4c4ce52fa9435c877f4669a937e2f51..5a65b433701150708c2b72fd02e483c0f58516b2 100644 (file)
@@ -13,6 +13,10 @@ See-also:
   - CURLOPT_USE_SSL (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
+  - rustls
+  - Schannel
 ---
 
 # NAME
index f2670815ddabf15c30bb8530483027cb5b835584..8871526c237669c5cb0284aca1fa09b13771a290 100644 (file)
@@ -10,6 +10,9 @@ See-also:
   - CURLOPT_TLSAUTH_USERNAME (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
+  - GnuTLS
 ---
 
 # NAME
index fe7cdcd2fe42bb83d2f6eeed6db15a11ad32e9ff..111b82d7cc7e46b4b4e375da697806d89111abe1 100644 (file)
@@ -9,6 +9,9 @@ See-also:
   - CURLOPT_TLSAUTH_USERNAME (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
+  - GnuTLS
 ---
 
 # NAME
index b091ebfac4f683a5cf550798e6cb0cc9050f21e3..80ea1a2a029960e8e88bb443a8ef283f10ffb864 100644 (file)
@@ -9,6 +9,9 @@ See-also:
   - CURLOPT_TLSAUTH_TYPE (3)
 Protocol:
   - TLS
+TLS-backend:
+  - OpenSSL
+  - GnuTLS
 ---
 
 # NAME
index 35baa450f0f169c886163e03ebd253c0c1fe66d9..6356c9de9cb8a266345289c8b5c372c79cfa7a8e 100755 (executable)
@@ -96,17 +96,64 @@ sub outseealso {
     return @o;
 }
 
+my %knownprotos = (
+    'DICT' => 1,
+    'FILE' => 1,
+    'FTP' => 1,
+    'FTPS' => 1,
+    'GOPHER' => 1,
+    'GOPHERS' => 1,
+    'HTTP' => 1,
+    'HTTPS' => 1,
+    'IMAP' => 1,
+    'IMAPS' => 1,
+    'LDAP' => 1,
+    'LDAPS' => 1,
+    'MQTT' => 1,
+    'POP3' => 1,
+    'POP3S' => 1,
+    'RTMP' => 1,
+    'RTMPS' => 1,
+    'RTSP' => 1,
+    'SCP' => 1,
+    'SFTP' => 1,
+    'SMB' => 1,
+    'SMBS' => 1,
+    'SMTP' => 1,
+    'SMTPS' => 1,
+    'TELNET' => 1,
+    'TFTP' => 1,
+    'WS' => 1,
+    'WSS' => 1,
+    'TLS' => 1,
+    'TCP' => 1,
+    '*' => 1
+    );
+
+my %knowntls = (
+    'BearSSL' => 1,
+    'GnuTLS' => 1,
+    'mbedTLS' => 1,
+    'OpenSSL' => 1,
+    'rustls' => 1,
+    'Schannel' => 1,
+    'Secure Transport' => 1,
+    'wolfSSL' => 1,
+    'All' => 1,
+    );
+
 sub single {
     my @seealso;
     my @proto;
+    my @tls;
     my $d;
     my ($f)=@_;
     my $copyright;
     my $errors = 0;
     my $fh;
     my $line;
-    my $salist;
-    my $protolist;
+    my $list;
+    my $tlslist;
     my $section;
     my $source;
     my $spdx;
@@ -143,7 +190,7 @@ sub single {
             $source=$1;
         }
         elsif(/^See-also: +(.*)/i) {
-            $salist = 0;
+            $list = 1; # 1 for see-also
             push @seealso, $1;
         }
         elsif(/^See-also: */i) {
@@ -151,21 +198,25 @@ sub single {
                 print STDERR "$f:$line:1:ERROR: bad See-Also, needs list\n";
                 return 2;
             }
-            $salist = 1;
-            $protolist = 0;
+            $list = 1; # 1 for see-also
         }
         elsif(/^Protocol:/i) {
-            $salist = 0;
-            $protolist = 1;
+            $list = 2; # 2 for protocol
+        }
+        elsif(/^TLS-backend:/i) {
+            $list = 3; # 3 for TLS backend
         }
         elsif(/^ +- (.*)/i) {
             # the only lists we support are see-also and protocol
-            if($salist) {
+            if($list == 1) {
                 push @seealso, $1;
             }
-            elsif($protolist) {
+            elsif($list == 2) {
                 push @proto, $1;
             }
+            elsif($list == 3) {
+                push @tls, $1;
+            }
             else {
                 print STDERR "$f:$line:1:ERROR: list item without owner?\n";
                 return 2;
@@ -201,9 +252,34 @@ sub single {
                 print STDERR "$f:$line:1:ERROR: no 'SPDX-License-Identifier:' field present\n";
                 return 2;
             }
-            if(!$proto[0] && ($section == 3)) {
-                printf STDERR "$f:$line:1:ERROR: missing Protocol:\n";
-                exit 2;
+            if($section == 3) {
+                if(!$proto[0]) {
+                    printf STDERR "$f:$line:1:ERROR: missing Protocol:\n";
+                    exit 2;
+                }
+                my $tls = 0;
+                for my $p (@proto) {
+                    if($p eq "TLS") {
+                        $tls = 1;
+                    }
+                    if(!$knownprotos{$p}) {
+                        printf STDERR "$f:$line:1:ERROR: invalid protocol used: $p:\n";
+                        exit 2;
+                    }
+                }
+                # This is for TLS, require TLS-backend:
+                if($tls) {
+                    if(!$tls[0]) {
+                        printf STDERR "$f:$line:1:ERROR: missing TLS-backend:\n";
+                        exit 2;
+                    }
+                    for my $t (@tls) {
+                        if(!$knowntls{$t}) {
+                            printf STDERR "$f:$line:1:ERROR: invalid TLS backend: $t:\n";
+                            exit 2;
+                        }
+                    }
+                }
             }
             last;
         }