xref: /curl/tests/data/test1706 (revision 2abfc759)
1<testcase>
2<info>
3<keywords>
4script
5documentation
6managen
7</keywords>
8</info>
9
10#
11# Client-side
12<client>
13<server>
14none
15</server>
16
17<name>
18managen makes ASCII page
19</name>
20
21<file name="%LOGDIR/mainpage.idx">
22_header.md
23%options
24_footer.md
25</file>
26
27<file1 name="%LOGDIR/_header.md">
28<!-- Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al. -->
29<!-- SPDX-License-Identifier: curl -->
30# DESCRIPTION
31
32**curl** is a tool for transferring data from or to a server using URLs. It
33supports these protocols: DICT, FILE, FTP, FTPS, GOPHER, GOPHERS, HTTP, HTTPS,
34IMAP, IMAPS, LDAP, LDAPS, MQTT, POP3, POP3S, RTMP, RTMPS, RTSP, SCP, SFTP,
35SMB, SMBS, SMTP, SMTPS, TELNET, TFTP, WS and WSS.
36
37curl is powered by libcurl for all transfer-related features. See
38*libcurl(3)* for details.
39</file1>
40<file2 name="%LOGDIR/option1.md">
41---
42c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
43SPDX-License-Identifier: curl
44Short: v
45Long: fakeitreal
46Mutexed: trace trace-ascii
47Help: Make the operation more talkative
48Category: important verbose global
49Added: 4.0
50Multi: boolean
51Scope: global
52See-also:
53  - include
54  - silent
55  - trace
56  - trace-ascii
57Example:
58  - --verbose $URL
59---
60
61# `--verbose`
62
63Makes curl verbose during the operation. Useful for debugging and seeing
64what's going on under the hood. A line starting with \> means header data sent
65by curl, \< means header data received by curl that is hidden in normal cases,
66and a line starting with * means additional info provided by curl.
67
68If you only want HTTP headers in the output, --include or --dump-header might
69be more suitable options.
70
71If you think this option still does not give you enough details, consider using
72--trace or --trace-ascii instead.
73
74Note that verbose output of curl activities and network traffic might contain
75sensitive data, including usernames, credentials or secret data content. Be
76aware and be careful when sharing trace logs with others.
77</file2>
78<file3 name="%LOGDIR/option2.md">
79---
80c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
81SPDX-License-Identifier: curl
82Long: proto
83Arg: <protocols>
84Help: Enable/disable PROTOCOLS
85Added: 7.20.2
86Category: connection curl
87Multi: single
88See-also:
89  - fakeitreal
90  - proto-default
91Example:
92  - --proto =http,https,sftp $URL
93---
94
95# `--proto`
96
97Limit what protocols to allow for transfers. Protocols are evaluated left to
98right, are comma separated, and are each a protocol name or 'all', optionally
99prefixed by zero or more modifiers. Available modifiers are:
100
101## +
102Permit this protocol in addition to protocols already permitted (this is
103the default if no modifier is used).
104
105## -
106Deny this protocol, removing it from the list of protocols already permitted.
107
108## =
109Permit only this protocol (ignoring the list already permitted), though
110subject to later modification by subsequent entries in the comma separated
111list.
112
113##
114
115For example: --proto -ftps uses the default protocols, but disables ftps
116
117--proto -all,https,+http only enables http and https
118
119--proto =http,https also only enables http and https
120
121Unknown and disabled protocols produce a warning. This allows scripts to
122safely rely on being able to disable potentially dangerous protocols, without
123relying upon support for that protocol being built into curl to avoid an error.
124
125This option can be used multiple times, in which case the effect is the same
126as concatenating the protocols into one instance of the option.
127</file3>
128<file4 name="%LOGDIR/_footer.md">
129<!-- Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al. -->
130<!-- SPDX-License-Identifier: curl -->
131# PROXY PROTOCOL PREFIXES
132The proxy string may be specified with a protocol:// prefix to specify
133alternative proxy protocols. (Added in 7.21.7)
134
135If no protocol is specified in the proxy string or if the string does not
136match a supported one, the proxy is treated as an HTTP proxy.
137
138The supported proxy protocol prefixes are as follows:
139## http://
140Makes it use it as an HTTP proxy. The default if no scheme prefix is used.
141## https://
142Makes it treated as an **HTTPS** proxy.
143## socks4://
144Makes it the equivalent of --socks4
145## socks4a://
146Makes it the equivalent of --socks4a
147## socks5://
148Makes it the equivalent of --socks5
149## socks5h://
150Makes it the equivalent of --socks5-hostname
151</file4>
152
153<command type="perl">
154%SRCDIR/../scripts/managen -d %LOGDIR ascii option1.md option2.md
155</command>
156</client>
157
158<verify>
159<stderr>
160option1.md:19:1:WARN: see-also a non-existing option: include
161option1.md:19:1:WARN: see-also a non-existing option: silent
162option1.md:19:1:WARN: see-also a non-existing option: trace
163option1.md:19:1:WARN: see-also a non-existing option: trace-ascii
164WARN: option1.md mutexes a non-existing option: trace
165WARN: option1.md mutexes a non-existing option: trace-ascii
166option2.md:15:1:WARN: see-also a non-existing option: proto-default
167</stderr>
168<stdout>
169DESCRIPTION
170
171    curl is a tool  for transferring data  from or to a  server using URLs.  It
172    supports these protocols:  DICT, FILE,  FTP, FTPS,  GOPHER, GOPHERS,  HTTP,
173    HTTPS, IMAP,  IMAPS, LDAP,  LDAPS, MQTT,  POP3, POP3S,  RTMP, RTMPS,  RTSP,
174    SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET, TFTP, WS and WSS.
175
176    curl  is  powered  by  libcurl  for  all  transfer-related  features.   See
177    libcurl(3) for details.
178
179    -v, --fakeitreal
180	    Makes curl verbose during the  operation. Useful for debugging  and
181	    seeing what's  going on  under the  hood. A  line  starting with  >
182	    means header data  sent by curl,  < means  header data received  by
183	    curl that is  hidden in normal  cases, and a  line starting with  *
184	    means additional info provided by curl.
185
186	    If  you  only  want  HTTP  headers  in  the  output,  --include  or
187	    --dump-header might be more suitable options.
188
189	    If you think this  option still does  not give you enough  details,
190	    consider using --trace or --trace-ascii instead.
191
192	    Note that verbose  output of  curl activities  and network  traffic
193	    might contain sensitive data,  including usernames, credentials  or
194	    secret data content.  Be aware  and be careful  when sharing  trace
195	    logs with others.
196
197	    This option is global  and does not need  to be specified for  each
198	    use of --next. Providing --fakeitreal  multiple times has no  extra
199	    effect. Disable it again with --no-fakeitreal.
200
201	    Example:
202	     curl --verbose https://example.com
203
204	    This option is mutually  exclusive with --trace and  --trace-ascii.
205	    See also --include, --silent, --trace and --trace-ascii.
206
207    --proto <protocols>
208	    Limit  what  protocols  to  allow  for  transfers.  Protocols   are
209	    evaluated left  to  right, are  comma  separated, and  are  each  a
210	    protocol name  or  'all',  optionally  prefixed  by  zero  or  more
211	    modifiers. Available modifiers are:
212
213	    +
214
215		Permit  this  protocol   in  addition   to  protocols   already
216		permitted (this is the default if no modifier is used).
217
218	    -
219
220		Deny this  protocol, removing  it from  the list  of  protocols
221		already permitted.
222
223	    =
224
225		Permit  only   this  protocol   (ignoring  the   list   already
226		permitted), though subject to later modification by  subsequent
227		entries in  the  comma  separated list.  For  example:  --proto
228		-ftps uses the default protocols, but disables ftps
229
230		--proto -all,https,+http only enables http and https
231
232		--proto =http,https also only enables http and https
233
234		Unknown and disabled protocols  produce a warning. This  allows
235		scripts to safely  rely on  being able  to disable  potentially
236		dangerous protocols,  without  relying upon  support  for  that
237		protocol being built into curl to avoid an error.
238
239		This option  can be  used  multiple times,  in which  case  the
240		effect is  the same  as concatenating  the protocols  into  one
241		instance of the option.
242
243	    If --proto is provided several times, the last set value is used.
244
245	    Example:
246	     curl --proto =http,https,sftp https://example.com
247
248	    See also --fakeitreal and --proto-default.
249
250PROXY PROTOCOL PREFIXES
251
252    The proxy  string may be  specified with  a protocol://  prefix to  specify
253    alternative proxy protocols.
254
255    If no protocol is specified in the  proxy string or if the string does  not
256    match a supported one, the proxy is treated as an HTTP proxy.
257
258    The supported proxy protocol prefixes are as follows:
259
260    http://
261
262	Makes it use it as  an HTTP proxy. The  default if no scheme prefix  is
263	used.
264
265    https://
266
267	Makes it treated as an HTTPS proxy.
268
269    socks4://
270
271	Makes it the equivalent of --socks4
272
273    socks4a://
274
275	Makes it the equivalent of --socks4a
276
277    socks5://
278
279	Makes it the equivalent of --socks5
280
281    socks5h://
282
283	Makes it the equivalent of --socks5-hostname
284
285</stdout>
286</verify>
287
288</testcase>
289