Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse code

Strip away files not related to HTML::Form

  • Loading branch information...
commit c9a8e255731474cefb708bc3e64aad74a1513c78 1 parent 7559ec5
Gisle Aas authored

Showing 146 changed files with 11 additions and 27,166 deletions. Show diff stats Hide diff stats

  1. +0 120 AUTHORS
  2. +11 128 MANIFEST
  3. +0 24 MANIFEST.SKIP
  4. +0 63 NOTES.txt
  5. +0 21 README.SSL
  6. +0 25 bin/authors
  7. +0 330 bin/lwp-download
  8. +0 120 bin/lwp-dump
  9. +0 105 bin/lwp-mirror
  10. +0 543 bin/lwp-request
  11. +0 41 bin/pod-after-end
  12. +0 38 bin/uncuddle
  13. +0 60 bin/url-minder
  14. +0 387 doc/examples.html
  15. +0 45 doc/features.html
  16. +0 36 doc/install.html
  17. +0 314 doc/norobots.html
  18. +0 44 lib/Bundle/LWP.pm
  19. +0 413 lib/File/Listing.pm
  20. +0 436 lib/HTTP/Config.pm
  21. +0 781 lib/HTTP/Cookies.pm
  22. +0 329 lib/HTTP/Cookies/Microsoft.pm
  23. +0 114 lib/HTTP/Cookies/Netscape.pm
  24. +0 903 lib/HTTP/Daemon.pm
  25. +0 389 lib/HTTP/Date.pm
  26. +0 849 lib/HTTP/Headers.pm
  27. +0 98 lib/HTTP/Headers/Auth.pm
  28. +0 94 lib/HTTP/Headers/ETag.pm
  29. +0 199 lib/HTTP/Headers/Util.pm
  30. +0 1,107 lib/HTTP/Message.pm
  31. +0 529 lib/HTTP/Negotiate.pm
  32. +0 242 lib/HTTP/Request.pm
  33. +0 511 lib/HTTP/Request/Common.pm
  34. +0 637 lib/HTTP/Response.pm
  35. +0 254 lib/HTTP/Status.pm
  36. +0 668 lib/LWP.pm
  37. +0 65 lib/LWP/Authen/Basic.pm
  38. +0 68 lib/LWP/Authen/Digest.pm
  39. +0 180 lib/LWP/Authen/Ntlm.pm
  40. +0 310 lib/LWP/ConnCache.pm
  41. +0 110 lib/LWP/Debug.pm
  42. +0 26 lib/LWP/Debug/TraceHTTP.pm
  43. +0 5 lib/LWP/DebugFile.pm
  44. +0 298 lib/LWP/MediaTypes.pm
  45. +0 44 lib/LWP/MemberMixin.pm
  46. +0 291 lib/LWP/Protocol.pm
  47. +0 73 lib/LWP/Protocol/GHTTP.pm
  48. +0 72 lib/LWP/Protocol/cpan.pm
  49. +0 52 lib/LWP/Protocol/data.pm
  50. +0 146 lib/LWP/Protocol/file.pm
  51. +0 543 lib/LWP/Protocol/ftp.pm
  52. +0 213 lib/LWP/Protocol/gopher.pm
  53. +0 482 lib/LWP/Protocol/http.pm
  54. +0 289 lib/LWP/Protocol/http10.pm
  55. +0 90 lib/LWP/Protocol/https.pm
  56. +0 75 lib/LWP/Protocol/https10.pm
  57. +0 26 lib/LWP/Protocol/loopback.pm
  58. +0 183 lib/LWP/Protocol/mailto.pm
  59. +0 145 lib/LWP/Protocol/nntp.pm
  60. +0 24 lib/LWP/Protocol/nogo.pm
  61. +0 308 lib/LWP/RobotUA.pm
  62. +0 253 lib/LWP/Simple.pm
  63. +0 1,806 lib/LWP/UserAgent.pm
  64. +0 1,064 lib/LWP/media.types
  65. +0 279 lib/Net/HTTP.pm
  66. +0 593 lib/Net/HTTP/Methods.pm
  67. +0 105 lib/Net/HTTP/NB.pm
  68. +0 80 lib/Net/HTTPS.pm
  69. +0 445 lib/WWW/RobotRules.pm
  70. +0 170 lib/WWW/RobotRules/AnyDBM_File.pm
  71. +0 162 lib/WWW/RobotRules/DB_File.pm
  72. +0 309 lwpcook.pod
  73. +0 839 lwptut.pod
  74. +0 24 t/README
  75. +0 59 t/TEST
  76. +0 213 t/base/common-req.t
  77. +0 706 t/base/cookies.t
  78. +0 180 t/base/date.t
  79. +0 42 t/base/headers-auth.t
  80. +0 29 t/base/headers-etag.t
  81. +0 45 t/base/headers-util.t
  82. +0 446 t/base/headers.t
  83. +0 71 t/base/http-config.t
  84. +0 201 t/base/http.t
  85. +0 91 t/base/listing.t
  86. +0 105 t/base/mediatypes.t
  87. +0 119 t/base/message-charset.t
  88. +0 52 t/base/message-decode-xml.t
  89. +0 97 t/base/message-old.t
  90. +0 113 t/base/message-parts.t
  91. +0 489 t/base/message.t
  92. +0 112 t/base/negotiate.t
  93. +0 17 t/base/protocols.t
  94. +0 17 t/base/proxy.t
  95. +0 32 t/base/request.t
  96. +0 102 t/base/response.t
  97. +0 18 t/base/status-old.t
  98. +0 18 t/base/status.t
  99. +0 57 t/base/ua.t
  100. +0 27 t/live/apache-listing.t
  101. +0 50 t/live/apache.t
  102. +0 20 t/live/https.t
  103. +0 53 t/live/jigsaw-auth-b.t
  104. +0 33 t/live/jigsaw-auth-d.t
  105. +0 37 t/live/jigsaw-chunk.t
  106. +0 29 t/live/jigsaw-md5-get.t
  107. +0 26 t/live/jigsaw-md5.t
  108. +0 16 t/live/jigsaw-neg-get.t
  109. +0 15 t/live/jigsaw-neg.t
  110. +0 33 t/live/jigsaw-te.t
  111. +0 26 t/local/autoload-get.t
  112. +0 22 t/local/autoload.t
  113. +0 184 t/local/chunked.t
  114. +0 86 t/local/get.t
  115. +0 380 t/local/http.t
  116. +0 87 t/local/httpsub.t
  117. +0 70 t/local/protosub.t
  118. +0 23 t/misc/dbmrobot
  119. +0 36 t/misc/format-test.pl
  120. +0 13 t/misc/ftp-list
  121. +0 30 t/misc/get-callback
  122. +0 18 t/misc/get-file
  123. +0 31 t/misc/httpd
  124. +0 25 t/misc/httpd_term.pl
  125. +0 35 t/misc/negotiate
  126. +0 4 t/misc/pod.t
  127. +0 14 t/misc/ptest.pl
  128. +0 14 t/misc/robot
  129. +0 1  t/net/.gitignore
  130. +0 4 t/net/cgi-bin/moved
  131. +0 26 t/net/cgi-bin/nph-slowdata
  132. +0 31 t/net/cgi-bin/slowread
  133. +0 28 t/net/cgi-bin/test
  134. +0 7 t/net/cgi-bin/timeout
  135. +0 10 t/net/config.pl.dist
  136. +0 45 t/net/http-get.t
  137. +0 46 t/net/http-post.t
  138. +0 40 t/net/http-timeout.t
  139. +0 35 t/net/mirror.t
  140. +0 32 t/net/moved.t
  141. +0 35 t/net/proxy.t
  142. +0 128 t/robot/rules-dbm.t
  143. +0 230 t/robot/rules.t
  144. +0 156 t/robot/ua-get.t
  145. +0 151 t/robot/ua.t
  146. +0 49 talk-to-ourself
