xref: /aosp_15_r20/external/curl/docs/libcurl/mksymbolsmanpage.pl (revision 6236dae45794135f37c4eb022389c904c8b0090d)
1*6236dae4SAndroid Build Coastguard Worker#!/usr/bin/env perl
2*6236dae4SAndroid Build Coastguard Worker# ***************************************************************************
3*6236dae4SAndroid Build Coastguard Worker# *                                  _   _ ____  _
4*6236dae4SAndroid Build Coastguard Worker# *  Project                     ___| | | |  _ \| |
5*6236dae4SAndroid Build Coastguard Worker# *                             / __| | | | |_) | |
6*6236dae4SAndroid Build Coastguard Worker# *                            | (__| |_| |  _ <| |___
7*6236dae4SAndroid Build Coastguard Worker# *                             \___|\___/|_| \_\_____|
8*6236dae4SAndroid Build Coastguard Worker# *
9*6236dae4SAndroid Build Coastguard Worker# * Copyright (C) Daniel Stenberg, <[email protected]>, et al.
10*6236dae4SAndroid Build Coastguard Worker# *
11*6236dae4SAndroid Build Coastguard Worker# * This software is licensed as described in the file COPYING, which
12*6236dae4SAndroid Build Coastguard Worker# * you should have received as part of this distribution. The terms
13*6236dae4SAndroid Build Coastguard Worker# * are also available at https://curl.se/docs/copyright.html.
14*6236dae4SAndroid Build Coastguard Worker# *
15*6236dae4SAndroid Build Coastguard Worker# * You may opt to use, copy, modify, merge, publish, distribute and/or sell
16*6236dae4SAndroid Build Coastguard Worker# * copies of the Software, and permit persons to whom the Software is
17*6236dae4SAndroid Build Coastguard Worker# * furnished to do so, under the terms of the COPYING file.
18*6236dae4SAndroid Build Coastguard Worker# *
19*6236dae4SAndroid Build Coastguard Worker# * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
20*6236dae4SAndroid Build Coastguard Worker# * KIND, either express or implied.
21*6236dae4SAndroid Build Coastguard Worker# *
22*6236dae4SAndroid Build Coastguard Worker# * SPDX-License-Identifier: curl
23*6236dae4SAndroid Build Coastguard Worker# *
24*6236dae4SAndroid Build Coastguard Worker# ***************************************************************************
25*6236dae4SAndroid Build Coastguard Worker
26*6236dae4SAndroid Build Coastguard Workeruse POSIX qw(strftime);
27*6236dae4SAndroid Build Coastguard Workermy @ts;
28*6236dae4SAndroid Build Coastguard Workerif (defined($ENV{SOURCE_DATE_EPOCH})) {
29*6236dae4SAndroid Build Coastguard Worker    @ts = localtime($ENV{SOURCE_DATE_EPOCH});
30*6236dae4SAndroid Build Coastguard Worker} else {
31*6236dae4SAndroid Build Coastguard Worker    @ts = localtime;
32*6236dae4SAndroid Build Coastguard Worker}
33*6236dae4SAndroid Build Coastguard Workermy $date = strftime "%b %e, %Y", @ts;
34*6236dae4SAndroid Build Coastguard Workermy $year = strftime "%Y", @ts;
35*6236dae4SAndroid Build Coastguard Worker
36*6236dae4SAndroid Build Coastguard Workerprint <<HEADER
37*6236dae4SAndroid Build Coastguard Worker---
38*6236dae4SAndroid Build Coastguard Workerc: Copyright (C) Daniel Stenberg, <[email protected]>, et al.
39*6236dae4SAndroid Build Coastguard WorkerSPDX-License-Identifier: curl
40*6236dae4SAndroid Build Coastguard WorkerTitle: libcurl-symbols
41*6236dae4SAndroid Build Coastguard WorkerSection: 3
42*6236dae4SAndroid Build Coastguard WorkerSource: libcurl
43*6236dae4SAndroid Build Coastguard WorkerProtocol:
44*6236dae4SAndroid Build Coastguard Worker  - All
45*6236dae4SAndroid Build Coastguard WorkerSee-also:
46*6236dae4SAndroid Build Coastguard Worker  - libcurl (3)
47*6236dae4SAndroid Build Coastguard Worker  - libcurl-easy (3)
48*6236dae4SAndroid Build Coastguard Worker  - libcurl-multi (3)
49*6236dae4SAndroid Build Coastguard Worker  - libcurl-security (3)
50*6236dae4SAndroid Build Coastguard Worker  - libcurl-thread (3)
51*6236dae4SAndroid Build Coastguard WorkerAdded-in: n/a
52*6236dae4SAndroid Build Coastguard Worker---
53*6236dae4SAndroid Build Coastguard Worker# libcurl symbols
54*6236dae4SAndroid Build Coastguard Worker
55*6236dae4SAndroid Build Coastguard WorkerThis man page details version information for public symbols provided in the
56*6236dae4SAndroid Build Coastguard Workerlibcurl header files. This lists the first version in which the symbol was
57*6236dae4SAndroid Build Coastguard Workerintroduced and for some symbols two additional information pieces:
58*6236dae4SAndroid Build Coastguard Worker
59*6236dae4SAndroid Build Coastguard WorkerThe first version in which the symbol is marked "deprecated" - meaning that
60*6236dae4SAndroid Build Coastguard Workersince that version no new code should be written to use the symbol as it is
61*6236dae4SAndroid Build Coastguard Workermarked for getting removed in a future.
62*6236dae4SAndroid Build Coastguard Worker
63*6236dae4SAndroid Build Coastguard WorkerThe last version that featured the specific symbol. Using the symbol in source
64*6236dae4SAndroid Build Coastguard Workercode makes it no longer compile error-free after that specified version.
65*6236dae4SAndroid Build Coastguard Worker
66*6236dae4SAndroid Build Coastguard WorkerThis man page is automatically generated from the symbols-in-versions file.
67*6236dae4SAndroid Build Coastguard WorkerHEADER
68*6236dae4SAndroid Build Coastguard Worker    ;
69*6236dae4SAndroid Build Coastguard Worker
70*6236dae4SAndroid Build Coastguard Workersub nameref {
71*6236dae4SAndroid Build Coastguard Worker    my ($n)=@_;
72*6236dae4SAndroid Build Coastguard Worker    if($n =~ /^CURLOPT_/) {
73*6236dae4SAndroid Build Coastguard Worker        if($n eq "CURLOPT_RTSPHEADER") {
74*6236dae4SAndroid Build Coastguard Worker            $n = "CURLOPT_HTTPHEADER";
75*6236dae4SAndroid Build Coastguard Worker        }
76*6236dae4SAndroid Build Coastguard Worker        elsif($n eq "CURLOPT_WRITEHEADER") {
77*6236dae4SAndroid Build Coastguard Worker            $n = "CURLOPT_HEADERDATA";
78*6236dae4SAndroid Build Coastguard Worker        }
79*6236dae4SAndroid Build Coastguard Worker        elsif($n eq "CURLOPT_WRITEINFO") {
80*6236dae4SAndroid Build Coastguard Worker            ; # now obsolete
81*6236dae4SAndroid Build Coastguard Worker        }
82*6236dae4SAndroid Build Coastguard Worker        else {
83*6236dae4SAndroid Build Coastguard Worker            return "$n(3)";
84*6236dae4SAndroid Build Coastguard Worker        }
85*6236dae4SAndroid Build Coastguard Worker    }
86*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURLMOPT_/) {
87*6236dae4SAndroid Build Coastguard Worker        return "$n(3)";
88*6236dae4SAndroid Build Coastguard Worker    }
89*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURLINFO_/) {
90*6236dae4SAndroid Build Coastguard Worker        my %infotypes = (
91*6236dae4SAndroid Build Coastguard Worker            'CURLINFO_TEXT' => 1,
92*6236dae4SAndroid Build Coastguard Worker            'CURLINFO_HEADER_IN' => 1,
93*6236dae4SAndroid Build Coastguard Worker            'CURLINFO_HEADER_OUT' => 1,
94*6236dae4SAndroid Build Coastguard Worker            'CURLINFO_DATA_IN' => 1,
95*6236dae4SAndroid Build Coastguard Worker            'CURLINFO_DATA_OUT' => 1,
96*6236dae4SAndroid Build Coastguard Worker            'CURLINFO_SSL_DATA_IN' => 1,
97*6236dae4SAndroid Build Coastguard Worker            'CURLINFO_SSL_DATA_OUT' => 1,
98*6236dae4SAndroid Build Coastguard Worker            );
99*6236dae4SAndroid Build Coastguard Worker        if($infotypes{$n}) {
100*6236dae4SAndroid Build Coastguard Worker            return "CURLOPT_DEBUGFUNCTION(3)";
101*6236dae4SAndroid Build Coastguard Worker        }
102*6236dae4SAndroid Build Coastguard Worker    }
103*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURLALTSVC_/) {
104*6236dae4SAndroid Build Coastguard Worker        return "CURLOPT_ALTSVC_CTRL(3)";
105*6236dae4SAndroid Build Coastguard Worker    }
106*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURLAUTH_/) {
107*6236dae4SAndroid Build Coastguard Worker        return "CURLOPT_HTTPAUTH(3)";
108*6236dae4SAndroid Build Coastguard Worker    }
109*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURLFORM_/) {
110*6236dae4SAndroid Build Coastguard Worker        return "curl_formadd(3)";
111*6236dae4SAndroid Build Coastguard Worker    }
112*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURLKH/) {
113*6236dae4SAndroid Build Coastguard Worker        return "CURLOPT_SSH_KEYFUNCTION(3)";
114*6236dae4SAndroid Build Coastguard Worker    }
115*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURLE_/) {
116*6236dae4SAndroid Build Coastguard Worker        return "libcurl-errors(3)";
117*6236dae4SAndroid Build Coastguard Worker    }
118*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURLM_/) {
119*6236dae4SAndroid Build Coastguard Worker        return "libcurl-errors(3)";
120*6236dae4SAndroid Build Coastguard Worker    }
121*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURLUE_/) {
122*6236dae4SAndroid Build Coastguard Worker        return "libcurl-errors(3)";
123*6236dae4SAndroid Build Coastguard Worker    }
124*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURLHE_/) {
125*6236dae4SAndroid Build Coastguard Worker        return "libcurl-errors(3)";
126*6236dae4SAndroid Build Coastguard Worker    }
127*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURLSHE_/) {
128*6236dae4SAndroid Build Coastguard Worker        return "libcurl-errors(3)";
129*6236dae4SAndroid Build Coastguard Worker    }
130*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURLPROTO_/) {
131*6236dae4SAndroid Build Coastguard Worker        return "CURLINFO_PROTOCOL(3)";
132*6236dae4SAndroid Build Coastguard Worker    }
133*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURLPX_/) {
134*6236dae4SAndroid Build Coastguard Worker        return "CURLINFO_PROXY_ERROR(3)";
135*6236dae4SAndroid Build Coastguard Worker    }
136*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURLPROXY_/) {
137*6236dae4SAndroid Build Coastguard Worker        return "CURLOPT_PROXYTYPE(3)";
138*6236dae4SAndroid Build Coastguard Worker    }
139*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURLSSLBACKEND_/) {
140*6236dae4SAndroid Build Coastguard Worker        return "curl_global_sslset(3)";
141*6236dae4SAndroid Build Coastguard Worker    }
142*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURLSSLOPT_/) {
143*6236dae4SAndroid Build Coastguard Worker        return "CURLOPT_SSL_OPTIONS(3)";
144*6236dae4SAndroid Build Coastguard Worker    }
145*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURLSSLSET_/) {
146*6236dae4SAndroid Build Coastguard Worker        return "curl_global_sslset(3)";
147*6236dae4SAndroid Build Coastguard Worker    }
148*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURLUPART_/) {
149*6236dae4SAndroid Build Coastguard Worker        return "curl_url_get(3)";
150*6236dae4SAndroid Build Coastguard Worker    }
151*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURLU_/) {
152*6236dae4SAndroid Build Coastguard Worker        return "curl_url_get(3)";
153*6236dae4SAndroid Build Coastguard Worker    }
154*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURLVERSION_/) {
155*6236dae4SAndroid Build Coastguard Worker        return "curl_version_info(3)";
156*6236dae4SAndroid Build Coastguard Worker    }
157*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURLSHOPT_/) {
158*6236dae4SAndroid Build Coastguard Worker        if($n eq "CURLSHOPT_NONE") {
159*6236dae4SAndroid Build Coastguard Worker            $n = "curl_share_setopt";
160*6236dae4SAndroid Build Coastguard Worker        }
161*6236dae4SAndroid Build Coastguard Worker        return "$n(3)";
162*6236dae4SAndroid Build Coastguard Worker    }
163*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURLWS_/) {
164*6236dae4SAndroid Build Coastguard Worker        return "curl_ws_send(3)";
165*6236dae4SAndroid Build Coastguard Worker    }
166*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURL_FORMADD_/) {
167*6236dae4SAndroid Build Coastguard Worker        return "curl_formadd(3)";
168*6236dae4SAndroid Build Coastguard Worker    }
169*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURL_HTTPPOST_/) {
170*6236dae4SAndroid Build Coastguard Worker        return "curl_formadd(3)";
171*6236dae4SAndroid Build Coastguard Worker    }
172*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURL_GLOBAL_/) {
173*6236dae4SAndroid Build Coastguard Worker        return "curl_global_init(3)";
174*6236dae4SAndroid Build Coastguard Worker    }
175*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURL_HTTP_VERSION_/) {
176*6236dae4SAndroid Build Coastguard Worker        return "CURLOPT_HTTP_VERSION(3)";
177*6236dae4SAndroid Build Coastguard Worker    }
178*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURL_LOCK_/) {
179*6236dae4SAndroid Build Coastguard Worker        return "CURLSHOPT_SHARE(3)";
180*6236dae4SAndroid Build Coastguard Worker    }
181*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURL_SSLVERSION_/) {
182*6236dae4SAndroid Build Coastguard Worker        return "CURLOPT_SSLVERSION(3)";
183*6236dae4SAndroid Build Coastguard Worker    }
184*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURL_VERSION_/) {
185*6236dae4SAndroid Build Coastguard Worker        return "curl_version_info(3)";
186*6236dae4SAndroid Build Coastguard Worker    }
187*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURL_RTSPREQ_/) {
188*6236dae4SAndroid Build Coastguard Worker        return "CURLOPT_RTSP_REQUEST(3)";
189*6236dae4SAndroid Build Coastguard Worker    }
190*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURLH_/) {
191*6236dae4SAndroid Build Coastguard Worker        return "curl_easy_header(3)";
192*6236dae4SAndroid Build Coastguard Worker    }
193*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURL_TRAILERFUNC_/) {
194*6236dae4SAndroid Build Coastguard Worker        return "CURLOPT_TRAILERFUNCTION(3)";
195*6236dae4SAndroid Build Coastguard Worker    }
196*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURLOT_/) {
197*6236dae4SAndroid Build Coastguard Worker        return "curl_easy_option_next(3)";
198*6236dae4SAndroid Build Coastguard Worker    }
199*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURLFINFOFLAG_/) {
200*6236dae4SAndroid Build Coastguard Worker        return "CURLOPT_CHUNK_BGN_FUNCTION(3)";
201*6236dae4SAndroid Build Coastguard Worker    }
202*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURLFILETYPE_/) {
203*6236dae4SAndroid Build Coastguard Worker        return "CURLOPT_CHUNK_BGN_FUNCTION(3)";
204*6236dae4SAndroid Build Coastguard Worker    }
205*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURL_CHUNK_BGN_FUNC_/) {
206*6236dae4SAndroid Build Coastguard Worker        return "CURLOPT_CHUNK_BGN_FUNCTION(3)";
207*6236dae4SAndroid Build Coastguard Worker    }
208*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURL_CHUNK_END_FUNC_/) {
209*6236dae4SAndroid Build Coastguard Worker        return "CURLOPT_CHUNK_END_FUNCTION(3)";
210*6236dae4SAndroid Build Coastguard Worker    }
211*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURLSSH_AUTH_/) {
212*6236dae4SAndroid Build Coastguard Worker        return "CURLOPT_SSH_AUTH_TYPES(3)";
213*6236dae4SAndroid Build Coastguard Worker    }
214*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURL_POLL_/) {
215*6236dae4SAndroid Build Coastguard Worker        return "CURLMOPT_SOCKETFUNCTION(3)";
216*6236dae4SAndroid Build Coastguard Worker    }
217*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURLMSG_/) {
218*6236dae4SAndroid Build Coastguard Worker        return "curl_multi_info_read(3)";
219*6236dae4SAndroid Build Coastguard Worker    }
220*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURLFTPAUTH_/) {
221*6236dae4SAndroid Build Coastguard Worker        return "CURLOPT_FTPSSLAUTH(3)";
222*6236dae4SAndroid Build Coastguard Worker    }
223*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURLFTPMETHOD_/) {
224*6236dae4SAndroid Build Coastguard Worker        return "CURLOPT_FTP_FILEMETHOD(3)";
225*6236dae4SAndroid Build Coastguard Worker    }
226*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURLFTPSSL_/) {
227*6236dae4SAndroid Build Coastguard Worker        return "CURLOPT_USE_SSL(3)";
228*6236dae4SAndroid Build Coastguard Worker    }
229*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURLFTP_CREATE_/) {
230*6236dae4SAndroid Build Coastguard Worker        return "CURLOPT_FTP_CREATE_MISSING_DIRS(3)";
231*6236dae4SAndroid Build Coastguard Worker    }
232*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURLGSSAPI_DELEGATION_/) {
233*6236dae4SAndroid Build Coastguard Worker        return "CURLOPT_GSSAPI_DELEGATION(3)";
234*6236dae4SAndroid Build Coastguard Worker    }
235*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURLHEADER_/) {
236*6236dae4SAndroid Build Coastguard Worker        return "CURLOPT_HEADEROPT(3)";
237*6236dae4SAndroid Build Coastguard Worker    }
238*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURLHSTS_/) {
239*6236dae4SAndroid Build Coastguard Worker        return "CURLOPT_HSTS_CTRL(3)";
240*6236dae4SAndroid Build Coastguard Worker    }
241*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURLIOCMD_/) {
242*6236dae4SAndroid Build Coastguard Worker        return "CURLOPT_IOCTLFUNCTION(3)";
243*6236dae4SAndroid Build Coastguard Worker    }
244*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURLIOE_/) {
245*6236dae4SAndroid Build Coastguard Worker        return "CURLOPT_IOCTLFUNCTION(3)";
246*6236dae4SAndroid Build Coastguard Worker    }
247*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURLMIMEOPT_/) {
248*6236dae4SAndroid Build Coastguard Worker        return "CURLOPT_MIME_OPTIONS(3)";
249*6236dae4SAndroid Build Coastguard Worker    }
250*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURLPAUSE_/) {
251*6236dae4SAndroid Build Coastguard Worker        return "curl_easy_pause(3)";
252*6236dae4SAndroid Build Coastguard Worker    }
253*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURLPIPE_/) {
254*6236dae4SAndroid Build Coastguard Worker        return "CURLMOPT_PIPELINING(3)";
255*6236dae4SAndroid Build Coastguard Worker    }
256*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURLSOCKTYPE_/) {
257*6236dae4SAndroid Build Coastguard Worker        return "CURLOPT_SOCKOPTFUNCTION(3)";
258*6236dae4SAndroid Build Coastguard Worker    }
259*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURLSTS_/) {
260*6236dae4SAndroid Build Coastguard Worker        return "CURLOPT_HSTSREADFUNCTION(3)";
261*6236dae4SAndroid Build Coastguard Worker    }
262*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURLUSESSL_/) {
263*6236dae4SAndroid Build Coastguard Worker        return "CURLOPT_USE_SSL(3)";
264*6236dae4SAndroid Build Coastguard Worker    }
265*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURL_CSELECT_/) {
266*6236dae4SAndroid Build Coastguard Worker        return "curl_multi_socket_action(3)";
267*6236dae4SAndroid Build Coastguard Worker    }
268*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURL_FNMATCHFUNC_/) {
269*6236dae4SAndroid Build Coastguard Worker        return "CURLOPT_FNMATCH_FUNCTION(3)";
270*6236dae4SAndroid Build Coastguard Worker    }
271*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURL_HET_/) {
272*6236dae4SAndroid Build Coastguard Worker        return "CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS(3)";
273*6236dae4SAndroid Build Coastguard Worker    }
274*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURL_IPRESOLVE_/) {
275*6236dae4SAndroid Build Coastguard Worker        return "CURLOPT_IPRESOLVE(3)";
276*6236dae4SAndroid Build Coastguard Worker    }
277*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURL_SEEKFUNC_/) {
278*6236dae4SAndroid Build Coastguard Worker        return "CURLOPT_SEEKFUNCTION(3)";
279*6236dae4SAndroid Build Coastguard Worker    }
280*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURL_TIMECOND_/) {
281*6236dae4SAndroid Build Coastguard Worker        return "CURLOPT_TIMECONDITION(3)";
282*6236dae4SAndroid Build Coastguard Worker    }
283*6236dae4SAndroid Build Coastguard Worker    elsif($n =~ /^CURL_REDIR_POST_/) {
284*6236dae4SAndroid Build Coastguard Worker        return "CURLOPT_POSTREDIR(3)";
285*6236dae4SAndroid Build Coastguard Worker    }
286*6236dae4SAndroid Build Coastguard Worker}
287*6236dae4SAndroid Build Coastguard Worker
288*6236dae4SAndroid Build Coastguard Workerwhile(<STDIN>) {
289*6236dae4SAndroid Build Coastguard Worker    if($_ =~ /^(CURL[A-Z0-9_.]*) *(.*)/i) {
290*6236dae4SAndroid Build Coastguard Worker        my ($symbol, $rest)=($1,$2);
291*6236dae4SAndroid Build Coastguard Worker        my ($intro, $dep, $rem);
292*6236dae4SAndroid Build Coastguard Worker        if($rest =~ s/^([0-9.]*) *//) {
293*6236dae4SAndroid Build Coastguard Worker           $intro = $1;
294*6236dae4SAndroid Build Coastguard Worker        }
295*6236dae4SAndroid Build Coastguard Worker        if($rest =~ s/^([0-9.]*) *//) {
296*6236dae4SAndroid Build Coastguard Worker           $dep = $1;
297*6236dae4SAndroid Build Coastguard Worker        }
298*6236dae4SAndroid Build Coastguard Worker        if($rest =~ s/^- *([0-9.]*)//) {
299*6236dae4SAndroid Build Coastguard Worker           $rem = $1;
300*6236dae4SAndroid Build Coastguard Worker        }
301*6236dae4SAndroid Build Coastguard Worker        print "\n## $symbol\nIntroduced in $intro.";
302*6236dae4SAndroid Build Coastguard Worker        if($dep) {
303*6236dae4SAndroid Build Coastguard Worker            print " Deprecated since $dep.";
304*6236dae4SAndroid Build Coastguard Worker        }
305*6236dae4SAndroid Build Coastguard Worker        if($rem) {
306*6236dae4SAndroid Build Coastguard Worker            print " Last used in $rem.";
307*6236dae4SAndroid Build Coastguard Worker        }
308*6236dae4SAndroid Build Coastguard Worker        my $see = $rem || $dep ? "" : nameref($symbol);
309*6236dae4SAndroid Build Coastguard Worker        if($see) {
310*6236dae4SAndroid Build Coastguard Worker            print " See $see.";
311*6236dae4SAndroid Build Coastguard Worker        }
312*6236dae4SAndroid Build Coastguard Worker        print "\n";
313*6236dae4SAndroid Build Coastguard Worker    }
314*6236dae4SAndroid Build Coastguard Worker}
315