Compare commits
225 Commits
curl-7_10_
...
curl-7_10_
Author | SHA1 | Date | |
---|---|---|---|
![]() |
bfd00ac2ed | ||
![]() |
735a4714f4 | ||
![]() |
827fd47198 | ||
![]() |
e26b917661 | ||
![]() |
92872a2a3c | ||
![]() |
16ddb09cb4 | ||
![]() |
d37031f14e | ||
![]() |
b4e84ca7d2 | ||
![]() |
47970b9e6f | ||
![]() |
f65f120d50 | ||
![]() |
df00ec3c82 | ||
![]() |
ad6fca28f9 | ||
![]() |
fd33923496 | ||
![]() |
a55649dc82 | ||
![]() |
9558f229db | ||
![]() |
7917bfb1c9 | ||
![]() |
25f611ca42 | ||
![]() |
e6eb49e7e0 | ||
![]() |
9a075f53dc | ||
![]() |
4b3f800c03 | ||
![]() |
82bc76b243 | ||
![]() |
18b9b04907 | ||
![]() |
87f1f08b36 | ||
![]() |
7d7ebbe9f7 | ||
![]() |
5111ce782f | ||
![]() |
20b0e563ce | ||
![]() |
8b6cf239a3 | ||
![]() |
bcc285cffd | ||
![]() |
d5ba030942 | ||
![]() |
803f43592a | ||
![]() |
904b9ccaa3 | ||
![]() |
89721ff04a | ||
![]() |
6164823921 | ||
![]() |
f8b3c47f99 | ||
![]() |
56dd2da962 | ||
![]() |
68bb74d172 | ||
![]() |
bf5e12c8e0 | ||
![]() |
de11f5e53a | ||
![]() |
b125e8e23a | ||
![]() |
b28b616eb2 | ||
![]() |
4534ca238d | ||
![]() |
cee0e94294 | ||
![]() |
8319ea7078 | ||
![]() |
5334a58f9b | ||
![]() |
2616bdc4cd | ||
![]() |
c149b3f797 | ||
![]() |
d349eb3d43 | ||
![]() |
9b43ade1c0 | ||
![]() |
ad05d0a8d9 | ||
![]() |
e6bfbe9683 | ||
![]() |
c871efca4b | ||
![]() |
12c72b419c | ||
![]() |
a15b7691ca | ||
![]() |
01618d323b | ||
![]() |
bb6d0e37e3 | ||
![]() |
24a6100897 | ||
![]() |
0251563c98 | ||
![]() |
72673a351b | ||
![]() |
96b7131844 | ||
![]() |
dcc2f16416 | ||
![]() |
c2b8a04000 | ||
![]() |
d65587b06c | ||
![]() |
1ab0134522 | ||
![]() |
afffce80f0 | ||
![]() |
70b80b0160 | ||
![]() |
64067a04b5 | ||
![]() |
38cf0268c0 | ||
![]() |
2d2034703f | ||
![]() |
571ceeff90 | ||
![]() |
34c4ba4321 | ||
![]() |
babb372eb9 | ||
![]() |
5b9b82c1cd | ||
![]() |
075c534270 | ||
![]() |
f317f8b149 | ||
![]() |
f8d552dde5 | ||
![]() |
606f72bb13 | ||
![]() |
327e6a2b4f | ||
![]() |
be8f6c7f5c | ||
![]() |
073448e0ea | ||
![]() |
f136f435b5 | ||
![]() |
ebea6b487b | ||
![]() |
e5b7dc56e6 | ||
![]() |
c2d8025a0a | ||
![]() |
853e240e1d | ||
![]() |
8755a6d1ac | ||
![]() |
9f723061cb | ||
![]() |
652683fc04 | ||
![]() |
83a463891d | ||
![]() |
957b618fdc | ||
![]() |
ebe5191b63 | ||
![]() |
c426234df7 | ||
![]() |
8c3a10392e | ||
![]() |
d0e44946e9 | ||
![]() |
46a593d968 | ||
![]() |
eb0cc34951 | ||
![]() |
1c7dfda4bc | ||
![]() |
3c0e4a2fa1 | ||
![]() |
c753072ae1 | ||
![]() |
243942a7aa | ||
![]() |
8d5ac8b43c | ||
![]() |
17962b3d2e | ||
![]() |
f70acd5979 | ||
![]() |
ffe5c46224 | ||
![]() |
3242ea5f66 | ||
![]() |
39a282bffc | ||
![]() |
29583004ce | ||
![]() |
0a1a185874 | ||
![]() |
8f809e2a93 | ||
![]() |
f216059b49 | ||
![]() |
9121b1f41d | ||
![]() |
60e015d0c1 | ||
![]() |
7e049fca61 | ||
![]() |
0f0e4de6a4 | ||
![]() |
bc1102922b | ||
![]() |
a3d3642a30 | ||
![]() |
248eb47329 | ||
![]() |
52ebf50607 | ||
![]() |
d34a4b126e | ||
![]() |
de96719a45 | ||
![]() |
9876ed09fe | ||
![]() |
17cbbe3dc5 | ||
![]() |
b995af17eb | ||
![]() |
6589579850 | ||
![]() |
5ddc260fc2 | ||
![]() |
db5c9cd4c0 | ||
![]() |
9b6d010aef | ||
![]() |
065b87e949 | ||
![]() |
a6206a3aef | ||
![]() |
30639ed72b | ||
![]() |
9d02a39e13 | ||
![]() |
fc0af0d4d1 | ||
![]() |
a683416081 | ||
![]() |
9faf57ee8d | ||
![]() |
44b9ccb7e2 | ||
![]() |
de003d9cf8 | ||
![]() |
8a2a523c70 | ||
![]() |
c3dfe50aaf | ||
![]() |
9659d862c7 | ||
![]() |
69ab4cd391 | ||
![]() |
498f3985b3 | ||
![]() |
977175d4fd | ||
![]() |
3ddc7b9390 | ||
![]() |
10e9bf623f | ||
![]() |
48a5c64e94 | ||
![]() |
140606ccd5 | ||
![]() |
f56d006f93 | ||
![]() |
beb13a1d3e | ||
![]() |
fa47138327 | ||
![]() |
9421d4510a | ||
![]() |
ff8abfca85 | ||
![]() |
5c858965b8 | ||
![]() |
e3f83cb17a | ||
![]() |
de6008e01a | ||
![]() |
6417e696df | ||
![]() |
5d28f3781b | ||
![]() |
10026bb62e | ||
![]() |
21c16f923c | ||
![]() |
32cef52f0d | ||
![]() |
e7dd7c54ff | ||
![]() |
b0b50bd12a | ||
![]() |
f2c6057490 | ||
![]() |
169b2eeb94 | ||
![]() |
f81d027f60 | ||
![]() |
872eeb7339 | ||
![]() |
7f67a28c2a | ||
![]() |
30a46e1135 | ||
![]() |
3a01478ce8 | ||
![]() |
53d71fab60 | ||
![]() |
be891f112c | ||
![]() |
89934239d7 | ||
![]() |
8986037fdd | ||
![]() |
a7c72b7abf | ||
![]() |
409ac80710 | ||
![]() |
fc7bebdf55 | ||
![]() |
ca52549557 | ||
![]() |
8948a65654 | ||
![]() |
b4e33cfcc7 | ||
![]() |
86742e8334 | ||
![]() |
173b35eaf8 | ||
![]() |
2b054e5309 | ||
![]() |
a302ff1605 | ||
![]() |
f7bb4e6138 | ||
![]() |
5c5489916b | ||
![]() |
5627cf7167 | ||
![]() |
c05dae4a68 | ||
![]() |
57e61e3743 | ||
![]() |
a6c395c156 | ||
![]() |
543e0b1e0f | ||
![]() |
64b0ff875f | ||
![]() |
a034208a00 | ||
![]() |
5f1251586b | ||
![]() |
6f6cffdc32 | ||
![]() |
21a98ef264 | ||
![]() |
aa90436435 | ||
![]() |
61225052f9 | ||
![]() |
dee3163d95 | ||
![]() |
8b0668b99e | ||
![]() |
8471a82c85 | ||
![]() |
ed4dff63b9 | ||
![]() |
838e776542 | ||
![]() |
39c12790bc | ||
![]() |
126e6d6645 | ||
![]() |
5796a1b282 | ||
![]() |
90982529fc | ||
![]() |
aba51d6b60 | ||
![]() |
49bc4567bb | ||
![]() |
2ac52705c6 | ||
![]() |
d0eb56dd97 | ||
![]() |
b9c60df04b | ||
![]() |
8c236e4dfa | ||
![]() |
154a59f21f | ||
![]() |
9689e1c548 | ||
![]() |
5a83976c99 | ||
![]() |
b5276a9a69 | ||
![]() |
30377baa5e | ||
![]() |
aa8b7dd336 | ||
![]() |
f26a338a54 | ||
![]() |
c4383f1d99 | ||
![]() |
4527995e66 | ||
![]() |
b0fbb98f41 | ||
![]() |
63667dfd96 | ||
![]() |
77c388c928 | ||
![]() |
a69b814ded | ||
![]() |
c51ada766d | ||
![]() |
ef2709f97c |
295
CHANGES
295
CHANGES
@@ -6,6 +6,299 @@
|
|||||||
|
|
||||||
Changelog
|
Changelog
|
||||||
|
|
||||||
|
Version 7.10.4 (2 Apr 2003)
|
||||||
|
|
||||||
|
Daniel (1 Apr)
|
||||||
|
- Added test case 505 to exercise FTP upload with rename done with libcurl,
|
||||||
|
and for that I had to extend the test suite's FTP server to deal with the
|
||||||
|
RNFR and RNTO commands.
|
||||||
|
|
||||||
|
Daniel (31 Mar)
|
||||||
|
- Even more SSL config check modifications after Richard's testing.
|
||||||
|
|
||||||
|
Version 7.10.4-pre6 (31 Mar 2003)
|
||||||
|
|
||||||
|
Daniel (31 Mar)
|
||||||
|
- More fixes for the SSL session ID cache checks when SSL configs are changed
|
||||||
|
between connections. Based on tests and talks with Richard Bramante.
|
||||||
|
|
||||||
|
- Guillaume Cottenceau provided a patch that added CURLOPT_UNRESTRICTED_AUTH.
|
||||||
|
When enabled, it will prevent libcurl from limiting to which host it sends
|
||||||
|
user+password to when following locations. By default, libcurl only sends
|
||||||
|
name and password to the original host used in the first URL, but with this
|
||||||
|
option set it will send the auth info to all hosts it follows location
|
||||||
|
headers to. The new tool command line option for this is named
|
||||||
|
"--location-trusted".
|
||||||
|
|
||||||
|
- Frankie Fong reported a problem with libcurl if you re-used an easy handle
|
||||||
|
with a proxy, and you first made a https:// connction to a host and then
|
||||||
|
switched to a http:// one to the same host. libcurl would then wrongly re-use
|
||||||
|
the same connection for it and fail to get the second URL properly
|
||||||
|
|
||||||
|
Daniel (29 Mar)
|
||||||
|
- Dan Shearer's fix that makes curl complain if invoked with nothing but "curl
|
||||||
|
-O" was applied.
|
||||||
|
|
||||||
|
Daniel (26 Mar)
|
||||||
|
- Bryan Kemp was friendly enough to lend me an account on his Redhat 9 box and
|
||||||
|
I could fix the configure problems on redhat 8.1 and 9 in no time thanks to
|
||||||
|
this. Thanks a bunch Bryan!
|
||||||
|
|
||||||
|
Daniel (25 Mar)
|
||||||
|
- Renamed configure.in to configure.ac
|
||||||
|
|
||||||
|
Version 7.10.4-pre5 (25 Mar 2003)
|
||||||
|
|
||||||
|
Daniel (25 Mar)
|
||||||
|
- Richard Bramante provided a fix for a handle re-use problem seen when you
|
||||||
|
change options on an SSL-enabled connection between requests. Previously,
|
||||||
|
changing peer verification or host verification and similar things was not
|
||||||
|
taken into account when a connection were checked for re-use and thus
|
||||||
|
enabling stricter check between requests on a re-used connection made no
|
||||||
|
difference and the connection would thus be used erroneously.
|
||||||
|
|
||||||
|
Daniel (24 Mar)
|
||||||
|
- G<>tz Babin-Ebell pointed out that the ca-bundle.crt file contained a
|
||||||
|
certificate from Trustcenter that was a demo certificate only that was never
|
||||||
|
indended to be part of a CA bundle.
|
||||||
|
|
||||||
|
Daniel (21 Mar)
|
||||||
|
- Life is a mystery. Within a time period of 17 hours, Tim Pope and Michael
|
||||||
|
Churchill filed one bug report each, both identifying problems with a second
|
||||||
|
transfer when doing persistant transfers re-using a connection. Tim's one is
|
||||||
|
#706624, labeled "Multiple uploads per handle fail" and Michael's #707003
|
||||||
|
"Does not send Authorization: header when reusing connection". I could track
|
||||||
|
both down to the same piece of logic and it turned out libcurl was not using
|
||||||
|
new settings properly when re-using an existing connection. This concerned
|
||||||
|
both uploading and downloading and involved exactly those pieces these two
|
||||||
|
reports identified. This code has been this faulty since the day I
|
||||||
|
introduced persistant connection support in libcurl, more than 2 years ago.
|
||||||
|
|
||||||
|
Daniel (20 Mar 2003)
|
||||||
|
- Five year anniversary. Today five years ago, the first ever curl release saw
|
||||||
|
the light of day.
|
||||||
|
|
||||||
|
Daniel (17 Mar)
|
||||||
|
- Andy Cedilnik corrected flaws in some libcurl example-usage sources.
|
||||||
|
|
||||||
|
Daniel (16 Mar)
|
||||||
|
- Juan F. Codagnone reported that the fix from March 2nd was incomplete.
|
||||||
|
|
||||||
|
- Added code to the configure.in to check for select() argument types. I've
|
||||||
|
not made any code use the results just yet though.
|
||||||
|
|
||||||
|
Daniel (15 Mar)
|
||||||
|
- Gisle Vanem provided two patches to build better on Windows.
|
||||||
|
|
||||||
|
- Adjusted the test suite code to better make sure that the server(s) required
|
||||||
|
for a specific test is properly started before the test case is attempted.
|
||||||
|
Many tests now run a lot faster than before.
|
||||||
|
|
||||||
|
Daniel (14 Mar)
|
||||||
|
- Another configure.in adjustment made the configure detect functions properly
|
||||||
|
on HPUX now.
|
||||||
|
|
||||||
|
Daniel (13 Mar)
|
||||||
|
- Philippe Raoult fixed pre4-compile quirks for FreeBSD.
|
||||||
|
|
||||||
|
Version 7.10.4-pre4 (13 Mar 2003)
|
||||||
|
|
||||||
|
Daniel (13 Mar)
|
||||||
|
- Added a backup-check for functions that aren't found by AC_CHECK_FUNCS()
|
||||||
|
as I believe some checks on HPUX need this. At least some of the info given
|
||||||
|
to us by Rick Jones seemed to indicate this.
|
||||||
|
|
||||||
|
Daniel (12 Mar)
|
||||||
|
- Thomas Tonino found out that if you used the curl tool to do PUT operations
|
||||||
|
as in 'curl www.foo.com/dir/ -T file' and the file name included for example
|
||||||
|
space or other characters that don't belong in URLs, curl did not properly
|
||||||
|
URL encode them before using them in the URL.
|
||||||
|
|
||||||
|
- Added an option to configure called --enable-libgcc that simply adds -lgcc
|
||||||
|
to the LIBS variable, as this seems to be a common problem.
|
||||||
|
|
||||||
|
- I modified the configure.in file, so that the headers are now checked in an
|
||||||
|
order of "viality". We must also make sure to use the "default headers"
|
||||||
|
parameter to AC_CHECK_HEADERS() so that headers are checked with the proper
|
||||||
|
prerequisites included (i.e all the major and generally important header
|
||||||
|
files are included there by default). This might be what we need for various
|
||||||
|
Sun, HP, AIX and Tru64 systems to behave good again on the header check
|
||||||
|
front.
|
||||||
|
|
||||||
|
- Rick Jones pointed out a few compiler warnings on HP-UX that I addressed.
|
||||||
|
|
||||||
|
- I made the configure --help output nicer by using AC_HELP_STRING() a lot
|
||||||
|
more.
|
||||||
|
|
||||||
|
Daniel (11 Mar)
|
||||||
|
- Christophe Demory fixed the socket sending code to work better on HP-UX
|
||||||
|
when sending data to a socket that would block. It then returns EAGAIN, not
|
||||||
|
EWOULDBLOCK.
|
||||||
|
|
||||||
|
- Richard Gorton improved the seeding function for systems without a good
|
||||||
|
and reliable random source.
|
||||||
|
|
||||||
|
- Richard Gorton fixed a few warnings that popped up when you built curl
|
||||||
|
using the Sun compiler on a 64bit SPARC platform.
|
||||||
|
|
||||||
|
- Martin C. Martin fixed a case where a connect failure using the multi
|
||||||
|
interface didn't produce a human readable error string.
|
||||||
|
|
||||||
|
Daniel (10 Mar)
|
||||||
|
- Reverted ltmain.sh back to libtool 1.4.2 status again, as the 1.4.3 version
|
||||||
|
broke the build on numerous platforms. It seems that libtool 1.4.3 puts some
|
||||||
|
requirements on what versions of the other tools (autoconf + automake) that
|
||||||
|
I am not familiar with and thus I couldn't fulfill at this point.
|
||||||
|
|
||||||
|
Yes, this is more than mildly frustrating.
|
||||||
|
|
||||||
|
Daniel (7 Mar)
|
||||||
|
- Run libtoolize version 1.4.3.
|
||||||
|
|
||||||
|
Version 7.10.4-pre3 (4 Mar 2003)
|
||||||
|
|
||||||
|
Daniel (3 Mar)
|
||||||
|
- Added share.obj to the VC6 and Borland libcurl makefiles.
|
||||||
|
|
||||||
|
- Troels Walsted Hansen found and investigated a problem with libcurl on AIX,
|
||||||
|
presumably only on 4.3 or later. gethostbyname_r() is not returning data
|
||||||
|
that is possible to "keep" and cache the way libcurl does. But instead these
|
||||||
|
versions of AIX uses a gethostbyname() that works thread-safely we can
|
||||||
|
instead use the ordinary gethostbyname() and our pack_hostent() approach to
|
||||||
|
achieve what we want. The configure script now attempts to detect AIX 4.3 or
|
||||||
|
later to adjust for this.
|
||||||
|
|
||||||
|
Daniel (2 Mar)
|
||||||
|
- Juan F. Codagnone found a problem introduced in 7.10.3 when you first did a
|
||||||
|
POST and then back to a GET using the same easy handle.
|
||||||
|
|
||||||
|
Daniel (28 Feb)
|
||||||
|
- Removed the strequal and strnequal defines from curl/curl.h header. They
|
||||||
|
were never meant for the public header anyway. Philippe Raoult brought it
|
||||||
|
up.
|
||||||
|
|
||||||
|
- James Bursa fixed the RISC OS build.
|
||||||
|
|
||||||
|
Daniel (27 Feb)
|
||||||
|
- Avery Fay pointed out the very misleading curl_multi_info_read man page, and
|
||||||
|
I updated it to become more accurate.
|
||||||
|
|
||||||
|
- Salvatore Sorrentino found a problem with FTP downloading that turned out to
|
||||||
|
be his FTP server returning size zero (0 bytes) when SIZE was used on a file
|
||||||
|
while being in BINARY mode. We now make a second check for the actual size
|
||||||
|
by scanning the RETR reply anyway, even if the SIZE command returned 0.
|
||||||
|
|
||||||
|
Daniel (26 Feb)
|
||||||
|
- Kyle Sallee reported a case where he would do a transfer that didn't update
|
||||||
|
the progress meter properly. It turned out to be a case where libcurl would
|
||||||
|
loop a little too eagerly in the tranfer loop, which isn't really good for
|
||||||
|
the APIs, especially not the multi API.
|
||||||
|
|
||||||
|
Version 7.10.4-pre2 (24 Feb 2003)
|
||||||
|
|
||||||
|
Daniel (24 Feb)
|
||||||
|
- Kjetil Jacobsen found out that setting CURLOPT_MAXCONNECTS to a value higher
|
||||||
|
than 5 could cause a segfault.
|
||||||
|
|
||||||
|
- I believe I fixed the 'Expect: 100-continue' behavior that has been broken
|
||||||
|
for a while (I think since my change dated Dec 10 2002). When this header is
|
||||||
|
used, libcurl should wait for a HTTP 100 (or timeout) before sending the
|
||||||
|
post/put data.
|
||||||
|
|
||||||
|
Daniel (14 Feb)
|
||||||
|
- Matthew Clarke provided some info what to modify to make curl build
|
||||||
|
flawlessly on AIX 3.2.5.
|
||||||
|
|
||||||
|
- Martin C. Martin found and fixed a problem in the multi interface when
|
||||||
|
running on Windows and trying to connect to a port without a listener.
|
||||||
|
|
||||||
|
Daniel (13 Feb)
|
||||||
|
- Christopher R. Palmer fixed Curl_base64_encode() to deal with zeroes in the
|
||||||
|
data to encode.
|
||||||
|
|
||||||
|
Daniel (4 Feb)
|
||||||
|
- Jean-Philippe added the first code that enables the 'share' system. This
|
||||||
|
should now enable sharing of DNS data between two curl easy handles.
|
||||||
|
|
||||||
|
- Incorporated Nico Baggus' fixes to again compile flawlessly on VMS.
|
||||||
|
|
||||||
|
- James Bursa corrected a bad comment in the public include file curl/multi.h
|
||||||
|
|
||||||
|
- Peter Forret reported one of those error:00000000 cases in libcurl again
|
||||||
|
when connecting to a HTTPS site, and this time I did discover some oddities
|
||||||
|
in how curl reports SSL errors back. It could miss showing the actual error.
|
||||||
|
|
||||||
|
Version 7.10.4-pre1 (3 Feb 2003)
|
||||||
|
|
||||||
|
Daniel (3 Feb)
|
||||||
|
- Removed things in the docs saying capath doesn't work on Windows, as Julian
|
||||||
|
Noble told us it works fine.
|
||||||
|
|
||||||
|
Daniel (31 Jan)
|
||||||
|
- Kevin Roth fixed the zlib build stuff in the Mingw32 makefile.
|
||||||
|
|
||||||
|
Daniel (30 Jan)
|
||||||
|
- Kevin Roth found out that curl on Windows always checked for the CA cert
|
||||||
|
bundle using the environment variable and the path scan, even though
|
||||||
|
-k/--insecure was used.
|
||||||
|
|
||||||
|
- Hamish Mackenzie pointed out that curl only did strict host name verifying
|
||||||
|
if capath or cainfo was used. Now it'll always do it unless -k / --insecure
|
||||||
|
is used!
|
||||||
|
|
||||||
|
- Pavel Cenek pointed out that the Content-Type extraction was done wrongly
|
||||||
|
as the full string was not fetched. Added test case 57 to verify that curl
|
||||||
|
does it right now.
|
||||||
|
|
||||||
|
Daniel (29 Jan)
|
||||||
|
- Jamie Wilkinson provided a patch that now makes curl attempt to clear out
|
||||||
|
"sensitive" command line arguments so that they don't appear in ps outputs
|
||||||
|
(only on platforms that allow writing to argv[]).
|
||||||
|
|
||||||
|
- John McGowan found out that the DEBUGFUNCTION could be called with bad
|
||||||
|
arguments and thus cause the --trace outputs to go wrong.
|
||||||
|
|
||||||
|
- Removed all the emacs local variables from all files. Mats Lidell provided
|
||||||
|
the new sample.emacs file (for a sample of what to include in your .emacs)
|
||||||
|
and the curl-style.el that sets a better c-style for editing curl sources.
|
||||||
|
|
||||||
|
- Dave Halbakken found a problem with FTP downloads that could accidently
|
||||||
|
return CURLE_PARTIAL_FILE when curl_easy_perform() was called with NOBODY
|
||||||
|
set TRUE.
|
||||||
|
|
||||||
|
Daniel (27 Jan)
|
||||||
|
- The fopen.c example was flawed as Nick Humfrey noticed, and I fixed it to
|
||||||
|
work again.
|
||||||
|
|
||||||
|
Daniel (24 Jan)
|
||||||
|
- Bertrand Demiddelaer found and fixed a memory leak (the content-type string)
|
||||||
|
when following locations.
|
||||||
|
|
||||||
|
Daniel (22 Jan 2003)
|
||||||
|
- Ian Wilkes and Legoff Vincent both independently provided fixes for making
|
||||||
|
curl/multi.h work properly when compiled with a C++ compiler.
|
||||||
|
|
||||||
|
Daniel (20 Jan 2003)
|
||||||
|
- Fixed 'buildconf' to check version number of the required tools before
|
||||||
|
they're actually used.
|
||||||
|
|
||||||
|
- Wrote 'testcurl.sh', a script targeted for automatic and distributed curl
|
||||||
|
tests on various platforms.
|
||||||
|
|
||||||
|
- David Thiel pointed out that the .netrc file was not being dealt with
|
||||||
|
properly anymore. I broke this in the password prompting "fix".
|
||||||
|
|
||||||
|
- Markus F.X.J. Oberhumer patched libcurl to allocate the scratch buffer only
|
||||||
|
on demand and thus we save 32KB in each curl handle that don't use that
|
||||||
|
buffer. This need appeared when some people started using thousands of
|
||||||
|
simultaneous curl handles... :-)
|
||||||
|
|
||||||
|
Daniel (16 Jan 2003)
|
||||||
|
- Markus Oberhumer fixed curl-config --cflags when the includedir was not
|
||||||
|
/usr/include.
|
||||||
|
|
||||||
|
- Markus Oberhumer fixed CURLINFO_PRIVATE to properly return NULL if it was
|
||||||
|
set to NULL!
|
||||||
|
|
||||||
Version 7.10.3 (14 Jan 2003)
|
Version 7.10.3 (14 Jan 2003)
|
||||||
|
|
||||||
@@ -1586,4 +1879,4 @@ Daniel (2 January 2002)
|
|||||||
changes done on dec-20 made test case 104 cease to work (in both branches).
|
changes done on dec-20 made test case 104 cease to work (in both branches).
|
||||||
|
|
||||||
- Philip Gladstone pointed out a few portability problems in the source code
|
- Philip Gladstone pointed out a few portability problems in the source code
|
||||||
that didn't compile on 64-bit sparcs using Sun's native
|
that didn't compile on 64-bit sparcs using Sun's native compiler.
|
||||||
|
2
COPYING
2
COPYING
@@ -1,6 +1,6 @@
|
|||||||
COPYRIGHT AND PERMISSION NOTICE
|
COPYRIGHT AND PERMISSION NOTICE
|
||||||
|
|
||||||
Copyright (c) 1996 - 2002, Daniel Stenberg, <daniel@haxx.se>.
|
Copyright (c) 1996 - 2003, Daniel Stenberg, <daniel@haxx.se>.
|
||||||
|
|
||||||
All rights reserved.
|
All rights reserved.
|
||||||
|
|
||||||
|
22
CVS-INFO
22
CVS-INFO
@@ -15,7 +15,8 @@ Compile and build instructions follow below.
|
|||||||
CHANGES.0 contains ancient changes.
|
CHANGES.0 contains ancient changes.
|
||||||
CHANGES.$year contains changes for the particular year.
|
CHANGES.$year contains changes for the particular year.
|
||||||
|
|
||||||
memanalyze.pl is for analyzing the output generated by curl if -DMALLOCDEBUG
|
tests/memanalyze.pl
|
||||||
|
is for analyzing the output generated by curl if -DMALLOCDEBUG
|
||||||
is used when compiling
|
is used when compiling
|
||||||
|
|
||||||
buildconf builds the makefiles and configure stuff
|
buildconf builds the makefiles and configure stuff
|
||||||
@@ -44,12 +45,19 @@ REQUIREMENTS
|
|||||||
o libtool 1.4 (or later)
|
o libtool 1.4 (or later)
|
||||||
o GNU m4 (required by autoconf)
|
o GNU m4 (required by autoconf)
|
||||||
|
|
||||||
o nroff + perl (if you don't have nroff and perl and you for some reason
|
o nroff + perl
|
||||||
don't want to install them, you can rename the source file
|
|
||||||
src/hugehelp.c.cvs to src/hugehelp.c and avoid having to generate this
|
If you don't have nroff and perl and you for some reason don't want to
|
||||||
file. This will of course give you an older version of the file that isn't
|
install them, you can rename the source file src/hugehelp.c.cvs to
|
||||||
up-to-date. That file was checked in once and won't be updated very
|
src/hugehelp.c and avoid having to generate this file. This will of course
|
||||||
regularly.)
|
give you an older version of the file that isn't up-to-date. That file was
|
||||||
|
checked in once and won't be updated very regularly.
|
||||||
|
|
||||||
|
o yacc/bison
|
||||||
|
|
||||||
|
If you don't have yacc or bison, you must rename the lib/getdate.c.cvs file
|
||||||
|
to lib/getdate.c to be able to build libcurl. yacc/bison is normally used
|
||||||
|
to generate the lib/getdate.c file from the lib/getdate.y source file.
|
||||||
|
|
||||||
MAC OS X
|
MAC OS X
|
||||||
|
|
||||||
|
25
LEGAL
25
LEGAL
@@ -1,25 +0,0 @@
|
|||||||
Copyright (C) 1998-2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
|
||||||
|
|
||||||
Everyone is permitted to copy and distribute verbatim copies of this license
|
|
||||||
document, but changing it is not allowed.
|
|
||||||
|
|
||||||
In order to be useful for every potential user, the curl and libcurl are
|
|
||||||
dual-licensed under the MPL and the MIT/X-derivate licenses.
|
|
||||||
|
|
||||||
You may opt to use, copy, modify, merge, publish, distribute and/or sell
|
|
||||||
copies of the Software, and permit persons to whom the Software is furnished
|
|
||||||
to do so, under the terms of the MPL or the MIT/X-derivate licenses. You may
|
|
||||||
pick one of these licenses. The files MITX.txt and MPL-1.1.txt contain the
|
|
||||||
license texts.
|
|
||||||
|
|
||||||
As a courtesy to the open-source and free software community, we ask you to
|
|
||||||
dual-license any modifications that you make as well, under the terms of this
|
|
||||||
document.
|
|
||||||
|
|
||||||
Please remember to always keep the licensing information included in
|
|
||||||
individual source files up-to-date, so as to avoid misleading anyone as to
|
|
||||||
the status of these files.
|
|
||||||
|
|
||||||
I will use a submission policy according to which I will only enter
|
|
||||||
contributions into the CVS tree if the contributor agrees to both licenses
|
|
||||||
and this dual-license approach.
|
|
@@ -5,7 +5,7 @@
|
|||||||
AUTOMAKE_OPTIONS = foreign
|
AUTOMAKE_OPTIONS = foreign
|
||||||
|
|
||||||
EXTRA_DIST = CHANGES COPYING maketgz SSLCERTS reconf Makefile.dist \
|
EXTRA_DIST = CHANGES COPYING maketgz SSLCERTS reconf Makefile.dist \
|
||||||
curl-config.in build_vms.com curl-mode.el
|
curl-config.in build_vms.com curl-style.el sample.emacs testcurl.sh
|
||||||
|
|
||||||
bin_SCRIPTS = curl-config
|
bin_SCRIPTS = curl-config
|
||||||
|
|
||||||
@@ -13,6 +13,7 @@ SUBDIRS = docs lib src include tests packages
|
|||||||
|
|
||||||
# create a root makefile in the distribution:
|
# create a root makefile in the distribution:
|
||||||
dist-hook:
|
dist-hook:
|
||||||
|
rm -rf $(top_builddir)/tests/log
|
||||||
cp $(srcdir)/Makefile.dist $(distdir)/Makefile
|
cp $(srcdir)/Makefile.dist $(distdir)/Makefile
|
||||||
|
|
||||||
html:
|
html:
|
||||||
@@ -26,6 +27,9 @@ check: test
|
|||||||
test:
|
test:
|
||||||
@(cd tests; $(MAKE) quiet-test)
|
@(cd tests; $(MAKE) quiet-test)
|
||||||
|
|
||||||
|
test-full:
|
||||||
|
@(cd tests; $(MAKE) full-test)
|
||||||
|
|
||||||
#
|
#
|
||||||
# Build source and binary rpms. For rpm-3.0 and above, the ~/.rpmmacros
|
# Build source and binary rpms. For rpm-3.0 and above, the ~/.rpmmacros
|
||||||
# must contain the following line:
|
# must contain the following line:
|
||||||
|
27
README
27
README
@@ -11,19 +11,30 @@ README
|
|||||||
MANUAL document. Find out how to install Curl by reading the INSTALL
|
MANUAL document. Find out how to install Curl by reading the INSTALL
|
||||||
document.
|
document.
|
||||||
|
|
||||||
libcurl is a library that Curl is using to do its job. It is readily
|
libcurl is the library curl is using to do its job. It is readily
|
||||||
available to be used by your software. Read the libcurl.3 man page to
|
available to be used by your software. Read the libcurl.3 man page to
|
||||||
find out how!
|
learn how!
|
||||||
|
|
||||||
You find answers to the most frequent questions we get in the FAQ document.
|
You find answers to the most frequent questions we get in the FAQ document.
|
||||||
|
|
||||||
Study the LEGAL file for distribution terms and similar.
|
Study the COPYING file for distribution terms and similar.
|
||||||
|
|
||||||
|
CONTACT
|
||||||
|
|
||||||
|
If you have problems, questions, ideas or suggestions, please contact us
|
||||||
|
by posting to a suitable mailing list. See http://curl.haxx.se/mail/
|
||||||
|
|
||||||
|
Many major contributors to the project are listed in the THANKS document.
|
||||||
|
|
||||||
|
WEB SITE
|
||||||
|
|
||||||
Visit the curl web site or mirrors for the latest news:
|
Visit the curl web site or mirrors for the latest news:
|
||||||
|
|
||||||
http://curl.haxx.se/
|
Sweden -- http://curl.haxx.se/
|
||||||
http://curl.sf.net/
|
US -- http://curl.sf.net/
|
||||||
http://curl.planetmirror.com/
|
Australia -- http://curl.planetmirror.com/
|
||||||
|
|
||||||
|
DOWNLOAD
|
||||||
|
|
||||||
The official download mirror sites are:
|
The official download mirror sites are:
|
||||||
|
|
||||||
@@ -34,6 +45,8 @@ README
|
|||||||
US -- http://curl.sourceforge.net/download/
|
US -- http://curl.sourceforge.net/download/
|
||||||
Hongkong -- http://www.execve.net/curl/
|
Hongkong -- http://www.execve.net/curl/
|
||||||
|
|
||||||
|
CVS
|
||||||
|
|
||||||
To download the very latest source off the CVS server do this:
|
To download the very latest source off the CVS server do this:
|
||||||
|
|
||||||
cvs -d :pserver:anonymous@cvs.curl.sourceforge.net:/cvsroot/curl login
|
cvs -d :pserver:anonymous@cvs.curl.sourceforge.net:/cvsroot/curl login
|
||||||
@@ -48,6 +61,8 @@ README
|
|||||||
|
|
||||||
(you're off the hook!)
|
(you're off the hook!)
|
||||||
|
|
||||||
|
NOTICE
|
||||||
|
|
||||||
Curl contains pieces of source code that is Copyright (c) 1998, 1999
|
Curl contains pieces of source code that is Copyright (c) 1998, 1999
|
||||||
Kungliga Tekniska H<>gskolan. This notice is included here to comply with the
|
Kungliga Tekniska H<>gskolan. This notice is included here to comply with the
|
||||||
distribution terms.
|
distribution terms.
|
||||||
|
20
SSLCERTS
20
SSLCERTS
@@ -6,9 +6,9 @@ default. This is done by installing a default CA cert bundle on 'make install'
|
|||||||
(or similar), that CA bundle package is used by default on operations against
|
(or similar), that CA bundle package is used by default on operations against
|
||||||
SSL servers.
|
SSL servers.
|
||||||
|
|
||||||
Alas, if you communicate with HTTPS servers using certifcates that are signed
|
Alas, if you communicate with HTTPS servers using certificates that are signed
|
||||||
by CAs present in the bundle, you will not notice any changed behavior and you
|
by CAs present in the bundle, you will not notice any changed behavior and you
|
||||||
will seeminglessly get a higher security level on your SSL connections since
|
will seamlessly get a higher security level on your SSL connections since you
|
||||||
can be sure that the remote server really is the one it claims to be.
|
can be sure that the remote server really is the one it claims to be.
|
||||||
|
|
||||||
If the remote server uses a self-signed certificate, or if you don't install
|
If the remote server uses a self-signed certificate, or if you don't install
|
||||||
@@ -26,10 +26,14 @@ included in the bundle, then you need to do one of the following:
|
|||||||
|
|
||||||
With the curl command tool: --cacert [file]
|
With the curl command tool: --cacert [file]
|
||||||
|
|
||||||
This upgrade procedure has been deemed The Right Thing even though it adds
|
Neglecting to use one of the above menthods when dealing with a server using a
|
||||||
this extra trouble for some users, since it adds security to a majority of the
|
certficate that isn't signed by one of the certficates in the installed CA
|
||||||
SSL connections that previously weren't really secure.
|
cert bundle, will cause SSL to report an error ("certificate verify failed")
|
||||||
|
during the handshake and SSL will then refuse further communication with that
|
||||||
|
server.
|
||||||
|
|
||||||
It turned out many people were using previous versions of curl/libcurl without
|
This procedure has been deemed The Right Thing even though it adds this extra
|
||||||
realizing the need for the CA cert options to get truly secure SSL
|
trouble for some users, since it adds security to a majority of the SSL
|
||||||
connections.
|
connections that previously weren't really secure. It turned out many people
|
||||||
|
were using previous versions of curl/libcurl without realizing the need for
|
||||||
|
the CA cert options to get truly secure SSL connections.
|
||||||
|
90
acconfig.h
90
acconfig.h
@@ -1,90 +0,0 @@
|
|||||||
/* Name of this package! */
|
|
||||||
#undef PACKAGE
|
|
||||||
|
|
||||||
/* Version number of this archive. */
|
|
||||||
#undef VERSION
|
|
||||||
|
|
||||||
/* Define if you have the getpass function. */
|
|
||||||
#undef HAVE_GETPASS
|
|
||||||
|
|
||||||
/* Define cpu-machine-OS */
|
|
||||||
#undef OS
|
|
||||||
|
|
||||||
/* Define if you have the gethostbyaddr_r() function with 5 arguments */
|
|
||||||
#undef HAVE_GETHOSTBYADDR_R_5
|
|
||||||
|
|
||||||
/* Define if you have the gethostbyaddr_r() function with 7 arguments */
|
|
||||||
#undef HAVE_GETHOSTBYADDR_R_7
|
|
||||||
|
|
||||||
/* Define if you have the gethostbyaddr_r() function with 8 arguments */
|
|
||||||
#undef HAVE_GETHOSTBYADDR_R_8
|
|
||||||
|
|
||||||
/* Define if you have the gethostbyname_r() function with 3 arguments */
|
|
||||||
#undef HAVE_GETHOSTBYNAME_R_3
|
|
||||||
|
|
||||||
/* Define if you have the gethostbyname_r() function with 5 arguments */
|
|
||||||
#undef HAVE_GETHOSTBYNAME_R_5
|
|
||||||
|
|
||||||
/* Define if you have the gethostbyname_r() function with 6 arguments */
|
|
||||||
#undef HAVE_GETHOSTBYNAME_R_6
|
|
||||||
|
|
||||||
/* Define if you have the inet_ntoa_r function declared. */
|
|
||||||
#undef HAVE_INET_NTOA_R_DECL
|
|
||||||
|
|
||||||
/* Define if you need the _REENTRANT define for some functions */
|
|
||||||
#undef NEED_REENTRANT
|
|
||||||
|
|
||||||
/* Define if you have the Kerberos4 libraries (including -ldes) */
|
|
||||||
#undef KRB4
|
|
||||||
|
|
||||||
/* Define if you want to enable IPv6 support */
|
|
||||||
#undef ENABLE_IPV6
|
|
||||||
|
|
||||||
/* Define this to 'int' if ssize_t is not an available typedefed type */
|
|
||||||
#undef ssize_t
|
|
||||||
|
|
||||||
/* Define this to 'int' if socklen_t is not an available typedefed type */
|
|
||||||
#undef socklen_t
|
|
||||||
|
|
||||||
/* Define this as a suitable file to read random data from */
|
|
||||||
#undef RANDOM_FILE
|
|
||||||
|
|
||||||
/* Define this to your Entropy Gathering Daemon socket pathname */
|
|
||||||
#undef EGD_SOCKET
|
|
||||||
|
|
||||||
/* Define if you have a working OpenSSL installation */
|
|
||||||
#undef OPENSSL_ENABLED
|
|
||||||
|
|
||||||
/* Define the one correct non-blocking socket method below */
|
|
||||||
#undef HAVE_FIONBIO
|
|
||||||
#undef HAVE_IOCTLSOCKET
|
|
||||||
#undef HAVE_IOCTLSOCKET_CASE
|
|
||||||
#undef HAVE_O_NONBLOCK
|
|
||||||
#undef HAVE_DISABLED_NONBLOCKING
|
|
||||||
|
|
||||||
/* Define this to 'int' if in_addr_t is not an available typedefed type */
|
|
||||||
#undef in_addr_t
|
|
||||||
|
|
||||||
/* Define to disable DICT */
|
|
||||||
#undef CURL_DISABLE_DICT
|
|
||||||
|
|
||||||
/* Define to disable FILE */
|
|
||||||
#undef CURL_DISABLE_FILE
|
|
||||||
|
|
||||||
/* Define to disable FTP */
|
|
||||||
#undef CURL_DISABLE_FTP
|
|
||||||
|
|
||||||
/* Define to disable GOPHER */
|
|
||||||
#undef CURL_DISABLE_GOPHER
|
|
||||||
|
|
||||||
/* Define to disable HTTP */
|
|
||||||
#undef CURL_DISABLE_HTTP
|
|
||||||
|
|
||||||
/* Define to disable LDAP */
|
|
||||||
#undef CURL_DISABLE_LDAP
|
|
||||||
|
|
||||||
/* Define to disable TELNET */
|
|
||||||
#undef CURL_DISABLE_TELNET
|
|
||||||
|
|
||||||
/* Define if you have zlib present */
|
|
||||||
#undef HAVE_LIBZ
|
|
36
acinclude.m4
36
acinclude.m4
@@ -38,7 +38,7 @@ AC_DEFUN(CURL_CHECK_NONBLOCKING_SOCKET,
|
|||||||
],[
|
],[
|
||||||
dnl the O_NONBLOCK test was fine
|
dnl the O_NONBLOCK test was fine
|
||||||
nonblock="O_NONBLOCK"
|
nonblock="O_NONBLOCK"
|
||||||
AC_DEFINE(HAVE_O_NONBLOCK)
|
AC_DEFINE(HAVE_O_NONBLOCK, 1, [use O_NONBLOCK for non-blocking sockets])
|
||||||
],[
|
],[
|
||||||
dnl the code was bad, try a different program now, test 2
|
dnl the code was bad, try a different program now, test 2
|
||||||
|
|
||||||
@@ -52,7 +52,7 @@ dnl the code was bad, try a different program now, test 2
|
|||||||
],[
|
],[
|
||||||
dnl FIONBIO test was good
|
dnl FIONBIO test was good
|
||||||
nonblock="FIONBIO"
|
nonblock="FIONBIO"
|
||||||
AC_DEFINE(HAVE_FIONBIO)
|
AC_DEFINE(HAVE_FIONBIO, 1, [use FIONBIO for non-blocking sockets])
|
||||||
],[
|
],[
|
||||||
dnl FIONBIO test was also bad
|
dnl FIONBIO test was also bad
|
||||||
dnl the code was bad, try a different program now, test 3
|
dnl the code was bad, try a different program now, test 3
|
||||||
@@ -66,7 +66,7 @@ dnl the code was bad, try a different program now, test 3
|
|||||||
],[
|
],[
|
||||||
dnl ioctlsocket test was good
|
dnl ioctlsocket test was good
|
||||||
nonblock="ioctlsocket"
|
nonblock="ioctlsocket"
|
||||||
AC_DEFINE(HAVE_IOCTLSOCKET)
|
AC_DEFINE(HAVE_IOCTLSOCKET, 1, [use ioctlsocket() for non-blocking sockets])
|
||||||
],[
|
],[
|
||||||
dnl ioctlsocket didnt compile!
|
dnl ioctlsocket didnt compile!
|
||||||
|
|
||||||
@@ -79,11 +79,11 @@ dnl ioctlsocket didnt compile!
|
|||||||
],[
|
],[
|
||||||
dnl ioctlsocket test was good
|
dnl ioctlsocket test was good
|
||||||
nonblock="IoctlSocket"
|
nonblock="IoctlSocket"
|
||||||
AC_DEFINE(HAVE_IOCTLSOCKET_CASE)
|
AC_DEFINE(HAVE_IOCTLSOCKET_CASE, 1, [use Ioctlsocket() for non-blocking sockets])
|
||||||
],[
|
],[
|
||||||
dnl ioctlsocket didnt compile!
|
dnl ioctlsocket didnt compile!
|
||||||
nonblock="nada"
|
nonblock="nada"
|
||||||
AC_DEFINE(HAVE_DISABLED_NONBLOCKING)
|
AC_DEFINE(HAVE_DISABLED_NONBLOCKING, 1, [disabled non-blocking sockets])
|
||||||
])
|
])
|
||||||
dnl end of forth test
|
dnl end of forth test
|
||||||
|
|
||||||
@@ -272,15 +272,15 @@ AC_DEFUN(CURL_CHECK_INET_NTOA_R,
|
|||||||
AC_MSG_CHECKING(whether inet_ntoa_r is declared)
|
AC_MSG_CHECKING(whether inet_ntoa_r is declared)
|
||||||
AC_EGREP_CPP(inet_ntoa_r,[
|
AC_EGREP_CPP(inet_ntoa_r,[
|
||||||
#include <arpa/inet.h>],[
|
#include <arpa/inet.h>],[
|
||||||
AC_DEFINE(HAVE_INET_NTOA_R_DECL)
|
AC_DEFINE(HAVE_INET_NTOA_R_DECL, 1, [inet_ntoa_r() is declared])
|
||||||
AC_MSG_RESULT(yes)],[
|
AC_MSG_RESULT(yes)],[
|
||||||
AC_MSG_RESULT(no)
|
AC_MSG_RESULT(no)
|
||||||
AC_MSG_CHECKING(whether inet_ntoa_r with -D_REENTRANT is declared)
|
AC_MSG_CHECKING(whether inet_ntoa_r with -D_REENTRANT is declared)
|
||||||
AC_EGREP_CPP(inet_ntoa_r,[
|
AC_EGREP_CPP(inet_ntoa_r,[
|
||||||
#define _REENTRANT
|
#define _REENTRANT
|
||||||
#include <arpa/inet.h>],[
|
#include <arpa/inet.h>],[
|
||||||
AC_DEFINE(HAVE_INET_NTOA_R_DECL)
|
AC_DEFINE(HAVE_INET_NTOA_R_DECL, 1, [inet_ntoa_r() is declared])
|
||||||
AC_DEFINE(NEED_REENTRANT)
|
AC_DEFINE(NEED_REENTRANT, 1, [need REENTRANT defined])
|
||||||
AC_MSG_RESULT(yes)],
|
AC_MSG_RESULT(yes)],
|
||||||
AC_MSG_RESULT(no))])])
|
AC_MSG_RESULT(no))])])
|
||||||
])
|
])
|
||||||
@@ -302,7 +302,7 @@ struct hostent_data hdata;
|
|||||||
int rc;
|
int rc;
|
||||||
rc = gethostbyaddr_r(address, length, type, &h, &hdata);],[
|
rc = gethostbyaddr_r(address, length, type, &h, &hdata);],[
|
||||||
AC_MSG_RESULT(yes)
|
AC_MSG_RESULT(yes)
|
||||||
AC_DEFINE(HAVE_GETHOSTBYADDR_R_5)
|
AC_DEFINE(HAVE_GETHOSTBYADDR_R_5, 1, [gethostbyaddr_r() takes 5 args])
|
||||||
ac_cv_gethostbyaddr_args=5],[
|
ac_cv_gethostbyaddr_args=5],[
|
||||||
AC_MSG_RESULT(no)
|
AC_MSG_RESULT(no)
|
||||||
AC_MSG_CHECKING(if gethostbyaddr_r with -D_REENTRANT takes 5 arguments)
|
AC_MSG_CHECKING(if gethostbyaddr_r with -D_REENTRANT takes 5 arguments)
|
||||||
@@ -318,8 +318,8 @@ struct hostent_data hdata;
|
|||||||
int rc;
|
int rc;
|
||||||
rc = gethostbyaddr_r(address, length, type, &h, &hdata);],[
|
rc = gethostbyaddr_r(address, length, type, &h, &hdata);],[
|
||||||
AC_MSG_RESULT(yes)
|
AC_MSG_RESULT(yes)
|
||||||
AC_DEFINE(HAVE_GETHOSTBYADDR_R_5)
|
AC_DEFINE(HAVE_GETHOSTBYADDR_R_5, 1, [gethostbyaddr_r() takes 5 args])
|
||||||
AC_DEFINE(NEED_REENTRANT)
|
AC_DEFINE(NEED_REENTRANT, 1, [need REENTRANT])
|
||||||
ac_cv_gethostbyaddr_args=5],[
|
ac_cv_gethostbyaddr_args=5],[
|
||||||
AC_MSG_RESULT(no)
|
AC_MSG_RESULT(no)
|
||||||
AC_MSG_CHECKING(if gethostbyaddr_r takes 7 arguments)
|
AC_MSG_CHECKING(if gethostbyaddr_r takes 7 arguments)
|
||||||
@@ -337,7 +337,7 @@ struct hostent * hp;
|
|||||||
hp = gethostbyaddr_r(address, length, type, &h,
|
hp = gethostbyaddr_r(address, length, type, &h,
|
||||||
buffer, 8192, &h_errnop);],[
|
buffer, 8192, &h_errnop);],[
|
||||||
AC_MSG_RESULT(yes)
|
AC_MSG_RESULT(yes)
|
||||||
AC_DEFINE(HAVE_GETHOSTBYADDR_R_7)
|
AC_DEFINE(HAVE_GETHOSTBYADDR_R_7, 1, [gethostbyaddr_r() takes 7 args] )
|
||||||
ac_cv_gethostbyaddr_args=7],[
|
ac_cv_gethostbyaddr_args=7],[
|
||||||
AC_MSG_RESULT(no)
|
AC_MSG_RESULT(no)
|
||||||
AC_MSG_CHECKING(if gethostbyaddr_r takes 8 arguments)
|
AC_MSG_CHECKING(if gethostbyaddr_r takes 8 arguments)
|
||||||
@@ -356,7 +356,7 @@ int rc;
|
|||||||
rc = gethostbyaddr_r(address, length, type, &h,
|
rc = gethostbyaddr_r(address, length, type, &h,
|
||||||
buffer, 8192, &hp, &h_errnop);],[
|
buffer, 8192, &hp, &h_errnop);],[
|
||||||
AC_MSG_RESULT(yes)
|
AC_MSG_RESULT(yes)
|
||||||
AC_DEFINE(HAVE_GETHOSTBYADDR_R_8)
|
AC_DEFINE(HAVE_GETHOSTBYADDR_R_8, 1, [gethostbyaddr_r() takes 8 args])
|
||||||
ac_cv_gethostbyaddr_args=8],[
|
ac_cv_gethostbyaddr_args=8],[
|
||||||
AC_MSG_RESULT(no)
|
AC_MSG_RESULT(no)
|
||||||
have_missing_r_funcs="$have_missing_r_funcs gethostbyaddr_r"])])])])])
|
have_missing_r_funcs="$have_missing_r_funcs gethostbyaddr_r"])])])])])
|
||||||
@@ -380,7 +380,7 @@ gethostbyname_r(const char *, struct hostent *, struct hostent_data *);],[
|
|||||||
struct hostent_data data;
|
struct hostent_data data;
|
||||||
gethostbyname_r(NULL, NULL, NULL);],[
|
gethostbyname_r(NULL, NULL, NULL);],[
|
||||||
AC_MSG_RESULT(yes)
|
AC_MSG_RESULT(yes)
|
||||||
AC_DEFINE(HAVE_GETHOSTBYNAME_R_3)
|
AC_DEFINE(HAVE_GETHOSTBYNAME_R_3, 1, [gethostbyname_r() takes 3 args])
|
||||||
ac_cv_gethostbyname_args=3],[
|
ac_cv_gethostbyname_args=3],[
|
||||||
AC_MSG_RESULT(no)
|
AC_MSG_RESULT(no)
|
||||||
AC_MSG_CHECKING([if gethostbyname_r with -D_REENTRANT takes 3 arguments])
|
AC_MSG_CHECKING([if gethostbyname_r with -D_REENTRANT takes 3 arguments])
|
||||||
@@ -398,8 +398,8 @@ gethostbyname_r(const char *,struct hostent *, struct hostent_data *);],[
|
|||||||
struct hostent_data data;
|
struct hostent_data data;
|
||||||
gethostbyname_r(NULL, NULL, NULL);],[
|
gethostbyname_r(NULL, NULL, NULL);],[
|
||||||
AC_MSG_RESULT(yes)
|
AC_MSG_RESULT(yes)
|
||||||
AC_DEFINE(HAVE_GETHOSTBYNAME_R_3)
|
AC_DEFINE(HAVE_GETHOSTBYNAME_R_3, 1, [gethostbyname_r() takes 3 args])
|
||||||
AC_DEFINE(NEED_REENTRANT)
|
AC_DEFINE(NEED_REENTRANT, 1, [needs REENTRANT])
|
||||||
ac_cv_gethostbyname_args=3],[
|
ac_cv_gethostbyname_args=3],[
|
||||||
AC_MSG_RESULT(no)
|
AC_MSG_RESULT(no)
|
||||||
AC_MSG_CHECKING([if gethostbyname_r takes 5 arguments])
|
AC_MSG_CHECKING([if gethostbyname_r takes 5 arguments])
|
||||||
@@ -413,7 +413,7 @@ struct hostent *
|
|||||||
gethostbyname_r(const char *, struct hostent *, char *, int, int *);],[
|
gethostbyname_r(const char *, struct hostent *, char *, int, int *);],[
|
||||||
gethostbyname_r(NULL, NULL, NULL, 0, NULL);],[
|
gethostbyname_r(NULL, NULL, NULL, 0, NULL);],[
|
||||||
AC_MSG_RESULT(yes)
|
AC_MSG_RESULT(yes)
|
||||||
AC_DEFINE(HAVE_GETHOSTBYNAME_R_5)
|
AC_DEFINE(HAVE_GETHOSTBYNAME_R_5, 1, [gethostbyname_r() takes 5 args])
|
||||||
ac_cv_gethostbyname_args=5],[
|
ac_cv_gethostbyname_args=5],[
|
||||||
AC_MSG_RESULT(no)
|
AC_MSG_RESULT(no)
|
||||||
AC_MSG_CHECKING([if gethostbyname_r takes 6 arguments])
|
AC_MSG_CHECKING([if gethostbyname_r takes 6 arguments])
|
||||||
@@ -428,7 +428,7 @@ gethostbyname_r(const char *, struct hostent *, char *, size_t,
|
|||||||
struct hostent **, int *);],[
|
struct hostent **, int *);],[
|
||||||
gethostbyname_r(NULL, NULL, NULL, 0, NULL, NULL);],[
|
gethostbyname_r(NULL, NULL, NULL, 0, NULL, NULL);],[
|
||||||
AC_MSG_RESULT(yes)
|
AC_MSG_RESULT(yes)
|
||||||
AC_DEFINE(HAVE_GETHOSTBYNAME_R_6)
|
AC_DEFINE(HAVE_GETHOSTBYNAME_R_6, 1, [gethostbyname_r() takes 6 args])
|
||||||
ac_cv_gethostbyname_args=6],[
|
ac_cv_gethostbyname_args=6],[
|
||||||
AC_MSG_RESULT(no)
|
AC_MSG_RESULT(no)
|
||||||
have_missing_r_funcs="$have_missing_r_funcs gethostbyname_r"],
|
have_missing_r_funcs="$have_missing_r_funcs gethostbyname_r"],
|
||||||
|
@@ -6,7 +6,7 @@ $ loc = f$environment("PROCEDURE")
|
|||||||
$ def = f$parse("X.X;1",loc) - "X.X;1"
|
$ def = f$parse("X.X;1",loc) - "X.X;1"
|
||||||
$
|
$
|
||||||
$ set def 'def'
|
$ set def 'def'
|
||||||
$ cc_qual = "/define=HAVE_CONFIG_H=1/include=(""../include/"",""../"",""../../openssl-0_9_6c/include/"")"
|
$ cc_qual = "/define=HAVE_CONFIG_H=1/include=(""../include/"",""../"",""../../openssl-0_9_7/include/"")"
|
||||||
$ if p1 .eqs. "LISTING" then cc_qual = cc_qual + "/LIST/MACHINE"
|
$ if p1 .eqs. "LISTING" then cc_qual = cc_qual + "/LIST/MACHINE"
|
||||||
$ if p1 .eqs. "DEBUG" then cc_qual = cc_qual + "/LIST/MACHINE/DEBUG"
|
$ if p1 .eqs. "DEBUG" then cc_qual = cc_qual + "/LIST/MACHINE/DEBUG"
|
||||||
$ msg_qual = ""
|
$ msg_qual = ""
|
||||||
@@ -14,8 +14,8 @@ $ call build "[.lib]" "*.c"
|
|||||||
$ call build "[.src]" "*.c"
|
$ call build "[.src]" "*.c"
|
||||||
$ call build "[.src]" "*.msg"
|
$ call build "[.src]" "*.msg"
|
||||||
$ link /exe=curl.exe [.src]curl/lib/include=main,[.lib]curl/lib, -
|
$ link /exe=curl.exe [.src]curl/lib/include=main,[.lib]curl/lib, -
|
||||||
[-.openssl-0_9_6c.axp.exe.ssl]libssl/lib, -
|
[-.openssl-0_9_7.axp.exe.ssl]libssl/lib, -
|
||||||
[-.openssl-0_9_6c.axp.exe.crypto]libcrypto/lib
|
[-.openssl-0_9_7.axp.exe.crypto]libcrypto/lib
|
||||||
$
|
$
|
||||||
$
|
$
|
||||||
$ goto Common_Exit
|
$ goto Common_Exit
|
||||||
|
109
buildconf
109
buildconf
@@ -5,7 +5,114 @@ die(){
|
|||||||
exit
|
exit
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#--------------------------------------------------------------------------
|
||||||
|
# autoconf 2.50 or newer
|
||||||
|
#
|
||||||
|
ac_version=`${AUTOCONF:-autoconf} --version 2>/dev/null|head -1| sed -e 's/^[^0-9]*//' -e 's/[a-z]* *$//'`
|
||||||
|
if test -z "$ac_version"; then
|
||||||
|
echo "buildconf: autoconf not found."
|
||||||
|
echo " You need autoconf version 2.50 or newer installed."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
IFS=.; set $ac_version; IFS=' '
|
||||||
|
if test "$1" = "2" -a "$2" -lt "50" || test "$1" -lt "2"; then
|
||||||
|
echo "buildconf: autoconf version $ac_version found."
|
||||||
|
echo " You need autoconf version 2.50 or newer installed."
|
||||||
|
echo " If you have a sufficient autoconf installed, but it"
|
||||||
|
echo " is not named 'autoconf', then try setting the"
|
||||||
|
echo " AUTOCONF environment variable."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "buildconf: autoconf version $ac_version (ok)"
|
||||||
|
|
||||||
|
#--------------------------------------------------------------------------
|
||||||
|
# autoheader 2.50 or newer
|
||||||
|
#
|
||||||
|
ah_version=`${AUTOHEADER:-autoheader} --version 2>/dev/null|head -1| sed -e 's/^[^0-9]*//' -e 's/[a-z]* *$//'`
|
||||||
|
if test -z "$ah_version"; then
|
||||||
|
echo "buildconf: autoheader not found."
|
||||||
|
echo " You need autoheader version 2.50 or newer installed."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
IFS=.; set $ah_version; IFS=' '
|
||||||
|
if test "$1" = "2" -a "$2" -lt "50" || test "$1" -lt "2"; then
|
||||||
|
echo "buildconf: autoheader version $ah_version found."
|
||||||
|
echo " You need autoheader version 2.50 or newer installed."
|
||||||
|
echo " If you have a sufficient autoheader installed, but it"
|
||||||
|
echo " is not named 'autoheader', then try setting the"
|
||||||
|
echo " AUTOHEADER environment variable."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "buildconf: autoheader version $ah_version (ok)"
|
||||||
|
|
||||||
|
#--------------------------------------------------------------------------
|
||||||
|
# automake 1.5 or newer
|
||||||
|
#
|
||||||
|
am_version=`${AUTOMAKE:-automake} --version 2>/dev/null|head -1| sed -e 's/^[^0-9]*//' -e 's/[a-z]* *$//'`
|
||||||
|
if test -z "$am_version"; then
|
||||||
|
echo "buildconf: automake not found."
|
||||||
|
echo " You need automake version 1.5 or newer installed."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
IFS=.; set $am_version; IFS=' '
|
||||||
|
if test "$1" = "1" -a "$2" -lt "5" || test "$1" -lt "1"; then
|
||||||
|
echo "buildconf: automake version $am_version found."
|
||||||
|
echo " You need automake version 1.5 or newer installed."
|
||||||
|
echo " If you have a sufficient automake installed, but it"
|
||||||
|
echo " is not named 'autommake', then try setting the"
|
||||||
|
echo " AUTOMAKE environment variable."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "buildconf: automake version $am_version (ok)"
|
||||||
|
|
||||||
|
#--------------------------------------------------------------------------
|
||||||
|
# libtool 1.4 or newer
|
||||||
|
#
|
||||||
|
LIBTOOL_WANTED_MAJOR=1
|
||||||
|
LIBTOOL_WANTED_MINOR=4
|
||||||
|
LIBTOOL_WANTED_PATCH=
|
||||||
|
LIBTOOL_WANTED_VERSION=1.4
|
||||||
|
|
||||||
|
libtool=`which glibtool 2>/dev/null`
|
||||||
|
if test ! -x "$libtool"; then
|
||||||
|
libtool=`which libtool`
|
||||||
|
fi
|
||||||
|
lt_pversion=`$libtool --version 2>/dev/null|sed -e 's/^[^0-9]*//' -e 's/[- ].*//'`
|
||||||
|
if test -z "$lt_pversion"; then
|
||||||
|
echo "buildconf: libtool not found."
|
||||||
|
echo " You need libtool version $LIBTOOL_WANTED_VERSION or newer installed"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
lt_version=`echo $lt_pversion|sed -e 's/\([a-z]*\)$/.\1/'`
|
||||||
|
IFS=.; set $lt_version; IFS=' '
|
||||||
|
lt_status="good"
|
||||||
|
if test "$1" = "$LIBTOOL_WANTED_MAJOR"; then
|
||||||
|
if test "$2" -lt "$LIBTOOL_WANTED_MINOR"; then
|
||||||
|
lt_status="bad"
|
||||||
|
elif test ! -z "$LIBTOOL_WANTED_PATCH"; then
|
||||||
|
if test "$3" -lt "$LIBTOOL_WANTED_PATCH"; then
|
||||||
|
lt_status="bad"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
if test $lt_status != "good"; then
|
||||||
|
echo "buildconf: libtool version $lt_pversion found."
|
||||||
|
echo " You need libtool version $LIBTOOL_WANTED_VERSION or newer installed"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "buildconf: libtool version $lt_pversion (ok)"
|
||||||
|
|
||||||
|
echo "buildconf: running aclocal"
|
||||||
aclocal || die "The command 'aclocal' failed"
|
aclocal || die "The command 'aclocal' failed"
|
||||||
|
echo "buildconf: running autoheader"
|
||||||
autoheader || die "The command 'autoheader' failed"
|
autoheader || die "The command 'autoheader' failed"
|
||||||
|
echo "buildconf: running autoconf"
|
||||||
autoconf || die "The command 'autoconf' failed"
|
autoconf || die "The command 'autoconf' failed"
|
||||||
automake -a || die "The command 'automake $MAKEFILES' failed"
|
echo "buildconf: running automake"
|
||||||
|
automake -a || die "The command 'automake -a' failed"
|
||||||
|
|
||||||
|
exit 0
|
||||||
|
316
config.guess
vendored
316
config.guess
vendored
@@ -1,9 +1,9 @@
|
|||||||
#! /bin/sh
|
#! /bin/sh
|
||||||
# Attempt to guess a canonical system name.
|
# Attempt to guess a canonical system name.
|
||||||
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
|
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
|
||||||
# Free Software Foundation, Inc.
|
# 2000, 2001, 2002 Free Software Foundation, Inc.
|
||||||
|
|
||||||
timestamp='2001-09-04'
|
timestamp='2002-10-21'
|
||||||
|
|
||||||
# This file is free software; you can redistribute it and/or modify it
|
# This file is free software; you can redistribute it and/or modify it
|
||||||
# under the terms of the GNU General Public License as published by
|
# under the terms of the GNU General Public License as published by
|
||||||
@@ -24,8 +24,9 @@ timestamp='2001-09-04'
|
|||||||
# configuration script generated by Autoconf, you may include it under
|
# configuration script generated by Autoconf, you may include it under
|
||||||
# the same distribution terms that you use for the rest of that program.
|
# the same distribution terms that you use for the rest of that program.
|
||||||
|
|
||||||
# Written by Per Bothner <bothner@cygnus.com>.
|
# Originally written by Per Bothner <per@bothner.com>.
|
||||||
# Please send patches to <config-patches@gnu.org>.
|
# Please send patches to <config-patches@gnu.org>. Submit a context
|
||||||
|
# diff and a properly formatted ChangeLog entry.
|
||||||
#
|
#
|
||||||
# This script attempts to guess a canonical system name similar to
|
# This script attempts to guess a canonical system name similar to
|
||||||
# config.sub. If it succeeds, it prints the system name on stdout, and
|
# config.sub. If it succeeds, it prints the system name on stdout, and
|
||||||
@@ -87,30 +88,40 @@ if test $# != 0; then
|
|||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
trap 'exit 1' 1 2 15
|
||||||
|
|
||||||
dummy=dummy-$$
|
# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
|
||||||
trap 'rm -f $dummy.c $dummy.o $dummy.rel $dummy; exit 1' 1 2 15
|
# compiler to aid in system detection is discouraged as it requires
|
||||||
|
# temporary files to be created and, as you can see below, it is a
|
||||||
|
# headache to deal with in a portable fashion.
|
||||||
|
|
||||||
# CC_FOR_BUILD -- compiler used by this script.
|
|
||||||
# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
|
# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
|
||||||
# use `HOST_CC' if defined, but it is deprecated.
|
# use `HOST_CC' if defined, but it is deprecated.
|
||||||
|
|
||||||
set_cc_for_build='case $CC_FOR_BUILD,$HOST_CC,$CC in
|
# This shell variable is my proudest work .. or something. --bje
|
||||||
,,) echo "int dummy(){}" > $dummy.c ;
|
|
||||||
for c in cc gcc c89 ; do
|
set_cc_for_build='tmpdir=${TMPDIR-/tmp}/config-guess-$$ ;
|
||||||
($c $dummy.c -c -o $dummy.o) >/dev/null 2>&1 ;
|
(old=`umask` && umask 077 && mkdir $tmpdir && umask $old && unset old)
|
||||||
if test $? = 0 ; then
|
|| (echo "$me: cannot create $tmpdir" >&2 && exit 1) ;
|
||||||
|
dummy=$tmpdir/dummy ;
|
||||||
|
files="$dummy.c $dummy.o $dummy.rel $dummy" ;
|
||||||
|
trap '"'"'rm -f $files; rmdir $tmpdir; exit 1'"'"' 1 2 15 ;
|
||||||
|
case $CC_FOR_BUILD,$HOST_CC,$CC in
|
||||||
|
,,) echo "int x;" > $dummy.c ;
|
||||||
|
for c in cc gcc c89 c99 ; do
|
||||||
|
if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
|
||||||
CC_FOR_BUILD="$c"; break ;
|
CC_FOR_BUILD="$c"; break ;
|
||||||
fi ;
|
fi ;
|
||||||
done ;
|
done ;
|
||||||
rm -f $dummy.c $dummy.o $dummy.rel ;
|
rm -f $files ;
|
||||||
if test x"$CC_FOR_BUILD" = x ; then
|
if test x"$CC_FOR_BUILD" = x ; then
|
||||||
CC_FOR_BUILD=no_compiler_found ;
|
CC_FOR_BUILD=no_compiler_found ;
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
,,*) CC_FOR_BUILD=$CC ;;
|
,,*) CC_FOR_BUILD=$CC ;;
|
||||||
,*,*) CC_FOR_BUILD=$HOST_CC ;;
|
,*,*) CC_FOR_BUILD=$HOST_CC ;;
|
||||||
esac'
|
esac ;
|
||||||
|
unset files'
|
||||||
|
|
||||||
# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
|
# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
|
||||||
# (ghazi@noc.rutgers.edu 1994-08-24)
|
# (ghazi@noc.rutgers.edu 1994-08-24)
|
||||||
@@ -127,29 +138,30 @@ UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
|
|||||||
|
|
||||||
case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
|
case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
|
||||||
*:NetBSD:*:*)
|
*:NetBSD:*:*)
|
||||||
# Netbsd (nbsd) targets should (where applicable) match one or
|
# NetBSD (nbsd) targets should (where applicable) match one or
|
||||||
# more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
|
# more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
|
||||||
# *-*-netbsdecoff* and *-*-netbsd*. For targets that recently
|
# *-*-netbsdecoff* and *-*-netbsd*. For targets that recently
|
||||||
# switched to ELF, *-*-netbsd* would select the old
|
# switched to ELF, *-*-netbsd* would select the old
|
||||||
# object file format. This provides both forward
|
# object file format. This provides both forward
|
||||||
# compatibility and a consistent mechanism for selecting the
|
# compatibility and a consistent mechanism for selecting the
|
||||||
# object file format.
|
# object file format.
|
||||||
# Determine the machine/vendor (is the vendor relevant).
|
#
|
||||||
case "${UNAME_MACHINE}" in
|
# Note: NetBSD doesn't particularly care about the vendor
|
||||||
amiga) machine=m68k-unknown ;;
|
# portion of the name. We always set it to "unknown".
|
||||||
arm32) machine=arm-unknown ;;
|
sysctl="sysctl -n hw.machine_arch"
|
||||||
atari*) machine=m68k-atari ;;
|
UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
|
||||||
sun3*) machine=m68k-sun ;;
|
/usr/sbin/$sysctl 2>/dev/null || echo unknown)`
|
||||||
mac68k) machine=m68k-apple ;;
|
case "${UNAME_MACHINE_ARCH}" in
|
||||||
macppc) machine=powerpc-apple ;;
|
armeb) machine=armeb-unknown ;;
|
||||||
hp3[0-9][05]) machine=m68k-hp ;;
|
arm*) machine=arm-unknown ;;
|
||||||
ibmrt|romp-ibm) machine=romp-ibm ;;
|
sh3el) machine=shl-unknown ;;
|
||||||
*) machine=${UNAME_MACHINE}-unknown ;;
|
sh3eb) machine=sh-unknown ;;
|
||||||
|
*) machine=${UNAME_MACHINE_ARCH}-unknown ;;
|
||||||
esac
|
esac
|
||||||
# The Operating System including object format, if it has switched
|
# The Operating System including object format, if it has switched
|
||||||
# to ELF recently, or will in the future.
|
# to ELF recently, or will in the future.
|
||||||
case "${UNAME_MACHINE}" in
|
case "${UNAME_MACHINE_ARCH}" in
|
||||||
i386|sparc|amiga|arm*|hp300|mvme68k|vax|atari|luna68k|mac68k|news68k|next68k|pc532|sun3*|x68k)
|
arm*|i386|m68k|ns32k|sh3*|sparc|vax)
|
||||||
eval $set_cc_for_build
|
eval $set_cc_for_build
|
||||||
if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
|
if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
|
||||||
| grep __ELF__ >/dev/null
|
| grep __ELF__ >/dev/null
|
||||||
@@ -172,6 +184,45 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
|
|||||||
# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
|
# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
|
||||||
echo "${machine}-${os}${release}"
|
echo "${machine}-${os}${release}"
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
|
amiga:OpenBSD:*:*)
|
||||||
|
echo m68k-unknown-openbsd${UNAME_RELEASE}
|
||||||
|
exit 0 ;;
|
||||||
|
arc:OpenBSD:*:*)
|
||||||
|
echo mipsel-unknown-openbsd${UNAME_RELEASE}
|
||||||
|
exit 0 ;;
|
||||||
|
hp300:OpenBSD:*:*)
|
||||||
|
echo m68k-unknown-openbsd${UNAME_RELEASE}
|
||||||
|
exit 0 ;;
|
||||||
|
mac68k:OpenBSD:*:*)
|
||||||
|
echo m68k-unknown-openbsd${UNAME_RELEASE}
|
||||||
|
exit 0 ;;
|
||||||
|
macppc:OpenBSD:*:*)
|
||||||
|
echo powerpc-unknown-openbsd${UNAME_RELEASE}
|
||||||
|
exit 0 ;;
|
||||||
|
mvme68k:OpenBSD:*:*)
|
||||||
|
echo m68k-unknown-openbsd${UNAME_RELEASE}
|
||||||
|
exit 0 ;;
|
||||||
|
mvme88k:OpenBSD:*:*)
|
||||||
|
echo m88k-unknown-openbsd${UNAME_RELEASE}
|
||||||
|
exit 0 ;;
|
||||||
|
mvmeppc:OpenBSD:*:*)
|
||||||
|
echo powerpc-unknown-openbsd${UNAME_RELEASE}
|
||||||
|
exit 0 ;;
|
||||||
|
pmax:OpenBSD:*:*)
|
||||||
|
echo mipsel-unknown-openbsd${UNAME_RELEASE}
|
||||||
|
exit 0 ;;
|
||||||
|
sgi:OpenBSD:*:*)
|
||||||
|
echo mipseb-unknown-openbsd${UNAME_RELEASE}
|
||||||
|
exit 0 ;;
|
||||||
|
sun3:OpenBSD:*:*)
|
||||||
|
echo m68k-unknown-openbsd${UNAME_RELEASE}
|
||||||
|
exit 0 ;;
|
||||||
|
wgrisc:OpenBSD:*:*)
|
||||||
|
echo mipsel-unknown-openbsd${UNAME_RELEASE}
|
||||||
|
exit 0 ;;
|
||||||
|
*:OpenBSD:*:*)
|
||||||
|
echo ${UNAME_MACHINE}-unknown-openbsd${UNAME_RELEASE}
|
||||||
|
exit 0 ;;
|
||||||
alpha:OSF1:*:*)
|
alpha:OSF1:*:*)
|
||||||
if test $UNAME_RELEASE = "V4.0"; then
|
if test $UNAME_RELEASE = "V4.0"; then
|
||||||
UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
|
UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
|
||||||
@@ -180,6 +231,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
|
|||||||
# A Tn.n version is a released field test version.
|
# A Tn.n version is a released field test version.
|
||||||
# A Xn.n version is an unreleased experimental baselevel.
|
# A Xn.n version is an unreleased experimental baselevel.
|
||||||
# 1.2 uses "1.2" for uname -r.
|
# 1.2 uses "1.2" for uname -r.
|
||||||
|
eval $set_cc_for_build
|
||||||
cat <<EOF >$dummy.s
|
cat <<EOF >$dummy.s
|
||||||
.data
|
.data
|
||||||
\$Lformat:
|
\$Lformat:
|
||||||
@@ -205,10 +257,9 @@ main:
|
|||||||
jsr \$26,exit
|
jsr \$26,exit
|
||||||
.end main
|
.end main
|
||||||
EOF
|
EOF
|
||||||
eval $set_cc_for_build
|
$CC_FOR_BUILD -o $dummy $dummy.s 2>/dev/null
|
||||||
$CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null
|
|
||||||
if test "$?" = 0 ; then
|
if test "$?" = 0 ; then
|
||||||
case `./$dummy` in
|
case `$dummy` in
|
||||||
0-0)
|
0-0)
|
||||||
UNAME_MACHINE="alpha"
|
UNAME_MACHINE="alpha"
|
||||||
;;
|
;;
|
||||||
@@ -230,9 +281,12 @@ EOF
|
|||||||
2-1307)
|
2-1307)
|
||||||
UNAME_MACHINE="alphaev68"
|
UNAME_MACHINE="alphaev68"
|
||||||
;;
|
;;
|
||||||
|
3-1307)
|
||||||
|
UNAME_MACHINE="alphaev7"
|
||||||
|
;;
|
||||||
esac
|
esac
|
||||||
fi
|
fi
|
||||||
rm -f $dummy.s $dummy
|
rm -f $dummy.s $dummy && rmdir $tmpdir
|
||||||
echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
|
echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
Alpha\ *:Windows_NT*:*)
|
Alpha\ *:Windows_NT*:*)
|
||||||
@@ -247,29 +301,11 @@ EOF
|
|||||||
Amiga*:UNIX_System_V:4.0:*)
|
Amiga*:UNIX_System_V:4.0:*)
|
||||||
echo m68k-unknown-sysv4
|
echo m68k-unknown-sysv4
|
||||||
exit 0;;
|
exit 0;;
|
||||||
amiga:OpenBSD:*:*)
|
|
||||||
echo m68k-unknown-openbsd${UNAME_RELEASE}
|
|
||||||
exit 0 ;;
|
|
||||||
*:[Aa]miga[Oo][Ss]:*:*)
|
*:[Aa]miga[Oo][Ss]:*:*)
|
||||||
echo ${UNAME_MACHINE}-unknown-amigaos
|
echo ${UNAME_MACHINE}-unknown-amigaos
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
arc64:OpenBSD:*:*)
|
*:[Mm]orph[Oo][Ss]:*:*)
|
||||||
echo mips64el-unknown-openbsd${UNAME_RELEASE}
|
echo ${UNAME_MACHINE}-unknown-morphos
|
||||||
exit 0 ;;
|
|
||||||
arc:OpenBSD:*:*)
|
|
||||||
echo mipsel-unknown-openbsd${UNAME_RELEASE}
|
|
||||||
exit 0 ;;
|
|
||||||
hkmips:OpenBSD:*:*)
|
|
||||||
echo mips-unknown-openbsd${UNAME_RELEASE}
|
|
||||||
exit 0 ;;
|
|
||||||
pmax:OpenBSD:*:*)
|
|
||||||
echo mipsel-unknown-openbsd${UNAME_RELEASE}
|
|
||||||
exit 0 ;;
|
|
||||||
sgi:OpenBSD:*:*)
|
|
||||||
echo mips-unknown-openbsd${UNAME_RELEASE}
|
|
||||||
exit 0 ;;
|
|
||||||
wgrisc:OpenBSD:*:*)
|
|
||||||
echo mipsel-unknown-openbsd${UNAME_RELEASE}
|
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
*:OS/390:*:*)
|
*:OS/390:*:*)
|
||||||
echo i370-ibm-openedition
|
echo i370-ibm-openedition
|
||||||
@@ -291,6 +327,10 @@ EOF
|
|||||||
NILE*:*:*:dcosx)
|
NILE*:*:*:dcosx)
|
||||||
echo pyramid-pyramid-svr4
|
echo pyramid-pyramid-svr4
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
|
DRS?6000:UNIX_SV:4.2*:7*)
|
||||||
|
case `/usr/bin/uname -p` in
|
||||||
|
sparc) echo sparc-icl-nx7 && exit 0 ;;
|
||||||
|
esac ;;
|
||||||
sun4H:SunOS:5.*:*)
|
sun4H:SunOS:5.*:*)
|
||||||
echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
|
echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
@@ -319,7 +359,7 @@ EOF
|
|||||||
echo m68k-sun-sunos${UNAME_RELEASE}
|
echo m68k-sun-sunos${UNAME_RELEASE}
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
sun*:*:4.2BSD:*)
|
sun*:*:4.2BSD:*)
|
||||||
UNAME_RELEASE=`(head -1 /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
|
UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
|
||||||
test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
|
test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
|
||||||
case "`/bin/arch`" in
|
case "`/bin/arch`" in
|
||||||
sun3)
|
sun3)
|
||||||
@@ -333,12 +373,6 @@ EOF
|
|||||||
aushp:SunOS:*:*)
|
aushp:SunOS:*:*)
|
||||||
echo sparc-auspex-sunos${UNAME_RELEASE}
|
echo sparc-auspex-sunos${UNAME_RELEASE}
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
sparc*:NetBSD:*)
|
|
||||||
echo `uname -p`-unknown-netbsd${UNAME_RELEASE}
|
|
||||||
exit 0 ;;
|
|
||||||
atari*:OpenBSD:*:*)
|
|
||||||
echo m68k-unknown-openbsd${UNAME_RELEASE}
|
|
||||||
exit 0 ;;
|
|
||||||
# The situation for MiNT is a little confusing. The machine name
|
# The situation for MiNT is a little confusing. The machine name
|
||||||
# can be virtually everything (everything which is not
|
# can be virtually everything (everything which is not
|
||||||
# "atarist" or "atariste" at least should have a processor
|
# "atarist" or "atariste" at least should have a processor
|
||||||
@@ -365,18 +399,6 @@ EOF
|
|||||||
*:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
|
*:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
|
||||||
echo m68k-unknown-mint${UNAME_RELEASE}
|
echo m68k-unknown-mint${UNAME_RELEASE}
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
sun3*:OpenBSD:*:*)
|
|
||||||
echo m68k-unknown-openbsd${UNAME_RELEASE}
|
|
||||||
exit 0 ;;
|
|
||||||
mac68k:OpenBSD:*:*)
|
|
||||||
echo m68k-unknown-openbsd${UNAME_RELEASE}
|
|
||||||
exit 0 ;;
|
|
||||||
mvme68k:OpenBSD:*:*)
|
|
||||||
echo m68k-unknown-openbsd${UNAME_RELEASE}
|
|
||||||
exit 0 ;;
|
|
||||||
mvme88k:OpenBSD:*:*)
|
|
||||||
echo m88k-unknown-openbsd${UNAME_RELEASE}
|
|
||||||
exit 0 ;;
|
|
||||||
powerpc:machten:*:*)
|
powerpc:machten:*:*)
|
||||||
echo powerpc-apple-machten${UNAME_RELEASE}
|
echo powerpc-apple-machten${UNAME_RELEASE}
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
@@ -415,15 +437,21 @@ EOF
|
|||||||
exit (-1);
|
exit (-1);
|
||||||
}
|
}
|
||||||
EOF
|
EOF
|
||||||
$CC_FOR_BUILD $dummy.c -o $dummy \
|
$CC_FOR_BUILD -o $dummy $dummy.c \
|
||||||
&& ./$dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
|
&& $dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
|
||||||
&& rm -f $dummy.c $dummy && exit 0
|
&& rm -f $dummy.c $dummy && rmdir $tmpdir && exit 0
|
||||||
rm -f $dummy.c $dummy
|
rm -f $dummy.c $dummy && rmdir $tmpdir
|
||||||
echo mips-mips-riscos${UNAME_RELEASE}
|
echo mips-mips-riscos${UNAME_RELEASE}
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
Motorola:PowerMAX_OS:*:*)
|
Motorola:PowerMAX_OS:*:*)
|
||||||
echo powerpc-motorola-powermax
|
echo powerpc-motorola-powermax
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
|
Motorola:*:4.3:PL8-*)
|
||||||
|
echo powerpc-harris-powermax
|
||||||
|
exit 0 ;;
|
||||||
|
Night_Hawk:*:*:PowerMAX_OS)
|
||||||
|
echo powerpc-harris-powermax
|
||||||
|
exit 0 ;;
|
||||||
Night_Hawk:Power_UNIX:*:*)
|
Night_Hawk:Power_UNIX:*:*)
|
||||||
echo powerpc-harris-powerunix
|
echo powerpc-harris-powerunix
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
@@ -496,8 +524,8 @@ EOF
|
|||||||
exit(0);
|
exit(0);
|
||||||
}
|
}
|
||||||
EOF
|
EOF
|
||||||
$CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm -f $dummy.c $dummy && exit 0
|
$CC_FOR_BUILD -o $dummy $dummy.c && $dummy && rm -f $dummy.c $dummy && rmdir $tmpdir && exit 0
|
||||||
rm -f $dummy.c $dummy
|
rm -f $dummy.c $dummy && rmdir $tmpdir
|
||||||
echo rs6000-ibm-aix3.2.5
|
echo rs6000-ibm-aix3.2.5
|
||||||
elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
|
elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
|
||||||
echo rs6000-ibm-aix3.2.4
|
echo rs6000-ibm-aix3.2.4
|
||||||
@@ -506,7 +534,7 @@ EOF
|
|||||||
fi
|
fi
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
*:AIX:*:[45])
|
*:AIX:*:[45])
|
||||||
IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | head -1 | awk '{ print $1 }'`
|
IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
|
||||||
if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
|
if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
|
||||||
IBM_ARCH=rs6000
|
IBM_ARCH=rs6000
|
||||||
else
|
else
|
||||||
@@ -546,8 +574,6 @@ EOF
|
|||||||
9000/31? ) HP_ARCH=m68000 ;;
|
9000/31? ) HP_ARCH=m68000 ;;
|
||||||
9000/[34]?? ) HP_ARCH=m68k ;;
|
9000/[34]?? ) HP_ARCH=m68k ;;
|
||||||
9000/[678][0-9][0-9])
|
9000/[678][0-9][0-9])
|
||||||
case "${HPUX_REV}" in
|
|
||||||
11.[0-9][0-9])
|
|
||||||
if [ -x /usr/bin/getconf ]; then
|
if [ -x /usr/bin/getconf ]; then
|
||||||
sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
|
sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
|
||||||
sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
|
sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
|
||||||
@@ -558,10 +584,10 @@ EOF
|
|||||||
case "${sc_kernel_bits}" in
|
case "${sc_kernel_bits}" in
|
||||||
32) HP_ARCH="hppa2.0n" ;;
|
32) HP_ARCH="hppa2.0n" ;;
|
||||||
64) HP_ARCH="hppa2.0w" ;;
|
64) HP_ARCH="hppa2.0w" ;;
|
||||||
|
'') HP_ARCH="hppa2.0" ;; # HP-UX 10.20
|
||||||
esac ;;
|
esac ;;
|
||||||
esac
|
esac
|
||||||
fi ;;
|
fi
|
||||||
esac
|
|
||||||
if [ "${HP_ARCH}" = "" ]; then
|
if [ "${HP_ARCH}" = "" ]; then
|
||||||
eval $set_cc_for_build
|
eval $set_cc_for_build
|
||||||
sed 's/^ //' << EOF >$dummy.c
|
sed 's/^ //' << EOF >$dummy.c
|
||||||
@@ -597,9 +623,9 @@ EOF
|
|||||||
exit (0);
|
exit (0);
|
||||||
}
|
}
|
||||||
EOF
|
EOF
|
||||||
(CCOPTS= $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null ) && HP_ARCH=`./$dummy`
|
(CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
|
||||||
if test -z "$HP_ARCH"; then HP_ARCH=hppa; fi
|
if test -z "$HP_ARCH"; then HP_ARCH=hppa; fi
|
||||||
rm -f $dummy.c $dummy
|
rm -f $dummy.c $dummy && rmdir $tmpdir
|
||||||
fi ;;
|
fi ;;
|
||||||
esac
|
esac
|
||||||
echo ${HP_ARCH}-hp-hpux${HPUX_REV}
|
echo ${HP_ARCH}-hp-hpux${HPUX_REV}
|
||||||
@@ -635,8 +661,8 @@ EOF
|
|||||||
exit (0);
|
exit (0);
|
||||||
}
|
}
|
||||||
EOF
|
EOF
|
||||||
$CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm -f $dummy.c $dummy && exit 0
|
$CC_FOR_BUILD -o $dummy $dummy.c && $dummy && rm -f $dummy.c $dummy && rmdir $tmpdir && exit 0
|
||||||
rm -f $dummy.c $dummy
|
rm -f $dummy.c $dummy && rmdir $tmpdir
|
||||||
echo unknown-hitachi-hiuxwe2
|
echo unknown-hitachi-hiuxwe2
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
|
9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
|
||||||
@@ -664,9 +690,6 @@ EOF
|
|||||||
parisc*:Lites*:*:*)
|
parisc*:Lites*:*:*)
|
||||||
echo hppa1.1-hp-lites
|
echo hppa1.1-hp-lites
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
hppa*:OpenBSD:*:*)
|
|
||||||
echo hppa-unknown-openbsd
|
|
||||||
exit 0 ;;
|
|
||||||
C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
|
C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
|
||||||
echo c1-convex-bsd
|
echo c1-convex-bsd
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
@@ -685,9 +708,6 @@ EOF
|
|||||||
C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
|
C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
|
||||||
echo c4-convex-bsd
|
echo c4-convex-bsd
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
CRAY*X-MP:*:*:*)
|
|
||||||
echo xmp-cray-unicos
|
|
||||||
exit 0 ;;
|
|
||||||
CRAY*Y-MP:*:*:*)
|
CRAY*Y-MP:*:*:*)
|
||||||
echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
|
echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
@@ -709,18 +729,12 @@ EOF
|
|||||||
CRAY*SV1:*:*:*)
|
CRAY*SV1:*:*:*)
|
||||||
echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
|
echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
CRAY-2:*:*:*)
|
|
||||||
echo cray2-cray-unicos
|
|
||||||
exit 0 ;;
|
|
||||||
F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
|
F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
|
||||||
FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
|
FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
|
||||||
FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
|
FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
|
||||||
FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
|
FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
|
||||||
echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
|
echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
hp300:OpenBSD:*:*)
|
|
||||||
echo m68k-unknown-openbsd${UNAME_RELEASE}
|
|
||||||
exit 0 ;;
|
|
||||||
i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
|
i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
|
||||||
echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
|
echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
@@ -731,10 +745,19 @@ EOF
|
|||||||
echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
|
echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
*:FreeBSD:*:*)
|
*:FreeBSD:*:*)
|
||||||
echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
|
# Determine whether the default compiler uses glibc.
|
||||||
exit 0 ;;
|
eval $set_cc_for_build
|
||||||
*:OpenBSD:*:*)
|
sed 's/^ //' << EOF >$dummy.c
|
||||||
echo ${UNAME_MACHINE}-unknown-openbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
|
#include <features.h>
|
||||||
|
#if __GLIBC__ >= 2
|
||||||
|
LIBC=gnu
|
||||||
|
#else
|
||||||
|
LIBC=
|
||||||
|
#endif
|
||||||
|
EOF
|
||||||
|
eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
|
||||||
|
rm -f $dummy.c && rmdir $tmpdir
|
||||||
|
echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`${LIBC:+-$LIBC}
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
i*:CYGWIN*:*)
|
i*:CYGWIN*:*)
|
||||||
echo ${UNAME_MACHINE}-pc-cygwin
|
echo ${UNAME_MACHINE}-pc-cygwin
|
||||||
@@ -745,6 +768,9 @@ EOF
|
|||||||
i*:PW*:*)
|
i*:PW*:*)
|
||||||
echo ${UNAME_MACHINE}-pc-pw32
|
echo ${UNAME_MACHINE}-pc-pw32
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
|
x86:Interix*:3*)
|
||||||
|
echo i386-pc-interix3
|
||||||
|
exit 0 ;;
|
||||||
i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
|
i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
|
||||||
# How do we know it's Interix rather than the generic POSIX subsystem?
|
# How do we know it's Interix rather than the generic POSIX subsystem?
|
||||||
# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
|
# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
|
||||||
@@ -770,16 +796,30 @@ EOF
|
|||||||
echo ${UNAME_MACHINE}-unknown-linux-gnu
|
echo ${UNAME_MACHINE}-unknown-linux-gnu
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
ia64:Linux:*:*)
|
ia64:Linux:*:*)
|
||||||
echo ${UNAME_MACHINE}-unknown-linux
|
echo ${UNAME_MACHINE}-unknown-linux-gnu
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
m68*:Linux:*:*)
|
m68*:Linux:*:*)
|
||||||
echo ${UNAME_MACHINE}-unknown-linux-gnu
|
echo ${UNAME_MACHINE}-unknown-linux-gnu
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
mips:Linux:*:*)
|
mips:Linux:*:*)
|
||||||
case `sed -n '/^byte/s/^.*: \(.*\) endian/\1/p' < /proc/cpuinfo` in
|
eval $set_cc_for_build
|
||||||
big) echo mips-unknown-linux-gnu && exit 0 ;;
|
sed 's/^ //' << EOF >$dummy.c
|
||||||
little) echo mipsel-unknown-linux-gnu && exit 0 ;;
|
#undef CPU
|
||||||
esac
|
#undef mips
|
||||||
|
#undef mipsel
|
||||||
|
#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
|
||||||
|
CPU=mipsel
|
||||||
|
#else
|
||||||
|
#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
|
||||||
|
CPU=mips
|
||||||
|
#else
|
||||||
|
CPU=
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
EOF
|
||||||
|
eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
|
||||||
|
rm -f $dummy.c && rmdir $tmpdir
|
||||||
|
test x"${CPU}" != x && echo "${CPU}-pc-linux-gnu" && exit 0
|
||||||
;;
|
;;
|
||||||
ppc:Linux:*:*)
|
ppc:Linux:*:*)
|
||||||
echo powerpc-unknown-linux-gnu
|
echo powerpc-unknown-linux-gnu
|
||||||
@@ -828,7 +868,8 @@ EOF
|
|||||||
# The BFD linker knows what the default object file format is, so
|
# The BFD linker knows what the default object file format is, so
|
||||||
# first see if it will tell us. cd to the root directory to prevent
|
# first see if it will tell us. cd to the root directory to prevent
|
||||||
# problems with other programs or directories called `ld' in the path.
|
# problems with other programs or directories called `ld' in the path.
|
||||||
ld_supported_targets=`cd /; ld --help 2>&1 \
|
# Set LC_ALL=C to ensure ld outputs messages in English.
|
||||||
|
ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
|
||||||
| sed -ne '/supported targets:/!d
|
| sed -ne '/supported targets:/!d
|
||||||
s/[ ][ ]*/ /g
|
s/[ ][ ]*/ /g
|
||||||
s/.*supported targets: *//
|
s/.*supported targets: *//
|
||||||
@@ -852,32 +893,29 @@ EOF
|
|||||||
esac
|
esac
|
||||||
# Determine whether the default compiler is a.out or elf
|
# Determine whether the default compiler is a.out or elf
|
||||||
eval $set_cc_for_build
|
eval $set_cc_for_build
|
||||||
cat >$dummy.c <<EOF
|
sed 's/^ //' << EOF >$dummy.c
|
||||||
#include <features.h>
|
#include <features.h>
|
||||||
#ifdef __cplusplus
|
|
||||||
#include <stdio.h> /* for printf() prototype */
|
|
||||||
int main (int argc, char *argv[]) {
|
|
||||||
#else
|
|
||||||
int main (argc, argv) int argc; char *argv[]; {
|
|
||||||
#endif
|
|
||||||
#ifdef __ELF__
|
#ifdef __ELF__
|
||||||
# ifdef __GLIBC__
|
# ifdef __GLIBC__
|
||||||
# if __GLIBC__ >= 2
|
# if __GLIBC__ >= 2
|
||||||
printf ("%s-pc-linux-gnu\n", argv[1]);
|
LIBC=gnu
|
||||||
# else
|
# else
|
||||||
printf ("%s-pc-linux-gnulibc1\n", argv[1]);
|
LIBC=gnulibc1
|
||||||
# endif
|
# endif
|
||||||
# else
|
# else
|
||||||
printf ("%s-pc-linux-gnulibc1\n", argv[1]);
|
LIBC=gnulibc1
|
||||||
# endif
|
# endif
|
||||||
#else
|
#else
|
||||||
printf ("%s-pc-linux-gnuaout\n", argv[1]);
|
#ifdef __INTEL_COMPILER
|
||||||
|
LIBC=gnu
|
||||||
|
#else
|
||||||
|
LIBC=gnuaout
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
EOF
|
EOF
|
||||||
$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm -f $dummy.c $dummy && exit 0
|
eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
|
||||||
rm -f $dummy.c $dummy
|
rm -f $dummy.c && rmdir $tmpdir
|
||||||
|
test x"${LIBC}" != x && echo "${UNAME_MACHINE}-pc-linux-${LIBC}" && exit 0
|
||||||
test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0
|
test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0
|
||||||
;;
|
;;
|
||||||
i*86:DYNIX/ptx:4*:*)
|
i*86:DYNIX/ptx:4*:*)
|
||||||
@@ -915,13 +953,13 @@ EOF
|
|||||||
UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
|
UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
|
||||||
echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
|
echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
|
||||||
elif /bin/uname -X 2>/dev/null >/dev/null ; then
|
elif /bin/uname -X 2>/dev/null >/dev/null ; then
|
||||||
UNAME_REL=`(/bin/uname -X|egrep Release|sed -e 's/.*= //')`
|
UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
|
||||||
(/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486
|
(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
|
||||||
(/bin/uname -X|egrep '^Machine.*Pentium' >/dev/null) \
|
(/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
|
||||||
&& UNAME_MACHINE=i586
|
&& UNAME_MACHINE=i586
|
||||||
(/bin/uname -X|egrep '^Machine.*Pent ?II' >/dev/null) \
|
(/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
|
||||||
&& UNAME_MACHINE=i686
|
&& UNAME_MACHINE=i686
|
||||||
(/bin/uname -X|egrep '^Machine.*Pentium Pro' >/dev/null) \
|
(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
|
||||||
&& UNAME_MACHINE=i686
|
&& UNAME_MACHINE=i686
|
||||||
echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
|
echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
|
||||||
else
|
else
|
||||||
@@ -954,9 +992,12 @@ EOF
|
|||||||
# "miniframe"
|
# "miniframe"
|
||||||
echo m68010-convergent-sysv
|
echo m68010-convergent-sysv
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
|
mc68k:UNIX:SYSTEM5:3.51m)
|
||||||
|
echo m68k-convergent-sysv
|
||||||
|
exit 0 ;;
|
||||||
M68*:*:R3V[567]*:*)
|
M68*:*:R3V[567]*:*)
|
||||||
test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;;
|
test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;;
|
||||||
3[34]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 4850:*:4.0:3.0)
|
3[34]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0)
|
||||||
OS_REL=''
|
OS_REL=''
|
||||||
test -r /etc/.relid \
|
test -r /etc/.relid \
|
||||||
&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
|
&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
|
||||||
@@ -1047,6 +1088,9 @@ EOF
|
|||||||
SX-5:SUPER-UX:*:*)
|
SX-5:SUPER-UX:*:*)
|
||||||
echo sx5-nec-superux${UNAME_RELEASE}
|
echo sx5-nec-superux${UNAME_RELEASE}
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
|
SX-6:SUPER-UX:*:*)
|
||||||
|
echo sx6-nec-superux${UNAME_RELEASE}
|
||||||
|
exit 0 ;;
|
||||||
Power*:Rhapsody:*:*)
|
Power*:Rhapsody:*:*)
|
||||||
echo powerpc-apple-rhapsody${UNAME_RELEASE}
|
echo powerpc-apple-rhapsody${UNAME_RELEASE}
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
@@ -1057,15 +1101,17 @@ EOF
|
|||||||
echo `uname -p`-apple-darwin${UNAME_RELEASE}
|
echo `uname -p`-apple-darwin${UNAME_RELEASE}
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
*:procnto*:*:* | *:QNX:[0123456789]*:*)
|
*:procnto*:*:* | *:QNX:[0123456789]*:*)
|
||||||
if test "${UNAME_MACHINE}" = "x86pc"; then
|
UNAME_PROCESSOR=`uname -p`
|
||||||
|
if test "$UNAME_PROCESSOR" = "x86"; then
|
||||||
|
UNAME_PROCESSOR=i386
|
||||||
UNAME_MACHINE=pc
|
UNAME_MACHINE=pc
|
||||||
fi
|
fi
|
||||||
echo `uname -p`-${UNAME_MACHINE}-nto-qnx
|
echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
*:QNX:*:4*)
|
*:QNX:*:4*)
|
||||||
echo i386-pc-qnx
|
echo i386-pc-qnx
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
NSR-[KW]:NONSTOP_KERNEL:*:*)
|
NSR-[DGKLNPTVW]:NONSTOP_KERNEL:*:*)
|
||||||
echo nsr-tandem-nsk${UNAME_RELEASE}
|
echo nsr-tandem-nsk${UNAME_RELEASE}
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
*:NonStop-UX:*:*)
|
*:NonStop-UX:*:*)
|
||||||
@@ -1237,8 +1283,8 @@ main ()
|
|||||||
}
|
}
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy && rm -f $dummy.c $dummy && exit 0
|
$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && $dummy && rm -f $dummy.c $dummy && rmdir $tmpdir && exit 0
|
||||||
rm -f $dummy.c $dummy
|
rm -f $dummy.c $dummy && rmdir $tmpdir
|
||||||
|
|
||||||
# Apollos put the system type in the environment.
|
# Apollos put the system type in the environment.
|
||||||
|
|
||||||
|
219
config.sub
vendored
219
config.sub
vendored
@@ -1,9 +1,9 @@
|
|||||||
#! /bin/sh
|
#! /bin/sh
|
||||||
# Configuration validation subroutine script.
|
# Configuration validation subroutine script.
|
||||||
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
|
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
|
||||||
# Free Software Foundation, Inc.
|
# 2000, 2001, 2002 Free Software Foundation, Inc.
|
||||||
|
|
||||||
timestamp='2001-09-07'
|
timestamp='2002-09-05'
|
||||||
|
|
||||||
# This file is (in principle) common to ALL GNU software.
|
# This file is (in principle) common to ALL GNU software.
|
||||||
# The presence of a machine in this file suggests that SOME GNU software
|
# The presence of a machine in this file suggests that SOME GNU software
|
||||||
@@ -29,7 +29,8 @@ timestamp='2001-09-07'
|
|||||||
# configuration script generated by Autoconf, you may include it under
|
# configuration script generated by Autoconf, you may include it under
|
||||||
# the same distribution terms that you use for the rest of that program.
|
# the same distribution terms that you use for the rest of that program.
|
||||||
|
|
||||||
# Please send patches to <config-patches@gnu.org>.
|
# Please send patches to <config-patches@gnu.org>. Submit a context
|
||||||
|
# diff and a properly formatted ChangeLog entry.
|
||||||
#
|
#
|
||||||
# Configuration subroutine to validate and canonicalize a configuration type.
|
# Configuration subroutine to validate and canonicalize a configuration type.
|
||||||
# Supply the specified configuration type as an argument.
|
# Supply the specified configuration type as an argument.
|
||||||
@@ -117,7 +118,7 @@ esac
|
|||||||
# Here we must recognize all the valid KERNEL-OS combinations.
|
# Here we must recognize all the valid KERNEL-OS combinations.
|
||||||
maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
|
maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
|
||||||
case $maybe_os in
|
case $maybe_os in
|
||||||
nto-qnx* | linux-gnu* | storm-chaos* | os2-emx* | windows32-*)
|
nto-qnx* | linux-gnu* | freebsd*-gnu* | storm-chaos* | os2-emx* | windows32-* | rtmk-nova*)
|
||||||
os=-$maybe_os
|
os=-$maybe_os
|
||||||
basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
|
basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
|
||||||
;;
|
;;
|
||||||
@@ -226,32 +227,42 @@ case $basic_machine in
|
|||||||
1750a | 580 \
|
1750a | 580 \
|
||||||
| a29k \
|
| a29k \
|
||||||
| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
|
| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
|
||||||
|
| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
|
||||||
| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \
|
| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \
|
||||||
| c4x | clipper \
|
| clipper \
|
||||||
| d10v | d30v | dsp16xx \
|
| d10v | d30v | dlx | dsp16xx \
|
||||||
| fr30 \
|
| fr30 | frv \
|
||||||
| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
|
| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
|
||||||
| i370 | i860 | i960 | ia64 \
|
| i370 | i860 | i960 | ia64 \
|
||||||
|
| ip2k \
|
||||||
| m32r | m68000 | m68k | m88k | mcore \
|
| m32r | m68000 | m68k | m88k | mcore \
|
||||||
| mips16 | mips64 | mips64el | mips64orion | mips64orionel \
|
| mips | mipsbe | mipseb | mipsel | mipsle \
|
||||||
| mips64vr4100 | mips64vr4100el | mips64vr4300 \
|
| mips16 \
|
||||||
| mips64vr4300el | mips64vr5000 | mips64vr5000el \
|
| mips64 | mips64el \
|
||||||
| mipsbe | mipseb | mipsel | mipsle | mipstx39 | mipstx39el \
|
| mips64vr | mips64vrel \
|
||||||
| mipsisa32 \
|
| mips64orion | mips64orionel \
|
||||||
|
| mips64vr4100 | mips64vr4100el \
|
||||||
|
| mips64vr4300 | mips64vr4300el \
|
||||||
|
| mips64vr5000 | mips64vr5000el \
|
||||||
|
| mipsisa32 | mipsisa32el \
|
||||||
|
| mipsisa64 | mipsisa64el \
|
||||||
|
| mipsisa64sb1 | mipsisa64sb1el \
|
||||||
|
| mipsisa64sr71k | mipsisa64sr71kel \
|
||||||
|
| mipstx39 | mipstx39el \
|
||||||
| mn10200 | mn10300 \
|
| mn10200 | mn10300 \
|
||||||
| ns16k | ns32k \
|
| ns16k | ns32k \
|
||||||
| openrisc \
|
| openrisc | or32 \
|
||||||
| pdp10 | pdp11 | pj | pjl \
|
| pdp10 | pdp11 | pj | pjl \
|
||||||
| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
|
| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
|
||||||
| pyramid \
|
| pyramid \
|
||||||
| s390 | s390x \
|
| sh | sh[1234] | sh3e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \
|
||||||
| sh | sh[34] | sh[34]eb | shbe | shle \
|
| sh64 | sh64le \
|
||||||
| sparc | sparc64 | sparclet | sparclite | sparcv9 | sparcv9b \
|
| sparc | sparc64 | sparc86x | sparclet | sparclite | sparcv9 | sparcv9b \
|
||||||
| stormy16 | strongarm \
|
| strongarm \
|
||||||
| tahoe | thumb | tic80 | tron \
|
| tahoe | thumb | tic80 | tron \
|
||||||
| v850 \
|
| v850 | v850e \
|
||||||
| we32k \
|
| we32k \
|
||||||
| x86 | xscale \
|
| x86 | xscale | xstormy16 | xtensa \
|
||||||
| z8k)
|
| z8k)
|
||||||
basic_machine=$basic_machine-unknown
|
basic_machine=$basic_machine-unknown
|
||||||
;;
|
;;
|
||||||
@@ -278,38 +289,51 @@ case $basic_machine in
|
|||||||
580-* \
|
580-* \
|
||||||
| a29k-* \
|
| a29k-* \
|
||||||
| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
|
| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
|
||||||
| alphapca5[67]-* | arc-* \
|
| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
|
||||||
| arm-* | armbe-* | armle-* | armv*-* \
|
| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
|
||||||
|
| arm-* | armbe-* | armle-* | armeb-* | armv*-* \
|
||||||
|
| avr-* \
|
||||||
| bs2000-* \
|
| bs2000-* \
|
||||||
| c[123]* | c30-* | [cjt]90-* | c54x-* \
|
| c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* \
|
||||||
| clipper-* | cray2-* | cydra-* \
|
| clipper-* | cydra-* \
|
||||||
| d10v-* | d30v-* \
|
| d10v-* | d30v-* | dlx-* \
|
||||||
| elxsi-* \
|
| elxsi-* \
|
||||||
| f30[01]-* | f700-* | fr30-* | fx80-* \
|
| f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \
|
||||||
| h8300-* | h8500-* \
|
| h8300-* | h8500-* \
|
||||||
| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
|
| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
|
||||||
| i*86-* | i860-* | i960-* | ia64-* \
|
| i*86-* | i860-* | i960-* | ia64-* \
|
||||||
|
| ip2k-* \
|
||||||
| m32r-* \
|
| m32r-* \
|
||||||
| m68000-* | m680[01234]0-* | m68360-* | m683?2-* | m68k-* \
|
| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
|
||||||
| m88110-* | m88k-* | mcore-* \
|
| m88110-* | m88k-* | mcore-* \
|
||||||
| mips-* | mips16-* | mips64-* | mips64el-* | mips64orion-* \
|
| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
|
||||||
| mips64orionel-* | mips64vr4100-* | mips64vr4100el-* \
|
| mips16-* \
|
||||||
| mips64vr4300-* | mips64vr4300el-* | mipsbe-* | mipseb-* \
|
| mips64-* | mips64el-* \
|
||||||
| mipsle-* | mipsel-* | mipstx39-* | mipstx39el-* \
|
| mips64vr-* | mips64vrel-* \
|
||||||
|
| mips64orion-* | mips64orionel-* \
|
||||||
|
| mips64vr4100-* | mips64vr4100el-* \
|
||||||
|
| mips64vr4300-* | mips64vr4300el-* \
|
||||||
|
| mips64vr5000-* | mips64vr5000el-* \
|
||||||
|
| mipsisa32-* | mipsisa32el-* \
|
||||||
|
| mipsisa64-* | mipsisa64el-* \
|
||||||
|
| mipsisa64sb1-* | mipsisa64sb1el-* \
|
||||||
|
| mipsisa64sr71k-* | mipsisa64sr71kel-* \
|
||||||
|
| mipstx39 | mipstx39el \
|
||||||
| none-* | np1-* | ns16k-* | ns32k-* \
|
| none-* | np1-* | ns16k-* | ns32k-* \
|
||||||
| orion-* \
|
| orion-* \
|
||||||
| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
|
| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
|
||||||
| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
|
| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
|
||||||
| pyramid-* \
|
| pyramid-* \
|
||||||
| romp-* | rs6000-* \
|
| romp-* | rs6000-* \
|
||||||
| s390-* | s390x-* \
|
| sh-* | sh[1234]-* | sh3e-* | sh[34]eb-* | shbe-* \
|
||||||
| sh-* | sh[34]-* | sh[34]eb-* | shbe-* | shle-* \
|
| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
|
||||||
| sparc-* | sparc64-* | sparc86x-* | sparclite-* \
|
| sparc-* | sparc64-* | sparc86x-* | sparclet-* | sparclite-* \
|
||||||
| sparcv9-* | sparcv9b-* | stormy16-* | strongarm-* | sv1-* \
|
| sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \
|
||||||
| t3e-* | tahoe-* | thumb-* | tic30-* | tic54x-* | tic80-* | tron-* \
|
| tahoe-* | thumb-* | tic30-* | tic4x-* | tic54x-* | tic80-* | tron-* \
|
||||||
| v850-* | vax-* \
|
| v850-* | v850e-* | vax-* \
|
||||||
| we32k-* \
|
| we32k-* \
|
||||||
| x86-* | x86_64-* | xmp-* | xps100-* | xscale-* \
|
| x86-* | x86_64-* | xps100-* | xscale-* | xstormy16-* \
|
||||||
|
| xtensa-* \
|
||||||
| ymp-* \
|
| ymp-* \
|
||||||
| z8k-*)
|
| z8k-*)
|
||||||
;;
|
;;
|
||||||
@@ -374,6 +398,10 @@ case $basic_machine in
|
|||||||
basic_machine=ns32k-sequent
|
basic_machine=ns32k-sequent
|
||||||
os=-dynix
|
os=-dynix
|
||||||
;;
|
;;
|
||||||
|
c90)
|
||||||
|
basic_machine=c90-cray
|
||||||
|
os=-unicos
|
||||||
|
;;
|
||||||
convex-c1)
|
convex-c1)
|
||||||
basic_machine=c1-convex
|
basic_machine=c1-convex
|
||||||
os=-bsd
|
os=-bsd
|
||||||
@@ -394,16 +422,8 @@ case $basic_machine in
|
|||||||
basic_machine=c38-convex
|
basic_machine=c38-convex
|
||||||
os=-bsd
|
os=-bsd
|
||||||
;;
|
;;
|
||||||
cray | ymp)
|
cray | j90)
|
||||||
basic_machine=ymp-cray
|
basic_machine=j90-cray
|
||||||
os=-unicos
|
|
||||||
;;
|
|
||||||
cray2)
|
|
||||||
basic_machine=cray2-cray
|
|
||||||
os=-unicos
|
|
||||||
;;
|
|
||||||
[cjt]90)
|
|
||||||
basic_machine=${basic_machine}-cray
|
|
||||||
os=-unicos
|
os=-unicos
|
||||||
;;
|
;;
|
||||||
crds | unos)
|
crds | unos)
|
||||||
@@ -418,6 +438,14 @@ case $basic_machine in
|
|||||||
decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
|
decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
|
||||||
basic_machine=mips-dec
|
basic_machine=mips-dec
|
||||||
;;
|
;;
|
||||||
|
decsystem10* | dec10*)
|
||||||
|
basic_machine=pdp10-dec
|
||||||
|
os=-tops10
|
||||||
|
;;
|
||||||
|
decsystem20* | dec20*)
|
||||||
|
basic_machine=pdp10-dec
|
||||||
|
os=-tops20
|
||||||
|
;;
|
||||||
delta | 3300 | motorola-3300 | motorola-delta \
|
delta | 3300 | motorola-3300 | motorola-delta \
|
||||||
| 3300-motorola | delta-motorola)
|
| 3300-motorola | delta-motorola)
|
||||||
basic_machine=m68k-motorola
|
basic_machine=m68k-motorola
|
||||||
@@ -598,14 +626,6 @@ case $basic_machine in
|
|||||||
basic_machine=m68k-atari
|
basic_machine=m68k-atari
|
||||||
os=-mint
|
os=-mint
|
||||||
;;
|
;;
|
||||||
mipsel*-linux*)
|
|
||||||
basic_machine=mipsel-unknown
|
|
||||||
os=-linux-gnu
|
|
||||||
;;
|
|
||||||
mips*-linux*)
|
|
||||||
basic_machine=mips-unknown
|
|
||||||
os=-linux-gnu
|
|
||||||
;;
|
|
||||||
mips3*-*)
|
mips3*-*)
|
||||||
basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
|
basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
|
||||||
;;
|
;;
|
||||||
@@ -620,6 +640,10 @@ case $basic_machine in
|
|||||||
basic_machine=m68k-rom68k
|
basic_machine=m68k-rom68k
|
||||||
os=-coff
|
os=-coff
|
||||||
;;
|
;;
|
||||||
|
morphos)
|
||||||
|
basic_machine=powerpc-unknown
|
||||||
|
os=-morphos
|
||||||
|
;;
|
||||||
msdos)
|
msdos)
|
||||||
basic_machine=i386-pc
|
basic_machine=i386-pc
|
||||||
os=-msdos
|
os=-msdos
|
||||||
@@ -699,6 +723,10 @@ case $basic_machine in
|
|||||||
basic_machine=hppa1.1-oki
|
basic_machine=hppa1.1-oki
|
||||||
os=-proelf
|
os=-proelf
|
||||||
;;
|
;;
|
||||||
|
or32 | or32-*)
|
||||||
|
basic_machine=or32-unknown
|
||||||
|
os=-coff
|
||||||
|
;;
|
||||||
OSE68000 | ose68000)
|
OSE68000 | ose68000)
|
||||||
basic_machine=m68000-ericsson
|
basic_machine=m68000-ericsson
|
||||||
os=-ose
|
os=-ose
|
||||||
@@ -724,16 +752,16 @@ case $basic_machine in
|
|||||||
pc532 | pc532-*)
|
pc532 | pc532-*)
|
||||||
basic_machine=ns32k-pc532
|
basic_machine=ns32k-pc532
|
||||||
;;
|
;;
|
||||||
pentium | p5 | k5 | k6 | nexgen)
|
pentium | p5 | k5 | k6 | nexgen | viac3)
|
||||||
basic_machine=i586-pc
|
basic_machine=i586-pc
|
||||||
;;
|
;;
|
||||||
pentiumpro | p6 | 6x86 | athlon)
|
pentiumpro | p6 | 6x86 | athlon | athlon_*)
|
||||||
basic_machine=i686-pc
|
basic_machine=i686-pc
|
||||||
;;
|
;;
|
||||||
pentiumii | pentium2)
|
pentiumii | pentium2)
|
||||||
basic_machine=i686-pc
|
basic_machine=i686-pc
|
||||||
;;
|
;;
|
||||||
pentium-* | p5-* | k5-* | k6-* | nexgen-*)
|
pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
|
||||||
basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
|
basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
|
||||||
;;
|
;;
|
||||||
pentiumpro-* | p6-* | 6x86-* | athlon-*)
|
pentiumpro-* | p6-* | 6x86-* | athlon-*)
|
||||||
@@ -784,10 +812,22 @@ case $basic_machine in
|
|||||||
rtpc | rtpc-*)
|
rtpc | rtpc-*)
|
||||||
basic_machine=romp-ibm
|
basic_machine=romp-ibm
|
||||||
;;
|
;;
|
||||||
|
s390 | s390-*)
|
||||||
|
basic_machine=s390-ibm
|
||||||
|
;;
|
||||||
|
s390x | s390x-*)
|
||||||
|
basic_machine=s390x-ibm
|
||||||
|
;;
|
||||||
sa29200)
|
sa29200)
|
||||||
basic_machine=a29k-amd
|
basic_machine=a29k-amd
|
||||||
os=-udi
|
os=-udi
|
||||||
;;
|
;;
|
||||||
|
sb1)
|
||||||
|
basic_machine=mipsisa64sb1-unknown
|
||||||
|
;;
|
||||||
|
sb1el)
|
||||||
|
basic_machine=mipsisa64sb1el-unknown
|
||||||
|
;;
|
||||||
sequent)
|
sequent)
|
||||||
basic_machine=i386-sequent
|
basic_machine=i386-sequent
|
||||||
;;
|
;;
|
||||||
@@ -795,7 +835,7 @@ case $basic_machine in
|
|||||||
basic_machine=sh-hitachi
|
basic_machine=sh-hitachi
|
||||||
os=-hms
|
os=-hms
|
||||||
;;
|
;;
|
||||||
sparclite-wrs)
|
sparclite-wrs | simso-wrs)
|
||||||
basic_machine=sparclite-wrs
|
basic_machine=sparclite-wrs
|
||||||
os=-vxworks
|
os=-vxworks
|
||||||
;;
|
;;
|
||||||
@@ -861,10 +901,22 @@ case $basic_machine in
|
|||||||
basic_machine=i386-sequent
|
basic_machine=i386-sequent
|
||||||
os=-dynix
|
os=-dynix
|
||||||
;;
|
;;
|
||||||
t3e)
|
t3d)
|
||||||
basic_machine=t3e-cray
|
basic_machine=alpha-cray
|
||||||
os=-unicos
|
os=-unicos
|
||||||
;;
|
;;
|
||||||
|
t3e)
|
||||||
|
basic_machine=alphaev5-cray
|
||||||
|
os=-unicos
|
||||||
|
;;
|
||||||
|
t90)
|
||||||
|
basic_machine=t90-cray
|
||||||
|
os=-unicos
|
||||||
|
;;
|
||||||
|
tic4x | c4x*)
|
||||||
|
basic_machine=tic4x-unknown
|
||||||
|
os=-coff
|
||||||
|
;;
|
||||||
tic54x | c54x*)
|
tic54x | c54x*)
|
||||||
basic_machine=tic54x-unknown
|
basic_machine=tic54x-unknown
|
||||||
os=-coff
|
os=-coff
|
||||||
@@ -875,6 +927,10 @@ case $basic_machine in
|
|||||||
tx39el)
|
tx39el)
|
||||||
basic_machine=mipstx39el-unknown
|
basic_machine=mipstx39el-unknown
|
||||||
;;
|
;;
|
||||||
|
toad1)
|
||||||
|
basic_machine=pdp10-xkl
|
||||||
|
os=-tops20
|
||||||
|
;;
|
||||||
tower | tower-32)
|
tower | tower-32)
|
||||||
basic_machine=m68k-ncr
|
basic_machine=m68k-ncr
|
||||||
;;
|
;;
|
||||||
@@ -925,13 +981,13 @@ case $basic_machine in
|
|||||||
basic_machine=i386-pc
|
basic_machine=i386-pc
|
||||||
os=-windows32-msvcrt
|
os=-windows32-msvcrt
|
||||||
;;
|
;;
|
||||||
xmp)
|
|
||||||
basic_machine=xmp-cray
|
|
||||||
os=-unicos
|
|
||||||
;;
|
|
||||||
xps | xps100)
|
xps | xps100)
|
||||||
basic_machine=xps100-honeywell
|
basic_machine=xps100-honeywell
|
||||||
;;
|
;;
|
||||||
|
ymp)
|
||||||
|
basic_machine=ymp-cray
|
||||||
|
os=-unicos
|
||||||
|
;;
|
||||||
z8k-*-coff)
|
z8k-*-coff)
|
||||||
basic_machine=z8k-unknown
|
basic_machine=z8k-unknown
|
||||||
os=-sim
|
os=-sim
|
||||||
@@ -952,13 +1008,6 @@ case $basic_machine in
|
|||||||
op60c)
|
op60c)
|
||||||
basic_machine=hppa1.1-oki
|
basic_machine=hppa1.1-oki
|
||||||
;;
|
;;
|
||||||
mips)
|
|
||||||
if [ x$os = x-linux-gnu ]; then
|
|
||||||
basic_machine=mips-unknown
|
|
||||||
else
|
|
||||||
basic_machine=mips-mips
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
romp)
|
romp)
|
||||||
basic_machine=romp-ibm
|
basic_machine=romp-ibm
|
||||||
;;
|
;;
|
||||||
@@ -978,9 +1027,12 @@ case $basic_machine in
|
|||||||
we32k)
|
we32k)
|
||||||
basic_machine=we32k-att
|
basic_machine=we32k-att
|
||||||
;;
|
;;
|
||||||
sh3 | sh4 | sh3eb | sh4eb)
|
sh3 | sh4 | sh3eb | sh4eb | sh[1234]le | sh3ele)
|
||||||
basic_machine=sh-unknown
|
basic_machine=sh-unknown
|
||||||
;;
|
;;
|
||||||
|
sh64)
|
||||||
|
basic_machine=sh64-unknown
|
||||||
|
;;
|
||||||
sparc | sparcv9 | sparcv9b)
|
sparc | sparcv9 | sparcv9b)
|
||||||
basic_machine=sparc-sun
|
basic_machine=sparc-sun
|
||||||
;;
|
;;
|
||||||
@@ -999,10 +1051,6 @@ case $basic_machine in
|
|||||||
pmac | pmac-mpw)
|
pmac | pmac-mpw)
|
||||||
basic_machine=powerpc-apple
|
basic_machine=powerpc-apple
|
||||||
;;
|
;;
|
||||||
c4x*)
|
|
||||||
basic_machine=c4x-none
|
|
||||||
os=-coff
|
|
||||||
;;
|
|
||||||
*-unknown)
|
*-unknown)
|
||||||
# Make sure to match an already-canonicalized machine name.
|
# Make sure to match an already-canonicalized machine name.
|
||||||
;;
|
;;
|
||||||
@@ -1068,7 +1116,8 @@ case $os in
|
|||||||
| -interix* | -uwin* | -rhapsody* | -darwin* | -opened* \
|
| -interix* | -uwin* | -rhapsody* | -darwin* | -opened* \
|
||||||
| -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
|
| -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
|
||||||
| -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
|
| -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
|
||||||
| -os2* | -vos*)
|
| -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
|
||||||
|
| -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* | -powermax*)
|
||||||
# Remember, each alternative MUST END IN *, to match a version number.
|
# Remember, each alternative MUST END IN *, to match a version number.
|
||||||
;;
|
;;
|
||||||
-qnx*)
|
-qnx*)
|
||||||
@@ -1120,12 +1169,18 @@ case $os in
|
|||||||
-acis*)
|
-acis*)
|
||||||
os=-aos
|
os=-aos
|
||||||
;;
|
;;
|
||||||
|
-atheos*)
|
||||||
|
os=-atheos
|
||||||
|
;;
|
||||||
-386bsd)
|
-386bsd)
|
||||||
os=-bsd
|
os=-bsd
|
||||||
;;
|
;;
|
||||||
-ctix* | -uts*)
|
-ctix* | -uts*)
|
||||||
os=-sysv
|
os=-sysv
|
||||||
;;
|
;;
|
||||||
|
-nova*)
|
||||||
|
os=-rtmk-nova
|
||||||
|
;;
|
||||||
-ns2 )
|
-ns2 )
|
||||||
os=-nextstep2
|
os=-nextstep2
|
||||||
;;
|
;;
|
||||||
@@ -1200,6 +1255,7 @@ case $basic_machine in
|
|||||||
arm*-semi)
|
arm*-semi)
|
||||||
os=-aout
|
os=-aout
|
||||||
;;
|
;;
|
||||||
|
# This must come before the *-dec entry.
|
||||||
pdp10-*)
|
pdp10-*)
|
||||||
os=-tops20
|
os=-tops20
|
||||||
;;
|
;;
|
||||||
@@ -1230,6 +1286,9 @@ case $basic_machine in
|
|||||||
mips*-*)
|
mips*-*)
|
||||||
os=-elf
|
os=-elf
|
||||||
;;
|
;;
|
||||||
|
or32-*)
|
||||||
|
os=-coff
|
||||||
|
;;
|
||||||
*-tti) # must be before sparc entry or we get the wrong os.
|
*-tti) # must be before sparc entry or we get the wrong os.
|
||||||
os=-sysv3
|
os=-sysv3
|
||||||
;;
|
;;
|
||||||
@@ -1377,7 +1436,7 @@ case $basic_machine in
|
|||||||
-ptx*)
|
-ptx*)
|
||||||
vendor=sequent
|
vendor=sequent
|
||||||
;;
|
;;
|
||||||
-vxsim* | -vxworks*)
|
-vxsim* | -vxworks* | -windiss*)
|
||||||
vendor=wrs
|
vendor=wrs
|
||||||
;;
|
;;
|
||||||
-aux*)
|
-aux*)
|
||||||
|
@@ -5,19 +5,30 @@ dnl Ensure that this file is processed with autoconf 2.50 or newer
|
|||||||
dnl Don't even think about removing this check!
|
dnl Don't even think about removing this check!
|
||||||
AC_PREREQ(2.50)
|
AC_PREREQ(2.50)
|
||||||
|
|
||||||
dnl First some basic init macros
|
dnl We don't know the version number "staticly" so we use a dash here
|
||||||
AC_INIT
|
AC_INIT(curl, [-], [curl-bug@haxx.se])
|
||||||
|
|
||||||
|
dnl configure script copyright
|
||||||
|
AC_COPYRIGHT([Copyright (c) 1998 - 2003 Daniel Stenberg, <daniel@haxx.se>
|
||||||
|
This configure script may be copied, distributed and modified under the
|
||||||
|
terms of the curl license; see COPYING for more details])
|
||||||
|
|
||||||
AC_CONFIG_SRCDIR([lib/urldata.h])
|
AC_CONFIG_SRCDIR([lib/urldata.h])
|
||||||
AM_CONFIG_HEADER(lib/config.h src/config.h tests/server/config.h lib/ca-bundle.h)
|
AM_CONFIG_HEADER(lib/config.h src/config.h tests/server/config.h lib/ca-bundle.h)
|
||||||
AM_MAINTAINER_MODE
|
AM_MAINTAINER_MODE
|
||||||
|
|
||||||
|
AC_PATH_PROG( SED, sed, , $PATH:/usr/bin:/usr/local/bin)
|
||||||
|
AC_SUBST(SED)
|
||||||
|
|
||||||
dnl figure out the libcurl version
|
dnl figure out the libcurl version
|
||||||
VERSION=`sed -ne 's/^#define LIBCURL_VERSION "\(.*\)"/\1/p' ${srcdir}/include/curl/curl.h`
|
VERSION=`$SED -ne 's/^#define LIBCURL_VERSION "\(.*\)"/\1/p' ${srcdir}/include/curl/curl.h`
|
||||||
AM_INIT_AUTOMAKE(curl,$VERSION)
|
AM_INIT_AUTOMAKE(curl,$VERSION)
|
||||||
|
AC_MSG_CHECKING([curl version])
|
||||||
|
AC_MSG_RESULT($VERSION)
|
||||||
|
|
||||||
dnl
|
dnl
|
||||||
dnl we extract the numerical version for curl-config only
|
dnl we extract the numerical version for curl-config only
|
||||||
VERSIONNUM=`sed -ne 's/^#define LIBCURL_VERSION_NUM 0x\(.*\)/\1/p' ${srcdir}/include/curl/curl.h`
|
VERSIONNUM=`$SED -ne 's/^#define LIBCURL_VERSION_NUM 0x\(.*\)/\1/p' ${srcdir}/include/curl/curl.h`
|
||||||
AC_SUBST(VERSIONNUM)
|
AC_SUBST(VERSIONNUM)
|
||||||
|
|
||||||
dnl Solaris pkgadd support definitions
|
dnl Solaris pkgadd support definitions
|
||||||
@@ -72,8 +83,8 @@ dnl switch off particular protocols
|
|||||||
dnl
|
dnl
|
||||||
AC_MSG_CHECKING([whether to support http])
|
AC_MSG_CHECKING([whether to support http])
|
||||||
AC_ARG_ENABLE(http,
|
AC_ARG_ENABLE(http,
|
||||||
[ --enable-http Enable HTTP support
|
AC_HELP_STRING([--enable-http],[Enable HTTP support])
|
||||||
--disable-http Disable HTTP support],
|
AC_HELP_STRING([--disable-http],[Disable HTTP support]),
|
||||||
[ case "$enableval" in
|
[ case "$enableval" in
|
||||||
no)
|
no)
|
||||||
AC_MSG_RESULT(no)
|
AC_MSG_RESULT(no)
|
||||||
@@ -90,8 +101,8 @@ AC_ARG_ENABLE(http,
|
|||||||
)
|
)
|
||||||
AC_MSG_CHECKING([whether to support ftp])
|
AC_MSG_CHECKING([whether to support ftp])
|
||||||
AC_ARG_ENABLE(ftp,
|
AC_ARG_ENABLE(ftp,
|
||||||
[ --enable-ftp Enable FTP support
|
AC_HELP_STRING([--enable-ftp],[Enable FTP support])
|
||||||
--disable-ftp Disable FTP support],
|
AC_HELP_STRING([--disable-ftp],[Disable FTP support]),
|
||||||
[ case "$enableval" in
|
[ case "$enableval" in
|
||||||
no)
|
no)
|
||||||
AC_MSG_RESULT(no)
|
AC_MSG_RESULT(no)
|
||||||
@@ -105,8 +116,8 @@ AC_ARG_ENABLE(ftp,
|
|||||||
)
|
)
|
||||||
AC_MSG_CHECKING([whether to support gopher])
|
AC_MSG_CHECKING([whether to support gopher])
|
||||||
AC_ARG_ENABLE(gopher,
|
AC_ARG_ENABLE(gopher,
|
||||||
[ --enable-gopher Enable GOPHER support
|
AC_HELP_STRING([--enable-gopher],[Enable GOPHER support])
|
||||||
--disable-gopher Disable GOPHER support],
|
AC_HELP_STRING([--disable-gopher],[Disable GOPHER support]),
|
||||||
[ case "$enableval" in
|
[ case "$enableval" in
|
||||||
no)
|
no)
|
||||||
AC_MSG_RESULT(no)
|
AC_MSG_RESULT(no)
|
||||||
@@ -120,8 +131,8 @@ AC_ARG_ENABLE(gopher,
|
|||||||
)
|
)
|
||||||
AC_MSG_CHECKING([whether to support file])
|
AC_MSG_CHECKING([whether to support file])
|
||||||
AC_ARG_ENABLE(file,
|
AC_ARG_ENABLE(file,
|
||||||
[ --enable-file Enable FILE support
|
AC_HELP_STRING([--enable-file],[Enable FILE support])
|
||||||
--disable-file Disable FILE support],
|
AC_HELP_STRING([--disable-file],[Disable FILE support]),
|
||||||
[ case "$enableval" in
|
[ case "$enableval" in
|
||||||
no)
|
no)
|
||||||
AC_MSG_RESULT(no)
|
AC_MSG_RESULT(no)
|
||||||
@@ -135,8 +146,8 @@ AC_ARG_ENABLE(file,
|
|||||||
)
|
)
|
||||||
AC_MSG_CHECKING([whether to support ldap])
|
AC_MSG_CHECKING([whether to support ldap])
|
||||||
AC_ARG_ENABLE(ldap,
|
AC_ARG_ENABLE(ldap,
|
||||||
[ --enable-ldap Enable LDAP support
|
AC_HELP_STRING([--enable-ldap],[Enable LDAP support])
|
||||||
--disable-ldap Disable LDAP support],
|
AC_HELP_STRING([--disable-ldap],[Disable LDAP support]),
|
||||||
[ case "$enableval" in
|
[ case "$enableval" in
|
||||||
no)
|
no)
|
||||||
AC_MSG_RESULT(no)
|
AC_MSG_RESULT(no)
|
||||||
@@ -150,12 +161,12 @@ AC_ARG_ENABLE(ldap,
|
|||||||
)
|
)
|
||||||
AC_MSG_CHECKING([whether to support dict])
|
AC_MSG_CHECKING([whether to support dict])
|
||||||
AC_ARG_ENABLE(dict,
|
AC_ARG_ENABLE(dict,
|
||||||
[ --enable-dict Enable DICT support
|
AC_HELP_STRING([--enable-dict],[Enable DICT support])
|
||||||
--disable-dict Disable DICT support],
|
AC_HELP_STRING([--disable-dict],[Disable DICT support]),
|
||||||
[ case "$enableval" in
|
[ case "$enableval" in
|
||||||
no)
|
no)
|
||||||
AC_MSG_RESULT(no)
|
AC_MSG_RESULT(no)
|
||||||
AC_DEFINE(CURL_DISABLE_DICT, 1 [to disable DICT])
|
AC_DEFINE(CURL_DISABLE_DICT, 1, [to disable DICT])
|
||||||
AC_SUBST(CURL_DISABLE_DICT)
|
AC_SUBST(CURL_DISABLE_DICT)
|
||||||
;;
|
;;
|
||||||
*) AC_MSG_RESULT(yes)
|
*) AC_MSG_RESULT(yes)
|
||||||
@@ -165,8 +176,8 @@ AC_ARG_ENABLE(dict,
|
|||||||
)
|
)
|
||||||
AC_MSG_CHECKING([whether to support telnet])
|
AC_MSG_CHECKING([whether to support telnet])
|
||||||
AC_ARG_ENABLE(telnet,
|
AC_ARG_ENABLE(telnet,
|
||||||
[ --enable-telnet Enable TELNET support
|
AC_HELP_STRING([--enable-telnet],[Enable TELNET support])
|
||||||
--disable-telnet Disable TELNET support],
|
AC_HELP_STRING([--disable-telnet],[Disable TELNET support]),
|
||||||
[ case "$enableval" in
|
[ case "$enableval" in
|
||||||
no)
|
no)
|
||||||
AC_MSG_RESULT(no)
|
AC_MSG_RESULT(no)
|
||||||
@@ -186,8 +197,8 @@ dnl **********************************************************************
|
|||||||
|
|
||||||
AC_MSG_CHECKING([whether to enable ipv6])
|
AC_MSG_CHECKING([whether to enable ipv6])
|
||||||
AC_ARG_ENABLE(ipv6,
|
AC_ARG_ENABLE(ipv6,
|
||||||
[ --enable-ipv6 Enable ipv6 (with ipv4) support
|
AC_HELP_STRING([--enable-ipv6],[Enable ipv6 (with ipv4) support])
|
||||||
--disable-ipv6 Disable ipv6 support],
|
AC_HELP_STRING([--disable-ipv6],[Disable ipv6 support]),
|
||||||
[ case "$enableval" in
|
[ case "$enableval" in
|
||||||
no)
|
no)
|
||||||
AC_MSG_RESULT(no)
|
AC_MSG_RESULT(no)
|
||||||
@@ -271,12 +282,26 @@ AC_CHECK_FUNC(connect, , [ AC_CHECK_LIB(socket, connect) ])
|
|||||||
dnl dl lib?
|
dnl dl lib?
|
||||||
AC_CHECK_FUNC(dlclose, , [ AC_CHECK_LIB(dl, dlopen) ])
|
AC_CHECK_FUNC(dlclose, , [ AC_CHECK_LIB(dl, dlopen) ])
|
||||||
|
|
||||||
|
AC_MSG_CHECKING([whether to use libgcc])
|
||||||
|
AC_ARG_ENABLE(libgcc,
|
||||||
|
AC_HELP_STRING([--enable-libgcc],[use libgcc when linking]),
|
||||||
|
[ case "$enableval" in
|
||||||
|
yes)
|
||||||
|
LIBS="$LIBS -lgcc"
|
||||||
|
AC_MSG_RESULT(yes)
|
||||||
|
;;
|
||||||
|
*) AC_MSG_RESULT(no)
|
||||||
|
;;
|
||||||
|
esac ],
|
||||||
|
AC_MSG_RESULT(no)
|
||||||
|
)
|
||||||
|
|
||||||
dnl **********************************************************************
|
dnl **********************************************************************
|
||||||
dnl Check how non-blocking sockets are set
|
dnl Check how non-blocking sockets are set
|
||||||
dnl **********************************************************************
|
dnl **********************************************************************
|
||||||
AC_ARG_ENABLE(nonblocking,
|
AC_ARG_ENABLE(nonblocking,
|
||||||
[ --enable-nonblocking Makes the script detect how to do it
|
AC_HELP_STRING([--enable-nonblocking],[Enable detecting how to do it])
|
||||||
--disable-nonblocking Makes the script disable non-blocking sockets],
|
AC_HELP_STRING([--disable-nonblocking],[Disable non-blocking socket detection]),
|
||||||
[
|
[
|
||||||
if test "$enableval" = "no" ; then
|
if test "$enableval" = "no" ; then
|
||||||
AC_MSG_WARN([non-blocking sockets disabled])
|
AC_MSG_WARN([non-blocking sockets disabled])
|
||||||
@@ -295,7 +320,8 @@ dnl Check for the random seed preferences
|
|||||||
dnl **********************************************************************
|
dnl **********************************************************************
|
||||||
|
|
||||||
AC_ARG_WITH(egd-socket,
|
AC_ARG_WITH(egd-socket,
|
||||||
[ --with-egd-socket=FILE Entropy Gathering Daemon socket pathname],
|
AC_HELP_STRING([--with-egd-socket=FILE],
|
||||||
|
[Entropy Gathering Daemon socket pathname]),
|
||||||
[ EGD_SOCKET="$withval" ]
|
[ EGD_SOCKET="$withval" ]
|
||||||
)
|
)
|
||||||
if test -n "$EGD_SOCKET" ; then
|
if test -n "$EGD_SOCKET" ; then
|
||||||
@@ -305,7 +331,7 @@ fi
|
|||||||
|
|
||||||
dnl Check for user-specified random device
|
dnl Check for user-specified random device
|
||||||
AC_ARG_WITH(random,
|
AC_ARG_WITH(random,
|
||||||
[ --with-random=FILE read randomness from FILE (default=/dev/urandom)],
|
AC_HELP_STRING([--with-random=FILE],[read randomness from FILE (default=/dev/urandom)]),
|
||||||
[ RANDOM_FILE="$withval" ],
|
[ RANDOM_FILE="$withval" ],
|
||||||
[
|
[
|
||||||
dnl Check for random device
|
dnl Check for random device
|
||||||
@@ -318,19 +344,36 @@ if test -n "$RANDOM_FILE" ; then
|
|||||||
[a suitable file to read random data from])
|
[a suitable file to read random data from])
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
dnl **********************************************************************
|
||||||
|
dnl Check if the operating system allows programs to write to their own argv[]
|
||||||
|
dnl **********************************************************************
|
||||||
|
|
||||||
|
AC_MSG_CHECKING([if argv can be written to])
|
||||||
|
AC_TRY_RUN([
|
||||||
|
int main(int argc, char ** argv) {
|
||||||
|
argv[0][0] = ' ';
|
||||||
|
return (argv[0][0] == ' ')?0:1;
|
||||||
|
}
|
||||||
|
],
|
||||||
|
AC_DEFINE(HAVE_WRITABLE_ARGV, 1, [Define this symbol if your OS supports changing the contents of argv])
|
||||||
|
AC_MSG_RESULT(yes),
|
||||||
|
AC_MSG_RESULT(no)
|
||||||
|
)
|
||||||
|
|
||||||
dnl **********************************************************************
|
dnl **********************************************************************
|
||||||
dnl Check for the presence of Kerberos4 libraries and headers
|
dnl Check for the presence of Kerberos4 libraries and headers
|
||||||
dnl **********************************************************************
|
dnl **********************************************************************
|
||||||
|
|
||||||
AC_ARG_WITH(krb4-includes,
|
AC_ARG_WITH(krb4-includes,
|
||||||
[ --with-krb4-includes[=DIR] Specify location of kerberos4 headers],[
|
AC_HELP_STRING([--with-krb4-includes=DIR],
|
||||||
|
[Specify location of kerberos4 headers]),[
|
||||||
CPPFLAGS="$CPPFLAGS -I$withval"
|
CPPFLAGS="$CPPFLAGS -I$withval"
|
||||||
KRB4INC="$withval"
|
KRB4INC="$withval"
|
||||||
want_krb4=yes
|
want_krb4=yes
|
||||||
])
|
])
|
||||||
|
|
||||||
AC_ARG_WITH(krb4-libs,
|
AC_ARG_WITH(krb4-libs,
|
||||||
[ --with-krb4-libs[=DIR] Specify location of kerberos4 libs],[
|
AC_HELP_STRING([--with-krb4-libs=DIR],[Specify location of kerberos4 libs]),[
|
||||||
LDFLAGS="$LDFLAGS -L$withval"
|
LDFLAGS="$LDFLAGS -L$withval"
|
||||||
KRB4LIB="$withval"
|
KRB4LIB="$withval"
|
||||||
want_krb4=yes
|
want_krb4=yes
|
||||||
@@ -339,7 +382,7 @@ AC_ARG_WITH(krb4-libs,
|
|||||||
|
|
||||||
OPT_KRB4=off
|
OPT_KRB4=off
|
||||||
AC_ARG_WITH(krb4,dnl
|
AC_ARG_WITH(krb4,dnl
|
||||||
[ --with-krb4[=DIR] where to look for Kerberos4],[
|
AC_HELP_STRING([--with-krb4=DIR],[where to look for Kerberos4]),[
|
||||||
OPT_KRB4="$withval"
|
OPT_KRB4="$withval"
|
||||||
if test X"$OPT_KRB4" != Xyes
|
if test X"$OPT_KRB4" != Xyes
|
||||||
then
|
then
|
||||||
@@ -409,6 +452,31 @@ else
|
|||||||
AC_MSG_RESULT(no)
|
AC_MSG_RESULT(no)
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
dnl Detect the pkg-config tool, as it may have extra info about the
|
||||||
|
dnl openssl installation we can use. I *believe* this is what we are
|
||||||
|
dnl expected to do on really recent Redhat Linux hosts.
|
||||||
|
AC_PATH_PROG( PKGCONFIG, pkg-config, no, $PATH:/usr/bin:/usr/local/bin)
|
||||||
|
if test "$PKGCONFIG" != "no" ; then
|
||||||
|
AC_MSG_CHECKING([for OpenSSL options using pkg-config])
|
||||||
|
|
||||||
|
$PKGCONFIG --exists openssl
|
||||||
|
SSL_EXISTS=$?
|
||||||
|
|
||||||
|
if test "$SSL_EXISTS" -eq "0"; then
|
||||||
|
SSL_LIBS=`$PKGCONFIG --libs-only-l openssl 2>/dev/null`
|
||||||
|
SSL_LDFLAGS=`$PKGCONFIG --libs-only-L openssl 2>/dev/null`
|
||||||
|
SSL_CPPFLAGS=`$PKGCONFIG --cflags-only-I openssl 2>/dev/null`
|
||||||
|
|
||||||
|
LIBS="$LIBS $SSL_LIBS"
|
||||||
|
CPPFLAGS="$CPPFLAGS $SSL_CPPFLAGS"
|
||||||
|
LDFLAGS="$LDFLAGS $SSL_LDFLAGS"
|
||||||
|
|
||||||
|
AC_MSG_RESULT([yes])
|
||||||
|
else
|
||||||
|
AC_MSG_RESULT([no])
|
||||||
|
fi
|
||||||
|
|
||||||
|
fi
|
||||||
|
|
||||||
dnl **********************************************************************
|
dnl **********************************************************************
|
||||||
dnl Check for the presence of SSL libraries and headers
|
dnl Check for the presence of SSL libraries and headers
|
||||||
@@ -559,14 +627,30 @@ esac
|
|||||||
|
|
||||||
dnl Default is to try the thread-safe versions of a few functions
|
dnl Default is to try the thread-safe versions of a few functions
|
||||||
OPT_THREAD=on
|
OPT_THREAD=on
|
||||||
|
|
||||||
|
dnl detect AIX 4.3 or later
|
||||||
|
dnl see full docs on this reasoning in the lib/hostip.c source file
|
||||||
|
AC_MSG_CHECKING([AIX 4.3 or later])
|
||||||
|
AC_PREPROC_IFELSE([
|
||||||
|
#if defined(_AIX) && defined(_AIX43)
|
||||||
|
printf("just fine");
|
||||||
|
#else
|
||||||
|
#error "this is not AIX 4.3 or later"
|
||||||
|
#endif
|
||||||
|
],
|
||||||
|
[ AC_MSG_RESULT([yes])
|
||||||
|
OPT_THREAD=off ],
|
||||||
|
[ AC_MSG_RESULT([no]) ]
|
||||||
|
)
|
||||||
|
|
||||||
AC_ARG_ENABLE(thread,dnl
|
AC_ARG_ENABLE(thread,dnl
|
||||||
[ --disable-thread tell configure to not look for thread-safe functions],
|
AC_HELP_STRING([--disable-thread],[don't look for thread-safe functions]),
|
||||||
OPT_THREAD=off
|
OPT_THREAD=off
|
||||||
|
AC_MSG_WARN(libcurl will not get built using thread-safe functions)
|
||||||
)
|
)
|
||||||
|
|
||||||
if test X"$OPT_THREAD" = Xoff
|
if test X"$OPT_THREAD" = Xoff
|
||||||
then
|
then
|
||||||
AC_MSG_WARN(libcurl will not get built using thread-safe functions)
|
|
||||||
AC_DEFINE(DISABLED_THREADSAFE, 1, \
|
AC_DEFINE(DISABLED_THREADSAFE, 1, \
|
||||||
Set to explicitly specify we don't want to use thread-safe functions)
|
Set to explicitly specify we don't want to use thread-safe functions)
|
||||||
else
|
else
|
||||||
@@ -593,21 +677,23 @@ dnl **********************************************************************
|
|||||||
|
|
||||||
dnl Checks for header files.
|
dnl Checks for header files.
|
||||||
AC_HEADER_STDC
|
AC_HEADER_STDC
|
||||||
AC_CHECK_HEADERS( \
|
|
||||||
|
dnl First check for the very most basic headers. Then we can use these
|
||||||
|
dnl ones as default-headers when checking for the rest!
|
||||||
|
AC_CHECK_HEADERS(
|
||||||
|
sys/types.h \
|
||||||
|
sys/time.h \
|
||||||
|
sys/select.h \
|
||||||
|
sys/socket.h \
|
||||||
unistd.h \
|
unistd.h \
|
||||||
malloc.h \
|
malloc.h \
|
||||||
stdlib.h \
|
stdlib.h \
|
||||||
arpa/inet.h \
|
arpa/inet.h \
|
||||||
net/if.h \
|
net/if.h \
|
||||||
netinet/in.h \
|
netinet/in.h \
|
||||||
netinet/if_ether.h \
|
|
||||||
netdb.h \
|
netdb.h \
|
||||||
sys/select.h \
|
|
||||||
sys/socket.h \
|
|
||||||
sys/sockio.h \
|
sys/sockio.h \
|
||||||
sys/stat.h \
|
sys/stat.h \
|
||||||
sys/types.h \
|
|
||||||
sys/time.h \
|
|
||||||
sys/param.h \
|
sys/param.h \
|
||||||
termios.h \
|
termios.h \
|
||||||
termio.h \
|
termio.h \
|
||||||
@@ -622,7 +708,26 @@ AC_CHECK_HEADERS( \
|
|||||||
utime.h \
|
utime.h \
|
||||||
sys/utime.h \
|
sys/utime.h \
|
||||||
sys/poll.h \
|
sys/poll.h \
|
||||||
setjmp.h
|
setjmp.h,
|
||||||
|
dnl to do if not found
|
||||||
|
[],
|
||||||
|
dnl to do if found
|
||||||
|
[],
|
||||||
|
dnl default includes
|
||||||
|
[
|
||||||
|
#ifdef HAVE_SYS_TYPES_H
|
||||||
|
#include <sys/types.h>
|
||||||
|
#endif
|
||||||
|
#ifdef HAVE_SYS_TIME_H
|
||||||
|
#include <sys/time.h>
|
||||||
|
#endif
|
||||||
|
#ifdef HAVE_SYS_SELECT_H
|
||||||
|
#include <sys/select.h>
|
||||||
|
#endif
|
||||||
|
#ifdef HAVE_SYS_SOCKET_H
|
||||||
|
#include <sys/socket.h>
|
||||||
|
#endif
|
||||||
|
]
|
||||||
)
|
)
|
||||||
|
|
||||||
dnl Checks for typedefs, structures, and compiler characteristics.
|
dnl Checks for typedefs, structures, and compiler characteristics.
|
||||||
@@ -643,6 +748,8 @@ AC_CHECK_TYPE(ssize_t, int)
|
|||||||
TYPE_SOCKLEN_T
|
TYPE_SOCKLEN_T
|
||||||
TYPE_IN_ADDR_T
|
TYPE_IN_ADDR_T
|
||||||
|
|
||||||
|
AC_FUNC_SELECT_ARGTYPES
|
||||||
|
|
||||||
dnl Checks for library functions.
|
dnl Checks for library functions.
|
||||||
dnl AC_PROG_GCC_TRADITIONAL
|
dnl AC_PROG_GCC_TRADITIONAL
|
||||||
AC_TYPE_SIGNAL
|
AC_TYPE_SIGNAL
|
||||||
@@ -675,7 +782,21 @@ AC_CHECK_FUNCS( socket \
|
|||||||
dlopen \
|
dlopen \
|
||||||
utime \
|
utime \
|
||||||
sigsetjmp \
|
sigsetjmp \
|
||||||
poll
|
poll,
|
||||||
|
dnl if found
|
||||||
|
[],
|
||||||
|
dnl if not found, $ac_func is the name we check for
|
||||||
|
func="$ac_func"
|
||||||
|
AC_MSG_CHECKING([deeper for $func])
|
||||||
|
AC_TRY_LINK( [],
|
||||||
|
[ $func ();],
|
||||||
|
AC_MSG_RESULT(yes!)
|
||||||
|
eval "ac_cv_func_$func=yes"
|
||||||
|
def=`echo "HAVE_$func" | tr 'a-z' 'A-Z'`
|
||||||
|
AC_DEFINE_UNQUOTED($def, 1, [If you have $func]),
|
||||||
|
AC_MSG_RESULT(but still no)
|
||||||
|
)
|
||||||
|
|
||||||
)
|
)
|
||||||
|
|
||||||
dnl sigsetjmp() might be a macro and no function so if it isn't found already
|
dnl sigsetjmp() might be a macro and no function so if it isn't found already
|
||||||
@@ -691,15 +812,6 @@ if test "$ac_cv_func_sigsetjmp" != "yes"; then
|
|||||||
)
|
)
|
||||||
fi
|
fi
|
||||||
|
|
||||||
dnl removed 'getpass' check on October 26, 2000
|
|
||||||
|
|
||||||
if test "$ac_cv_func_select" != "yes"; then
|
|
||||||
AC_MSG_ERROR(Can't work without an existing select() function)
|
|
||||||
fi
|
|
||||||
if test "$ac_cv_func_socket" != "yes"; then
|
|
||||||
AC_MSG_ERROR(Can't work without an existing socket() function)
|
|
||||||
fi
|
|
||||||
|
|
||||||
AC_PATH_PROG( PERL, perl, ,
|
AC_PATH_PROG( PERL, perl, ,
|
||||||
$PATH:/usr/local/bin/perl:/usr/bin/:/usr/local/bin )
|
$PATH:/usr/local/bin/perl:/usr/bin/:/usr/local/bin )
|
||||||
AC_SUBST(PERL)
|
AC_SUBST(PERL)
|
||||||
@@ -708,7 +820,6 @@ AC_PATH_PROGS( NROFF, gnroff nroff, ,
|
|||||||
$PATH:/usr/bin/:/usr/local/bin )
|
$PATH:/usr/bin/:/usr/local/bin )
|
||||||
AC_SUBST(NROFF)
|
AC_SUBST(NROFF)
|
||||||
|
|
||||||
|
|
||||||
AC_MSG_CHECKING([CA cert bundle install path])
|
AC_MSG_CHECKING([CA cert bundle install path])
|
||||||
|
|
||||||
AC_ARG_WITH(ca-bundle,
|
AC_ARG_WITH(ca-bundle,
|
||||||
@@ -745,8 +856,8 @@ dnl lame option to switch on debug options
|
|||||||
dnl
|
dnl
|
||||||
AC_MSG_CHECKING([whether to enable debug options])
|
AC_MSG_CHECKING([whether to enable debug options])
|
||||||
AC_ARG_ENABLE(debug,
|
AC_ARG_ENABLE(debug,
|
||||||
[ --enable-debug Enable pedantic debug options
|
AC_HELP_STRING([--enable-debug],[Enable pedantic debug options])
|
||||||
--disable-debug Disable debug options],
|
AC_HELP_STRING([--disable-debug],[Disable debug options]),
|
||||||
[ case "$enableval" in
|
[ case "$enableval" in
|
||||||
no)
|
no)
|
||||||
AC_MSG_RESULT(no)
|
AC_MSG_RESULT(no)
|
||||||
@@ -756,7 +867,7 @@ AC_ARG_ENABLE(debug,
|
|||||||
CPPFLAGS="$CPPFLAGS -DMALLOCDEBUG"
|
CPPFLAGS="$CPPFLAGS -DMALLOCDEBUG"
|
||||||
CFLAGS="$CFLAGS -g"
|
CFLAGS="$CFLAGS -g"
|
||||||
if test "$GCC" = "yes"; then
|
if test "$GCC" = "yes"; then
|
||||||
CFLAGS="$CFLAGS -W -Wall -Wwrite-strings -pedantic -Wundef -Wpointer-arith -Wcast-align -Wnested-externs"
|
CFLAGS="$CFLAGS -W -Wall -Wwrite-strings -pedantic -Wundef -Wpointer-arith -Wnested-externs"
|
||||||
fi
|
fi
|
||||||
dnl strip off optimizer flags
|
dnl strip off optimizer flags
|
||||||
NEWFLAGS=""
|
NEWFLAGS=""
|
@@ -107,8 +107,11 @@ while test $# -gt 0; do
|
|||||||
;;
|
;;
|
||||||
|
|
||||||
--cflags)
|
--cflags)
|
||||||
#echo -I@includedir@
|
if test "X@includedir@" = "X/usr/include"; then
|
||||||
echo ""
|
echo ""
|
||||||
|
else
|
||||||
|
echo "-I@includedir@"
|
||||||
|
fi
|
||||||
;;
|
;;
|
||||||
|
|
||||||
--libs)
|
--libs)
|
||||||
|
21
curl-mode.el
21
curl-mode.el
@@ -1,21 +0,0 @@
|
|||||||
;;;; Emacs Lisp help for writing curl code. ;;;;
|
|
||||||
|
|
||||||
;;; In C files, put something like this to load this file automatically:
|
|
||||||
;;
|
|
||||||
;; /* -----------------------------------------------------------------
|
|
||||||
;; * local variables:
|
|
||||||
;; * eval: (load-file "../curl-mode.el")
|
|
||||||
;; * end:
|
|
||||||
;; */
|
|
||||||
;;
|
|
||||||
;; (note: make sure to get the path right in the argument to load-file).
|
|
||||||
|
|
||||||
|
|
||||||
;;; The curl hacker's C conventions
|
|
||||||
|
|
||||||
;;; we use intent-level 2
|
|
||||||
(setq c-basic-offset 2)
|
|
||||||
;;; never ever use tabs to indent!
|
|
||||||
(setq indent-tabs-mode nil)
|
|
||||||
;;; I like this, stolen from Subversion! ;-)
|
|
||||||
(setq angry-mob-with-torches-and-pitchforks t)
|
|
50
curl-style.el
Normal file
50
curl-style.el
Normal file
@@ -0,0 +1,50 @@
|
|||||||
|
;;;; Emacs Lisp help for writing curl code. ;;;;
|
||||||
|
;;;; $Id$
|
||||||
|
|
||||||
|
;;; The curl hacker's C conventions.
|
||||||
|
|
||||||
|
;;; After loading this file and added the mode-hook you can in C
|
||||||
|
;;; files, put something like this to use the curl style
|
||||||
|
;;; automatically:
|
||||||
|
;;
|
||||||
|
;; /* -----------------------------------------------------------------
|
||||||
|
;; * local variables:
|
||||||
|
;; * eval: (set c-file-style "curl")
|
||||||
|
;; * end:
|
||||||
|
;; */
|
||||||
|
;;
|
||||||
|
|
||||||
|
(defconst curl-c-style
|
||||||
|
'((c-basic-offset . 2)
|
||||||
|
(c-comment-only-line-offset . 0)
|
||||||
|
(c-hanging-braces-alist . ((substatement-open before after)))
|
||||||
|
(c-offsets-alist . ((topmost-intro . 0)
|
||||||
|
(topmost-intro-cont . 0)
|
||||||
|
(substatement . +)
|
||||||
|
(substatement-open . 0)
|
||||||
|
(statement-case-intro . +)
|
||||||
|
(statement-case-open . 0)
|
||||||
|
(case-label . 0)
|
||||||
|
))
|
||||||
|
)
|
||||||
|
"Curl C Programming Style")
|
||||||
|
|
||||||
|
;; Customizations for all of c-mode, c++-mode, and objc-mode
|
||||||
|
(defun curl-c-mode-common-hook ()
|
||||||
|
"Curl C mode hook"
|
||||||
|
;; add curl style and set it for the current buffer
|
||||||
|
(c-add-style "curl" curl-c-style t)
|
||||||
|
(setq tab-width 8
|
||||||
|
indent-tabs-mode nil ; Use spaces. Not tabs.
|
||||||
|
comment-column 40
|
||||||
|
c-font-lock-extra-types (append '("bool" "CURL" "CURLcode" "ssize_t" "size_t" "socklen_t" "fd_set"))
|
||||||
|
)
|
||||||
|
;; keybindings for C, C++, and Objective-C. We can put these in
|
||||||
|
;; c-mode-base-map because of inheritance ...
|
||||||
|
(define-key c-mode-base-map "\M-q" 'c-fill-paragraph)
|
||||||
|
(setq c-recognize-knr-p nil)
|
||||||
|
)
|
||||||
|
|
||||||
|
;; Set this is in your .emacs if you want to use the c-mode-hook as
|
||||||
|
;; defined here right out of the box.
|
||||||
|
; (add-hook 'c-mode-common-hook 'curl-c-mode-common-hook)
|
11
docs/BUGS
11
docs/BUGS
@@ -8,7 +8,7 @@ $Id$
|
|||||||
BUGS
|
BUGS
|
||||||
|
|
||||||
Curl and libcurl have grown substantially since the beginning. At the time
|
Curl and libcurl have grown substantially since the beginning. At the time
|
||||||
of writing (end of April 2002), there are 32000 lines of source code, and by
|
of writing (end of March 2003), there are 35000 lines of source code, and by
|
||||||
the time you read this it has probably grown even more.
|
the time you read this it has probably grown even more.
|
||||||
|
|
||||||
Of course there are lots of bugs left. And lots of misfeatures.
|
Of course there are lots of bugs left. And lots of misfeatures.
|
||||||
@@ -19,18 +19,21 @@ BUGS
|
|||||||
WHERE TO REPORT
|
WHERE TO REPORT
|
||||||
|
|
||||||
If you can't fix a bug yourself and submit a fix for it, try to report an as
|
If you can't fix a bug yourself and submit a fix for it, try to report an as
|
||||||
detailed report as possible to the curl mailing list to allow one of us to
|
detailed report as possible to a curl mailing list to allow one of us to
|
||||||
have a go at a solution. You should also post your bug/problem at curl's bug
|
have a go at a solution. You should also post your bug/problem at curl's bug
|
||||||
tracking system over at
|
tracking system over at
|
||||||
|
|
||||||
http://sourceforge.net/bugs/?group_id=976
|
http://sourceforge.net/bugs/?group_id=976
|
||||||
|
|
||||||
(but please read the section below first before doing that)
|
(but please read the sections below first before doing that)
|
||||||
|
|
||||||
|
If you feel you need to ask around first, find a suitable mailing list and
|
||||||
|
post there. The lists are available on http://curl.haxx.se/mail/
|
||||||
|
|
||||||
WHAT TO REPORT
|
WHAT TO REPORT
|
||||||
|
|
||||||
When reporting a bug, you should include information that will help us
|
When reporting a bug, you should include information that will help us
|
||||||
understand what's wrong what you expected to happen and how to repeat the
|
understand what's wrong, what you expected to happen and how to repeat the
|
||||||
bad behavior. You therefore need to tell us:
|
bad behavior. You therefore need to tell us:
|
||||||
|
|
||||||
- your operating system's name and version number (uname -a under a unix
|
- your operating system's name and version number (uname -a under a unix
|
||||||
|
@@ -145,5 +145,15 @@ How To Make a Patch
|
|||||||
|
|
||||||
diff -ur curl-original-dir curl-modfied-sources-dir > my-fixes.diff
|
diff -ur curl-original-dir curl-modfied-sources-dir > my-fixes.diff
|
||||||
|
|
||||||
GNU diff exists for virtually all platforms, including all kinds of unixes
|
The GNU diff and GNU patch tools exist for virtually all platforms, including
|
||||||
and Windows.
|
all kinds of unixes and Windows:
|
||||||
|
|
||||||
|
For unix-like operating systems:
|
||||||
|
|
||||||
|
http://www.fsf.org/software/patch/patch.html
|
||||||
|
http://www.gnu.org/directory/diffutils.html
|
||||||
|
|
||||||
|
For Windows:
|
||||||
|
|
||||||
|
http://gnuwin32.sourceforge.net/packages/patch.htm
|
||||||
|
http://gnuwin32.sourceforge.net/packages/diffutils.htm
|
||||||
|
78
docs/FAQ
78
docs/FAQ
@@ -1,4 +1,4 @@
|
|||||||
Updated: January 13, 2003 (http://curl.haxx.se/docs/faq.html)
|
Updated: February 25, 2003 (http://curl.haxx.se/docs/faq.html)
|
||||||
_ _ ____ _
|
_ _ ____ _
|
||||||
___| | | | _ \| |
|
___| | | | _ \| |
|
||||||
/ __| | | | |_) | |
|
/ __| | | | |_) | |
|
||||||
@@ -175,20 +175,21 @@ FAQ
|
|||||||
Project cURL is entirely free and open. No person gets paid for developing
|
Project cURL is entirely free and open. No person gets paid for developing
|
||||||
curl. We do this voluntarily on our spare time.
|
curl. We do this voluntarily on our spare time.
|
||||||
|
|
||||||
We get some help from companies. Contactor Data hosts the curl web site and
|
We get some help from companies. Contactor Data hosts the curl web site,
|
||||||
the main mailing list, Haxx owns the curl web site's domain and
|
Haxx owns the curl web site's domain and sourceforge.net hosts several
|
||||||
sourceforge.net hosts several project tools we take advantage from like the
|
project services we take advantage from, like the bug tracker, mailing lists
|
||||||
bug tracker, mailing lists and more.
|
and more.
|
||||||
|
|
||||||
If you want to support our project with a donation or similar, one way of
|
If you want to support our project with a donation or similar, one way of
|
||||||
doing that would be to buy "gift certificates" at useful online shopping
|
doing that would be to buy "gift certificates" at useful online shopping
|
||||||
sites, such as amazon.com or thinkgeek.com. Another way would be to sponsor
|
sites, such as amazon.com or thinkgeek.com. Another way would be to sponsor
|
||||||
us through a banner-program or even better: by helping us coding,
|
us through a banner-program or even better: by helping us coding,
|
||||||
documenting, testing etc.
|
documenting, testing etc. You're welcome to send us a buck using paypal, as
|
||||||
|
described here: http://curl.haxx.se/donation.html
|
||||||
|
|
||||||
1.7 What about CURL from curl.com?
|
1.7 What about CURL from curl.com?
|
||||||
|
|
||||||
During the summer 2001, curl.com has been busy advertising their client-side
|
During the summer 2001, curl.com was busy advertising their client-side
|
||||||
programming language for the web, named CURL.
|
programming language for the web, named CURL.
|
||||||
|
|
||||||
We are in no way associated with curl.com or their CURL programming
|
We are in no way associated with curl.com or their CURL programming
|
||||||
@@ -203,17 +204,17 @@ FAQ
|
|||||||
|
|
||||||
1.8 I have a problem who do I mail?
|
1.8 I have a problem who do I mail?
|
||||||
|
|
||||||
Please do not attempt to mail any single individual unless you really need
|
Please do not mail any single individual unless you really need to. Keep
|
||||||
to. Keep curl-related questions on a suitable mailing list. All available
|
curl-related questions on a suitable mailing list. All available mailing
|
||||||
mailing lists are listed in the MANUAL document and online at
|
lists are listed in the MANUAL document and online at
|
||||||
http://curl.haxx.se/mail/
|
http://curl.haxx.se/mail/
|
||||||
|
|
||||||
Keeping curl-related questions and discussions on mailing lists allows others
|
Keeping curl-related questions and discussions on mailing lists allows
|
||||||
to join in and help, to share their ideas, contribute their suggestions and
|
others to join in and help, to share their ideas, contribute their
|
||||||
spread their wisdom. Keeping discussions on public mailing lists also allows
|
suggestions and spread their wisdom. Keeping discussions on public mailing
|
||||||
for others to learn from this (both current and future users thanks to the
|
lists also allows for others to learn from this (both current and future
|
||||||
web based archives of the mailing lists), thus saving us from having to
|
users thanks to the web based archives of the mailing lists), thus saving us
|
||||||
repeat ourselves even more. Thanks for respecting this.
|
from having to repeat ourselves even more. Thanks for respecting this.
|
||||||
|
|
||||||
|
|
||||||
2. Install Related Problems
|
2. Install Related Problems
|
||||||
@@ -368,9 +369,10 @@ FAQ
|
|||||||
|
|
||||||
http://curl.haxx.se/libcurl/
|
http://curl.haxx.se/libcurl/
|
||||||
|
|
||||||
In December 2001, there are interfaces available for the following
|
In February 2003, there are interfaces available for the following
|
||||||
languages: C/C++, Cocoa, Dylan, Java, Perl, PHP, Python, Rexx, Ruby, Scheme
|
languages: Basic, C, C++, Cocoa, Dylan, Euphoria, Java, Lua, Object-Pascal,
|
||||||
and Tcl. By the time you read this, additional ones may have appeared!
|
Pascal, Perl, PHP, PostgreSQL, Python, Rexx, Ruby, Scheme and Tcl. By the
|
||||||
|
time you read this, additional ones may have appeared!
|
||||||
|
|
||||||
3.10 What about SOAP, WebDAV, XML-RPC or similar protocols over HTTP?
|
3.10 What about SOAP, WebDAV, XML-RPC or similar protocols over HTTP?
|
||||||
|
|
||||||
@@ -379,8 +381,8 @@ FAQ
|
|||||||
XML-RPC are all such ones. You can use -X to set custom requests and -H to
|
XML-RPC are all such ones. You can use -X to set custom requests and -H to
|
||||||
set custom headers (or replace internally generated ones).
|
set custom headers (or replace internally generated ones).
|
||||||
|
|
||||||
Using libcurl or PHP's curl modules is just as fine and you'd just use the
|
Using libcurl is of course just as fine and you'd just use the proper
|
||||||
proper library options to do the same.
|
library options to do the same.
|
||||||
|
|
||||||
3.11 How do I POST with a different Content-Type?
|
3.11 How do I POST with a different Content-Type?
|
||||||
|
|
||||||
@@ -494,8 +496,7 @@ FAQ
|
|||||||
curl '{curl,www}.haxx.se'
|
curl '{curl,www}.haxx.se'
|
||||||
|
|
||||||
To be able to use those letters as actual parts of the URL (without using
|
To be able to use those letters as actual parts of the URL (without using
|
||||||
them for the curl URL "globbing" system), use the -g/--globoff option (curl
|
them for the curl URL "globbing" system), use the -g/--globoff option:
|
||||||
7.6 and later):
|
|
||||||
|
|
||||||
curl -g 'www.site.com/weirdname[].html'
|
curl -g 'www.site.com/weirdname[].html'
|
||||||
|
|
||||||
@@ -630,7 +631,7 @@ FAQ
|
|||||||
this check.
|
this check.
|
||||||
|
|
||||||
Details are also in the SSLCERTS file in the release archives, found online
|
Details are also in the SSLCERTS file in the release archives, found online
|
||||||
here: http://curl.haxx.se/lxr/source/SSLCERTS
|
here: http://curl.haxx.se/docs/sslcerts.html
|
||||||
|
|
||||||
5. libcurl Issues
|
5. libcurl Issues
|
||||||
|
|
||||||
@@ -682,20 +683,15 @@ FAQ
|
|||||||
|
|
||||||
5.3 How do I fetch multiple files with libcurl?
|
5.3 How do I fetch multiple files with libcurl?
|
||||||
|
|
||||||
Starting with version 7.7, curl and libcurl will have excellent support for
|
libcurl has excellent support for transferring multiple files. You should
|
||||||
transferring multiple files. You should just repeatedly set new URLs with
|
just repeatedly set new URLs with curl_easy_setopt() and then transfer it
|
||||||
curl_easy_setopt() and then transfer it with curl_easy_perform(). The handle
|
with curl_easy_perform(). The handle you get from curl_easy_init() is not
|
||||||
you get from curl_easy_init() is not only reusable starting with libcurl
|
only reusable, but you're even encouraged to reuse it if you can, as that
|
||||||
7.7, but also you're encouraged to reuse it if you can, as that will enable
|
will enable libcurl to use persistent connections.
|
||||||
libcurl to use persistent connections.
|
|
||||||
|
|
||||||
For libcurl prior to 7.7, there was no multiple file support. The only
|
|
||||||
available way to do multiple requests was to init/perform/cleanup for each
|
|
||||||
transfer.
|
|
||||||
|
|
||||||
5.4 Does libcurl do Winsock initialization on win32 systems?
|
5.4 Does libcurl do Winsock initialization on win32 systems?
|
||||||
|
|
||||||
Yes (since 7.8.1) if told to in the curl_global_init() call.
|
Yes, if told to in the curl_global_init() call.
|
||||||
|
|
||||||
5.5 Does CURLOPT_FILE and CURLOPT_INFILE work on win32 ?
|
5.5 Does CURLOPT_FILE and CURLOPT_INFILE work on win32 ?
|
||||||
|
|
||||||
@@ -709,13 +705,11 @@ FAQ
|
|||||||
|
|
||||||
5.6 What about Keep-Alive or persistent connections?
|
5.6 What about Keep-Alive or persistent connections?
|
||||||
|
|
||||||
Starting with version 7.7, curl and libcurl will have excellent support for
|
curl and libcurl have excellent support for persistent connections when
|
||||||
persistent connections when transferring several files from the same server.
|
transferring several files from the same server. Curl will attempt to reuse
|
||||||
Curl will attempt to reuse connections for all URLs specified on the same
|
connections for all URLs specified on the same command line/config file, and
|
||||||
command line/config file, and libcurl will reuse connections for all
|
libcurl will reuse connections for all transfers that are made using the
|
||||||
transfers that are made using the same libcurl handle.
|
same libcurl handle.
|
||||||
|
|
||||||
Previous versions had no persistent connection support.
|
|
||||||
|
|
||||||
5.7 Link errors when building libcurl on Windows!
|
5.7 Link errors when building libcurl on Windows!
|
||||||
|
|
||||||
|
11
docs/HISTORY
11
docs/HISTORY
@@ -54,7 +54,7 @@ OpenSSL took over where SSLeay was abandoned.
|
|||||||
May 1999, first Debian package.
|
May 1999, first Debian package.
|
||||||
|
|
||||||
August 1999, LDAP:// and FILE:// support added. The curl web site gets 1300
|
August 1999, LDAP:// and FILE:// support added. The curl web site gets 1300
|
||||||
visits daily.
|
visits weekly.
|
||||||
|
|
||||||
Released curl 6.0 in September. 15000 lines of code.
|
Released curl 6.0 in September. 15000 lines of code.
|
||||||
|
|
||||||
@@ -67,7 +67,7 @@ the easy interface and turned out to be the beginning of actually getting
|
|||||||
other software and programs to get based on and powered by libcurl. Almost
|
other software and programs to get based on and powered by libcurl. Almost
|
||||||
20000 lines of code.
|
20000 lines of code.
|
||||||
|
|
||||||
August 2000, the curl web site gets 4000 visits daily.
|
August 2000, the curl web site gets 4000 visits weekly.
|
||||||
|
|
||||||
The PHP guys adopted libcurl already the same month, when the first ever third
|
The PHP guys adopted libcurl already the same month, when the first ever third
|
||||||
party libcurl binding showed up. CURL has been a supported module in PHP since
|
party libcurl binding showed up. CURL has been a supported module in PHP since
|
||||||
@@ -92,7 +92,7 @@ code.
|
|||||||
|
|
||||||
August 2001. curl is bundled in Mac OS X, 10.1. It was already becoming more
|
August 2001. curl is bundled in Mac OS X, 10.1. It was already becoming more
|
||||||
and more of a standard utility of Linux distributions and a regular in the BSD
|
and more of a standard utility of Linux distributions and a regular in the BSD
|
||||||
ports collections. The curl web site gets 8000 visits daily. Curl Corporation
|
ports collections. The curl web site gets 8000 visits weekly. Curl Corporation
|
||||||
contacted Daniel to discuss "the name issue". After Daniel's reply, they have
|
contacted Daniel to discuss "the name issue". After Daniel's reply, they have
|
||||||
never since got in touch again.
|
never since got in touch again.
|
||||||
|
|
||||||
@@ -100,7 +100,7 @@ September 2001, libcurl 7.9 introduces cookie jar and curl_formadd(). During
|
|||||||
the forthcoming 7.9.x releases, we introduced the multi interface slowly and
|
the forthcoming 7.9.x releases, we introduced the multi interface slowly and
|
||||||
without much whistles.
|
without much whistles.
|
||||||
|
|
||||||
June 2002, the curl web site gets 13000 visits daily. curl and libcurl is
|
June 2002, the curl web site gets 13000 visits weekly. curl and libcurl is
|
||||||
35000 lines of code. Reported successful compiles on more than 40 combinations
|
35000 lines of code. Reported successful compiles on more than 40 combinations
|
||||||
of CPUs and operating systems.
|
of CPUs and operating systems.
|
||||||
|
|
||||||
@@ -111,3 +111,6 @@ distributions and otherwise retrieved as part of other software.
|
|||||||
|
|
||||||
September 2002, with the release of curl 7.10 it is released under the MIT
|
September 2002, with the release of curl 7.10 it is released under the MIT
|
||||||
license only.
|
license only.
|
||||||
|
|
||||||
|
February 2003, the curl site averages at 20000 visits weekly. At any given
|
||||||
|
moment, there's an average of 3 people browsing the curl.haxx.se site.
|
||||||
|
25
docs/HOWTO-RELEASE
Normal file
25
docs/HOWTO-RELEASE
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
Steps To Perform When Building a Public Release
|
||||||
|
|
||||||
|
* "make distcheck"
|
||||||
|
|
||||||
|
* ./maketgz
|
||||||
|
then upload the 3 curl packages maketgz created
|
||||||
|
|
||||||
|
* update these files:
|
||||||
|
www/_download.html
|
||||||
|
www/_changes.html
|
||||||
|
www/_newslog.html
|
||||||
|
www/Makefile
|
||||||
|
|
||||||
|
* commit the web changes
|
||||||
|
|
||||||
|
* 'cvs commit'
|
||||||
|
|
||||||
|
* 'cvs tag'
|
||||||
|
|
||||||
|
* write the release announcement, including:
|
||||||
|
- changes / bugfixes
|
||||||
|
- other curl-related news
|
||||||
|
- contributors
|
||||||
|
|
||||||
|
* mail release-announcement to curl-announce and curl-users
|
14
docs/INSTALL
14
docs/INSTALL
@@ -400,6 +400,17 @@ CROSS COMPILE
|
|||||||
The '--prefix' parameter specifies where cURL will be installed. If
|
The '--prefix' parameter specifies where cURL will be installed. If
|
||||||
'configure' completes successfully, do 'make' and 'make install' as usual.
|
'configure' completes successfully, do 'make' and 'make install' as usual.
|
||||||
|
|
||||||
|
RISC OS
|
||||||
|
=======
|
||||||
|
The library can be cross-compiled using gccsdk as follows:
|
||||||
|
|
||||||
|
CC=riscos-gcc AR=riscos-ar RANLIB='riscos-ar -s' ./configure \
|
||||||
|
--host=arm-riscos-aof --without-random --disable-shared
|
||||||
|
make
|
||||||
|
|
||||||
|
where riscos-gcc and riscos-ar are links to the gccsdk tools.
|
||||||
|
You can then link your program with curl/lib/.libs/libcurl.a
|
||||||
|
|
||||||
PORTS
|
PORTS
|
||||||
=====
|
=====
|
||||||
This is a probably incomplete list of known hardware and operating systems
|
This is a probably incomplete list of known hardware and operating systems
|
||||||
@@ -419,7 +430,7 @@ PORTS
|
|||||||
- MIPS IRIX 6.2, 6.5
|
- MIPS IRIX 6.2, 6.5
|
||||||
- MIPS Linux
|
- MIPS Linux
|
||||||
- Pocket PC/Win CE 3.0
|
- Pocket PC/Win CE 3.0
|
||||||
- Power AIX 4.2, 4.3.1, 4.3.2, 5.1
|
- Power AIX 3.2.5, 4.2, 4.3.1, 4.3.2, 5.1
|
||||||
- PowerPC Darwin 1.0
|
- PowerPC Darwin 1.0
|
||||||
- PowerPC Linux
|
- PowerPC Linux
|
||||||
- PowerPC Mac OS 9
|
- PowerPC Mac OS 9
|
||||||
@@ -448,6 +459,7 @@ PORTS
|
|||||||
- m68k Linux
|
- m68k Linux
|
||||||
- m68k OpenBSD
|
- m68k OpenBSD
|
||||||
- s390 Linux
|
- s390 Linux
|
||||||
|
- XScale/PXA250 Linux 2.4
|
||||||
|
|
||||||
OpenSSL
|
OpenSSL
|
||||||
=======
|
=======
|
||||||
|
@@ -15,6 +15,8 @@ may have been fixed since this was written!
|
|||||||
* configure --disable-http is not fully supported. All other protocols seem
|
* configure --disable-http is not fully supported. All other protocols seem
|
||||||
to work to disable.
|
to work to disable.
|
||||||
|
|
||||||
|
* The -m parameter does not work when using telnet with curl on Windows.
|
||||||
|
|
||||||
* If a HTTP server responds to a HEAD request and includes a body (thus
|
* If a HTTP server responds to a HEAD request and includes a body (thus
|
||||||
violating the RFC2616), curl won't wait to read the response but just stop
|
violating the RFC2616), curl won't wait to read the response but just stop
|
||||||
reading and return back. If a second request (let's assume a GET) is then
|
reading and return back. If a second request (let's assume a GET) is then
|
||||||
|
35
docs/MANUAL
35
docs/MANUAL
@@ -166,13 +166,21 @@ UPLOADING
|
|||||||
|
|
||||||
VERBOSE / DEBUG
|
VERBOSE / DEBUG
|
||||||
|
|
||||||
If curl fails where it isn't supposed to, if the servers don't let you
|
If curl fails where it isn't supposed to, if the servers don't let you in,
|
||||||
in, if you can't understand the responses: use the -v flag to get VERBOSE
|
if you can't understand the responses: use the -v flag to get verbose
|
||||||
fetching. Curl will output lots of info and all data it sends and
|
fetching. Curl will output lots of info and what it sends and receives in
|
||||||
receives in order to let the user see all client-server interaction.
|
order to let the user see all client-server interaction (but it won't show
|
||||||
|
you the actual data).
|
||||||
|
|
||||||
curl -v ftp://ftp.upload.com/
|
curl -v ftp://ftp.upload.com/
|
||||||
|
|
||||||
|
To get even more details and information on what curl does, try using the
|
||||||
|
--trace or --trace-ascii options with a given file name to log to, like
|
||||||
|
this:
|
||||||
|
|
||||||
|
curl --trace trace.txt www.haxx.se
|
||||||
|
|
||||||
|
|
||||||
DETAILED INFORMATION
|
DETAILED INFORMATION
|
||||||
|
|
||||||
Different protocols provide different ways of getting detailed information
|
Different protocols provide different ways of getting detailed information
|
||||||
@@ -350,6 +358,13 @@ COOKIES
|
|||||||
|
|
||||||
curl -b headers www.example.com
|
curl -b headers www.example.com
|
||||||
|
|
||||||
|
While saving headers to a file is a working way to store cookies, it is
|
||||||
|
however error-prone and not the prefered way to do this. Instead, make curl
|
||||||
|
save the incoming cookies using the well-known netscape cookie format like
|
||||||
|
this:
|
||||||
|
|
||||||
|
curl -c cookies.txt www.example.com
|
||||||
|
|
||||||
Note that by specifying -b you enable the "cookie awareness" and with -L
|
Note that by specifying -b you enable the "cookie awareness" and with -L
|
||||||
you can make curl follow a location: (which often is used in combination
|
you can make curl follow a location: (which often is used in combination
|
||||||
with cookies). So that if a site sends cookies and a location, you can
|
with cookies). So that if a site sends cookies and a location, you can
|
||||||
@@ -364,6 +379,10 @@ COOKIES
|
|||||||
stored cookies which match the request as it follows the location. The
|
stored cookies which match the request as it follows the location. The
|
||||||
file "empty.txt" may be a non-existant file.
|
file "empty.txt" may be a non-existant file.
|
||||||
|
|
||||||
|
Alas, to both read and write cookies from a netscape cookie file, you can
|
||||||
|
set both -b and -c to use the same file:
|
||||||
|
|
||||||
|
curl -b cookies.txt -c cookies.txt www.example.com
|
||||||
|
|
||||||
PROGRESS METER
|
PROGRESS METER
|
||||||
|
|
||||||
@@ -413,7 +432,8 @@ SPEED LIMIT
|
|||||||
|
|
||||||
Forcing curl not to transfer data faster than a given rate is also possible,
|
Forcing curl not to transfer data faster than a given rate is also possible,
|
||||||
which might be useful if you're using a limited bandwidth connection and you
|
which might be useful if you're using a limited bandwidth connection and you
|
||||||
don't want your transfer to use all of it.
|
don't want your transfer to use all of it (sometimes referred to as
|
||||||
|
"bandwith throttle").
|
||||||
|
|
||||||
Make curl transfer data no faster than 10 kilobytes per second:
|
Make curl transfer data no faster than 10 kilobytes per second:
|
||||||
|
|
||||||
@@ -427,6 +447,11 @@ SPEED LIMIT
|
|||||||
|
|
||||||
curl -T upload --limit-rate 1M ftp://uploadshereplease.com
|
curl -T upload --limit-rate 1M ftp://uploadshereplease.com
|
||||||
|
|
||||||
|
When using the --limit-rate option, the transfer rate is regulated on a
|
||||||
|
per-second basis, which will cause the total transfer speed to become lower
|
||||||
|
than the given number. Sometimes of course substantially lower, if your
|
||||||
|
transfer stalls during periods.
|
||||||
|
|
||||||
CONFIG FILE
|
CONFIG FILE
|
||||||
|
|
||||||
Curl automatically tries to read the .curlrc file (or _curlrc file on win32
|
Curl automatically tries to read the .curlrc file (or _curlrc file on win32
|
||||||
|
@@ -10,7 +10,8 @@ man_MANS = \
|
|||||||
|
|
||||||
HTMLPAGES = \
|
HTMLPAGES = \
|
||||||
curl.html \
|
curl.html \
|
||||||
curl-config.html
|
curl-config.html \
|
||||||
|
index.html
|
||||||
|
|
||||||
PDFPAGES = \
|
PDFPAGES = \
|
||||||
curl.pdf \
|
curl.pdf \
|
||||||
|
@@ -82,3 +82,8 @@ that have contributed with non-trivial parts:
|
|||||||
- Andreas Damm <andreas-sourceforge@radab.org>
|
- Andreas Damm <andreas-sourceforge@radab.org>
|
||||||
- Jacky Lam <sylam@emsoftltd.com>
|
- Jacky Lam <sylam@emsoftltd.com>
|
||||||
- James Gallagher <jgallagher@gso.uri.edu>
|
- James Gallagher <jgallagher@gso.uri.edu>
|
||||||
|
- Kjetil Jacobsen <kjetilja@cs.uit.no>
|
||||||
|
- Markus F.X.J. Oberhumer <markus@oberhumer.com>
|
||||||
|
- Miklos Nemeth <mnemeth@kfkisystems.com>
|
||||||
|
- Kevin Roth <kproth@users.sourceforge.net>
|
||||||
|
- Ralph Mitchell <rmitchell@eds.com>
|
||||||
|
40
docs/TODO
40
docs/TODO
@@ -24,9 +24,9 @@ TODO
|
|||||||
less copy of data and thus a faster operation.
|
less copy of data and thus a faster operation.
|
||||||
[http://curl.haxx.se/dev/no_copy_callbacks.txt]
|
[http://curl.haxx.se/dev/no_copy_callbacks.txt]
|
||||||
|
|
||||||
* Add asynchronous name resolving (http://daniel.haxx.se/resolver/). This
|
* Add asynchronous name resolving (http://libdenise.sf.net/). This should be
|
||||||
should be made to work on most of the supported platforms, or otherwise it
|
made to work on most of the supported platforms, or otherwise it isn't
|
||||||
isn't really interesting.
|
really interesting.
|
||||||
|
|
||||||
* Data sharing. Tell which easy handles within a multi handle that should
|
* Data sharing. Tell which easy handles within a multi handle that should
|
||||||
share cookies, connection cache, dns cache, ssl session cache. Full
|
share cookies, connection cache, dns cache, ssl session cache. Full
|
||||||
@@ -57,12 +57,15 @@ TODO
|
|||||||
LIBCURL - multi interface
|
LIBCURL - multi interface
|
||||||
|
|
||||||
* Make sure we don't ever loop because of non-blocking sockets return
|
* Make sure we don't ever loop because of non-blocking sockets return
|
||||||
EWOULDBLOCK or similar. This FTP command sending etc.
|
EWOULDBLOCK or similar. This FTP command sending, the SSL connection etc.
|
||||||
|
|
||||||
* Make uploads treated better. We need a way to tell libcurl we have data to
|
* Make transfers treated more carefully. We need a way to tell libcurl we
|
||||||
write, as the current system expects us to upload data each time the socket
|
have data to write, as the current system expects us to upload data each
|
||||||
is writable and there is no way to say that we want to upload data soon
|
time the socket is writable and there is no way to say that we want to
|
||||||
just not right now, without that aborting the upload.
|
upload data soon just not right now, without that aborting the upload. The
|
||||||
|
opposite situation should be possible as well, that we tell libcurl we're
|
||||||
|
ready to accept read data. Today libcurl feeds the data as soon as it is
|
||||||
|
available for reading, no matter what.
|
||||||
|
|
||||||
DOCUMENTATION
|
DOCUMENTATION
|
||||||
|
|
||||||
@@ -90,11 +93,12 @@ TODO
|
|||||||
|
|
||||||
HTTP
|
HTTP
|
||||||
|
|
||||||
* Pass a list of host name to libcurl to which we allow the user name and
|
* If the "body" of the POST is < MSS it really aught to be sent along with
|
||||||
password to get sent to. Currently, it only get sent to the host name that
|
the headers. More generally, if the last chunk of the POST body is < MSS,
|
||||||
the first URL uses (to prevent others from being able to read it), but this
|
it should be sent with the previous chunk (which may be the POST headers).
|
||||||
also prevents the authentication info from getting sent when following
|
So long as any one send is larger than MSS (or there is only one send when
|
||||||
locations to legitimate other host names.
|
< MSS :), the Nagle Algorithm will not be a problem on any stack where
|
||||||
|
Nagle is implemented correctly. (pointed out by Rick Jones)
|
||||||
|
|
||||||
* Authentication: NTLM. Support for that MS crap called NTLM
|
* Authentication: NTLM. Support for that MS crap called NTLM
|
||||||
authentication. MS proxies and servers sometime require that. Since that
|
authentication. MS proxies and servers sometime require that. Since that
|
||||||
@@ -199,6 +203,9 @@ TODO
|
|||||||
|
|
||||||
TEST SUITE
|
TEST SUITE
|
||||||
|
|
||||||
|
* If perl wasn't found by the configure script, don't attempt to run the
|
||||||
|
tests but explain something nice why it doesn't.
|
||||||
|
|
||||||
* Extend the test suite to include more protocols. The telnet could just do
|
* Extend the test suite to include more protocols. The telnet could just do
|
||||||
ftp or http operations (for which we have test servers).
|
ftp or http operations (for which we have test servers).
|
||||||
|
|
||||||
@@ -206,3 +213,10 @@ TODO
|
|||||||
fork()s and it should become even more portable.
|
fork()s and it should become even more portable.
|
||||||
|
|
||||||
* Introduce a test suite that tests libcurl better and more explicitly.
|
* Introduce a test suite that tests libcurl better and more explicitly.
|
||||||
|
|
||||||
|
NEXT MAJOR RELEASE
|
||||||
|
|
||||||
|
* curl_easy_cleanup() returns void, but curl_multi_cleanup() returns a
|
||||||
|
CURLMcode. These should be changed to be the same.
|
||||||
|
|
||||||
|
* curl_formparse() should be removed
|
||||||
|
33
docs/curl.1
33
docs/curl.1
@@ -2,7 +2,7 @@
|
|||||||
.\" nroff -man curl.1
|
.\" nroff -man curl.1
|
||||||
.\" Written by Daniel Stenberg
|
.\" Written by Daniel Stenberg
|
||||||
.\"
|
.\"
|
||||||
.TH curl 1 "11 Sep 2002" "Curl 7.10" "Curl Manual"
|
.TH curl 1 "14 Feb 2003" "Curl 7.10.3" "Curl Manual"
|
||||||
.SH NAME
|
.SH NAME
|
||||||
curl \- transfer a URL
|
curl \- transfer a URL
|
||||||
.SH SYNOPSIS
|
.SH SYNOPSIS
|
||||||
@@ -217,14 +217,21 @@ If this option is used several times, the last one will be used.
|
|||||||
peer. The file may contain multiple CA certificates. The certificate(s) must
|
peer. The file may contain multiple CA certificates. The certificate(s) must
|
||||||
be in PEM format.
|
be in PEM format.
|
||||||
|
|
||||||
|
curl recognizes the environment variable named 'CURL_CA_BUNDLE' if that is
|
||||||
|
set, and uses the given path as a path to a CA cert bundle. This option
|
||||||
|
overrides that variable.
|
||||||
|
|
||||||
|
The windows version of curl will automatically look for a CA certs file named
|
||||||
|
\'curl-ca-bundle.crt\', either in the same directory as curl.exe, or in the
|
||||||
|
Current Working Directory, or in any folder along your PATH.
|
||||||
|
|
||||||
If this option is used several times, the last one will be used.
|
If this option is used several times, the last one will be used.
|
||||||
.IP "--capath <CA certificate directory>"
|
.IP "--capath <CA certificate directory>"
|
||||||
(HTTPS) Tells curl to use the specified certificate directory to verify the
|
(HTTPS) Tells curl to use the specified certificate directory to verify the
|
||||||
peer. The certificates must be in PEM format, and the directory must have been
|
peer. The certificates must be in PEM format, and the directory must have been
|
||||||
processed using the c_rehash utility supplied with openssl. Certificate directories
|
processed using the c_rehash utility supplied with openssl. Using --capath can
|
||||||
are not supported under Windows (because c_rehash uses symbolink links to
|
allow curl to make https connections much more efficiently than using --cacert
|
||||||
create them). Using --capath can allow curl to make https connections much
|
if the --cacert file contains many CA certificates.
|
||||||
more efficiently than using --cacert if the --cacert file contains many CA certificates.
|
|
||||||
|
|
||||||
If this option is used several times, the last one will be used.
|
If this option is used several times, the last one will be used.
|
||||||
.IP "-f/--fail"
|
.IP "-f/--fail"
|
||||||
@@ -347,8 +354,8 @@ url = "http://curl.haxx.se/docs/"
|
|||||||
This option can be used multiple times.
|
This option can be used multiple times.
|
||||||
.IP "--limit-rate <speed>"
|
.IP "--limit-rate <speed>"
|
||||||
Specify the maximum transfer rate you want curl to use. This feature is useful
|
Specify the maximum transfer rate you want curl to use. This feature is useful
|
||||||
if you have a limited pipe and you'd prefer you have your transfer not use
|
if you have a limited pipe and you'd like your transfer not use your entire
|
||||||
your entire bandwidth.
|
bandwidth.
|
||||||
|
|
||||||
The given speed is measured in bytes/second, unless a suffix is
|
The given speed is measured in bytes/second, unless a suffix is
|
||||||
appended. Appending 'k' or 'K' will count the number as kilobytes, 'm' or M'
|
appended. Appending 'k' or 'K' will count the number as kilobytes, 'm' or M'
|
||||||
@@ -586,9 +593,9 @@ read for untrained humans.
|
|||||||
If this option is used several times, the last one will be used. (Added in
|
If this option is used several times, the last one will be used. (Added in
|
||||||
curl 7.9.7)
|
curl 7.9.7)
|
||||||
.IP "-u/--user <user:password>"
|
.IP "-u/--user <user:password>"
|
||||||
Specify user and password to use when fetching. See README.curl for detailed
|
Specify user and password to use when fetching. Read the MANUAL for detailed
|
||||||
examples of how to use this. If no password is specified, curl will
|
examples of how to use this. If no password is specified, curl will ask for it
|
||||||
ask for it interactively.
|
interactively.
|
||||||
|
|
||||||
If this option is used several times, the last one will be used.
|
If this option is used several times, the last one will be used.
|
||||||
.IP "-U/--proxy-user <user:password>"
|
.IP "-U/--proxy-user <user:password>"
|
||||||
@@ -614,6 +621,9 @@ info provided by curl.
|
|||||||
Note that if you want to see HTTP headers in the output, \fI-i/--include\fP
|
Note that if you want to see HTTP headers in the output, \fI-i/--include\fP
|
||||||
might be option you're looking for.
|
might be option you're looking for.
|
||||||
|
|
||||||
|
If you think this option still doesn't give you enough details, consider using
|
||||||
|
\fI--trace\fP or \fI--trace-ascii\fP instead.
|
||||||
|
|
||||||
If this option is used twice, the second will again disable verbose.
|
If this option is used twice, the second will again disable verbose.
|
||||||
.IP "-V/--version"
|
.IP "-V/--version"
|
||||||
Displays the full version of curl, libcurl and other 3rd party libraries
|
Displays the full version of curl, libcurl and other 3rd party libraries
|
||||||
@@ -834,7 +844,8 @@ FTP write error. The transfer was reported bad by the server.
|
|||||||
.IP 21
|
.IP 21
|
||||||
FTP quote error. A quote command returned error from the server.
|
FTP quote error. A quote command returned error from the server.
|
||||||
.IP 22
|
.IP 22
|
||||||
HTTP not found. The requested page was not found. This return code only
|
HTTP page not retrieved. The requested url was not found or returned another
|
||||||
|
error with the HTTP error code being 400 or above. This return code only
|
||||||
appears if --fail is used.
|
appears if --fail is used.
|
||||||
.IP 23
|
.IP 23
|
||||||
Write error. Curl couldn't write data to a local filesystem or similar.
|
Write error. Curl couldn't write data to a local filesystem or similar.
|
||||||
|
@@ -22,10 +22,13 @@
|
|||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <sys/time.h>
|
#include <sys/time.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
|
||||||
#include <curl/curl.h>
|
#include <curl/curl.h>
|
||||||
#include <curl/types.h>
|
|
||||||
#include <curl/easy.h>
|
#if (LIBCURL_VERSION_NUM < 0x070907)
|
||||||
|
#error "too old libcurl version, get the latest!"
|
||||||
|
#endif
|
||||||
|
|
||||||
struct data {
|
struct data {
|
||||||
int type;
|
int type;
|
||||||
@@ -34,8 +37,8 @@ struct data {
|
|||||||
FILE *file;
|
FILE *file;
|
||||||
} handle;
|
} handle;
|
||||||
|
|
||||||
/* TODO: We should perhaps document the biggest possible buffer chunk we can
|
/* This is the documented biggest possible buffer chunk we can get from
|
||||||
get from libcurl in one single callback... */
|
libcurl in one single callback! */
|
||||||
char buffer[CURL_MAX_WRITE_SIZE];
|
char buffer[CURL_MAX_WRITE_SIZE];
|
||||||
|
|
||||||
char *readptr; /* read from here */
|
char *readptr; /* read from here */
|
||||||
@@ -62,6 +65,8 @@ size_t write_callback(char *buffer,
|
|||||||
url->readptr += size;
|
url->readptr += size;
|
||||||
url->bytes += size;
|
url->bytes += size;
|
||||||
|
|
||||||
|
fprintf(stderr, "callback %d size bytes\n", size);
|
||||||
|
|
||||||
return size;
|
return size;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -72,6 +77,7 @@ URL_FILE *url_fopen(char *url, char *operation)
|
|||||||
|
|
||||||
URL_FILE *file;
|
URL_FILE *file;
|
||||||
int still_running;
|
int still_running;
|
||||||
|
(void)operation;
|
||||||
|
|
||||||
file = (URL_FILE *)malloc(sizeof(URL_FILE));
|
file = (URL_FILE *)malloc(sizeof(URL_FILE));
|
||||||
if(!file)
|
if(!file)
|
||||||
@@ -134,11 +140,13 @@ size_t url_fread(void *ptr, size_t size, size_t nmemb, URL_FILE *file)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(!still_running) {
|
if(!still_running) {
|
||||||
printf("NO MORE RUNNING AROUND!\n");
|
printf("DONE RUNNING AROUND!\n");
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
do {
|
||||||
|
|
||||||
FD_ZERO(&fdread);
|
FD_ZERO(&fdread);
|
||||||
FD_ZERO(&fdwrite);
|
FD_ZERO(&fdwrite);
|
||||||
FD_ZERO(&fdexcep);
|
FD_ZERO(&fdexcep);
|
||||||
@@ -160,6 +168,7 @@ size_t url_fread(void *ptr, size_t size, size_t nmemb, URL_FILE *file)
|
|||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
/* timeout or readable/writable sockets */
|
/* timeout or readable/writable sockets */
|
||||||
|
printf("select() returned %d!\n", rc);
|
||||||
do {
|
do {
|
||||||
file->m = curl_multi_perform(multi_handle, &still_running);
|
file->m = curl_multi_perform(multi_handle, &still_running);
|
||||||
|
|
||||||
@@ -171,10 +180,11 @@ size_t url_fread(void *ptr, size_t size, size_t nmemb, URL_FILE *file)
|
|||||||
|
|
||||||
|
|
||||||
if(!still_running)
|
if(!still_running)
|
||||||
printf("NO MORE RUNNING AROUND!\n");
|
printf("DONE RUNNING AROUND!\n");
|
||||||
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
} while(still_running && (file->bytes <= 0));
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
printf("(fread) Skip network read\n");
|
printf("(fread) Skip network read\n");
|
||||||
@@ -204,7 +214,10 @@ int main(int argc, char *argv[])
|
|||||||
int nread;
|
int nread;
|
||||||
char buffer[256];
|
char buffer[256];
|
||||||
|
|
||||||
handle = url_fopen("http://www.haxx.se", "r");
|
(void)argc;
|
||||||
|
(void)argv;
|
||||||
|
|
||||||
|
handle = url_fopen("http://curl.haxx.se/", "r");
|
||||||
|
|
||||||
if(!handle) {
|
if(!handle) {
|
||||||
printf("couldn't url_fopen()\n");
|
printf("couldn't url_fopen()\n");
|
||||||
|
@@ -11,6 +11,9 @@
|
|||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
|
|
||||||
#include <curl/curl.h>
|
#include <curl/curl.h>
|
||||||
|
#include <sys/types.h>
|
||||||
|
#include <sys/stat.h>
|
||||||
|
#include <fcntl.h>
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* This example shows an FTP upload, with a rename of the file just after
|
* This example shows an FTP upload, with a rename of the file just after
|
||||||
|
@@ -74,6 +74,10 @@ int main(int argc, char **argv)
|
|||||||
* bytes big and contains the remote file.
|
* bytes big and contains the remote file.
|
||||||
*
|
*
|
||||||
* Do something nice with it!
|
* Do something nice with it!
|
||||||
|
*
|
||||||
|
* You should be aware of the fact that at this point we might have an
|
||||||
|
* allocated data block, and nothing has yet deallocated that data. So when
|
||||||
|
* you're done with it, you should free() it as a nice application.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
@@ -21,7 +21,7 @@
|
|||||||
|
|
||||||
size_t write_data(void *ptr, size_t size, size_t nmemb, void *stream)
|
size_t write_data(void *ptr, size_t size, size_t nmemb, void *stream)
|
||||||
{
|
{
|
||||||
written = fwrite(ptr, size, nmemb, (FILE *)stream);
|
int written = fwrite(ptr, size, nmemb, (FILE *)stream);
|
||||||
return written;
|
return written;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -315,8 +315,16 @@ user.
|
|||||||
.TP
|
.TP
|
||||||
.B CURLOPT_USERPWD
|
.B CURLOPT_USERPWD
|
||||||
Pass a char * as parameter, which should be [user name]:[password] to use for
|
Pass a char * as parameter, which should be [user name]:[password] to use for
|
||||||
the connection. If the password is left out, you will be prompted for it.
|
the connection. If both the colon and password is left out, you will be
|
||||||
\fICURLOPT_PASSWDFUNCTION\fP can be used to set your own prompt function.
|
prompted for it while using a colon with no password will make libcurl use an
|
||||||
|
empty password. \fICURLOPT_PASSWDFUNCTION\fP can be used to set your own
|
||||||
|
prompt function.
|
||||||
|
|
||||||
|
When using HTTP and CURLOPT_FOLLOWLOCATION, libcurl might perform several
|
||||||
|
requests to possibly different hosts. libcurl will only send this user and
|
||||||
|
password information to hosts using the initial host name, so if libcurl
|
||||||
|
follows locations to other hosts it will not send the user and password to
|
||||||
|
those. This is enforced to prevent accidental information leakage.
|
||||||
.TP
|
.TP
|
||||||
.B CURLOPT_PROXYUSERPWD
|
.B CURLOPT_PROXYUSERPWD
|
||||||
Pass a char * as parameter, which should be [user name]:[password] to use for
|
Pass a char * as parameter, which should be [user name]:[password] to use for
|
||||||
@@ -341,6 +349,11 @@ new location and follow new Location: headers all the way until no more such
|
|||||||
headers are returned. \fICURLOPT_MAXREDIRS\fP can be used to limit the number
|
headers are returned. \fICURLOPT_MAXREDIRS\fP can be used to limit the number
|
||||||
of redirects libcurl will follow.
|
of redirects libcurl will follow.
|
||||||
.TP
|
.TP
|
||||||
|
.B CURLOPT_UNRESTRICTED_AUTH
|
||||||
|
A non-zero parameter tells the library it can continue to send authentication
|
||||||
|
(user+password) when following locations, even when hostname changed. Note
|
||||||
|
that this is meaningful only when setting \fICURLOPT_FOLLOWLOCATION\fP.
|
||||||
|
.TP
|
||||||
.B CURLOPT_MAXREDIRS
|
.B CURLOPT_MAXREDIRS
|
||||||
Pass a long. The set number will be the redirection limit. If that many
|
Pass a long. The set number will be the redirection limit. If that many
|
||||||
redirections have been followed, the next redirect will cause an error
|
redirections have been followed, the next redirect will cause an error
|
||||||
@@ -361,9 +374,14 @@ will imply this option.
|
|||||||
.TP
|
.TP
|
||||||
.B CURLOPT_POSTFIELDS
|
.B CURLOPT_POSTFIELDS
|
||||||
Pass a char * as parameter, which should be the full data to post in a HTTP
|
Pass a char * as parameter, which should be the full data to post in a HTTP
|
||||||
post operation. This is a normal application/x-www-form-urlencoded kind, which
|
post operation. You need to make sure that the data is formatted the way you
|
||||||
is the most commonly used one by HTML forms. See also the CURLOPT_POST. Since
|
want the server to receive it. libcurl will not convert or encode it for
|
||||||
7.8, using CURLOPT_POSTFIELDS implies CURLOPT_POST.
|
you. Most web servers will assume this data to be url-encoded. Take note.
|
||||||
|
|
||||||
|
This POST is a normal application/x-www-form-urlencoded kind (and libcurl will
|
||||||
|
set that Content-Type by default when this option is used), which is the most
|
||||||
|
commonly used one by HTML forms. See also the CURLOPT_POST. Using
|
||||||
|
CURLOPT_POSTFIELDS implies CURLOPT_POST.
|
||||||
|
|
||||||
\fBNote:\fP to make multipart/formdata posts (aka rfc1867-posts), check out
|
\fBNote:\fP to make multipart/formdata posts (aka rfc1867-posts), check out
|
||||||
the \fICURLOPT_HTTPPOST\fP option.
|
the \fICURLOPT_HTTPPOST\fP option.
|
||||||
@@ -502,6 +520,9 @@ tells the remote server to connect to our specified IP address. The string may
|
|||||||
be a plain IP address, a host name, an network interface name (under Unix) or
|
be a plain IP address, a host name, an network interface name (under Unix) or
|
||||||
just a '-' letter to let the library use your systems default IP
|
just a '-' letter to let the library use your systems default IP
|
||||||
address. Default FTP operations are passive, and thus won't use PORT.
|
address. Default FTP operations are passive, and thus won't use PORT.
|
||||||
|
|
||||||
|
You disable PORT again and go back to using the passive version by setting
|
||||||
|
this option to NULL.
|
||||||
.TP
|
.TP
|
||||||
.B CURLOPT_QUOTE
|
.B CURLOPT_QUOTE
|
||||||
Pass a pointer to a linked list of FTP commands to pass to the server prior to
|
Pass a pointer to a linked list of FTP commands to pass to the server prior to
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
.\" $Id$
|
.\" $Id$
|
||||||
.\"
|
.\"
|
||||||
.TH curl_multi_info_read 3 "1 March 2002" "libcurl 7.9.5" "libcurl Manual"
|
.TH curl_multi_info_read 3 "27 Feb 2002" "libcurl 7.10.3" "libcurl Manual"
|
||||||
.SH NAME
|
.SH NAME
|
||||||
curl_multi_info_read - read multi stack informationals
|
curl_multi_info_read - read multi stack informationals
|
||||||
.SH SYNOPSIS
|
.SH SYNOPSIS
|
||||||
@@ -10,15 +10,15 @@ CURLMsg *curl_multi_info_read( CURLM *multi_handle,
|
|||||||
int *msgs_in_queue);
|
int *msgs_in_queue);
|
||||||
.ad
|
.ad
|
||||||
.SH DESCRIPTION
|
.SH DESCRIPTION
|
||||||
Ask the multi handle if there's any messages/informationals from the
|
Ask the multi handle if there are any messages/informationals from the
|
||||||
individual transfers. Messages include informationals such as an error code
|
individual transfers. Messages may include informationals such as an error
|
||||||
from the transfer or just the fact that a transfer is completed. More details
|
code from the transfer or just the fact that a transfer is completed. More
|
||||||
on these should be written down as well.
|
details on these should be written down as well.
|
||||||
|
|
||||||
Repeated calls to this function will return a new struct each time, until a
|
Repeated calls to this function will return a new struct each time, until a
|
||||||
special "end of msgs" struct is returned as a signal that there is no more to
|
NULL is returned as a signal that there is no more to get at this point. The
|
||||||
get at this point. The integer pointed to with \fImsgs_in_queue\fP will
|
integer pointed to with \fImsgs_in_queue\fP will contain the number of
|
||||||
contain the number of remaining messages after this function was called.
|
remaining messages after this function was called.
|
||||||
|
|
||||||
The data the returned pointer points to will not survive calling
|
The data the returned pointer points to will not survive calling
|
||||||
curl_multi_cleanup().
|
curl_multi_cleanup().
|
||||||
@@ -26,7 +26,16 @@ curl_multi_cleanup().
|
|||||||
The 'CURLMsg' struct is very simple and only contain very basic informations.
|
The 'CURLMsg' struct is very simple and only contain very basic informations.
|
||||||
If more involved information is wanted, the particular "easy handle" in
|
If more involved information is wanted, the particular "easy handle" in
|
||||||
present in that struct and can thus be used in subsequent regular
|
present in that struct and can thus be used in subsequent regular
|
||||||
curl_easy_getinfo() calls (or similar).
|
curl_easy_getinfo() calls (or similar):
|
||||||
|
|
||||||
|
struct CURLMsg {
|
||||||
|
CURLMSG msg; /* what this message means */
|
||||||
|
CURL *easy_handle; /* the handle it concerns */
|
||||||
|
union {
|
||||||
|
void *whatever; /* message-specific data */
|
||||||
|
CURLcode result; /* return code for transfer */
|
||||||
|
} data;
|
||||||
|
};
|
||||||
.SH "RETURN VALUE"
|
.SH "RETURN VALUE"
|
||||||
A pointer to a filled-in struct, or NULL if it failed or ran out of
|
A pointer to a filled-in struct, or NULL if it failed or ran out of
|
||||||
structs. It also writes the number of messages left in the queue (after this
|
structs. It also writes the number of messages left in the queue (after this
|
||||||
|
@@ -14,6 +14,9 @@ specified easy handle be removed from this multi handle's control.
|
|||||||
|
|
||||||
When the easy handle has been removed from a multi stack, it is again
|
When the easy handle has been removed from a multi stack, it is again
|
||||||
perfectly legal to invoke \fIcurl_easy_perform()\fP on this easy handle.
|
perfectly legal to invoke \fIcurl_easy_perform()\fP on this easy handle.
|
||||||
|
|
||||||
|
Removing a handle while being used, will effectively halt all transfers in
|
||||||
|
progress.
|
||||||
.SH RETURN VALUE
|
.SH RETURN VALUE
|
||||||
CURLMcode type, general libcurl multi interface error code.
|
CURLMcode type, general libcurl multi interface error code.
|
||||||
.SH "SEE ALSO"
|
.SH "SEE ALSO"
|
||||||
|
@@ -2,7 +2,7 @@
|
|||||||
.\" nroff -man [file]
|
.\" nroff -man [file]
|
||||||
.\" $Id$
|
.\" $Id$
|
||||||
.\"
|
.\"
|
||||||
.TH curl_slist_append 3 "5 March 2001" "libcurl 7.0" "libcurl Manual"
|
.TH curl_slist_append 3 "21 Feb 2003" "libcurl 7.10.4" "libcurl Manual"
|
||||||
.SH NAME
|
.SH NAME
|
||||||
curl_slist_append - add a string to an slist
|
curl_slist_append - add a string to an slist
|
||||||
.SH SYNOPSIS
|
.SH SYNOPSIS
|
||||||
@@ -13,17 +13,26 @@ curl_slist_append - add a string to an slist
|
|||||||
.ad
|
.ad
|
||||||
.SH DESCRIPTION
|
.SH DESCRIPTION
|
||||||
curl_slist_append() appends a specified string to a linked list of
|
curl_slist_append() appends a specified string to a linked list of
|
||||||
strings. The existing
|
strings. The existing \fIlist\fP should be passed as the first argument while
|
||||||
.I list
|
the new list is returned from this function. The specified \fIstring\fP has
|
||||||
should be passed as the first argument while the new list is returned from
|
been appended when this function returns.
|
||||||
this function. The specified
|
|
||||||
.I string
|
The list should be freed again (after usage) with \fBcurl_slist_free_all()\fP.
|
||||||
has been appended when this function returns.
|
|
||||||
.SH RETURN VALUE
|
.SH RETURN VALUE
|
||||||
A null pointer is returned if anything went wrong, otherwise the new list
|
A null pointer is returned if anything went wrong, otherwise the new list
|
||||||
pointer is returned.
|
pointer is returned.
|
||||||
|
.SH EXAMPLE
|
||||||
|
CURL handle;
|
||||||
|
curl_slist *slist=NULL;
|
||||||
|
|
||||||
|
slist = curl_slist_append(slist, "pragma:");
|
||||||
|
curl_easy_setopt(handle, CURLOPT_HTTPHEADER, slist);
|
||||||
|
|
||||||
|
curl_easy_perform(handle);
|
||||||
|
|
||||||
|
curl_slist_free_all(slist); /* free the list again */
|
||||||
.SH "SEE ALSO"
|
.SH "SEE ALSO"
|
||||||
.BR curl_slist_free_all "(3), "
|
.BR curl_slist_free_all "(3), "
|
||||||
.SH BUGS
|
.SH BUGS
|
||||||
Surely there are some, you tell me!
|
None.
|
||||||
|
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -619,6 +619,11 @@ typedef enum {
|
|||||||
/* Set aliases for HTTP 200 in the HTTP Response header */
|
/* Set aliases for HTTP 200 in the HTTP Response header */
|
||||||
CINIT(HTTP200ALIASES, OBJECTPOINT, 104),
|
CINIT(HTTP200ALIASES, OBJECTPOINT, 104),
|
||||||
|
|
||||||
|
/* Continue to send authentication (user+password) when following locations,
|
||||||
|
even when hostname changed. This can potentionally send off the name
|
||||||
|
and password to whatever host the server decides. */
|
||||||
|
CINIT(UNRESTRICTED_AUTH, LONG, 105),
|
||||||
|
|
||||||
CURLOPT_LASTENTRY /* the last unused */
|
CURLOPT_LASTENTRY /* the last unused */
|
||||||
} CURLoption;
|
} CURLoption;
|
||||||
|
|
||||||
@@ -696,8 +701,6 @@ typedef enum {
|
|||||||
*/
|
*/
|
||||||
extern int (curl_strequal)(const char *s1, const char *s2);
|
extern int (curl_strequal)(const char *s1, const char *s2);
|
||||||
extern int (curl_strnequal)(const char *s1, const char *s2, size_t n);
|
extern int (curl_strnequal)(const char *s1, const char *s2, size_t n);
|
||||||
#define strequal(a,b) curl_strequal(a,b)
|
|
||||||
#define strnequal(a,b,c) curl_strnequal(a,b,c)
|
|
||||||
|
|
||||||
/* DEPRECATED function to build formdata */
|
/* DEPRECATED function to build formdata */
|
||||||
int curl_formparse(char *, struct curl_httppost **,
|
int curl_formparse(char *, struct curl_httppost **,
|
||||||
@@ -811,8 +814,8 @@ CURLcode curl_global_init(long flags);
|
|||||||
void curl_global_cleanup(void);
|
void curl_global_cleanup(void);
|
||||||
|
|
||||||
/* This is the version number */
|
/* This is the version number */
|
||||||
#define LIBCURL_VERSION "7.10.3"
|
#define LIBCURL_VERSION "7.10.4"
|
||||||
#define LIBCURL_VERSION_NUM 0x070a03
|
#define LIBCURL_VERSION_NUM 0x070a04
|
||||||
|
|
||||||
/* linked-list structure for the CURLOPT_QUOTE option (and other) */
|
/* linked-list structure for the CURLOPT_QUOTE option (and other) */
|
||||||
struct curl_slist {
|
struct curl_slist {
|
||||||
@@ -902,10 +905,15 @@ typedef enum {
|
|||||||
/* Different data locks for a single share */
|
/* Different data locks for a single share */
|
||||||
typedef enum {
|
typedef enum {
|
||||||
CURL_LOCK_DATA_NONE = 0,
|
CURL_LOCK_DATA_NONE = 0,
|
||||||
CURL_LOCK_DATA_COOKIE = 1,
|
/* CURL_LOCK_DATA_SHARE is used internaly to say that
|
||||||
CURL_LOCK_DATA_DNS = 2,
|
* the locking is just made to change the internal state of the share
|
||||||
CURL_LOCK_DATA_SSL_SESSION = 3,
|
* itself.
|
||||||
CURL_LOCK_DATA_CONNECT = 4,
|
*/
|
||||||
|
CURL_LOCK_DATA_SHARE,
|
||||||
|
CURL_LOCK_DATA_COOKIE,
|
||||||
|
CURL_LOCK_DATA_DNS,
|
||||||
|
CURL_LOCK_DATA_SSL_SESSION,
|
||||||
|
CURL_LOCK_DATA_CONNECT,
|
||||||
CURL_LOCK_DATA_LAST
|
CURL_LOCK_DATA_LAST
|
||||||
} curl_lock_data;
|
} curl_lock_data;
|
||||||
|
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
|
@@ -1,54 +1,25 @@
|
|||||||
/*************************************************************************
|
/***************************************************************************
|
||||||
|
* _ _ ____ _
|
||||||
|
* Project ___| | | | _ \| |
|
||||||
|
* / __| | | | |_) | |
|
||||||
|
* | (__| |_| | _ <| |___
|
||||||
|
* \___|\___/|_| \_\_____|
|
||||||
|
*
|
||||||
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
|
*
|
||||||
|
* This software is licensed as described in the file COPYING, which
|
||||||
|
* you should have received as part of this distribution. The terms
|
||||||
|
* are also available at http://curl.haxx.se/docs/copyright.html.
|
||||||
|
*
|
||||||
|
* You may opt to use, copy, modify, merge, publish, distribute and/or sell
|
||||||
|
* copies of the Software, and permit persons to whom the Software is
|
||||||
|
* furnished to do so, under the terms of the COPYING file.
|
||||||
|
*
|
||||||
|
* This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
|
||||||
|
* KIND, either express or implied.
|
||||||
*
|
*
|
||||||
* $Id$
|
* $Id$
|
||||||
*
|
***************************************************************************/
|
||||||
* Permission to use, copy, modify, and distribute this software for any
|
|
||||||
* purpose with or without fee is hereby granted, provided that the above
|
|
||||||
* copyright notice and this permission notice appear in all copies.
|
|
||||||
*
|
|
||||||
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
|
|
||||||
* WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
|
|
||||||
* MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE AUTHORS AND
|
|
||||||
* CONTRIBUTORS ACCEPT NO RESPONSIBILITY IN ANY CONCEIVABLE MANNER.
|
|
||||||
*
|
|
||||||
*************************************************************************
|
|
||||||
*
|
|
||||||
* Preliminary documentation
|
|
||||||
*
|
|
||||||
* printf conversions:
|
|
||||||
*
|
|
||||||
* conversion ::= '%%' | '%' [position] ( number | float | string )
|
|
||||||
* position ::= digits '$'
|
|
||||||
* number ::= [number-flags] ( 'd' | 'i' | 'o' | 'x' | 'X' | 'u')
|
|
||||||
* number-flags ::= 'h' | 'l' | 'L' ...
|
|
||||||
* float ::= [float-flags] ( 'f' | 'e' | 'E' | 'g' | 'G' )
|
|
||||||
* string ::= [string-flags] 's'
|
|
||||||
* string-flags ::= padding | '#'
|
|
||||||
* digits ::= (digit)+
|
|
||||||
* digit ::= 0-9
|
|
||||||
*
|
|
||||||
* c
|
|
||||||
* p
|
|
||||||
* n
|
|
||||||
*
|
|
||||||
* qualifiers
|
|
||||||
*
|
|
||||||
* - : left adjustment
|
|
||||||
* + : show sign
|
|
||||||
* SPACE : padding
|
|
||||||
* # : alterative
|
|
||||||
* . : precision
|
|
||||||
* * : width
|
|
||||||
* 0 : padding / size
|
|
||||||
* 1-9 : size
|
|
||||||
* h : short
|
|
||||||
* l : long
|
|
||||||
* ll : longlong
|
|
||||||
* L : long double
|
|
||||||
* Z : long / longlong
|
|
||||||
* q : longlong
|
|
||||||
*
|
|
||||||
************************************************************************/
|
|
||||||
|
|
||||||
#ifndef H_MPRINTF
|
#ifndef H_MPRINTF
|
||||||
#define H_MPRINTF
|
#define H_MPRINTF
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -44,8 +44,6 @@
|
|||||||
o Enable the application to select() on its own file descriptors and curl's
|
o Enable the application to select() on its own file descriptors and curl's
|
||||||
file descriptors simultaneous easily.
|
file descriptors simultaneous easily.
|
||||||
|
|
||||||
Example sources using this interface is here: ../multi/
|
|
||||||
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#if defined(WIN32) && !defined(__GNUC__) || defined(__MINGW32__)
|
#if defined(WIN32) && !defined(__GNUC__) || defined(__MINGW32__)
|
||||||
@@ -53,10 +51,15 @@
|
|||||||
#else
|
#else
|
||||||
#include <sys/socket.h>
|
#include <sys/socket.h>
|
||||||
#include <sys/time.h>
|
#include <sys/time.h>
|
||||||
|
#include <sys/types.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#include "curl.h"
|
#include "curl.h"
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
|
||||||
typedef void CURLM;
|
typedef void CURLM;
|
||||||
|
|
||||||
typedef enum {
|
typedef enum {
|
||||||
@@ -71,7 +74,7 @@ typedef enum {
|
|||||||
|
|
||||||
typedef enum {
|
typedef enum {
|
||||||
CURLMSG_NONE, /* first, not used */
|
CURLMSG_NONE, /* first, not used */
|
||||||
CURLMSG_DONE, /* This easy handle has completed. 'whatever' points to
|
CURLMSG_DONE, /* This easy handle has completed. 'result' contains
|
||||||
the CURLcode of the transfer */
|
the CURLcode of the transfer */
|
||||||
CURLMSG_LAST /* last, not used */
|
CURLMSG_LAST /* last, not used */
|
||||||
} CURLMSG;
|
} CURLMSG;
|
||||||
@@ -187,4 +190,8 @@ CURLMcode curl_multi_cleanup(CURLM *multi_handle);
|
|||||||
CURLMsg *curl_multi_info_read(CURLM *multi_handle,
|
CURLMsg *curl_multi_info_read(CURLM *multi_handle,
|
||||||
int *msgs_in_queue);
|
int *msgs_in_queue);
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
} /* end of extern "C" */
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
|
@@ -7,3 +7,4 @@ Makefile
|
|||||||
config.h
|
config.h
|
||||||
stamp-*
|
stamp-*
|
||||||
ca-bundle.h
|
ca-bundle.h
|
||||||
|
getdate.c
|
||||||
|
@@ -66,7 +66,7 @@ getpass.c netrc.c telnet.h getinfo.c getinfo.h transfer.c strequal.c \
|
|||||||
strequal.h easy.c security.h security.c krb4.c krb4.h memdebug.c \
|
strequal.h easy.c security.h security.c krb4.c krb4.h memdebug.c \
|
||||||
memdebug.h inet_ntoa_r.h http_chunks.c http_chunks.h strtok.c strtok.h \
|
memdebug.h inet_ntoa_r.h http_chunks.c http_chunks.h strtok.c strtok.h \
|
||||||
connect.c connect.h llist.c llist.h hash.c hash.h multi.c \
|
connect.c connect.h llist.c llist.h hash.c hash.h multi.c \
|
||||||
content_encoding.c content_encoding.h share.h
|
content_encoding.c content_encoding.h share.c share.h
|
||||||
|
|
||||||
noinst_HEADERS = setup.h transfer.h
|
noinst_HEADERS = setup.h transfer.h
|
||||||
|
|
||||||
|
@@ -61,6 +61,7 @@ SOURCES = \
|
|||||||
strtok.c \
|
strtok.c \
|
||||||
connect.c \
|
connect.c \
|
||||||
hash.c \
|
hash.c \
|
||||||
|
share.c \
|
||||||
llist.c \
|
llist.c \
|
||||||
multi.c \
|
multi.c \
|
||||||
content_encoding.c
|
content_encoding.c
|
||||||
|
@@ -30,6 +30,7 @@
|
|||||||
+strtok.obj &
|
+strtok.obj &
|
||||||
+connect.obj &
|
+connect.obj &
|
||||||
+hash.obj &
|
+hash.obj &
|
||||||
|
+share.obj &
|
||||||
+llist.obj &
|
+llist.obj &
|
||||||
+multi.obj &
|
+multi.obj &
|
||||||
+content_encoding.obj
|
+content_encoding.obj
|
||||||
|
@@ -12,8 +12,8 @@ AR = ar
|
|||||||
RM = rm -f
|
RM = rm -f
|
||||||
RANLIB = ranlib
|
RANLIB = ranlib
|
||||||
STRIP = strip -g
|
STRIP = strip -g
|
||||||
OPENSSL_PATH = ../../openssl-0.9.6g
|
OPENSSL_PATH = ../../openssl-0.9.7a
|
||||||
ZLIB_PATH = ../../zlib-1.1.3
|
ZLIB_PATH = ../../zlib-1.1.4
|
||||||
|
|
||||||
########################################################
|
########################################################
|
||||||
## Nothing more to do below this line!
|
## Nothing more to do below this line!
|
||||||
@@ -22,12 +22,12 @@ INCLUDES = -I. -I.. -I../include -I../src
|
|||||||
CFLAGS = -g -O2 -DMINGW32
|
CFLAGS = -g -O2 -DMINGW32
|
||||||
ifdef SSL
|
ifdef SSL
|
||||||
INCLUDES += -I"$(OPENSSL_PATH)/outinc" -I"$(OPENSSL_PATH)/outinc/openssl"
|
INCLUDES += -I"$(OPENSSL_PATH)/outinc" -I"$(OPENSSL_PATH)/outinc/openssl"
|
||||||
CFLAGS += -DUSE_SSLEAY
|
CFLAGS += -DUSE_SSLEAY -DHAVE_OPENSSL_ENGINE_H
|
||||||
DLL_LIBS = -L$(OPENSSL_PATH)/out -leay32 -lssl32 -lRSAglue
|
DLL_LIBS = -L$(OPENSSL_PATH)/out -leay32 -lssl32
|
||||||
endif
|
endif
|
||||||
ifdef ZLIB
|
ifdef ZLIB
|
||||||
INCLUDES += -I"$(ZLIB_PATH)"
|
INCLUDES += -I"$(ZLIB_PATH)"
|
||||||
CFLAGS += -DHAVE_ZLIB
|
CFLAGS += -DHAVE_LIBZ -DHAVE_ZLIB_H
|
||||||
DLL_LIBS += -L$(ZLIB_PATH) -lz
|
DLL_LIBS += -L$(ZLIB_PATH) -lz
|
||||||
endif
|
endif
|
||||||
COMPILE = $(CC) $(INCLUDES) $(CFLAGS)
|
COMPILE = $(CC) $(INCLUDES) $(CFLAGS)
|
||||||
@@ -42,7 +42,7 @@ libcurl_a_SOURCES = arpa_telnet.h file.c getpass.h netrc.h timeval.c base64.c \
|
|||||||
ldap.h ssluse.h escape.c getenv.h mprintf.c telnet.c escape.h getpass.c netrc.c \
|
ldap.h ssluse.h escape.c getenv.h mprintf.c telnet.c escape.h getpass.c netrc.c \
|
||||||
telnet.h getinfo.c strequal.c strequal.h easy.c security.h \
|
telnet.h getinfo.c strequal.c strequal.h easy.c security.h \
|
||||||
security.c krb4.h krb4.c memdebug.h memdebug.c inet_ntoa_r.h http_chunks.h http_chunks.c \
|
security.c krb4.h krb4.c memdebug.h memdebug.c inet_ntoa_r.h http_chunks.h http_chunks.c \
|
||||||
strtok.c connect.c hash.c llist.c multi.c \
|
strtok.c connect.c hash.c llist.c multi.c share.c share.h\
|
||||||
content_encoding.h content_encoding.c
|
content_encoding.h content_encoding.c
|
||||||
|
|
||||||
libcurl_a_OBJECTS = file.o timeval.o base64.o hostip.o progress.o \
|
libcurl_a_OBJECTS = file.o timeval.o base64.o hostip.o progress.o \
|
||||||
@@ -50,7 +50,7 @@ libcurl_a_OBJECTS = file.o timeval.o base64.o hostip.o progress.o \
|
|||||||
speedcheck.o getdate.o transfer.o ldap.o ssluse.o version.o \
|
speedcheck.o getdate.o transfer.o ldap.o ssluse.o version.o \
|
||||||
getenv.o escape.o mprintf.o telnet.o getpass.o netrc.o getinfo.o \
|
getenv.o escape.o mprintf.o telnet.o getpass.o netrc.o getinfo.o \
|
||||||
strequal.o easy.o security.o krb4.o memdebug.o http_chunks.o \
|
strequal.o easy.o security.o krb4.o memdebug.o http_chunks.o \
|
||||||
strtok.o connect.o hash.o llist.o multi.o \
|
strtok.o connect.o hash.o llist.o multi.o share.o \
|
||||||
content_encoding.o
|
content_encoding.o
|
||||||
|
|
||||||
LIBRARIES = $(libcurl_a_LIBRARIES)
|
LIBRARIES = $(libcurl_a_LIBRARIES)
|
||||||
|
@@ -200,6 +200,7 @@ X_OBJS= \
|
|||||||
$(DIROBJ)\connect.obj \
|
$(DIROBJ)\connect.obj \
|
||||||
$(DIROBJ)\hash.obj \
|
$(DIROBJ)\hash.obj \
|
||||||
$(DIROBJ)\llist.obj \
|
$(DIROBJ)\llist.obj \
|
||||||
|
$(DIROBJ)\share.obj \
|
||||||
$(DIROBJ)\multi.obj
|
$(DIROBJ)\multi.obj
|
||||||
|
|
||||||
all : $(TARGET)
|
all : $(TARGET)
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -26,15 +26,15 @@
|
|||||||
/*
|
/*
|
||||||
* Telnet option defines. Add more here if in need.
|
* Telnet option defines. Add more here if in need.
|
||||||
*/
|
*/
|
||||||
#define TELOPT_BINARY 0 /* binary 8bit data */
|
#define CURL_TELOPT_BINARY 0 /* binary 8bit data */
|
||||||
#define TELOPT_SGA 3 /* Supress Go Ahead */
|
#define CURL_TELOPT_SGA 3 /* Supress Go Ahead */
|
||||||
#define TELOPT_EXOPL 255 /* EXtended OPtions List */
|
#define CURL_TELOPT_EXOPL 255 /* EXtended OPtions List */
|
||||||
#define TELOPT_TTYPE 24 /* Terminal TYPE */
|
#define CURL_TELOPT_TTYPE 24 /* Terminal TYPE */
|
||||||
#define TELOPT_XDISPLOC 35 /* X DISPlay LOCation */
|
#define CURL_TELOPT_XDISPLOC 35 /* X DISPlay LOCation */
|
||||||
|
|
||||||
#define TELOPT_NEW_ENVIRON 39 /* NEW ENVIRONment variables */
|
#define CURL_TELOPT_NEW_ENVIRON 39 /* NEW ENVIRONment variables */
|
||||||
#define NEW_ENV_VAR 0
|
#define CURL_NEW_ENV_VAR 0
|
||||||
#define NEW_ENV_VALUE 1
|
#define CURL_NEW_ENV_VALUE 1
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* The telnet options represented as strings
|
* The telnet options represented as strings
|
||||||
@@ -53,27 +53,27 @@ static const char *telnetoptions[]=
|
|||||||
"OLD-ENVIRON", "AUTHENTICATION", "ENCRYPT", "NEW-ENVIRON"
|
"OLD-ENVIRON", "AUTHENTICATION", "ENCRYPT", "NEW-ENVIRON"
|
||||||
};
|
};
|
||||||
|
|
||||||
#define TELOPT_MAXIMUM TELOPT_NEW_ENVIRON
|
#define CURL_TELOPT_MAXIMUM CURL_TELOPT_NEW_ENVIRON
|
||||||
|
|
||||||
#define TELOPT_OK(x) ((x) <= TELOPT_MAXIMUM)
|
#define CURL_TELOPT_OK(x) ((x) <= CURL_TELOPT_MAXIMUM)
|
||||||
#define TELOPT(x) telnetoptions[x]
|
#define CURL_TELOPT(x) telnetoptions[x]
|
||||||
|
|
||||||
#define NTELOPTS 40
|
#define CURL_NTELOPTS 40
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* First some defines
|
* First some defines
|
||||||
*/
|
*/
|
||||||
#define xEOF 236 /* End Of File */
|
#define CURL_xEOF 236 /* End Of File */
|
||||||
#define SE 240 /* Sub negotiation End */
|
#define CURL_SE 240 /* Sub negotiation End */
|
||||||
#define NOP 241 /* No OPeration */
|
#define CURL_NOP 241 /* No OPeration */
|
||||||
#define DM 242 /* Data Mark */
|
#define CURL_DM 242 /* Data Mark */
|
||||||
#define GA 249 /* Go Ahead, reverse the line */
|
#define CURL_GA 249 /* Go Ahead, reverse the line */
|
||||||
#define SB 250 /* SuBnegotiation */
|
#define CURL_SB 250 /* SuBnegotiation */
|
||||||
#define WILL 251 /* Our side WILL use this option */
|
#define CURL_WILL 251 /* Our side WILL use this option */
|
||||||
#define WONT 252 /* Our side WON'T use this option */
|
#define CURL_WONT 252 /* Our side WON'T use this option */
|
||||||
#define DO 253 /* DO use this option! */
|
#define CURL_DO 253 /* DO use this option! */
|
||||||
#define DONT 254 /* DON'T use this option! */
|
#define CURL_DONT 254 /* DON'T use this option! */
|
||||||
#define IAC 255 /* Interpret As Command */
|
#define CURL_IAC 255 /* Interpret As Command */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Then those numbers represented as strings:
|
* Then those numbers represented as strings:
|
||||||
@@ -86,16 +86,16 @@ static const char *telnetcmds[]=
|
|||||||
"WILL", "WONT", "DO", "DONT", "IAC"
|
"WILL", "WONT", "DO", "DONT", "IAC"
|
||||||
};
|
};
|
||||||
|
|
||||||
#define TELCMD_MINIMUM xEOF /* the first one */
|
#define CURL_TELCMD_MINIMUM CURL_xEOF /* the first one */
|
||||||
#define TELCMD_MAXIMUM IAC /* surprise, 255 is the last one! ;-) */
|
#define CURL_TELCMD_MAXIMUM CURL_IAC /* surprise, 255 is the last one! ;-) */
|
||||||
|
|
||||||
#define TELQUAL_IS 0
|
#define CURL_TELQUAL_IS 0
|
||||||
#define TELQUAL_SEND 1
|
#define CURL_TELQUAL_SEND 1
|
||||||
#define TELQUAL_INFO 2
|
#define CURL_TELQUAL_INFO 2
|
||||||
#define TELQUAL_NAME 3
|
#define CURL_TELQUAL_NAME 3
|
||||||
|
|
||||||
#define TELCMD_OK(x) ( ((unsigned int)(x) >= TELCMD_MINIMUM) && \
|
#define CURL_TELCMD_OK(x) ( ((unsigned int)(x) >= CURL_TELCMD_MINIMUM) && \
|
||||||
((unsigned int)(x) <= TELCMD_MAXIMUM) )
|
((unsigned int)(x) <= CURL_TELCMD_MAXIMUM) )
|
||||||
#define TELCMD(x) telnetcmds[(x)-TELCMD_MINIMUM]
|
#define CURL_TELCMD(x) telnetcmds[(x)-CURL_TELCMD_MINIMUM]
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
12
lib/base64.c
12
lib/base64.c
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -135,7 +135,7 @@ int Curl_base64_encode(const void *inp, int insize, char **outptr)
|
|||||||
|
|
||||||
while(insize > 0) {
|
while(insize > 0) {
|
||||||
for (i = inputparts = 0; i < 3; i++) {
|
for (i = inputparts = 0; i < 3; i++) {
|
||||||
if(*indata) {
|
if(insize > 0) {
|
||||||
inputparts++;
|
inputparts++;
|
||||||
ibuf[i] = *indata;
|
ibuf[i] = *indata;
|
||||||
indata++;
|
indata++;
|
||||||
@@ -266,11 +266,3 @@ void *suck(int *lenptr)
|
|||||||
return (void *)buf;
|
return (void *)buf;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/*
|
|
||||||
* local variables:
|
|
||||||
* eval: (load-file "../curl-mode.el")
|
|
||||||
* end:
|
|
||||||
* vim600: fdm=marker
|
|
||||||
* vim: et sw=2 ts=2 sts=2 tw=78
|
|
||||||
*/
|
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
|
@@ -2287,82 +2287,6 @@ Certificate Ingredients:
|
|||||||
ec:b9:94:6a:aa:12:4f:1a:dd:f5:77:b5:25:8c:f2:8a:0a:f1:
|
ec:b9:94:6a:aa:12:4f:1a:dd:f5:77:b5:25:8c:f2:8a:0a:f1:
|
||||||
fc:52:5b:58
|
fc:52:5b:58
|
||||||
|
|
||||||
TC TrustCenter, Germany, Class 0 CA
|
|
||||||
===================================
|
|
||||||
MD5 Fingerprint: 35:85:49:8E:6E:57:FE:BD:97:F1:C9:46:23:3A:B6:7D
|
|
||||||
PEM Data:
|
|
||||||
-----BEGIN CERTIFICATE-----
|
|
||||||
MIIENTCCA56gAwIBAgIBATANBgkqhkiG9w0BAQQFADCBvDELMAkGA1UEBhMCREUx
|
|
||||||
EDAOBgNVBAgTB0hhbWJ1cmcxEDAOBgNVBAcTB0hhbWJ1cmcxOjA4BgNVBAoTMVRD
|
|
||||||
IFRydXN0Q2VudGVyIGZvciBTZWN1cml0eSBpbiBEYXRhIE5ldHdvcmtzIEdtYkgx
|
|
||||||
IjAgBgNVBAsTGVRDIFRydXN0Q2VudGVyIENsYXNzIDAgQ0ExKTAnBgkqhkiG9w0B
|
|
||||||
CQEWGmNlcnRpZmljYXRlQHRydXN0Y2VudGVyLmRlMB4XDTk4MDMwOTEzNTQ0OFoX
|
|
||||||
DTA1MTIzMTEzNTQ0OFowgbwxCzAJBgNVBAYTAkRFMRAwDgYDVQQIEwdIYW1idXJn
|
|
||||||
MRAwDgYDVQQHEwdIYW1idXJnMTowOAYDVQQKEzFUQyBUcnVzdENlbnRlciBmb3Ig
|
|
||||||
U2VjdXJpdHkgaW4gRGF0YSBOZXR3b3JrcyBHbWJIMSIwIAYDVQQLExlUQyBUcnVz
|
|
||||||
dENlbnRlciBDbGFzcyAwIENBMSkwJwYJKoZIhvcNAQkBFhpjZXJ0aWZpY2F0ZUB0
|
|
||||||
cnVzdGNlbnRlci5kZTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA333mvr/V
|
|
||||||
8C9tTg7R4I0LfztU6IrisJ8oxYrGubMzJ/UnyhpMVBJrtLJGsx1Ls/QhC0sCLqHC
|
|
||||||
NJyFoMR4EdvbaycrCSoYTkDMn3EZZ5l0onw/wdiLI8hjO4ohq1zeHvSN3LQYwwVz
|
|
||||||
9Gq0ofoBCCsBD203W6o4hmc51+Vf+uR+zKMCAwEAAaOCAUMwggE/MEAGCWCGSAGG
|
|
||||||
+EIBAwQzFjFodHRwczovL3d3dy50cnVzdGNlbnRlci5kZS9jZ2ktYmluL2NoZWNr
|
|
||||||
LXJldi5jZ2k/MEAGCWCGSAGG+EIBBAQzFjFodHRwczovL3d3dy50cnVzdGNlbnRl
|
|
||||||
ci5kZS9jZ2ktYmluL2NoZWNrLXJldi5jZ2k/MDwGCWCGSAGG+EIBBwQvFi1odHRw
|
|
||||||
czovL3d3dy50cnVzdGNlbnRlci5kZS9jZ2ktYmluL1JlbmV3LmNnaT8wPgYJYIZI
|
|
||||||
AYb4QgEIBDEWL2h0dHA6Ly93d3cudHJ1c3RjZW50ZXIuZGUvZ3VpZGVsaW5lcy9p
|
|
||||||
bmRleC5odG1sMCgGCWCGSAGG+EIBDQQbFhlUQyBUcnVzdENlbnRlciBDbGFzcyAw
|
|
||||||
IENBMBEGCWCGSAGG+EIBAQQEAwIABzANBgkqhkiG9w0BAQQFAAOBgQBNB39fCTAZ
|
|
||||||
kqoFR3qUdVQqrs/82AxC4UU4KySVssqHynnEw5eQXmIYxsk4YUxoNdNMFBHrxM2h
|
|
||||||
qdjFnmgnMgc1RQT4XyGgYB4cAEgEWNLFy65tMm49d5WMhcflrlCddUp7/wsneepN
|
|
||||||
pFn/7FrqJqU5g6TReM6nqX683SvKEpMDSg==
|
|
||||||
-----END CERTIFICATE-----
|
|
||||||
Certificate Ingredients:
|
|
||||||
Data:
|
|
||||||
Version: 3 (0x2)
|
|
||||||
Serial Number: 1 (0x1)
|
|
||||||
Signature Algorithm: md5WithRSAEncryption
|
|
||||||
Issuer: C=DE, ST=Hamburg, L=Hamburg, O=TC TrustCenter for Security in Data Networks GmbH, OU=TC TrustCenter Class 0 CA/Email=certificate@trustcenter.de
|
|
||||||
Validity
|
|
||||||
Not Before: Mar 9 13:54:48 1998 GMT
|
|
||||||
Not After : Dec 31 13:54:48 2005 GMT
|
|
||||||
Subject: C=DE, ST=Hamburg, L=Hamburg, O=TC TrustCenter for Security in Data Networks GmbH, OU=TC TrustCenter Class 0 CA/Email=certificate@trustcenter.de
|
|
||||||
Subject Public Key Info:
|
|
||||||
Public Key Algorithm: rsaEncryption
|
|
||||||
RSA Public Key: (1024 bit)
|
|
||||||
Modulus (1024 bit):
|
|
||||||
00:df:7d:e6:be:bf:d5:f0:2f:6d:4e:0e:d1:e0:8d:
|
|
||||||
0b:7f:3b:54:e8:8a:e2:b0:9f:28:c5:8a:c6:b9:b3:
|
|
||||||
33:27:f5:27:ca:1a:4c:54:12:6b:b4:b2:46:b3:1d:
|
|
||||||
4b:b3:f4:21:0b:4b:02:2e:a1:c2:34:9c:85:a0:c4:
|
|
||||||
78:11:db:db:6b:27:2b:09:2a:18:4e:40:cc:9f:71:
|
|
||||||
19:67:99:74:a2:7c:3f:c1:d8:8b:23:c8:63:3b:8a:
|
|
||||||
21:ab:5c:de:1e:f4:8d:dc:b4:18:c3:05:73:f4:6a:
|
|
||||||
b4:a1:fa:01:08:2b:01:0f:6d:37:5b:aa:38:86:67:
|
|
||||||
39:d7:e5:5f:fa:e4:7e:cc:a3
|
|
||||||
Exponent: 65537 (0x10001)
|
|
||||||
X509v3 extensions:
|
|
||||||
Netscape Revocation Url:
|
|
||||||
https://www.trustcenter.de/cgi-bin/check-rev.cgi?
|
|
||||||
Netscape CA Revocation Url:
|
|
||||||
https://www.trustcenter.de/cgi-bin/check-rev.cgi?
|
|
||||||
Netscape Renewal Url:
|
|
||||||
https://www.trustcenter.de/cgi-bin/Renew.cgi?
|
|
||||||
Netscape CA Policy Url:
|
|
||||||
http://www.trustcenter.de/guidelines/index.html
|
|
||||||
Netscape Comment:
|
|
||||||
TC TrustCenter Class 0 CA
|
|
||||||
Netscape Cert Type:
|
|
||||||
SSL CA, S/MIME CA, Object Signing CA
|
|
||||||
Signature Algorithm: md5WithRSAEncryption
|
|
||||||
4d:07:7f:5f:09:30:19:92:aa:05:47:7a:94:75:54:2a:ae:cf:
|
|
||||||
fc:d8:0c:42:e1:45:38:2b:24:95:b2:ca:87:ca:79:c4:c3:97:
|
|
||||||
90:5e:62:18:c6:c9:38:61:4c:68:35:d3:4c:14:11:eb:c4:cd:
|
|
||||||
a1:a9:d8:c5:9e:68:27:32:07:35:45:04:f8:5f:21:a0:60:1e:
|
|
||||||
1c:00:48:04:58:d2:c5:cb:ae:6d:32:6e:3d:77:95:8c:85:c7:
|
|
||||||
e5:ae:50:9d:75:4a:7b:ff:0b:27:79:ea:4d:a4:59:ff:ec:5a:
|
|
||||||
ea:26:a5:39:83:a4:d1:78:ce:a7:a9:7e:bc:dd:2b:ca:12:93:
|
|
||||||
03:4a
|
|
||||||
|
|
||||||
TC TrustCenter, Germany, Class 1 CA
|
TC TrustCenter, Germany, Class 1 CA
|
||||||
===================================
|
===================================
|
||||||
MD5 Fingerprint: 64:3F:F8:3E:52:14:4A:59:BA:93:56:04:0B:23:02:D1
|
MD5 Fingerprint: 64:3F:F8:3E:52:14:4A:59:BA:93:56:04:0B:23:02:D1
|
||||||
|
@@ -369,3 +369,13 @@
|
|||||||
|
|
||||||
/* Define if you have the `sigsetjmp' function. */
|
/* Define if you have the `sigsetjmp' function. */
|
||||||
#define HAVE_SIGSETJMP 1
|
#define HAVE_SIGSETJMP 1
|
||||||
|
|
||||||
|
/* Define to 1 if you have the <setjmp.h> header file. */
|
||||||
|
#define HAVE_SETJMP_H 1
|
||||||
|
|
||||||
|
/*
|
||||||
|
* This needs to be defined for OpenSSL 0.9.7 and other versions that have the
|
||||||
|
* ENGINE stuff supported. If an include of "openssl/engine.h" fails, then
|
||||||
|
* undefine the define below.
|
||||||
|
*/
|
||||||
|
#define HAVE_OPENSSL_ENGINE_H 1
|
||||||
|
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -82,7 +82,7 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
static
|
static
|
||||||
int geterrno(void)
|
int ourerrno(void)
|
||||||
{
|
{
|
||||||
#ifdef WIN32
|
#ifdef WIN32
|
||||||
return (int)GetLastError();
|
return (int)GetLastError();
|
||||||
@@ -144,7 +144,11 @@ int Curl_nonblock(int socket, /* operate on this */
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Return 0 on fine connect, -1 on error and 1 on timeout.
|
* waitconnect() returns:
|
||||||
|
* 0 fine connect
|
||||||
|
* -1 select() error
|
||||||
|
* 1 select() timeout
|
||||||
|
* 2 select() returned with an error condition
|
||||||
*/
|
*/
|
||||||
static
|
static
|
||||||
int waitconnect(int sockfd, /* socket */
|
int waitconnect(int sockfd, /* socket */
|
||||||
@@ -248,17 +252,26 @@ static CURLcode bindlocal(struct connectdata *conn,
|
|||||||
if ( h ) {
|
if ( h ) {
|
||||||
Curl_addrinfo *addr = h->addr;
|
Curl_addrinfo *addr = h->addr;
|
||||||
|
|
||||||
Curl_resolv_unlock(h);
|
Curl_resolv_unlock(data, h);
|
||||||
/* we don't need it anymore after this function has returned */
|
/* we don't need it anymore after this function has returned */
|
||||||
|
|
||||||
memset((char *)&sa, 0, sizeof(sa));
|
|
||||||
#ifdef ENABLE_IPV6
|
#ifdef ENABLE_IPV6
|
||||||
memcpy((char *)&sa.sin_addr, addr->ai_addr, addr->ai_addrlen);
|
(void)sa; /* prevent compiler warning */
|
||||||
sa.sin_family = addr->ai_family;
|
if( bind(sockfd, addr->ai_addr, addr->ai_addrlen) >= 0) {
|
||||||
|
/* we succeeded to bind */
|
||||||
|
struct sockaddr_in6 add;
|
||||||
|
|
||||||
|
size = sizeof(add);
|
||||||
|
if(getsockname(sockfd, (struct sockaddr *) &add,
|
||||||
|
(socklen_t *)&size)<0) {
|
||||||
|
failf(data, "getsockname() failed");
|
||||||
|
return CURLE_HTTP_PORT_FAILED;
|
||||||
|
}
|
||||||
|
}
|
||||||
#else
|
#else
|
||||||
|
memset((char *)&sa, 0, sizeof(sa));
|
||||||
memcpy((char *)&sa.sin_addr, addr->h_addr, addr->h_length);
|
memcpy((char *)&sa.sin_addr, addr->h_addr, addr->h_length);
|
||||||
sa.sin_family = AF_INET;
|
sa.sin_family = AF_INET;
|
||||||
#endif
|
|
||||||
sa.sin_addr.s_addr = in;
|
sa.sin_addr.s_addr = in;
|
||||||
sa.sin_port = 0; /* get any port */
|
sa.sin_port = 0; /* get any port */
|
||||||
|
|
||||||
@@ -273,6 +286,7 @@ static CURLcode bindlocal(struct connectdata *conn,
|
|||||||
return CURLE_HTTP_PORT_FAILED;
|
return CURLE_HTTP_PORT_FAILED;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
else {
|
else {
|
||||||
switch(errno) {
|
switch(errno) {
|
||||||
case EBADF:
|
case EBADF:
|
||||||
@@ -336,7 +350,7 @@ int socketerror(int sockfd)
|
|||||||
|
|
||||||
if( -1 == getsockopt(sockfd, SOL_SOCKET, SO_ERROR,
|
if( -1 == getsockopt(sockfd, SOL_SOCKET, SO_ERROR,
|
||||||
(void *)&err, &errSize))
|
(void *)&err, &errSize))
|
||||||
err = geterrno();
|
err = ourerrno();
|
||||||
|
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
@@ -396,10 +410,15 @@ CURLcode Curl_is_connected(struct connectdata *conn,
|
|||||||
return CURLE_OK;
|
return CURLE_OK;
|
||||||
}
|
}
|
||||||
/* nope, not connected for real */
|
/* nope, not connected for real */
|
||||||
if(err)
|
failf(data, "Connection failed, socket error: %d", err);
|
||||||
|
return CURLE_COULDNT_CONNECT;
|
||||||
|
}
|
||||||
|
else if(1 != rc) {
|
||||||
|
int error = ourerrno();
|
||||||
|
failf(data, "Failed connect to %s:%d, errno: %d",
|
||||||
|
conn->hostname, conn->port, error);
|
||||||
return CURLE_COULDNT_CONNECT;
|
return CURLE_COULDNT_CONNECT;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* If the connection phase is "done" here, we should attempt to connect
|
* If the connection phase is "done" here, we should attempt to connect
|
||||||
* to the "next address" in the Curl_hostaddr structure that we resolved
|
* to the "next address" in the Curl_hostaddr structure that we resolved
|
||||||
@@ -507,7 +526,7 @@ CURLcode Curl_connecthost(struct connectdata *conn, /* context */
|
|||||||
rc = connect(sockfd, ai->ai_addr, ai->ai_addrlen);
|
rc = connect(sockfd, ai->ai_addr, ai->ai_addrlen);
|
||||||
|
|
||||||
if(-1 == rc) {
|
if(-1 == rc) {
|
||||||
int error=geterrno();
|
int error=ourerrno();
|
||||||
|
|
||||||
switch (error) {
|
switch (error) {
|
||||||
case EINPROGRESS:
|
case EINPROGRESS:
|
||||||
@@ -548,6 +567,9 @@ CURLcode Curl_connecthost(struct connectdata *conn, /* context */
|
|||||||
failf(data, "socket error: %d", err);
|
failf(data, "socket error: %d", err);
|
||||||
/* we are _not_ connected, it was a false alert, continue please */
|
/* we are _not_ connected, it was a false alert, continue please */
|
||||||
}
|
}
|
||||||
|
else if(2 == rc)
|
||||||
|
/* waitconnect() returned error */
|
||||||
|
;
|
||||||
else if(data->state.used_interface == Curl_if_multi) {
|
else if(data->state.used_interface == Curl_if_multi) {
|
||||||
/* When running the multi interface, we bail out here */
|
/* When running the multi interface, we bail out here */
|
||||||
rc = 0;
|
rc = 0;
|
||||||
@@ -623,7 +645,7 @@ CURLcode Curl_connecthost(struct connectdata *conn, /* context */
|
|||||||
sizeof(serv_addr));
|
sizeof(serv_addr));
|
||||||
|
|
||||||
if(-1 == rc) {
|
if(-1 == rc) {
|
||||||
int error=geterrno();
|
int error=ourerrno();
|
||||||
|
|
||||||
switch (error) {
|
switch (error) {
|
||||||
case EINPROGRESS:
|
case EINPROGRESS:
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
|
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -112,11 +112,3 @@ Curl_unencode_deflate_write(struct SessionHandle *data,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif /* HAVE_LIBZ */
|
#endif /* HAVE_LIBZ */
|
||||||
|
|
||||||
/*
|
|
||||||
* local variables:
|
|
||||||
* eval: (load-file "../curl-mode.el")
|
|
||||||
* end:
|
|
||||||
* vim600: fdm=marker
|
|
||||||
* vim: et sw=2 ts=2 sts=2 tw=78
|
|
||||||
*/
|
|
||||||
|
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -24,11 +24,3 @@
|
|||||||
CURLcode Curl_unencode_deflate_write(struct SessionHandle *data,
|
CURLcode Curl_unencode_deflate_write(struct SessionHandle *data,
|
||||||
struct Curl_transfer_keeper *k,
|
struct Curl_transfer_keeper *k,
|
||||||
ssize_t nread);
|
ssize_t nread);
|
||||||
|
|
||||||
/*
|
|
||||||
* local variables:
|
|
||||||
* eval: (load-file "../curl-mode.el")
|
|
||||||
* end:
|
|
||||||
* vim600: fdm=marker
|
|
||||||
* vim: et sw=2 ts=2 sts=2 tw=78
|
|
||||||
*/
|
|
||||||
|
11
lib/cookie.c
11
lib/cookie.c
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -77,6 +77,7 @@ Example set of cookies:
|
|||||||
13-Jun-1988 03:04:55 GMT; domain=.fidelity.com; path=/; secure
|
13-Jun-1988 03:04:55 GMT; domain=.fidelity.com; path=/; secure
|
||||||
****/
|
****/
|
||||||
|
|
||||||
|
|
||||||
#include "setup.h"
|
#include "setup.h"
|
||||||
|
|
||||||
#ifndef CURL_DISABLE_HTTP
|
#ifndef CURL_DISABLE_HTTP
|
||||||
@@ -768,11 +769,3 @@ int main(int argc, char **argv)
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#endif /* CURL_DISABLE_HTTP */
|
#endif /* CURL_DISABLE_HTTP */
|
||||||
|
|
||||||
/*
|
|
||||||
* local variables:
|
|
||||||
* eval: (load-file "../curl-mode.el")
|
|
||||||
* end:
|
|
||||||
* vim600: fdm=marker
|
|
||||||
* vim: et sw=2 ts=2 sts=2 tw=78
|
|
||||||
*/
|
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
|
10
lib/dict.c
10
lib/dict.c
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -231,11 +231,3 @@ CURLcode Curl_dict(struct connectdata *conn)
|
|||||||
|
|
||||||
return CURLE_OK;
|
return CURLE_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
* local variables:
|
|
||||||
* eval: (load-file "../curl-mode.el")
|
|
||||||
* end:
|
|
||||||
* vim600: fdm=marker
|
|
||||||
* vim: et sw=2 ts=2 sts=2 tw=78
|
|
||||||
*/
|
|
||||||
|
@@ -8,7 +8,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
|
10
lib/easy.c
10
lib/easy.c
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -333,11 +333,3 @@ CURL *curl_easy_duphandle(CURL *incurl)
|
|||||||
|
|
||||||
return outcurl;
|
return outcurl;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
* local variables:
|
|
||||||
* eval: (load-file "../curl-mode.el")
|
|
||||||
* end:
|
|
||||||
* vim600: fdm=marker
|
|
||||||
* vim: et sw=2 ts=2 sts=2 tw=78
|
|
||||||
*/
|
|
||||||
|
10
lib/escape.c
10
lib/escape.c
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -113,11 +113,3 @@ void curl_free(void *p)
|
|||||||
{
|
{
|
||||||
free(p);
|
free(p);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
* local variables:
|
|
||||||
* eval: (load-file "../curl-mode.el")
|
|
||||||
* end:
|
|
||||||
* vim600: fdm=marker
|
|
||||||
* vim: et sw=2 ts=2 sts=2 tw=78
|
|
||||||
*/
|
|
||||||
|
@@ -8,7 +8,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
|
10
lib/file.c
10
lib/file.c
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -211,12 +211,4 @@ CURLcode Curl_file(struct connectdata *conn)
|
|||||||
|
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
* local variables:
|
|
||||||
* eval: (load-file "../curl-mode.el")
|
|
||||||
* end:
|
|
||||||
* vim600: fdm=marker
|
|
||||||
* vim: et sw=2 ts=2 sts=2 tw=78
|
|
||||||
*/
|
|
||||||
#endif
|
#endif
|
||||||
|
@@ -8,7 +8,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
|
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -1596,11 +1596,3 @@ int main(int argc, char **argv)
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#endif /* CURL_DISABLE_HTTP */
|
#endif /* CURL_DISABLE_HTTP */
|
||||||
|
|
||||||
/*
|
|
||||||
* local variables:
|
|
||||||
* eval: (load-file "../curl-mode.el")
|
|
||||||
* end:
|
|
||||||
* vim600: fdm=marker
|
|
||||||
* vim: et sw=2 ts=2 sts=2 tw=78
|
|
||||||
*/
|
|
||||||
|
@@ -8,7 +8,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
|
31
lib/ftp.c
31
lib/ftp.c
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -173,7 +173,7 @@ static CURLcode AllowServerConnect(struct SessionHandle *data,
|
|||||||
* response and extract the relevant return code for the invoking function.
|
* response and extract the relevant return code for the invoking function.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
CURLcode Curl_GetFTPResponse(int *nreadp, /* return number of bytes read */
|
CURLcode Curl_GetFTPResponse(ssize_t *nreadp, /* return number of bytes read */
|
||||||
struct connectdata *conn,
|
struct connectdata *conn,
|
||||||
int *ftpcode) /* return the ftp-code */
|
int *ftpcode) /* return the ftp-code */
|
||||||
{
|
{
|
||||||
@@ -387,7 +387,7 @@ CURLcode Curl_GetFTPResponse(int *nreadp, /* return number of bytes read */
|
|||||||
CURLcode Curl_ftp_connect(struct connectdata *conn)
|
CURLcode Curl_ftp_connect(struct connectdata *conn)
|
||||||
{
|
{
|
||||||
/* this is FTP and no proxy */
|
/* this is FTP and no proxy */
|
||||||
int nread;
|
ssize_t nread;
|
||||||
struct SessionHandle *data=conn->data;
|
struct SessionHandle *data=conn->data;
|
||||||
char *buf = data->state.buffer; /* this is our buffer */
|
char *buf = data->state.buffer; /* this is our buffer */
|
||||||
struct FTP *ftp;
|
struct FTP *ftp;
|
||||||
@@ -1233,7 +1233,7 @@ CURLcode ftp_use_port(struct connectdata *conn)
|
|||||||
|
|
||||||
if(h)
|
if(h)
|
||||||
/* when we return from here, we can forget about this */
|
/* when we return from here, we can forget about this */
|
||||||
Curl_resolv_unlock(h);
|
Curl_resolv_unlock(data, h);
|
||||||
|
|
||||||
if ( h || sa_filled_in) {
|
if ( h || sa_filled_in) {
|
||||||
if( (portsock = socket(AF_INET, SOCK_STREAM, 0)) >= 0 ) {
|
if( (portsock = socket(AF_INET, SOCK_STREAM, 0)) >= 0 ) {
|
||||||
@@ -1497,7 +1497,7 @@ CURLcode ftp_use_pasv(struct connectdata *conn,
|
|||||||
&conninfo,
|
&conninfo,
|
||||||
connected);
|
connected);
|
||||||
|
|
||||||
Curl_resolv_unlock(addr); /* we're done using this address */
|
Curl_resolv_unlock(data, addr); /* we're done using this address */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* When this is used from the multi interface, this might've returned with
|
* When this is used from the multi interface, this might've returned with
|
||||||
@@ -1854,9 +1854,19 @@ CURLcode Curl_ftp_nextconnect(struct connectdata *conn)
|
|||||||
|
|
||||||
int size=-1; /* default unknown size */
|
int size=-1; /* default unknown size */
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* It appears that there are FTP-servers that return size 0 for files
|
||||||
|
* when SIZE is used on the file while being in BINARY mode. To work
|
||||||
|
* around that (stupid) behavior, we attempt to parse the RETR response
|
||||||
|
* even if the SIZE returned size zero.
|
||||||
|
*
|
||||||
|
* Debugging help from Salvatore Sorrentino on February 26, 2003.
|
||||||
|
*/
|
||||||
|
|
||||||
if(!dirlist &&
|
if(!dirlist &&
|
||||||
!data->set.ftp_ascii &&
|
!data->set.ftp_ascii &&
|
||||||
(-1 == downloadsize)) {
|
(downloadsize < 1)) {
|
||||||
/*
|
/*
|
||||||
* It seems directory listings either don't show the size or very
|
* It seems directory listings either don't show the size or very
|
||||||
* often uses size 0 anyway. ASCII transfers may very well turn out
|
* often uses size 0 anyway. ASCII transfers may very well turn out
|
||||||
@@ -2060,6 +2070,7 @@ CURLcode Curl_ftp(struct connectdata *conn)
|
|||||||
|
|
||||||
/* the ftp struct is already inited in ftp_connect() */
|
/* the ftp struct is already inited in ftp_connect() */
|
||||||
ftp = conn->proto.ftp;
|
ftp = conn->proto.ftp;
|
||||||
|
conn->size = -1; /* make sure this is unknown at this point */
|
||||||
|
|
||||||
/* We split the path into dir and file parts *before* we URLdecode
|
/* We split the path into dir and file parts *before* we URLdecode
|
||||||
it */
|
it */
|
||||||
@@ -2188,12 +2199,4 @@ CURLcode Curl_ftp_disconnect(struct connectdata *conn)
|
|||||||
return CURLE_OK;
|
return CURLE_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
* local variables:
|
|
||||||
* eval: (load-file "../curl-mode.el")
|
|
||||||
* end:
|
|
||||||
* vim600: fdm=marker
|
|
||||||
* vim: et sw=2 ts=2 sts=2 tw=78
|
|
||||||
*/
|
|
||||||
|
|
||||||
#endif /* CURL_DISABLE_FTP */
|
#endif /* CURL_DISABLE_FTP */
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -29,7 +29,7 @@ CURLcode Curl_ftp_done(struct connectdata *conn);
|
|||||||
CURLcode Curl_ftp_connect(struct connectdata *conn);
|
CURLcode Curl_ftp_connect(struct connectdata *conn);
|
||||||
CURLcode Curl_ftp_disconnect(struct connectdata *conn);
|
CURLcode Curl_ftp_disconnect(struct connectdata *conn);
|
||||||
CURLcode Curl_ftpsendf(struct connectdata *, const char *fmt, ...);
|
CURLcode Curl_ftpsendf(struct connectdata *, const char *fmt, ...);
|
||||||
CURLcode Curl_GetFTPResponse(int *nread, struct connectdata *conn,
|
CURLcode Curl_GetFTPResponse(ssize_t *nread, struct connectdata *conn,
|
||||||
int *ftpcode);
|
int *ftpcode);
|
||||||
CURLcode Curl_ftp_nextconnect(struct connectdata *conn);
|
CURLcode Curl_ftp_nextconnect(struct connectdata *conn);
|
||||||
#endif
|
#endif
|
||||||
|
@@ -195,7 +195,7 @@ typedef enum _MERIDIAN {
|
|||||||
} MERIDIAN;
|
} MERIDIAN;
|
||||||
|
|
||||||
/* parse results and input string */
|
/* parse results and input string */
|
||||||
typedef struct _CONTEXT {
|
typedef struct _CURL_CONTEXT {
|
||||||
const char *yyInput;
|
const char *yyInput;
|
||||||
int yyDayOrdinal;
|
int yyDayOrdinal;
|
||||||
int yyDayNumber;
|
int yyDayNumber;
|
||||||
@@ -218,14 +218,14 @@ typedef struct _CONTEXT {
|
|||||||
int yyRelMonth;
|
int yyRelMonth;
|
||||||
int yyRelSeconds;
|
int yyRelSeconds;
|
||||||
int yyRelYear;
|
int yyRelYear;
|
||||||
} CONTEXT;
|
} CURL_CONTEXT;
|
||||||
|
|
||||||
/* enable use of extra argument to yyparse and yylex which can be used to pass
|
/* enable use of extra argument to yyparse and yylex which can be used to pass
|
||||||
** in a user defined value (CONTEXT struct in our case)
|
** in a user defined value (CURL_CONTEXT struct in our case)
|
||||||
*/
|
*/
|
||||||
#define YYPARSE_PARAM cookie
|
#define YYPARSE_PARAM cookie
|
||||||
#define YYLEX_PARAM cookie
|
#define YYLEX_PARAM cookie
|
||||||
#define context ((CONTEXT *) cookie)
|
#define context ((CURL_CONTEXT *) cookie)
|
||||||
|
|
||||||
#line 215 "getdate.y"
|
#line 215 "getdate.y"
|
||||||
typedef union {
|
typedef union {
|
||||||
@@ -397,7 +397,7 @@ static const short yycheck[] = { 0,
|
|||||||
#define YYPURE 1
|
#define YYPURE 1
|
||||||
|
|
||||||
/* -*-C-*- Note some compilers choke on comments on `#line' lines. */
|
/* -*-C-*- Note some compilers choke on comments on `#line' lines. */
|
||||||
#line 3 "/usr/local/share/bison.simple"
|
#line 3 "/usr/lib/bison.simple"
|
||||||
/* This file comes from bison-1.28. */
|
/* This file comes from bison-1.28. */
|
||||||
|
|
||||||
/* Skeleton output parser for bison,
|
/* Skeleton output parser for bison,
|
||||||
@@ -611,7 +611,7 @@ __yy_memcpy (char *to, char *from, unsigned int count)
|
|||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#line 217 "/usr/local/share/bison.simple"
|
#line 217 "/usr/lib/bison.simple"
|
||||||
|
|
||||||
/* The user can define YYPARSE_PARAM as the name of an argument to be passed
|
/* The user can define YYPARSE_PARAM as the name of an argument to be passed
|
||||||
into yyparse. The argument should have type void *.
|
into yyparse. The argument should have type void *.
|
||||||
@@ -1303,7 +1303,7 @@ case 50:
|
|||||||
break;}
|
break;}
|
||||||
}
|
}
|
||||||
/* the action file gets copied in in place of this dollarsign */
|
/* the action file gets copied in in place of this dollarsign */
|
||||||
#line 543 "/usr/local/share/bison.simple"
|
#line 543 "/usr/lib/bison.simple"
|
||||||
|
|
||||||
yyvsp -= yylen;
|
yyvsp -= yylen;
|
||||||
yyssp -= yylen;
|
yyssp -= yylen;
|
||||||
@@ -1988,7 +1988,7 @@ curl_getdate (const char *p, const time_t *now)
|
|||||||
{
|
{
|
||||||
struct tm tm, tm0, *tmp;
|
struct tm tm, tm0, *tmp;
|
||||||
time_t Start;
|
time_t Start;
|
||||||
CONTEXT cookie;
|
CURL_CONTEXT cookie;
|
||||||
#ifdef HAVE_LOCALTIME_R
|
#ifdef HAVE_LOCALTIME_R
|
||||||
struct tm keeptime;
|
struct tm keeptime;
|
||||||
#endif
|
#endif
|
@@ -171,7 +171,7 @@ typedef enum _MERIDIAN {
|
|||||||
} MERIDIAN;
|
} MERIDIAN;
|
||||||
|
|
||||||
/* parse results and input string */
|
/* parse results and input string */
|
||||||
typedef struct _CONTEXT {
|
typedef struct _CURL_CONTEXT {
|
||||||
const char *yyInput;
|
const char *yyInput;
|
||||||
int yyDayOrdinal;
|
int yyDayOrdinal;
|
||||||
int yyDayNumber;
|
int yyDayNumber;
|
||||||
@@ -194,14 +194,14 @@ typedef struct _CONTEXT {
|
|||||||
int yyRelMonth;
|
int yyRelMonth;
|
||||||
int yyRelSeconds;
|
int yyRelSeconds;
|
||||||
int yyRelYear;
|
int yyRelYear;
|
||||||
} CONTEXT;
|
} CURL_CONTEXT;
|
||||||
|
|
||||||
/* enable use of extra argument to yyparse and yylex which can be used to pass
|
/* enable use of extra argument to yyparse and yylex which can be used to pass
|
||||||
** in a user defined value (CONTEXT struct in our case)
|
** in a user defined value (CURL_CONTEXT struct in our case)
|
||||||
*/
|
*/
|
||||||
#define YYPARSE_PARAM cookie
|
#define YYPARSE_PARAM cookie
|
||||||
#define YYLEX_PARAM cookie
|
#define YYLEX_PARAM cookie
|
||||||
#define context ((CONTEXT *) cookie)
|
#define context ((CURL_CONTEXT *) cookie)
|
||||||
%}
|
%}
|
||||||
|
|
||||||
/* This grammar has 13 shift/reduce conflicts. */
|
/* This grammar has 13 shift/reduce conflicts. */
|
||||||
@@ -944,7 +944,7 @@ curl_getdate (const char *p, const time_t *now)
|
|||||||
{
|
{
|
||||||
struct tm tm, tm0, *tmp;
|
struct tm tm, tm0, *tmp;
|
||||||
time_t Start;
|
time_t Start;
|
||||||
CONTEXT cookie;
|
CURL_CONTEXT cookie;
|
||||||
#ifdef HAVE_LOCALTIME_R
|
#ifdef HAVE_LOCALTIME_R
|
||||||
struct tm keeptime;
|
struct tm keeptime;
|
||||||
#endif
|
#endif
|
||||||
|
10
lib/getenv.c
10
lib/getenv.c
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -67,11 +67,3 @@ char *curl_getenv(const char *v)
|
|||||||
{
|
{
|
||||||
return GetEnv(v);
|
return GetEnv(v);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
* local variables:
|
|
||||||
* eval: (load-file "../curl-mode.el")
|
|
||||||
* end:
|
|
||||||
* vim600: fdm=marker
|
|
||||||
* vim: et sw=2 ts=2 sts=2 tw=78
|
|
||||||
*/
|
|
||||||
|
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -159,18 +159,10 @@ CURLcode Curl_getinfo(struct SessionHandle *data, CURLINFO info, ...)
|
|||||||
*param_charp = data->info.contenttype;
|
*param_charp = data->info.contenttype;
|
||||||
break;
|
break;
|
||||||
case CURLINFO_PRIVATE:
|
case CURLINFO_PRIVATE:
|
||||||
*param_charp = data->set.private?data->set.private:(char *)"";
|
*param_charp = data->set.private;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
return CURLE_BAD_FUNCTION_ARGUMENT;
|
return CURLE_BAD_FUNCTION_ARGUMENT;
|
||||||
}
|
}
|
||||||
return CURLE_OK;
|
return CURLE_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
* local variables:
|
|
||||||
* eval: (load-file "../curl-mode.el")
|
|
||||||
* end:
|
|
||||||
* vim600: fdm=marker
|
|
||||||
* vim: et sw=2 ts=2 sts=2 tw=78
|
|
||||||
*/
|
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
|
@@ -224,11 +224,3 @@ char *getpass(const char *prompt)
|
|||||||
return getpass_r(prompt, buf, sizeof(buf));
|
return getpass_r(prompt, buf, sizeof(buf));
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/*
|
|
||||||
* local variables:
|
|
||||||
* eval: (load-file "../curl-mode.el")
|
|
||||||
* end:
|
|
||||||
* vim600: fdm=marker
|
|
||||||
* vim: et sw=2 ts=2 sts=2 tw=78
|
|
||||||
*/
|
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
|
55
lib/hash.c
55
lib/hash.c
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -35,8 +35,6 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
/* {{{ static unsigned long _hash_str (const char *, size_t)
|
|
||||||
*/
|
|
||||||
static unsigned long
|
static unsigned long
|
||||||
_hash_str (const char *key, size_t key_length)
|
_hash_str (const char *key, size_t key_length)
|
||||||
{
|
{
|
||||||
@@ -50,10 +48,7 @@ _hash_str (const char *key, size_t key_length)
|
|||||||
|
|
||||||
return h;
|
return h;
|
||||||
}
|
}
|
||||||
/* }}} */
|
|
||||||
|
|
||||||
/* {{{ static void _hash_element_dtor (void *, void *)
|
|
||||||
*/
|
|
||||||
static void
|
static void
|
||||||
_hash_element_dtor (void *user, void *element)
|
_hash_element_dtor (void *user, void *element)
|
||||||
{
|
{
|
||||||
@@ -68,10 +63,7 @@ _hash_element_dtor (void *user, void *element)
|
|||||||
|
|
||||||
free(e);
|
free(e);
|
||||||
}
|
}
|
||||||
/* }}} */
|
|
||||||
|
|
||||||
/* {{{ void curl_hash_init (curl_hash *, int, curl_hash_dtor)
|
|
||||||
*/
|
|
||||||
void
|
void
|
||||||
Curl_hash_init (curl_hash *h, int slots, curl_hash_dtor dtor)
|
Curl_hash_init (curl_hash *h, int slots, curl_hash_dtor dtor)
|
||||||
{
|
{
|
||||||
@@ -86,10 +78,7 @@ Curl_hash_init (curl_hash *h, int slots, curl_hash_dtor dtor)
|
|||||||
h->table[i] = Curl_llist_alloc((curl_llist_dtor) _hash_element_dtor);
|
h->table[i] = Curl_llist_alloc((curl_llist_dtor) _hash_element_dtor);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
/* }}} */
|
|
||||||
|
|
||||||
/* {{{ curl_hash *curl_hash_alloc (int, curl_hash_dtor)
|
|
||||||
*/
|
|
||||||
curl_hash *
|
curl_hash *
|
||||||
Curl_hash_alloc (int slots, curl_hash_dtor dtor)
|
Curl_hash_alloc (int slots, curl_hash_dtor dtor)
|
||||||
{
|
{
|
||||||
@@ -103,10 +92,7 @@ Curl_hash_alloc (int slots, curl_hash_dtor dtor)
|
|||||||
|
|
||||||
return h;
|
return h;
|
||||||
}
|
}
|
||||||
/* }}} */
|
|
||||||
|
|
||||||
/* {{{ static int _hash_key_compare (char *, size_t, char *, size_t)
|
|
||||||
*/
|
|
||||||
static int
|
static int
|
||||||
_hash_key_compare (char *key1, size_t key1_len, char *key2, size_t key2_len)
|
_hash_key_compare (char *key1, size_t key1_len, char *key2, size_t key2_len)
|
||||||
{
|
{
|
||||||
@@ -118,12 +104,10 @@ _hash_key_compare (char *key1, size_t key1_len, char *key2, size_t key2_len)
|
|||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
/* }}} */
|
|
||||||
|
|
||||||
/* {{{ static int _mk_hash_element (curl_hash_element **, char *, size_t, const void *)
|
|
||||||
*/
|
|
||||||
static int
|
static int
|
||||||
_mk_hash_element (curl_hash_element **e, char *key, size_t key_len, const void *p)
|
_mk_hash_element (curl_hash_element **e, char *key, size_t key_len,
|
||||||
|
const void *p)
|
||||||
{
|
{
|
||||||
*e = (curl_hash_element *) malloc(sizeof(curl_hash_element));
|
*e = (curl_hash_element *) malloc(sizeof(curl_hash_element));
|
||||||
(*e)->key = strdup(key);
|
(*e)->key = strdup(key);
|
||||||
@@ -131,16 +115,12 @@ _mk_hash_element (curl_hash_element **e, char *key, size_t key_len, const void *
|
|||||||
(*e)->ptr = (void *) p;
|
(*e)->ptr = (void *) p;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
/* }}} */
|
|
||||||
|
|
||||||
#define find_slot(__h, __k, __k_len) (_hash_str(__k, __k_len) % (__h)->slots)
|
#define find_slot(__h, __k, __k_len) (_hash_str(__k, __k_len) % (__h)->slots)
|
||||||
|
|
||||||
#define FETCH_LIST \
|
#define FETCH_LIST \
|
||||||
curl_llist *l = h->table[find_slot(h, key, key_len)]
|
curl_llist *l = h->table[find_slot(h, key, key_len)]
|
||||||
|
|
||||||
|
|
||||||
/* {{{ int curl_hash_add (curl_hash *, char *, size_t, const void *)
|
|
||||||
*/
|
|
||||||
int
|
int
|
||||||
Curl_hash_add (curl_hash *h, char *key, size_t key_len, const void *p)
|
Curl_hash_add (curl_hash *h, char *key, size_t key_len, const void *p)
|
||||||
{
|
{
|
||||||
@@ -169,10 +149,7 @@ Curl_hash_add (curl_hash *h, char *key, size_t key_len, const void *p)
|
|||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
/* }}} */
|
|
||||||
|
|
||||||
/* {{{ int curl_hash_delete (curl_hash *, char *, size_t)
|
|
||||||
*/
|
|
||||||
int
|
int
|
||||||
Curl_hash_delete(curl_hash *h, char *key, size_t key_len)
|
Curl_hash_delete(curl_hash *h, char *key, size_t key_len)
|
||||||
{
|
{
|
||||||
@@ -193,10 +170,7 @@ Curl_hash_delete(curl_hash *h, char *key, size_t key_len)
|
|||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
/* }}} */
|
|
||||||
|
|
||||||
/* {{{ int curl_hash_pick (curl_hash *, char *, size_t, void **)
|
|
||||||
*/
|
|
||||||
void *
|
void *
|
||||||
Curl_hash_pick(curl_hash *h, char *key, size_t key_len)
|
Curl_hash_pick(curl_hash *h, char *key, size_t key_len)
|
||||||
{
|
{
|
||||||
@@ -215,10 +189,7 @@ Curl_hash_pick(curl_hash *h, char *key, size_t key_len)
|
|||||||
|
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
/* }}} */
|
|
||||||
|
|
||||||
/* {{{ void curl_hash_apply (curl_hash *, void *, void (*)(void *, curl_hash_element *))
|
|
||||||
*/
|
|
||||||
void
|
void
|
||||||
Curl_hash_apply(curl_hash *h, void *user,
|
Curl_hash_apply(curl_hash *h, void *user,
|
||||||
void (*cb)(void *user, void *ptr))
|
void (*cb)(void *user, void *ptr))
|
||||||
@@ -235,10 +206,7 @@ Curl_hash_apply(curl_hash *h, void *user,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
/* }}} */
|
|
||||||
|
|
||||||
/* {{{ void curl_hash_clean (curl_hash *)
|
|
||||||
*/
|
|
||||||
void
|
void
|
||||||
Curl_hash_clean(curl_hash *h)
|
Curl_hash_clean(curl_hash *h)
|
||||||
{
|
{
|
||||||
@@ -250,11 +218,7 @@ Curl_hash_clean(curl_hash *h)
|
|||||||
|
|
||||||
free(h->table);
|
free(h->table);
|
||||||
}
|
}
|
||||||
/* }}} */
|
|
||||||
|
|
||||||
/* {{{ void curl_hash_clean_with_criterium (curl_hash *, void *,
|
|
||||||
int (*)(void *, void *))
|
|
||||||
*/
|
|
||||||
void
|
void
|
||||||
Curl_hash_clean_with_criterium(curl_hash *h, void *user,
|
Curl_hash_clean_with_criterium(curl_hash *h, void *user,
|
||||||
int (*comp)(void *, void *))
|
int (*comp)(void *, void *))
|
||||||
@@ -277,17 +241,12 @@ Curl_hash_clean_with_criterium(curl_hash *h, void *user,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* {{{ int curl_hash_count (curl_hash *)
|
|
||||||
*/
|
|
||||||
int
|
int
|
||||||
Curl_hash_count(curl_hash *h)
|
Curl_hash_count(curl_hash *h)
|
||||||
{
|
{
|
||||||
return h->size;
|
return h->size;
|
||||||
}
|
}
|
||||||
/* }}} */
|
|
||||||
|
|
||||||
/* {{{ void curl_hash_destroy (curl_hash *)
|
|
||||||
*/
|
|
||||||
void
|
void
|
||||||
Curl_hash_destroy(curl_hash *h)
|
Curl_hash_destroy(curl_hash *h)
|
||||||
{
|
{
|
||||||
@@ -297,12 +256,4 @@ Curl_hash_destroy(curl_hash *h)
|
|||||||
Curl_hash_clean(h);
|
Curl_hash_clean(h);
|
||||||
free(h);
|
free(h);
|
||||||
}
|
}
|
||||||
/* }}} */
|
|
||||||
|
|
||||||
/*
|
|
||||||
* local variables:
|
|
||||||
* eval: (load-file "../curl-mode.el")
|
|
||||||
* end:
|
|
||||||
* vim600: fdm=marker
|
|
||||||
* vim: et sw=2 ts=2 sts=2 tw=78
|
|
||||||
*/
|
|
||||||
|
10
lib/hash.h
10
lib/hash.h
@@ -7,7 +7,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -58,11 +58,3 @@ void Curl_hash_clean_with_criterium(curl_hash *h, void *user, int (*comp)(void *
|
|||||||
void Curl_hash_destroy(curl_hash *h);
|
void Curl_hash_destroy(curl_hash *h);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/*
|
|
||||||
* local variables:
|
|
||||||
* eval: (load-file "../curl-mode.el")
|
|
||||||
* end:
|
|
||||||
* vim600: fdm=marker
|
|
||||||
* vim: et sw=2 ts=2 sts=2 tw=78
|
|
||||||
*/
|
|
||||||
|
52
lib/hostip.c
52
lib/hostip.c
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -64,6 +64,7 @@
|
|||||||
#include "sendf.h"
|
#include "sendf.h"
|
||||||
#include "hostip.h"
|
#include "hostip.h"
|
||||||
#include "hash.h"
|
#include "hash.h"
|
||||||
|
#include "share.h"
|
||||||
|
|
||||||
#define _MPRINTF_REPLACE /* use our functions only */
|
#define _MPRINTF_REPLACE /* use our functions only */
|
||||||
#include <curl/mprintf.h>
|
#include <curl/mprintf.h>
|
||||||
@@ -211,6 +212,10 @@ void Curl_scan_cache_used(void *user, void *ptr)
|
|||||||
#define HOSTCACHE_RETURN(dns) \
|
#define HOSTCACHE_RETURN(dns) \
|
||||||
{ \
|
{ \
|
||||||
free(entry_id); \
|
free(entry_id); \
|
||||||
|
if(data->share) \
|
||||||
|
{ \
|
||||||
|
Curl_share_unlock(data, CURL_LOCK_DATA_DNS); \
|
||||||
|
} \
|
||||||
return dns; \
|
return dns; \
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -246,6 +251,11 @@ struct Curl_dns_entry *Curl_resolv(struct SessionHandle *data,
|
|||||||
if (!entry_id)
|
if (!entry_id)
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
|
if(data->share)
|
||||||
|
{
|
||||||
|
Curl_share_lock(data, CURL_LOCK_DATA_DNS, CURL_LOCK_ACCESS_SINGLE);
|
||||||
|
}
|
||||||
|
|
||||||
/* See if its already in our dns cache */
|
/* See if its already in our dns cache */
|
||||||
dns = Curl_hash_pick(data->hostcache, entry_id, entry_len+1);
|
dns = Curl_hash_pick(data->hostcache, entry_id, entry_len+1);
|
||||||
|
|
||||||
@@ -284,6 +294,19 @@ struct Curl_dns_entry *Curl_resolv(struct SessionHandle *data,
|
|||||||
HOSTCACHE_RETURN(dns);
|
HOSTCACHE_RETURN(dns);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void Curl_resolv_unlock(struct SessionHandle *data, struct Curl_dns_entry *dns)
|
||||||
|
{
|
||||||
|
if(data->share)
|
||||||
|
{
|
||||||
|
Curl_share_lock(data, CURL_LOCK_DATA_DNS, CURL_LOCK_ACCESS_SINGLE);
|
||||||
|
}
|
||||||
|
dns->inuse--;
|
||||||
|
if(data->share)
|
||||||
|
{
|
||||||
|
Curl_share_unlock(data, CURL_LOCK_DATA_DNS);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* This is a wrapper function for freeing name information in a protocol
|
* This is a wrapper function for freeing name information in a protocol
|
||||||
* independent way. This takes care of using the appropriate underlaying
|
* independent way. This takes care of using the appropriate underlaying
|
||||||
@@ -571,7 +594,7 @@ static Curl_addrinfo *my_getaddrinfo(struct SessionHandle *data,
|
|||||||
h->h_addrtype = AF_INET;
|
h->h_addrtype = AF_INET;
|
||||||
h->h_length = sizeof(*addrentry);
|
h->h_length = sizeof(*addrentry);
|
||||||
h->h_name = &buf->h_name[0];
|
h->h_name = &buf->h_name[0];
|
||||||
MakeIP(ntohl(in), h->h_name, sizeof(buf->h_name));
|
MakeIP(ntohl(in), (char *)h->h_name, sizeof(buf->h_name));
|
||||||
}
|
}
|
||||||
#if defined(HAVE_GETHOSTBYNAME_R)
|
#if defined(HAVE_GETHOSTBYNAME_R)
|
||||||
else {
|
else {
|
||||||
@@ -673,6 +696,19 @@ static Curl_addrinfo *my_getaddrinfo(struct SessionHandle *data,
|
|||||||
#ifdef HAVE_GETHOSTBYNAME_R_3
|
#ifdef HAVE_GETHOSTBYNAME_R_3
|
||||||
/* AIX, Digital Unix, HPUX 10, more? */
|
/* AIX, Digital Unix, HPUX 10, more? */
|
||||||
|
|
||||||
|
/* For AIX 4.3 or later, we don't use gethostbyname_r() at all, because of
|
||||||
|
the plain fact that it does not return unique full buffers on each
|
||||||
|
call, but instead several of the pointers in the hostent structs will
|
||||||
|
point to the same actual data! This have the unfortunate down-side that
|
||||||
|
our caching system breaks down horribly. Luckily for us though, AIX 4.3
|
||||||
|
and more recent versions have a completely thread-safe libc where all
|
||||||
|
the data is stored in thread-specific memory areas making calls to the
|
||||||
|
plain old gethostbyname() work fine even for multi-threaded programs.
|
||||||
|
|
||||||
|
This AIX 4.3 or later detection is all made in the configure script.
|
||||||
|
|
||||||
|
Troels Walsted Hansen helped us work this out on March 3rd, 2003. */
|
||||||
|
|
||||||
if(CURL_NAMELOOKUP_SIZE >=
|
if(CURL_NAMELOOKUP_SIZE >=
|
||||||
(sizeof(struct hostent)+sizeof(struct hostent_data)))
|
(sizeof(struct hostent)+sizeof(struct hostent_data)))
|
||||||
|
|
||||||
@@ -682,7 +718,8 @@ static Curl_addrinfo *my_getaddrinfo(struct SessionHandle *data,
|
|||||||
|
|
||||||
ret = gethostbyname_r(hostname,
|
ret = gethostbyname_r(hostname,
|
||||||
(struct hostent *)buf,
|
(struct hostent *)buf,
|
||||||
(struct hostent_data *)((char *)buf + sizeof(struct hostent)));
|
(struct hostent_data *)((char *)buf +
|
||||||
|
sizeof(struct hostent)));
|
||||||
else
|
else
|
||||||
ret = -1; /* failure, too smallish buffer size */
|
ret = -1; /* failure, too smallish buffer size */
|
||||||
|
|
||||||
@@ -718,12 +755,3 @@ static Curl_addrinfo *my_getaddrinfo(struct SessionHandle *data,
|
|||||||
}
|
}
|
||||||
|
|
||||||
#endif /* end of IPv4-specific code */
|
#endif /* end of IPv4-specific code */
|
||||||
|
|
||||||
/*
|
|
||||||
* local variables:
|
|
||||||
* eval: (load-file "../curl-mode.el")
|
|
||||||
* end:
|
|
||||||
* vim600: fdm=marker
|
|
||||||
* vim: et sw=2 ts=2 sts=2 tw=78
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -59,7 +59,7 @@ struct Curl_dns_entry *Curl_resolv(struct SessionHandle *data,
|
|||||||
int port);
|
int port);
|
||||||
|
|
||||||
/* unlock a previously resolved dns entry */
|
/* unlock a previously resolved dns entry */
|
||||||
#define Curl_resolv_unlock(dns) dns->inuse--
|
void Curl_resolv_unlock(struct SessionHandle *data, struct Curl_dns_entry *dns);
|
||||||
|
|
||||||
/* for debugging purposes only: */
|
/* for debugging purposes only: */
|
||||||
void Curl_scan_cache_used(void *user, void *ptr);
|
void Curl_scan_cache_used(void *user, void *ptr);
|
||||||
|
21
lib/http.c
21
lib/http.c
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -232,7 +232,7 @@ CURLcode add_buffer_send(send_buffer *in,
|
|||||||
|
|
||||||
return CURLE_OK;
|
return CURLE_OK;
|
||||||
}
|
}
|
||||||
|
http->sending = HTTPSEND_BODY;
|
||||||
/* the full buffer was sent, clean up and return */
|
/* the full buffer was sent, clean up and return */
|
||||||
}
|
}
|
||||||
if(in->buffer)
|
if(in->buffer)
|
||||||
@@ -663,7 +663,8 @@ CURLcode Curl_http(struct connectdata *conn)
|
|||||||
host due to a location-follow, we do some weirdo checks here */
|
host due to a location-follow, we do some weirdo checks here */
|
||||||
if(!data->state.this_is_a_follow ||
|
if(!data->state.this_is_a_follow ||
|
||||||
!data->state.auth_host ||
|
!data->state.auth_host ||
|
||||||
curl_strequal(data->state.auth_host, conn->hostname)) {
|
curl_strequal(data->state.auth_host, conn->hostname) ||
|
||||||
|
data->set.http_disable_hostname_check_before_authentication) {
|
||||||
sprintf(data->state.buffer, "%s:%s",
|
sprintf(data->state.buffer, "%s:%s",
|
||||||
data->state.user, data->state.passwd);
|
data->state.user, data->state.passwd);
|
||||||
if(Curl_base64_encode(data->state.buffer, strlen(data->state.buffer),
|
if(Curl_base64_encode(data->state.buffer, strlen(data->state.buffer),
|
||||||
@@ -716,7 +717,7 @@ CURLcode Curl_http(struct connectdata *conn)
|
|||||||
if(data->cookies) {
|
if(data->cookies) {
|
||||||
co = Curl_cookie_getlist(data->cookies,
|
co = Curl_cookie_getlist(data->cookies,
|
||||||
host, ppath,
|
host, ppath,
|
||||||
(conn->protocol&PROT_HTTPS?TRUE:FALSE));
|
(bool)(conn->protocol&PROT_HTTPS?TRUE:FALSE));
|
||||||
}
|
}
|
||||||
if (data->change.proxy && *data->change.proxy &&
|
if (data->change.proxy && *data->change.proxy &&
|
||||||
!data->set.tunnel_thru_httpproxy &&
|
!data->set.tunnel_thru_httpproxy &&
|
||||||
@@ -997,6 +998,9 @@ CURLcode Curl_http(struct connectdata *conn)
|
|||||||
headers = headers->next;
|
headers = headers->next;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
http->postdata = NULL; /* nothing to post at this point */
|
||||||
|
Curl_pgrsSetUploadSize(data, 0); /* upload size is 0 atm */
|
||||||
|
|
||||||
switch(data->set.httpreq) {
|
switch(data->set.httpreq) {
|
||||||
|
|
||||||
case HTTPREQ_POST_FORM:
|
case HTTPREQ_POST_FORM:
|
||||||
@@ -1179,13 +1183,4 @@ CURLcode Curl_http(struct connectdata *conn)
|
|||||||
|
|
||||||
return CURLE_OK;
|
return CURLE_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/*
|
|
||||||
* local variables:
|
|
||||||
* eval: (load-file "../curl-mode.el")
|
|
||||||
* end:
|
|
||||||
* vim600: fdm=marker
|
|
||||||
* vim: et sw=2 ts=2 sts=2 tw=78
|
|
||||||
*/
|
|
||||||
#endif
|
#endif
|
||||||
|
@@ -8,7 +8,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
|
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -248,12 +248,4 @@ CHUNKcode Curl_httpchunk_read(struct connectdata *conn,
|
|||||||
}
|
}
|
||||||
return CHUNKE_OK;
|
return CHUNKE_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
* local variables:
|
|
||||||
* eval: (load-file "../curl-mode.el")
|
|
||||||
* end:
|
|
||||||
* vim600: fdm=marker
|
|
||||||
* vim: et sw=2 ts=2 sts=2 tw=78
|
|
||||||
*/
|
|
||||||
#endif /* CURL_DISABLE_HTTP */
|
#endif /* CURL_DISABLE_HTTP */
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
|
13
lib/if2ip.c
13
lib/if2ip.c
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -32,7 +32,8 @@
|
|||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if ! defined(WIN32) && ! defined(__BEOS__) && !defined(__CYGWIN32__)
|
#if ! defined(WIN32) && ! defined(__BEOS__) && !defined(__CYGWIN32__) && \
|
||||||
|
! defined(__riscos__)
|
||||||
|
|
||||||
#ifdef HAVE_SYS_SOCKET_H
|
#ifdef HAVE_SYS_SOCKET_H
|
||||||
#include <sys/socket.h>
|
#include <sys/socket.h>
|
||||||
@@ -124,11 +125,3 @@ char *Curl_if2ip(char *interface, char *buf, int buf_size)
|
|||||||
#else
|
#else
|
||||||
#define if2ip(x) NULL
|
#define if2ip(x) NULL
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/*
|
|
||||||
* local variables:
|
|
||||||
* eval: (load-file "../curl-mode.el")
|
|
||||||
* end:
|
|
||||||
* vim600: fdm=marker
|
|
||||||
* vim: et sw=2 ts=2 sts=2 tw=78
|
|
||||||
*/
|
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -24,7 +24,8 @@
|
|||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
#include "setup.h"
|
#include "setup.h"
|
||||||
|
|
||||||
#if ! defined(WIN32) && ! defined(__BEOS__) && !defined(__CYGWIN32__)
|
#if ! defined(WIN32) && ! defined(__BEOS__) && !defined(__CYGWIN32__) && \
|
||||||
|
! defined(__riscos__)
|
||||||
extern char *Curl_if2ip(char *interface, char *buf, int buf_size);
|
extern char *Curl_if2ip(char *interface, char *buf, int buf_size);
|
||||||
#else
|
#else
|
||||||
#define Curl_if2ip(a,b,c) NULL
|
#define Curl_if2ip(a,b,c) NULL
|
||||||
|
19
lib/krb4.c
19
lib/krb4.c
@@ -50,6 +50,7 @@
|
|||||||
#include <syslog.h>
|
#include <syslog.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <krb.h>
|
#include <krb.h>
|
||||||
|
#include <des.h>
|
||||||
|
|
||||||
#ifdef HAVE_UNISTD_H
|
#ifdef HAVE_UNISTD_H
|
||||||
#include <unistd.h> /* for getpid() */
|
#include <unistd.h> /* for getpid() */
|
||||||
@@ -187,6 +188,10 @@ mk_auth(struct krb4_data *d, KTEXT adat,
|
|||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef HAVE_KRB_GET_OUR_IP_FOR_REALM
|
||||||
|
int krb_get_our_ip_for_realm(char *, struct in_addr *);
|
||||||
|
#endif
|
||||||
|
|
||||||
static int
|
static int
|
||||||
krb4_auth(void *app_data, struct connectdata *conn)
|
krb4_auth(void *app_data, struct connectdata *conn)
|
||||||
{
|
{
|
||||||
@@ -328,7 +333,7 @@ CURLcode Curl_krb_kauth(struct connectdata *conn)
|
|||||||
|
|
||||||
if(conn->data->state.buffer[0] != '3'){
|
if(conn->data->state.buffer[0] != '3'){
|
||||||
Curl_set_command_prot(conn, save);
|
Curl_set_command_prot(conn, save);
|
||||||
return;
|
return CURLE_FTP_WEIRD_SERVER_REPLY;
|
||||||
}
|
}
|
||||||
|
|
||||||
p = strstr(conn->data->state.buffer, "T=");
|
p = strstr(conn->data->state.buffer, "T=");
|
||||||
@@ -361,7 +366,7 @@ CURLcode Curl_krb_kauth(struct connectdata *conn)
|
|||||||
des_string_to_key (conn->data->state.passwd, &key);
|
des_string_to_key (conn->data->state.passwd, &key);
|
||||||
des_key_sched(&key, schedule);
|
des_key_sched(&key, schedule);
|
||||||
|
|
||||||
des_pcbc_encrypt((des_cblock*)tkt.dat, (des_cblock*)tktcopy.dat,
|
des_pcbc_encrypt((void *)tkt.dat, (void *)tktcopy.dat,
|
||||||
tkt.length,
|
tkt.length,
|
||||||
schedule, &key, DES_DECRYPT);
|
schedule, &key, DES_DECRYPT);
|
||||||
if (strcmp ((char*)tktcopy.dat + 8,
|
if (strcmp ((char*)tktcopy.dat + 8,
|
||||||
@@ -370,7 +375,7 @@ CURLcode Curl_krb_kauth(struct connectdata *conn)
|
|||||||
krb_realmofhost(conn->hostname),
|
krb_realmofhost(conn->hostname),
|
||||||
&key);
|
&key);
|
||||||
des_key_sched(&key, schedule);
|
des_key_sched(&key, schedule);
|
||||||
des_pcbc_encrypt((des_cblock*)tkt.dat, (des_cblock*)tktcopy.dat,
|
des_pcbc_encrypt((void *)tkt.dat, (void *)tktcopy.dat,
|
||||||
tkt.length,
|
tkt.length,
|
||||||
schedule, &key, DES_DECRYPT);
|
schedule, &key, DES_DECRYPT);
|
||||||
}
|
}
|
||||||
@@ -399,11 +404,3 @@ CURLcode Curl_krb_kauth(struct connectdata *conn)
|
|||||||
|
|
||||||
#endif /* KRB4 */
|
#endif /* KRB4 */
|
||||||
#endif /* CURL_DISABLE_FTP */
|
#endif /* CURL_DISABLE_FTP */
|
||||||
|
|
||||||
/*
|
|
||||||
* local variables:
|
|
||||||
* eval: (load-file "../curl-mode.el")
|
|
||||||
* end:
|
|
||||||
* vim600: fdm=marker
|
|
||||||
* vim: et sw=2 ts=2 sts=2 tw=78
|
|
||||||
*/
|
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
|
10
lib/ldap.c
10
lib/ldap.c
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -222,12 +222,4 @@ CURLcode Curl_ldap(struct connectdata *conn)
|
|||||||
|
|
||||||
return status;
|
return status;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
* local variables:
|
|
||||||
* eval: (load-file "../curl-mode.el")
|
|
||||||
* end:
|
|
||||||
* vim600: fdm=marker
|
|
||||||
* vim: et sw=2 ts=2 sts=2 tw=78
|
|
||||||
*/
|
|
||||||
#endif
|
#endif
|
||||||
|
@@ -8,7 +8,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
|
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
|
@@ -6,7 +6,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -221,11 +221,3 @@ int curl_fclose(FILE *file, int line, const char *source)
|
|||||||
int VOID_VAR_MEMDEBUG;
|
int VOID_VAR_MEMDEBUG;
|
||||||
#endif
|
#endif
|
||||||
#endif /* MALLOCDEBUG */
|
#endif /* MALLOCDEBUG */
|
||||||
|
|
||||||
/*
|
|
||||||
* local variables:
|
|
||||||
* eval: (load-file "../curl-mode.el")
|
|
||||||
* end:
|
|
||||||
* vim600: fdm=marker
|
|
||||||
* vim: et sw=2 ts=2 sts=2 tw=78
|
|
||||||
*/
|
|
||||||
|
@@ -6,7 +6,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -28,6 +28,9 @@
|
|||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef WIN32
|
||||||
|
#include <winsock.h>
|
||||||
|
#endif
|
||||||
#ifdef HAVE_SYS_SOCKET_H
|
#ifdef HAVE_SYS_SOCKET_H
|
||||||
#include <sys/socket.h>
|
#include <sys/socket.h>
|
||||||
#endif
|
#endif
|
||||||
|
@@ -1180,11 +1180,3 @@ int main()
|
|||||||
}
|
}
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/*
|
|
||||||
* local variables:
|
|
||||||
* eval: (load-file "../curl-mode.el")
|
|
||||||
* end:
|
|
||||||
* vim600: fdm=marker
|
|
||||||
* vim: et sw=2 ts=2 sts=2 tw=78
|
|
||||||
*/
|
|
||||||
|
18
lib/multi.c
18
lib/multi.c
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -24,6 +24,14 @@
|
|||||||
#include "setup.h"
|
#include "setup.h"
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
|
||||||
|
#ifdef HAVE_SYS_TYPES_H
|
||||||
|
#include <sys/types.h>
|
||||||
|
#endif
|
||||||
|
#ifdef HAVE_SYS_SOCKET_H
|
||||||
|
#include <sys/socket.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
#include <curl/curl.h>
|
#include <curl/curl.h>
|
||||||
|
|
||||||
#include "urldata.h"
|
#include "urldata.h"
|
||||||
@@ -557,11 +565,3 @@ CURLMsg *curl_multi_info_read(CURLM *multi_handle, int *msgs_in_queue)
|
|||||||
else
|
else
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
* local variables:
|
|
||||||
* eval: (load-file "../curl-mode.el")
|
|
||||||
* end:
|
|
||||||
* vim600: fdm=marker
|
|
||||||
* vim: et sw=2 ts=2 sts=2 tw=78
|
|
||||||
*/
|
|
||||||
|
10
lib/netrc.c
10
lib/netrc.c
@@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@@ -241,11 +241,3 @@ int main(int argc, char **argv)
|
|||||||
}
|
}
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/*
|
|
||||||
* local variables:
|
|
||||||
* eval: (load-file "../curl-mode.el")
|
|
||||||
* end:
|
|
||||||
* vim600: fdm=marker
|
|
||||||
* vim: et sw=2 ts=2 sts=2 tw=78
|
|
||||||
*/
|
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 1998 - 2002, Daniel Stenberg, <daniel@haxx.se>, et al.
|
* Copyright (C) 1998 - 2003, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user