120 AUTHORS
... ... @@ -1,120 +0,0 @@
1   -Adam Newby <adam@NewsNow.co.uk>
2   -Albert Dvornik <bert@genscan.com>
3   -Alexandre Duret-Lutz <duret_g@lrde.epita.fr>
4   -Andreas Gustafsson <gson@araneus.fi>
5   -Andreas König <andreas.koenig@anima.de>
6   -Andreas König <koenig@mind.de>
7   -Andrew Pimlott <andrew@pimlott.net>
8   -Andy Lester <andy@petdance.com>
9   -Ben Coleman <bcoleman@mindspring.com>
10   -Benjamin Low <ben@snrc.uow.edu.au>
11   -Ben Low <ben@snrc.uow.edu.au>
12   -Ben Tilly <Ben_Tilly@trepp.com>
13   -Blair Zajac <blair@gps.caltech.edu>
14   -Blair Zajac <blair@orcaware.com>
15   -Bob Dalgleish
16   -BooK <book@netcourrier.com>
17   -Brad Hughes <brad@tmc.naecker.com>
18   -Brian J. Murrell
19   -Brian McCauley <B.A.McCauley@bham.ac.uk>
20   -Charles C. Fu <ccwf@bacchus.com>
21   -Charles Lane <lane@DUPHY4.Physics.Drexel.Edu>
22   -Chris Nandor <pudge@pobox.com>
23   -Christian Gilmore <cgilmore@tivoli.com>
24   -Chris W. Unger <cunger@cas.org>
25   -Craig Macdonald <craig@freeasphost.co.uk>
26   -Dale Couch <dcouch@training.orl.lmco.com>
27   -Dan Kubb <dan.kubb@onautopilot.com>
28   -Dave Dunkin <dave_dunkin@hotmail.com>
29   -Dave W. Smith <dws@postcognitive.com>
30   -David Coppit <david@coppit.org>
31   -David Dick <david_dick@iprimus.com.au>
32   -David D. Kilzer <ddkilzer@madison.dseg.ti.com>
33   -Doug MacEachern <dougm@covalent.net>
34   -Doug MacEachern <dougm@osf.org>
35   -Doug MacEachern <dougm@pobox.com>
36   -Edward Avis <epa98@doc.ic.ac.uk>
37   -<erik@mediator.uni-c.dk>
38   -Gary Shea <shea@gtsdesign.com>
39   -Gisle Aas <aas@oslonett.no>
40   -Gisle Aas <aas@sn.no>
41   -Gisle Aas <gisle@aas.no>
42   -Gisle Aas <gisle@ActiveState.com>
43   -Graham Barr
44   -Gurusamy Sarathy <gsar@ActiveState.com>
45   -Gurusamy Sarathy <gsar@engin.umich.edu>
46   -Hans de Graaff <hans@degraaff.org>
47   -Harald Joerg <haj@oook.m.uunet.de>
48   -Harry Bochner <bochner@das.harvard.edu>
49   -Hugo <hv@crypt.compulink.co.uk>
50   -Ilya Zakharevich
51   -INOUE Yoshinari <inoue@kusm.kyoto-u.ac.jp>
52   -Ivan Panchenko
53   -Jack Shirazi
54   -James Tillman
55   -Jan Dubois <jand@ActiveState.com>
56   -Jared Rhine
57   -Jim Stern <jstern@world.northgrum.com>
58   -Joao Lopes <developer@st3tailor.com.br>
59   -John Klar <j.klar@xpedite.com>
60   -Johnny Lee <typo_pl@hotmail.com>
61   -Josh Kronengold <mneme@mcny.com>
62   -Josh Rai <josh@rai.name>
63   -Joshua Chamas <joshua@chamas.com>
64   -Joshua Hoblitt <jhoblitt@ifa.hawaii.edu>
65   -Kartik Subbarao <subbarao@computer.org>
66   -Keiichiro Nagano <knagano@sodan.org>
67   -Ken Williams <ken@mathforum.org>
68   -KONISHI Katsuhiro <konishi@din.or.jp>
69   -Lee T Lindley <Lee.Lindley@viasystems.com>
70   -Liam Quinn <liam@htmlhelp.com>
71   -Marc Hedlund <hedlund@best.com>
72   -Marc Langheinrich <marc@ccm.cl.nec.co.jp>
73   -Mark D. Anderson <mda@discerning.com>
74   -Marko Asplund <aspa@hip.fi>
75   -Mark Stosberg <markstos@cpan.org>
76   -Markus B Krüger <markusk@pvv.org>
77   -Markus Laker <mlaker@contax.co.uk>
78   -Martijn Koster <m.koster@nexor.co.uk>
79   -Martin Thurn <mthurn@northropgrumman.com>
80   -Matthew Eldridge <eldridge@Graphics.Stanford.EDU>
81   -<Matthew.van.Eerde@hbinc.com>
82   -Matt Sergeant <matt-news@sergeant.org>
83   -Michael A. Chase <mchase@ix.netcom.com>
84   -Michael Quaranta <quaranta@vnet.IBM.COM>
85   -Michael Thompson <mickey@berkeley.innomedia.com>
86   -Mike Schilli <schilli1@pacbell.net>
87   -Moshe Kaminsky <kaminsky@math.huji.ac.il>
88   -Nathan Torkington <gnat@frii.com>
89   -Nicolai Langfeldt <janl@ifi.uio.no>
90   -Nicolai Langfeldt <janl@math.uio.no>
91   -Norton Allen <allen@huarp.harvard.edu>
92   -Olly Betts <olly@muscat.co.uk>
93   -Paul J. Schinder <schinder@leprss.gsfc.nasa.gov>
94   -<peterm@zeta.org.au>
95   -Philip GuentherDaniel Buenzli <buenzli@rzu.unizh.ch>
96   -Pon Hwa Lin <koala@fragment.com>
97   -Radoslaw Zielinski <radek@karnet.pl>
98   -Radu Greab <radu@netsoft.ro>
99   -Randal L. Schwartz <merlyn@stonehenge.com>
100   -Richard Chen <richard@lexitech.com>
101   -Robin Barker <Robin.Barker@npl.co.uk>
102   -Roy Fielding <fielding@beach.w3.org>
103   -Sander van Zoest <sander@covalent.net>
104   -Sean M. Burke <sburke@cpan.org>
105   -<shildreth@emsphone.com>
106   -Slaven Rezic <slaven@rezic.de>
107   -Steve A Fink <steve@fink.com>
108   -Steve Hay <steve.hay@uk.radan.com>
109   -Steven Butler <stevenb@kjross.com.au>
110   -<Steve_Kilbane@cegelecproj.co.uk>
111   -Takanori Ugai <ugai@jp.fujitsu.com>
112   -Thomas Lotterer <thl@dev.de.cw.com>
113   -Tim Bunce
114   -Tom Hughes <thh@cyberscience.com>
115   -Tony Finch <fanf@demon.net>
116   -Ville Skyttä <ville.skytta@iki.fi>
117   -Ward Vandewege <ward@pong.be>
118   -William York <william@mathworks.com>
119   -Yale Huang <yale@sdf-eu.org>
120   -Yitzchak Scott-Thoennes <sthoenna@efn.org>
139 MANIFEST
... ... @@ -1,128 +1,11 @@
1   -AUTHORS Who made this
2   -Changes History of this package
3   -MANIFEST This file
4   -Makefile.PL Makefile generator
5   -README Get you started with this package
6   -README.SSL When you need SSL support
7   -bin/lwp-download Writes bin/lwp-download script
8   -bin/lwp-dump Writes bin/lwp-dump script
9   -bin/lwp-mirror Writes bin/lwp-mirror script
10   -bin/lwp-request Writes bin/lwp-request script
11   -talk-to-ourself Are we able to run tests talk HTTP to local server?
12   -lib/Bundle/LWP.pm Defines prereq modules
13   -lib/File/Listing.pm Parse directory listings
14   -lib/HTML/Form.pm Parse <form>...</form>
15   -lib/HTTP/Config.pm Look up stuff based on request/reponse properties
16   -lib/HTTP/Cookies.pm Cookie storage and management
17   -lib/HTTP/Cookies/Netscape.pm Deal with the Netscape cookie file format
18   -lib/HTTP/Cookies/Microsoft.pm Deal with the Microsoft MSIE cookie file format
19   -lib/HTTP/Daemon.pm A simple httpd
20   -lib/HTTP/Date.pm Date conversion routines
21   -lib/HTTP/Headers.pm Class encapsulating HTTP Message headers
22   -lib/HTTP/Headers/Auth.pm Some methods that deal with authorization.
23   -lib/HTTP/Headers/ETag.pm Some methods that deal with entity tags
24   -lib/HTTP/Headers/Util.pm Some utility functions for header values.
25   -lib/HTTP/Message.pm Class encapsulating HTTP messages
26   -lib/HTTP/Negotiate.pm Evaluate HTTP content negotiation algoritm
27   -lib/HTTP/Request.pm Class encapsulating HTTP Requests
28   -lib/HTTP/Request/Common.pm Generate common requests
29   -lib/HTTP/Response.pm Class encapsulating HTTP Responses
30   -lib/HTTP/Status.pm HTTP Status code processing
31   -lib/LWP.pm Includes what you need
32   -lib/LWP/Authen/Basic.pm Basic authentication scheme
33   -lib/LWP/Authen/Digest.pm Digest authentication scheme
34   -lib/LWP/Authen/Ntlm.pm NTLM authentication (Microsoft)
35   -lib/LWP/ConnCache.pm Connection cache
36   -lib/LWP/Debug.pm Debugging support
37   -lib/LWP/DebugFile.pm Send debug output to a file
38   -lib/LWP/MediaTypes.pm Library for guessing media types
39   -lib/LWP/MemberMixin.pm Helps you access %$self
40   -lib/LWP/Protocol.pm Virtual base class for LWP protocols
41   -lib/LWP/Protocol/GHTTP.pm Alternative HTTP protocol handler
42   -lib/LWP/Protocol/cpan.pm Access to cpan URLs
43   -lib/LWP/Protocol/data.pm Access to data URLs
44   -lib/LWP/Protocol/file.pm Access local files
45   -lib/LWP/Protocol/ftp.pm Access with the FTP protocol
46   -lib/LWP/Protocol/gopher.pm Access with the Gopher protocol
47   -lib/LWP/Protocol/http.pm Access with HTTP/1.1 protocol
48   -lib/LWP/Protocol/http10.pm Access with HTTP/1.0 protocol
49   -lib/LWP/Protocol/https.pm Access with HTTP/1.1 protocol over SSL
50   -lib/LWP/Protocol/https10.pm Access with HTTP/1.0 protocol over SSL
51   -lib/LWP/Protocol/loopback.pm Returns request (like HTTP TRACE)
52   -lib/LWP/Protocol/mailto.pm Allows you to POST mail using sendmail
53   -lib/LWP/Protocol/nntp.pm Handles access to news: and nntp: URLs
54   -lib/LWP/Protocol/nogo.pm Denies all requests.
55   -lib/LWP/RobotUA.pm Easy creation of conforming robots
56   -lib/LWP/Simple.pm Procedural LWP interface
57   -lib/LWP/UserAgent.pm A WWW UserAgent class
58   -lib/LWP/media.types Mapping from file extentions media types
59   -lib/Net/HTTP.pm Lower level HTTP on an IO::Socket::INET
60   -lib/Net/HTTP/Methods.pm Lower level HTTP/1.1 protocol
61   -lib/Net/HTTP/NB.pm Non-blocking HTTP
62   -lib/Net/HTTPS.pm Lower level HTTP on an SSL socket
63   -lib/WWW/RobotRules.pm Parse robot.txt files
64   -lib/WWW/RobotRules/AnyDBM_File.pm Persistent robot rules
65   -lwpcook.pod Libwww-perl examples
66   -lwptut.pod Libwww-perl tutorial
67   -t/README How to run and set up tests
68   -t/TEST Run tests
69   -t/base/common-req.t Test HTTP::Request::Common module
70   -t/base/cookies.t Test HTTP::Cookies module
71   -t/base/date.t Test HTTP::Date module
72   -t/base/headers-auth.t Test HTTP::Headers::Auth module
73   -t/base/headers-etag.t Test HTTP::Headers::ETag module
74   -t/base/headers-util.t Test HTTP::Headers::Util module
75   -t/base/headers.t Test HTTP::Headers module
76   -t/base/http.t Test Net::HTTP::Methods module
77   -t/base/http-config.t Test HTTP::Config module
78   -t/base/listing.t Test File::Listing module
79   -t/base/mediatypes.t Test LWP::MediaTypes module
80   -t/base/message.t Test HTTP::Message
81   -t/base/message-charset.t Test HTTP::Message content_charset method
82   -t/base/message-old.t Test HTTP::Request/HTTP::Response
83   -t/base/message-parts.t Test HTTP::Message parts method
84   -t/base/negotiate.t Test HTTP::Negotiation module
85   -t/base/protocols.t Test protocol methods of LWP::UserAgent
86   -t/base/request.t Test additional HTTP::Request methods
87   -t/base/response.t Test additional HTTP::Response methods
88   -t/base/status.t Test HTTP::Status module
89   -t/base/status-old.t Test HTTP::Status module
90   -t/base/ua.t Basic LWP::UserAgent tests
91   -t/html/form.t Test HTML::Form module
92   -t/html/form-param.t More HTML::Form tests.
93   -t/html/form-multi-select.t More HTML::Form tests
94   -t/html/form-maxlength.t More HTML::Form tests
95   -t/html/form-selector.t More HTML::Form tests
96   -t/live/apache.t
97   -t/live/apache-listing.t Test File::Listing::apache package
98   -t/live/https.t
99   -t/live/jigsaw-auth-b.t
100   -t/live/jigsaw-auth-d.t
101   -t/live/jigsaw-chunk.t
102   -t/live/jigsaw-md5-get.t
103   -t/live/jigsaw-md5.t
104   -t/live/jigsaw-neg-get.t
105   -t/live/jigsaw-neg.t
106   -t/live/jigsaw-te.t
107   -t/local/autoload-get.t
108   -t/local/autoload.t Test autoloading of LWP::Protocol modules
109   -t/local/chunked.t
110   -t/local/get.t Try to get a local file
111   -t/local/http.t Test http to local server
112   -t/local/protosub.t Test with other protocol module
113   -t/net/cgi-bin/moved
114   -t/net/cgi-bin/nph-slowdata
115   -t/net/cgi-bin/slowread
116   -t/net/cgi-bin/test
117   -t/net/cgi-bin/timeout
118   -t/net/config.pl.dist Suggested configuration for net tests
119   -t/net/http-get.t
120   -t/net/http-post.t
121   -t/net/http-timeout.t
122   -t/net/mirror.t
123   -t/net/moved.t
124   -t/net/proxy.t
125   -t/robot/rules-dbm.t Test WWW::RobotRules::AnyDBM_File
126   -t/robot/rules.t Test WWW::RobotRules
127   -t/robot/ua-get.t
128   -t/robot/ua.t Test LWP::RobotUA
  1 +Changes
  2 +lib/HTML/Form.pm
  3 +Makefile.PL
  4 +MANIFEST This list of files
  5 +README
  6 +t/html/form-maxlength.t
  7 +t/html/form-multi-select.t
  8 +t/html/form-param.t
  9 +t/html/form-selector.t
  10 +t/html/form-unicode.t
  11 +t/html/form.t
