curl: prepare for HTTP/3 support
[feed/packages.git] / net / curl / Config.in
1 if PACKAGE_libcurl
2
3 comment "SSL support"
4
5 choice
6 prompt "Selected SSL library"
7 default LIBCURL_MBEDTLS
8
9 config LIBCURL_MBEDTLS
10 bool "mbed TLS"
11
12 config LIBCURL_WOLFSSL
13 bool "wolfSSL"
14
15 config LIBCURL_OPENSSL
16 bool "OpenSSL"
17
18 config LIBCURL_GNUTLS
19 bool "GNUTLS"
20
21 config LIBCURL_NOSSL
22 bool "No SSL support"
23
24 endchoice
25
26 comment "Supported protocols"
27
28 config LIBCURL_DICT
29 bool "DICT protocol"
30 default n
31
32 config LIBCURL_FILE
33 bool "FILE protocol"
34 default y
35
36 config LIBCURL_FTP
37 bool "FTP / FTPS protocol"
38 default y
39
40 config LIBCURL_GOPHER
41 bool "Gopher protocol"
42 default n
43
44 config LIBCURL_HTTP
45 bool "HTTP / HTTPS protocol"
46 default y
47
48 config LIBCURL_COOKIES
49 bool "Enable Cookies support"
50 depends on LIBCURL_HTTP
51 default y
52
53 config LIBCURL_IMAP
54 bool "IMAP / IMAPS protocol"
55 default n
56
57 config LIBCURL_LDAP
58 bool "LDAP protocol"
59 default n
60
61 config LIBCURL_LDAPS
62 bool "Enable LDAPS support"
63 depends on LIBCURL_LDAP && !LIBCURL_NOSSL
64 default y
65
66 config LIBCURL_POP3
67 bool "POP3 / POP3S protocol"
68 default n
69
70 config LIBCURL_RTSP
71 bool "RTSP protocol"
72 depends on LIBCURL_HTTP
73 default n
74 config LIBCURL_NO_RTSP
75 string "RTSP require HTTP protocol"
76 depends on !LIBCURL_HTTP
77 default "!"
78
79 config LIBCURL_SSH2
80 bool "SCP / SFTP protocol"
81 default n
82
83 config LIBCURL_SMB
84 bool "SMB protocol (CIFS)"
85 depends on LIBCURL_CRYPTO_AUTH && (LIBCURL_GNUTLS || LIBCURL_OPENSSL)
86 default n
87 config LIBCURL_NO_SMB
88 string "SMB require 'cryptographic authentication' and either 'GnuTLS' or 'OpenSSL'"
89 depends on !LIBCURL_CRYPTO_AUTH || (!LIBCURL_GNUTLS && !LIBCURL_OPENSSL)
90 default "!"
91
92 config LIBCURL_SMTP
93 bool "SMTP / SMTPS protocol"
94 default n
95
96 config LIBCURL_TELNET
97 bool "TELNET protocol"
98 default n
99
100 config LIBCURL_TFTP
101 bool "TFTP protocol"
102 default n
103
104 config LIBCURL_NGHTTP2
105 bool "HTTP2 protocol"
106 default y
107
108 config LIBCURL_NGHTTP3
109 bool "HTTP/3 protocol"
110 depends on LIBCURL_OPENSSL
111 default n
112
113 config LIBCURL_NGTCP2
114 bool "QUIC protocol"
115 depends on LIBCURL_OPENSSL
116 default n
117
118 comment "Miscellaneous"
119
120 config LIBCURL_PROXY
121 bool "Enable proxy support"
122 default y
123
124 config LIBCURL_CRYPTO_AUTH
125 bool "Enable cryptographic authentication"
126 default n
127
128 config LIBCURL_TLS_SRP
129 bool "Enable TLS-SRP authentication"
130 default n
131
132 config LIBCURL_LIBIDN2
133 bool "Enable IDN2 support"
134 default n
135
136 config LIBCURL_THREADED_RESOLVER
137 bool "Enable threaded DNS resolver"
138 default n
139 help
140 Enable POSIX threaded asynchronous DNS resolution
141
142 config LIBCURL_ZLIB
143 bool "Enable zlib support"
144 default n
145
146 config LIBCURL_ZSTD
147 bool "Enable zstd support"
148 default n
149
150 config LIBCURL_UNIX_SOCKETS
151 bool "Enable unix domain socket support"
152 default y
153 help
154 Enable HTTP over unix domain sockets.
155 To use this with the curl command line, you specify the socket path to the new --unix-domain option.
156 This feature is actually not limited to HTTP, you can do all the TCP-based protocols
157 except FTP over the unix domain socket, but it is only HTTP that is regularly used this way.
158 The reason FTP isn't supported is of course its use of two connections
159 which would be even weirder to do like this.
160
161 config LIBCURL_LIBCURL_OPTION
162 bool "Enable generation of C code"
163 default n
164
165 config LIBCURL_VERBOSE
166 bool "Enable verbose error strings"
167 default n
168
169 config LIBCURL_NTLM
170 bool "Enable NTLM support"
171 depends on LIBCURL_CRYPTO_AUTH && !LIBCURL_NOSSL
172 default n
173
174 endif