24 MANIFEST.SKIP
... ... @@ -1,24 +0,0 @@
1   -^blib/
2   -\.old$
3   -^Makefile$
4   -^MANIFEST\.bak$
5   -^MANIFEST\.SKIP$
6   -^pm_to_blib$
7   -^#
8   -/#
9   -~$
10   -^bin/lwp-download$
11   -^bin/lwp-request$
12   -^bin/lwp-mirror$
13   -^bin/lwp-rget$
14   -^find-tab$
15   -\b(RCS|CVS)/[^/]+$
16   -^.git/
17   -^.gitignore$
18   -^t/misc/
19   -^html/
20   -^doc/
21   -^SSL/
22   -^m/
23   -^xx
24   -\.tar\.gz$
63 NOTES.txt
... ... @@ -1,63 +0,0 @@
1   -HTTP::Message
2   --------------
3   -
4   -- option to keep file content in file (save method?)
5   -- save message to file (separate file for headers and content?)
6   -- option to move file content to temp file if it grows big enough
7   -
8   - - bind( $filename ) # discard current content (read file/write lazily)
9   - - save( $filename ) # write current content to file and bind()
10   - - rename( $filename ) # croak if not bound
11   - - close() # in case file handle is open, flush saved content
12   - - unbind(keep_content/reset_content/unlink)
13   -
14   - - bound() # returns the bound filename (or false)
15   -
16   - - tempfile(template, DIR, SUFFIX, TMPDIR, CLEANUP, LIMIT)
17   -
18   - - read($offset, $length)
19   - - alternative is to expose the IO::Handle interface (IO::String for compat)
20   - - length # return -s
21   - - content_length # already a method giving access to the Header field
22   -
23   - - methods to sync header fields and file meta data
24   - - Last-Modified
25   - - Content-Length
26   - - Content-Type
27   - - Content-Encoding
28   - - Content-MD5
29   -
30   - - state kept to track file binding
31   - - filename
32   - - fh
33   - - open_readonly
34   - - temp_limit
35   - - temp_options
36   -
37   - - interaction with current interface
38   - - content_ref modifications problematic
39   - - do we implement content_ref at all?
40   - - file suffix should stay in sync as the file is encoded/decoded
41   - - parts (when does modification happen)
42   - - clear; implies unbind(reset_content)
43   - - clone; implies unbind(keep_content)?, no shared $fh at least
44   -
45   - - optionally loaded as HTTP::Message::File (?)
46   - - a way to store headers, status line, etc in a file as well?
47   -
48   -- decode stream (reusable in LWP::Protocol)
49   -- registry of encoders for encode/decode
50   -
51   -LWP::UserAgent
52   ---------------
53   -- raise HTTP::Response objects as exceptions
54   -
55   -
56   -Data::Sink/Source
57   ------------------
58   -
59   -- alternative consumer/producer
60   -- get/read, close
61   -- put/write/feed, flush, close
62   -- reset
63   -- http://effbot.org/zone/consumer.htm
21 README.SSL
... ... @@ -1,21 +0,0 @@
1   -SSL SUPPORT
2   ------------
3   -
4   -The libwww-perl package has support for using SSL/TLSv1 with its HTTP
5   -client and server classes. This support makes it possible to access
6   -https schemed URLs with LWP. Because of the problematic status of
7   -encryption software in general and certain encryption algorithms in
8   -particular, in several countries, libwww-perl package doesn't include
9   -SSL functionality out-of-the-box.
10   -
11   -Encryption support is obtained through the use of IO::Socket::SSL or
12   -Crypt::SSLeay, which can both be found from CPAN. While libwww-perl
13   -has "plug-and-play" support for both of these modules (as of v5.45),
14   -the recommended module to use is IO::Socket::SSL.
15   -
16   -There is yet another SSL interface for perl called Net::SSLeay. It has
17   -a more complete SSL interface and can be used for web client
18   -programming among other things but doesn't directly support LWP.
19   -
20   -The underlying SSL support in all of these modules is based on OpenSSL
21   -<http://www.openssl.org/> (formerly SSLeay).
25 bin/authors
... ... @@ -1,25 +0,0 @@
1   -#!/usr/bin/perl -w
2   -
3   -# This script will summarize authors in a form suitable for including in
4   -# the AUTHORS section of the LWP manpage.
5   -
6   -use strict;
7   -
8   -open(AUTHORS, "AUTHORS") || die;
9   -
10   -my %seen;
11   -
12   -while (<AUTHORS>) {
13   - chomp;
14   - if (/^</) {
15   - # only email address available
16   - s/^<//;
17   - s/>$//;
18   - s/\@.*//;
19   - }
20   - else {
21   - s/\s+<.*//;
22   - }
23   - next if $seen{$_}++;
24   - print "$_,\n";
25   -}
330 bin/lwp-download
... ... @@ -1,330 +0,0 @@
1   -#!/usr/bin/perl -w
2   -
3   -=head1 NAME
4   -
5   -lwp-download - Fetch large files from the web
6   -
7   -=head1 SYNOPSIS
8   -
9   -B<lwp-download> [B<-a>] [B<-s>] <I<url>> [<I<local path>>]
10   -
11   -=head1 DESCRIPTION
12   -
13   -The B<lwp-download> program will save the file at I<url> to a local
14   -file.
15   -
16   -If I<local path> is not specified, then the current directory is
17   -assumed.
18   -
19   -If I<local path> is a directory, then the last segment of the path of the
20   -I<url> is appended to form a local filename. If the I<url> path ends with
21   -slash the name "index" is used. With the B<-s> option pick up the last segment
22   -of the filename from server provided sources like the Content-Disposition
23   -header or any redirect URLs. A file extension to match the server reported
24   -Content-Type might also be appended. If a file with the produced filename
25   -already exists, then B<lwp-download> will prompt before it overwrites and will
26   -fail if its standard input is not a terminal. This form of invocation will
27   -also fail is no acceptable filename can be derived from the sources mentioned
28   -above.
29   -
30   -If I<local path> is not a directory, then it is simply used as the
31   -path to save into. If the file already exists it's overwritten.
32   -
33   -The I<lwp-download> program is implemented using the I<libwww-perl>
34   -library. It is better suited to down load big files than the
35   -I<lwp-request> program because it does not store the file in memory.
36   -Another benefit is that it will keep you updated about its progress
37   -and that you don't have much options to worry about.
38   -
39   -Use the C<-a> option to save the file in text (ascii) mode. Might
40   -make a difference on dosish systems.
41   -
42   -=head1 EXAMPLE
43   -
44   -Fetch the newest and greatest perl version:
45   -
46   - $ lwp-download http://www.perl.com/CPAN/src/latest.tar.gz
47   - Saving to 'latest.tar.gz'...
48   - 11.4 MB received in 8 seconds (1.43 MB/sec)
49   -
50   -=head1 AUTHOR
51   -
52   -Gisle Aas <gisle@aas.no>
53   -
54   -=cut
55   -
56   -#' get emacs out of quote mode
57   -
58   -use strict;
59   -
60   -use LWP::UserAgent ();
61   -use LWP::MediaTypes qw(guess_media_type media_suffix);
62   -use URI ();
63   -use HTTP::Date ();
64   -use Encode;
65   -use Encode::Locale;
66   -
67   -my $progname = $0;
68   -$progname =~ s,.*/,,; # only basename left in progname
69   -$progname =~ s,.*\\,, if $^O eq "MSWin32";
70   -$progname =~ s/\.\w*$//; # strip extension if any
71   -
72   -#parse option
73   -use Getopt::Std;
74   -my %opt;
75   -unless (getopts('as', \%opt)) {
76   - usage();
77   -}
78   -
79   -my $url = URI->new(decode(locale => shift) || usage());
80   -my $argfile = encode(locale_fs => decode(locale => shift));
81   -usage() if defined($argfile) && !length($argfile);
82   -my $VERSION = "5.835";
83   -
84   -my $ua = LWP::UserAgent->new(
85   - agent => "lwp-download/$VERSION ",
86   - keep_alive => 1,
87   - env_proxy => 1,
88   -);
89   -
90   -my $file; # name of file we download into
91   -my $length; # total number of bytes to download
92   -my $flength; # formatted length
93   -my $size = 0; # number of bytes received
94   -my $start_t; # start time of download
95   -my $last_dur; # time of last callback
96   -
97   -my $shown = 0; # have we called the show() function yet
98   -
99   -$SIG{INT} = sub { die "Interrupted\n"; };
100   -
101   -$| = 1; # autoflush
102   -
103   -my $res = $ua->request(HTTP::Request->new(GET => $url),
104   - sub {
105   - unless(defined $file) {
106   - my $res = $_[1];
107   -
108   - my $directory;
109   - if (defined $argfile && -d $argfile) {
110   - ($directory, $argfile) = ($argfile, undef);
111   - }
112   -
113   - unless (defined $argfile) {
114   - # find a suitable name to use
115   - $file = $opt{s} && $res->filename;
116   -
117   - # if this fails we try to make something from the URL
118   - unless ($file) {
119   - $file = ($url->path_segments)[-1];
120   - if (!defined($file) || !length($file)) {
121   - $file = "index";
122   - my $suffix = media_suffix($res->content_type);
123   - $file .= ".$suffix" if $suffix;
124   - }
125   - elsif ($url->scheme eq 'ftp' ||
126   - $file =~ /\.t[bg]z$/ ||
127   - $file =~ /\.tar(\.(Z|gz|bz2?))?$/
128   - ) {
129   - # leave the filename as it was
130   - }
131   - else {
132   - my $ct = guess_media_type($file);
133   - unless ($ct eq $res->content_type) {
134   - # need a better suffix for this type
135   - my $suffix = media_suffix($res->content_type);
136   - $file .= ".$suffix" if $suffix;
137   - }
138   - }
139   - }
140   -
141   - # validate that we don't have a harmful filename now. The server
142   - # might try to trick us into doing something bad.
143   - if (!length($file) ||
144   - $file =~ s/([^a-zA-Z0-9_\.\-\+\~])/sprintf "\\x%02x", ord($1)/ge ||
145   - $file =~ /^\./
146   - )
147   - {
148   - die "Will not save <$url> as \"$file\".\nPlease override file name on the command line.\n";
149   - }
150   -
151   - if (defined $directory) {
152   - require File::Spec;
153   - $file = File::Spec->catfile($directory, $file);
154   - }
155   -
156   - # Check if the file is already present
157   - if (-l $file) {
158   - die "Will not save <$url> to link \"$file\".\nPlease override file name on the command line.\n";
159   - }
160   - elsif (-f _) {
161   - die "Will not save <$url> as \"$file\" without verification.\nEither run from terminal or override file name on the command line.\n"
162   - unless -t;
163   - $shown = 1;
164   - print "Overwrite $file? [y] ";
165   - my $ans = <STDIN>;
166   - unless (defined($ans) && $ans =~ /^y?\n/) {
167   - if (defined $ans) {
168   - print "Ok, aborting.\n";
169   - }
170   - else {
171   - print "\nAborting.\n";
172   - }
173   - exit 1;
174   - }
175   - $shown = 0;
176   - }
177   - elsif (-e _) {
178   - die "Will not save <$url> as \"$file\". Path exists.\n";
179   - }
180   - else {
181   - print "Saving to '$file'...\n";
182   - use Fcntl qw(O_WRONLY O_EXCL O_CREAT);
183   - sysopen(FILE, $file, O_WRONLY|O_EXCL|O_CREAT) ||
184   - die "Can't open $file: $!";
185   - }
186   - }
187   - else {
188   - $file = $argfile;
189   - }
190   - unless (fileno(FILE)) {
191   - open(FILE, ">", $file) || die "Can't open $file: $!\n";
192   - }
193   - binmode FILE unless $opt{a};
194   - $length = $res->content_length;
195   - $flength = fbytes($length) if defined $length;
196   - $start_t = time;
197   - $last_dur = 0;
198   - }
199   -
200   - print FILE $_[0] or die "Can't write to $file: $!\n";
201   - $size += length($_[0]);
202   -
203   - if (defined $length) {
204   - my $dur = time - $start_t;
205   - if ($dur != $last_dur) { # don't update too often
206   - $last_dur = $dur;
207   - my $perc = $size / $length;
208   - my $speed;
209   - $speed = fbytes($size/$dur) . "/sec" if $dur > 3;
210   - my $secs_left = fduration($dur/$perc - $dur);
211   - $perc = int($perc*100);
212   - my $show = "$perc% of $flength";
213   - $show .= " (at $speed, $secs_left remaining)" if $speed;
214   - show($show, 1);
215   - }
216   - }
217   - else {
218   - show( fbytes($size) . " received");
219   - }
220   - }
221   -);
222   -
223   -if (fileno(FILE)) {
224   - close(FILE) || die "Can't write to $file: $!\n";
225   -
226   - show(""); # clear text
227   - print "\r";
228   - print fbytes($size);
229   - print " of ", fbytes($length) if defined($length) && $length != $size;
230   - print " received";
231   - my $dur = time - $start_t;
232   - if ($dur) {
233   - my $speed = fbytes($size/$dur) . "/sec";
234   - print " in ", fduration($dur), " ($speed)";
235   - }
236   - print "\n";
237   -
238   - if (my $mtime = $res->last_modified) {
239   - utime time, $mtime, $file;
240   - }
241   -
242   - if ($res->header("X-Died") || !$res->is_success) {
243   - if (my $died = $res->header("X-Died")) {
244   - print "$died\n";
245   - }
246   - if (-t) {
247   - print "Transfer aborted. Delete $file? [n] ";
248   - my $ans = <STDIN>;
249   - if (defined($ans) && $ans =~ /^y\n/) {
250   - unlink($file) && print "Deleted.\n";
251   - }
252   - elsif ($length > $size) {
253   - print "Truncated file kept: ", fbytes($length - $size), " missing\n";
254   - }
255   - else {
256   - print "File kept.\n";
257   - }
258   - exit 1;
259   - }
260   - else {
261   - print "Transfer aborted, $file kept\n";
262   - }
263   - }
264   - exit 0;
265   -}
266   -
267   -# Did not manage to create any file
268   -print "\n" if $shown;
269   -if (my $xdied = $res->header("X-Died")) {
270   - print "$progname: Aborted\n$xdied\n";
271   -}
272   -else {
273   - print "$progname: ", $res->status_line, "\n";
274   -}
275   -exit 1;
276   -
277   -
278   -sub fbytes
279   -{
280   - my $n = int(shift);
281   - if ($n >= 1024 * 1024) {
282   - return sprintf "%.3g MB", $n / (1024.0 * 1024);
283   - }
284   - elsif ($n >= 1024) {
285   - return sprintf "%.3g KB", $n / 1024.0;
286   - }
287   - else {
288   - return "$n bytes";
289   - }
290   -}
291   -
292   -sub fduration
293   -{
294   - use integer;
295   - my $secs = int(shift);
296   - my $hours = $secs / (60*60);
297   - $secs -= $hours * 60*60;
298   - my $mins = $secs / 60;
299   - $secs %= 60;
300   - if ($hours) {
301   - return "$hours hours $mins minutes";
302   - }
303   - elsif ($mins >= 2) {
304   - return "$mins minutes";
305   - }
306   - else {
307   - $secs += $mins * 60;
308   - return "$secs seconds";
309   - }
310   -}
311   -
312   -
313   -BEGIN {
314   - my @ani = qw(- \ | /);
315   - my $ani = 0;
316   -
317   - sub show
318   - {
319   - my($mess, $show_ani) = @_;
320   - print "\r$mess" . (" " x (75 - length $mess));
321   - print $show_ani ? "$ani[$ani++]\b" : " ";
322   - $ani %= @ani;
323   - $shown++;
324   - }
325   -}
326   -
327   -sub usage
328   -{
329   - die "Usage: $progname [-a] <url> [<lpath>]\n";
330   -}
120 bin/lwp-dump
... ... @@ -1,120 +0,0 @@
1   -#!/usr/bin/perl -w
2   -
3   -use strict;
4   -use LWP::UserAgent ();
5   -use Getopt::Long qw(GetOptions);
6   -use Encode;
7   -use Encode::Locale;
8   -
9   -my $VERSION = "5.827";
10   -
11   -GetOptions(\my %opt,
12   - 'parse-head',
13   - 'max-length=n',
14   - 'keep-client-headers',
15   - 'method=s',
16   - 'agent=s',
17   - 'request',
18   -) || usage();
19   -
20   -my $url = shift || usage();
21   -@ARGV && usage();
22   -
23   -sub usage {
24   - (my $progname = $0) =~ s,.*/,,;
25   - die <<"EOT";
26   -Usage: $progname [options] <url>
27   -
28   -Recognized options are:
29   - --agent <str>
30   - --keep-client-headers
31   - --max-length <n>
32   - --method <str>
33   - --parse-head
34   - --request
35   -
36   -EOT
37   -}
38   -
39   -my $ua = LWP::UserAgent->new(
40   - parse_head => $opt{'parse-head'} || 0,
41   - keep_alive => 1,
42   - env_proxy => 1,
43   - agent => $opt{agent} || "lwp-dump/$VERSION ",
44   -);
45   -
46   -my $req = HTTP::Request->new($opt{method} || 'GET' => decode(locale => $url));
47   -my $res = $ua->simple_request($req);
48   -$res->remove_header(grep /^Client-/, $res->header_field_names)
49   - unless $opt{'keep-client-headers'} or
50   - ($res->header("Client-Warning") || "") eq "Internal response";
51   -
52   -if ($opt{request}) {
53   - $res->request->dump;
54   - print "\n";
55   -}
56   -
57   -$res->dump(maxlength => $opt{'max-length'});
58   -
59   -__END__
60   -
61   -=head1 NAME
62   -
63   -lwp-dump - See what headers and content is returned for a URL
64   -
65   -=head1 SYNOPSIS
66   -
67   -B<lwp-dump> [ I<options> ] I<URL>
68   -
69   -=head1 DESCRIPTION
70   -
71   -The B<lwp-dump> program will get the resource indentified by the URL and then
72   -dump the response object to STDOUT. This will display the headers returned and
73   -the initial part of the content, escaped so that it's safe to display even
74   -binary content. The escapes syntax used is the same as for Perl's double
75   -quoted strings. If there is no content the string "(no content)" is shown in
76   -its place.
77   -
78   -The following options are recognized:
79   -
80   -=over
81   -
82   -=item B<--agent> I<str>
83   -
84   -Override the user agent string passed to the server.
85   -
86   -=item B<--keep-client-headers>
87   -
88   -LWP internally generate various C<Client-*> headers that are stripped by
89   -B<lwp-dump> in order to show the headers exactly as the server provided them.
90   -This option will suppress this.
91   -
92   -=item B<--max-length> I<n>
93   -
94   -How much of the content to show. The default is 512. Set this
95   -to 0 for unlimited.
96   -
97   -If the content is longer then the string is chopped at the
98   -limit and the string "...\n(### more bytes not shown)"
99   -appended.
100   -
101   -=item B<--method> I<str>
102   -
103   -Use the given method for the request instead of the default "GET".
104   -
105   -=item B<--parse-head>
106   -
107   -By default B<lwp-dump> will not try to initialize headers by looking at the
108   -head section of HTML documents. This option enables this. This corresponds to
109   -L<LWP::UserAgent/"parse_head">.
110   -
111   -=item B<--request>
112   -
113   -Also dump the request sent.
114   -
115   -=back
116   -
117   -=head1 SEE ALSO
118   -
119   -L<lwp-request>, L<LWP>, L<HTTP::Message/"dump">
120   -
105 bin/lwp-mirror
... ... @@ -1,105 +0,0 @@
1   -#!/usr/bin/perl -w
2   -
3   -# Simple mirror utility using LWP
4   -
5   -=head1 NAME
6   -
7   -lwp-mirror - Simple mirror utility
8   -
9   -=head1 SYNOPSIS
10   -
11   - lwp-mirror [-v] [-t timeout] <url> <local file>
12   -
13   -=head1 DESCRIPTION
14   -
15   -This program can be used to mirror a document from a WWW server. The
16   -document is only transfered if the remote copy is newer than the local
17   -copy. If the local copy is newer nothing happens.
18   -
19   -Use the C<-v> option to print the version number of this program.
20   -
21   -The timeout value specified with the C<-t> option. The timeout value
22   -is the time that the program will wait for response from the remote
23   -server before it fails. The default unit for the timeout value is
24   -seconds. You might append "m" or "h" to the timeout value to make it
25   -minutes or hours, respectively.
26   -
27   -Because this program is implemented using the LWP library, it only
28   -supports the protocols that LWP supports.
29   -
30   -=head1 SEE ALSO
31   -
32   -L<lwp-request>, L<LWP>
33   -
34   -=head1 AUTHOR
35   -
36   -Gisle Aas <gisle@aas.no>
37   -
38   -=cut
39   -
40   -
41   -use LWP::Simple qw(mirror is_success status_message $ua);
42   -use Getopt::Std;
43   -use Encode;
44   -use Encode::Locale;
45   -
46   -$progname = $0;
47   -$progname =~ s,.*/,,; # use basename only
48   -$progname =~ s/\.\w*$//; #strip extension if any
49   -
50   -$VERSION = "5.810";
51   -
52   -$opt_h = undef; # print usage
53   -$opt_v = undef; # print version
54   -$opt_t = undef; # timeout
55   -
56   -unless (getopts("hvt:")) {
57   - usage();
58   -}
59   -
60   -if ($opt_v) {
61   - require LWP;
62   - my $DISTNAME = 'libwww-perl-' . LWP::Version();
63   - die <<"EOT";
64   -This is lwp-mirror version $VERSION ($DISTNAME)
65   -
66   -Copyright 1995-1999, Gisle Aas.
67   -
68   -This program is free software; you can redistribute it and/or
69   -modify it under the same terms as Perl itself.
70   -EOT
71   -}
72   -
73   -$url = decode(locale => shift) or usage();
74   -$file = encode(locale_fs => decode(locale => shift)) or usage();
75   -usage() if $opt_h or @ARGV;
76   -
77   -if (defined $opt_t) {
78   - $opt_t =~ /^(\d+)([smh])?/;
79   - die "$progname: Illegal timeout value!\n" unless defined $1;
80   - $timeout = $1;
81   - $timeout *= 60 if ($2 eq "m");
82   - $timeout *= 3600 if ($2 eq "h");
83   - $ua->timeout($timeout);
84   -}
85   -
86   -$rc = mirror($url, $file);
87   -
88   -if ($rc == 304) {
89   - print STDERR "$progname: $file is up to date\n"
90   -}
91   -elsif (!is_success($rc)) {
92   - print STDERR "$progname: $rc ", status_message($rc), " ($url)\n";
93   - exit 1;
94   -}
95   -exit;
96   -
97   -
98   -sub usage
99   -{
100   - die <<"EOT";
101   -Usage: $progname [-options] <url> <file>
102   - -v print version number of program
103   - -t <timeout> Set timeout value
104   -EOT
105   -}
543 bin/lwp-request
... ... @@ -1,543 +0,0 @@
1   -#!/usr/bin/perl -w
2   -
3   -# Simple user agent using LWP library.
4   -
5   -=head1 NAME
6   -
7   -lwp-request, GET, POST, HEAD - Simple command line user agent
8   -
9   -=head1 SYNOPSIS
10   -
11   -B<lwp-request> [B<-afPuUsSedvhx>] [B<-m> I<method>] [B<-b> I<base URL>] [B<-t> I<timeout>]
12   - [B<-i> I<if-modified-since>] [B<-c> I<content-type>]
13   - [B<-C> I<credentials>] [B<-p> I<proxy-url>] [B<-o> I<format>] I<url>...
14   -
15   -=head1 DESCRIPTION
16   -
17   -This program can be used to send requests to WWW servers and your
18   -local file system. The request content for POST and PUT
19   -methods is read from stdin. The content of the response is printed on
20   -stdout. Error messages are printed on stderr. The program returns a
21   -status value indicating the number of URLs that failed.
22   -
23   -The options are:
24   -
25   -=over 4
26   -
27   -=item -m <method>
28   -
29   -Set which method to use for the request. If this option is not used,
30   -then the method is derived from the name of the program.
31   -
32   -=item -f
33   -
34   -Force request through, even if the program believes that the method is
35   -illegal. The server might reject the request eventually.
36   -
37   -=item -b <uri>
38   -
39   -This URI will be used as the base URI for resolving all relative URIs
40   -given as argument.
41   -
42   -=item -t <timeout>
43   -
44   -Set the timeout value for the requests. The timeout is the amount of
45   -time that the program will wait for a response from the remote server
46   -before it fails. The default unit for the timeout value is seconds.
47   -You might append "m" or "h" to the timeout value to make it minutes or
48   -hours, respectively. The default timeout is '3m', i.e. 3 minutes.
49   -
50   -=item -i <time>
51   -
52   -Set the If-Modified-Since header in the request. If I<time> is the
53   -name of a file, use the modification timestamp for this file. If
54   -I<time> is not a file, it is parsed as a literal date. Take a look at
55   -L<HTTP::Date> for recognized formats.
56   -
57   -=item -c <content-type>
58   -
59   -Set the Content-Type for the request. This option is only allowed for
60   -requests that take a content, i.e. POST and PUT. You can
61   -force methods to take content by using the C<-f> option together with
62   -C<-c>. The default Content-Type for POST is
63   -C<application/x-www-form-urlencoded>. The default Content-type for
64   -the others is C<text/plain>.
65   -
66   -=item -p <proxy-url>
67   -
68   -Set the proxy to be used for the requests. The program also loads
69   -proxy settings from the environment. You can disable this with the
70   -C<-P> option.
71   -
72   -=item -P
73   -
74   -Don't load proxy settings from environment.
75   -
76   -=item -H <header>
77   -
78   -Send this HTTP header with each request. You can specify several, e.g.:
79   -
80   - lwp-request \
81   - -H 'Referer: http://other.url/' \
82   - -H 'Host: somehost' \
83   - http://this.url/
84   -
85   -=item -C <username>:<password>
86   -
87   -Provide credentials for documents that are protected by Basic
88   -Authentication. If the document is protected and you did not specify
89   -the username and password with this option, then you will be prompted
90   -to provide these values.
91   -
92   -=back
93   -
94   -The following options controls what is displayed by the program:
95   -
96   -=over 4
97   -
98   -=item -u
99   -
100   -Print request method and absolute URL as requests are made.
101   -
102   -=item -U
103   -
104   -Print request headers in addition to request method and absolute URL.
105   -
106   -=item -s
107   -
108   -Print response status code. This option is always on for HEAD requests.
109   -
110   -=item -S
111   -
112   -Print response status chain. This shows redirect and authorization
113   -requests that are handled by the library.
114   -
115   -=item -e
116   -
117   -Print response headers. This option is always on for HEAD requests.
118   -
119   -=item -E
120   -
121   -Print response status chain with full response headers.
122   -
123   -=item -d
124   -
125   -Do B<not> print the content of the response.
126   -
127   -=item -o <format>
128   -
129   -Process HTML content in various ways before printing it. If the
130   -content type of the response is not HTML, then this option has no
131   -effect. The legal format values are; I<text>, I<ps>, I<links>,
132   -I<html> and I<dump>.
133   -
134   -If you specify the I<text> format then the HTML will be formatted as
135   -plain latin1 text. If you specify the I<ps> format then it will be
136   -formatted as Postscript.
137   -
138   -The I<links> format will output all links found in the HTML document.
139   -Relative links will be expanded to absolute ones.
140   -
141   -The I<html> format will reformat the HTML code and the I<dump> format
142   -will just dump the HTML syntax tree.
143   -
144   -Note that the C<HTML-Tree> distribution needs to be installed for this
145   -option to work. In addition the C<HTML-Format> distribution needs to
146   -be installed for I<-o text> or I<-o ps> to work.
147   -
148   -=item -v
149   -
150   -Print the version number of the program and quit.
151   -
152   -=item -h
153   -
154   -Print usage message and quit.
155   -
156   -=item -a
157   -
158   -Set text(ascii) mode for content input and output. If this option is not
159   -used, content input and output is done in binary mode.
160   -
161   -=back
162   -
163   -Because this program is implemented using the LWP library, it will
164   -only support the protocols that LWP supports.
165   -
166   -=head1 SEE ALSO
167   -
168   -L<lwp-mirror>, L<LWP>
169   -
170   -=head1 COPYRIGHT
171   -
172   -Copyright 1995-1999 Gisle Aas.
173   -
174   -This library is free software; you can redistribute it and/or
175   -modify it under the same terms as Perl itself.
176   -
177   -=head1 AUTHOR
178   -
179   -Gisle Aas <gisle@aas.no>
180   -
181   -=cut
182   -