From e06aaa5c79788c5d7fed43f18ab197e452d2f1c3 Mon Sep 17 00:00:00 2001 From: Mukund Sivaraman Date: Mon, 14 Sep 2009 16:56:12 +0530 Subject: Rename doc directory to docs --- Makefile.am | 2 +- configure.ac | 6 +- doc/.gitignore | 3 - doc/Makefile.am | 8 --- doc/filter-howto.txt | 52 ---------------- doc/http-error-codes.txt | 61 ------------------ doc/http-rfcs.txt | 23 ------- doc/man8/.gitignore | 3 - doc/man8/Makefile.am | 23 ------- doc/man8/tinyproxy.txt.in | 152 --------------------------------------------- docs/.gitignore | 3 + docs/Makefile.am | 8 +++ docs/filter-howto.txt | 52 ++++++++++++++++ docs/http-error-codes.txt | 61 ++++++++++++++++++ docs/http-rfcs.txt | 23 +++++++ docs/man8/.gitignore | 3 + docs/man8/Makefile.am | 23 +++++++ docs/man8/tinyproxy.txt.in | 152 +++++++++++++++++++++++++++++++++++++++++++++ 18 files changed, 329 insertions(+), 329 deletions(-) delete mode 100644 doc/.gitignore delete mode 100644 doc/Makefile.am delete mode 100644 doc/filter-howto.txt delete mode 100644 doc/http-error-codes.txt delete mode 100644 doc/http-rfcs.txt delete mode 100644 doc/man8/.gitignore delete mode 100644 doc/man8/Makefile.am delete mode 100644 doc/man8/tinyproxy.txt.in create mode 100644 docs/.gitignore create mode 100644 docs/Makefile.am create mode 100644 docs/filter-howto.txt create mode 100644 docs/http-error-codes.txt create mode 100644 docs/http-rfcs.txt create mode 100644 docs/man8/.gitignore create mode 100644 docs/man8/Makefile.am create mode 100644 docs/man8/tinyproxy.txt.in diff --git a/Makefile.am b/Makefile.am index d3c20f6..7a2551b 100644 --- a/Makefile.am +++ b/Makefile.am @@ -2,7 +2,7 @@ SUBDIRS = \ src \ data \ etc \ - doc \ + docs \ m4macros \ packaging diff --git a/configure.ac b/configure.ac index 7eb256e..f74a66b 100644 --- a/configure.ac +++ b/configure.ac @@ -330,9 +330,9 @@ src/Makefile data/Makefile data/templates/Makefile etc/Makefile -doc/Makefile -doc/man8/Makefile -doc/man8/tinyproxy.txt +docs/Makefile +docs/man8/Makefile +docs/man8/tinyproxy.txt m4macros/Makefile packaging/Makefile packaging/fedora/tinyproxy.spec diff --git a/doc/.gitignore b/doc/.gitignore deleted file mode 100644 index 71605d5..0000000 --- a/doc/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -Makefile -Makefile.in -report.sh diff --git a/doc/Makefile.am b/doc/Makefile.am deleted file mode 100644 index b7d199b..0000000 --- a/doc/Makefile.am +++ /dev/null @@ -1,8 +0,0 @@ -SUBDIRS = \ - man8 - -EXTRA_DIST = \ - http-error-codes.txt \ - http-rfcs.txt \ - filter-howto.txt - diff --git a/doc/filter-howto.txt b/doc/filter-howto.txt deleted file mode 100644 index 3acd813..0000000 --- a/doc/filter-howto.txt +++ /dev/null @@ -1,52 +0,0 @@ -Using tinyproxy with Your Home/Small Business Network - -Written: Patrick L. McGillan -Edited: Robert James Kaes (2002-06-04) ------------------------------------------------------ - -Being as this will be the most common usage and there were no clear -basic instructions for this scenario, I thought I would write up what -I did for my home system. - -First the layout of the network. A cable modem is connected through a -Linksys Router to a small hub. The computers hanging off the hub and -have a clear shot to the Internet. - -So, the connection from the Internet to the hub looks like this: - - Internet->Cable TV Line->Cable Modem->Linksys Router->Hub/Switch - -Restricting Internet web access on some of those computers (connected -to the hub) is what using tinyproxy is all about. Using the web -interface to the Linksys router, turn off all Internet access to those -computers that shouldn't have direct access to the Internet. This is -done by clicking on the advanced tab and entering the IP number in the -filter range. Now those computers have to go through a proxy, for -their access, as they have no direct access. - -On one of the Linux computers which still has Internet access (I use -an old 486) load up tinyproxy. Now have the users configure their -Internet Explorer/Netscape Navigator programs to use the proxy on the -tinyproxy computer box, along with the port number declared in the -tinyproxy configuration file. By default, there is no blocking of web -sites with this program, so I created a file, called "filter", to -start blocking some sites. - -Example "filter" file entries: - -bannerads.zwire.com -ad.doubleclick.net -ads.fortunecity.com - -This filter file usually goes into the same folder, as your -configuration file. Be sure and uncomment the 'Filter' line in your -configuration file and make sure it points at your newly created -filter file. - ------------------------------------------------------------------------- - -Copyright (c) 2002 Patrick L. McGillan - -This document is released under the same copyright license as -tinyproxy. You should have found a COPYING file in the top level -directory of this distribution which contains the current license. \ No newline at end of file diff --git a/doc/http-error-codes.txt b/doc/http-error-codes.txt deleted file mode 100644 index b7fb0cd..0000000 --- a/doc/http-error-codes.txt +++ /dev/null @@ -1,61 +0,0 @@ -The following is a list of the response codes for the various states of -the server. Currently I would recommend we stick to the HTTP/1.0 return -codes for our errors. Once we start to support the distinction between -HTTP/1.0 and HTTP/1.1 requests from the client, then we can use the -HTTP/1.1 responses. - -- rjkaes - -[ Taken from Apache: The Definitive Guide by Ben Laurie & Peter Laurie. - Published by O'Reilly & Associates, Inc. pg. 146-147 ] - -HTTP/1.0 -200 OK -302 Found -304 Not Modified -400 Bad Request -401 Unauthorized -403 Forbidden -404 Not Found -500 Server error -501 Not Implemented -502 Bad Gateway -503 Out of resources - -HTTP/1.1 -100 Continue -101 Switching Protocols -200 Ok -201 Created -202 Accepted -203 Non-Authoritative Information -204 No Content -205 Reset Content -206 Partial Content -300 Multiple Choices -301 Moved Permanently -302 Moved Temporarily -303 See Other -304 Not Modified -305 Use Proxy -400 Bad Request -401 Unauthorized -402 Payment Required -403 Forbidden -404 Not Found -405 Method Not Allowed -406 Not Acceptable -407 Proxy Authentication Required -408 Request Time-out -409 Conflict -410 Gone -411 Length Required -412 Precondition Failed -413 Request Entity Too Large -414 Request-URI Too Large -415 Unsupported Media Type -500 Internal Server Error -501 Not Implemented -502 Bad Gateway -503 Service Unavailable -504 Gateway Time-out -505 HTTP Version not supported diff --git a/doc/http-rfcs.txt b/doc/http-rfcs.txt deleted file mode 100644 index 081d2d0..0000000 --- a/doc/http-rfcs.txt +++ /dev/null @@ -1,23 +0,0 @@ -INFO ----- -The following files were/are useful for the proper coding of -tinyproxy. Please note: someday tinyproxy will actually be RFC -compliant, but today is not that day. Right now tinyproxy is pretty -close to being HTTP/1.0 compliant, but there are probably a few -incompatibilities kicking around. - -RFCs ----- -1945 Hypertext Transfer Protocol -- HTTP/1.0 -2396 Uniform Resource Identifiers (URI): Generic Syntax -2616 Hypertext Transfer Protocol -- HTTP/1.1 -2617 HTTP Authentication: Basic and Digest Access Authentication - -POSSIBLE LOCATION ------------------ -There are many places to obtain a copy of the RFCs, but I use - - http://www.rfc-editor.org/ - -since it provides a great search feature for finding all the RFCs for -a particular topic. diff --git a/doc/man8/.gitignore b/doc/man8/.gitignore deleted file mode 100644 index 5ff70f3..0000000 --- a/doc/man8/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -*.1 -*.xml -*.txt diff --git a/doc/man8/Makefile.am b/doc/man8/Makefile.am deleted file mode 100644 index b9eefaa..0000000 --- a/doc/man8/Makefile.am +++ /dev/null @@ -1,23 +0,0 @@ -MAN8_FILES = \ - tinyproxy.txt - -A2X_ARGS = \ - -d manpage \ - -f manpage - -man_MANS = \ - $(MAN8_FILES:.txt=.8) - -.txt.8: -if HAVE_A2X - a2x $(A2X_ARGS) $< -else - @echo "*** a2x (asciidoc) is required to regenerate $(@) ***"; exit 1; -endif - -EXTRA_DIST = \ - $(man_MANS) - -CLEANFILES = \ - $(MAN8_FILES:.txt=.8) \ - $(MAN8_FILES:.txt=.xml) diff --git a/doc/man8/tinyproxy.txt.in b/doc/man8/tinyproxy.txt.in deleted file mode 100644 index 569bb81..0000000 --- a/doc/man8/tinyproxy.txt.in +++ /dev/null @@ -1,152 +0,0 @@ -TINYPROXY(8) -============ -:man source: Version @VERSION@ -:man manual: Tinyproxy manual - -NAME ----- - -tinyproxy - A light-weight HTTP proxy daemon - - -SYNOPSIS --------- - -*tinyproxy* [-vldch] - - -DESCRIPTION ------------ - -*tinyproxy* is a light-weight HTTP proxy daemon designed to consume a -minimum amount of system resources. It listens on a given TCP port and -handles HTTP proxy requests. Designed from the ground up to be fast and -yet small, it is an ideal solution for use cases such as embedded -deployments where a full featured HTTP proxy is required, but the system -resources for a larger proxy are unavailable. - - -OPTIONS -------- - -*tinyproxy* accepts the following options: - -*-c *:: - Use an alternate configuration file. - -*-d*:: - Don't daemonize and stay in the foreground. Useful for debugging purposes. - -*-h*:: - Display a short help screen of command line arguments and exit. - -*-l*:: - Display the licensing agreement. - -*-v*:: - Display version information and exit. - - -SIGNALS -------- - -In addition to command-line options, there are also several signals that -can be sent to *tinyproxy* while it is running to generate debugging -information and to force certain events. - -*SIGHUP*:: - Force Tinyproxy to do a garbage collection on the current - connections linked list. This is usually done automatically after a - certain number of connections have been handled. - - -TEMPLATE FILES --------------- - -There are two occasions when Tinyproxy delivers HTML pages to -the client on it's own right: - -. When an error occurred, a corresponding error page is returned. -. When a request for the stathost is made, a page summarizing the - connection statistics is returned. (See STATHOST below.) - -The layout of both error pages and the statistics page can be -controlled via configurable HTML template files that are plain -HTML files that additionally understand a few template -variables. - - -TEMPLATE VARIABLES ------------------- - -There are several standard HTML variables that are available in every -template file: - -*request*:: - The full HTTP request line. - -*cause*:: - The abbreviated cause of the error condition. - -*clientip*:: - The IP address of the client making the request. - -*clienthost*:: - The hostname of the client making the request. - -*version*:: - The version of Tinyproxy. - -*package*:: - The package name. Presently, resolves to 'tinyproxy'. - -*date*:: - The current date/time in HTTP format. - -In addition, almost all templates support: - -*detail*:: - A detailed, plain English explanation of the error and possible - causes. - -When Tinyproxy finds a variable name enclosed in braces, e.g. -"\{request}", then this is replaced by the value of the corresponding -variable before delivery of the page. - - -STATHOST --------- - -Tinyproxy returns a HTML page with connection statistics when it -receives a HTTP request for a certain host -- the stathost. The -stathost name defaults to `tinyproxy.stats` and can be changed at -compile-time with the configure switch `--with-stathost` to any name or -IP address. - -The stat file template can be changed at runtime through the -configuration variable `StatFile`. - - -FILES ------ - -`/etc/tinyproxy/tinyproxy.conf`, `/var/run/tinyproxy.pid`, `/var/log/tinyproxy.log` - -BUGS ----- - -To report bugs in Tinyproxy, please visit -. - - -COPYRIGHT ---------- - -Copyright (c) 1998-2000 Steven Young; -Copyright (c) 2000-2001 Robert James Kaes; -Copyright (c) 2009 Mukund Sivaraman; -Copyright (c) 2009 Michael Adam. - -This program is distributed under the terms of the GNU General Public -License version 2 or above. See the COPYING file for additional -information. diff --git a/docs/.gitignore b/docs/.gitignore new file mode 100644 index 0000000..71605d5 --- /dev/null +++ b/docs/.gitignore @@ -0,0 +1,3 @@ +Makefile +Makefile.in +report.sh diff --git a/docs/Makefile.am b/docs/Makefile.am new file mode 100644 index 0000000..b7d199b --- /dev/null +++ b/docs/Makefile.am @@ -0,0 +1,8 @@ +SUBDIRS = \ + man8 + +EXTRA_DIST = \ + http-error-codes.txt \ + http-rfcs.txt \ + filter-howto.txt + diff --git a/docs/filter-howto.txt b/docs/filter-howto.txt new file mode 100644 index 0000000..3acd813 --- /dev/null +++ b/docs/filter-howto.txt @@ -0,0 +1,52 @@ +Using tinyproxy with Your Home/Small Business Network + +Written: Patrick L. McGillan +Edited: Robert James Kaes (2002-06-04) +----------------------------------------------------- + +Being as this will be the most common usage and there were no clear +basic instructions for this scenario, I thought I would write up what +I did for my home system. + +First the layout of the network. A cable modem is connected through a +Linksys Router to a small hub. The computers hanging off the hub and +have a clear shot to the Internet. + +So, the connection from the Internet to the hub looks like this: + + Internet->Cable TV Line->Cable Modem->Linksys Router->Hub/Switch + +Restricting Internet web access on some of those computers (connected +to the hub) is what using tinyproxy is all about. Using the web +interface to the Linksys router, turn off all Internet access to those +computers that shouldn't have direct access to the Internet. This is +done by clicking on the advanced tab and entering the IP number in the +filter range. Now those computers have to go through a proxy, for +their access, as they have no direct access. + +On one of the Linux computers which still has Internet access (I use +an old 486) load up tinyproxy. Now have the users configure their +Internet Explorer/Netscape Navigator programs to use the proxy on the +tinyproxy computer box, along with the port number declared in the +tinyproxy configuration file. By default, there is no blocking of web +sites with this program, so I created a file, called "filter", to +start blocking some sites. + +Example "filter" file entries: + +bannerads.zwire.com +ad.doubleclick.net +ads.fortunecity.com + +This filter file usually goes into the same folder, as your +configuration file. Be sure and uncomment the 'Filter' line in your +configuration file and make sure it points at your newly created +filter file. + +------------------------------------------------------------------------ + +Copyright (c) 2002 Patrick L. McGillan + +This document is released under the same copyright license as +tinyproxy. You should have found a COPYING file in the top level +directory of this distribution which contains the current license. \ No newline at end of file diff --git a/docs/http-error-codes.txt b/docs/http-error-codes.txt new file mode 100644 index 0000000..b7fb0cd --- /dev/null +++ b/docs/http-error-codes.txt @@ -0,0 +1,61 @@ +The following is a list of the response codes for the various states of +the server. Currently I would recommend we stick to the HTTP/1.0 return +codes for our errors. Once we start to support the distinction between +HTTP/1.0 and HTTP/1.1 requests from the client, then we can use the +HTTP/1.1 responses. + -- rjkaes + +[ Taken from Apache: The Definitive Guide by Ben Laurie & Peter Laurie. + Published by O'Reilly & Associates, Inc. pg. 146-147 ] + +HTTP/1.0 +200 OK +302 Found +304 Not Modified +400 Bad Request +401 Unauthorized +403 Forbidden +404 Not Found +500 Server error +501 Not Implemented +502 Bad Gateway +503 Out of resources + +HTTP/1.1 +100 Continue +101 Switching Protocols +200 Ok +201 Created +202 Accepted +203 Non-Authoritative Information +204 No Content +205 Reset Content +206 Partial Content +300 Multiple Choices +301 Moved Permanently +302 Moved Temporarily +303 See Other +304 Not Modified +305 Use Proxy +400 Bad Request +401 Unauthorized +402 Payment Required +403 Forbidden +404 Not Found +405 Method Not Allowed +406 Not Acceptable +407 Proxy Authentication Required +408 Request Time-out +409 Conflict +410 Gone +411 Length Required +412 Precondition Failed +413 Request Entity Too Large +414 Request-URI Too Large +415 Unsupported Media Type +500 Internal Server Error +501 Not Implemented +502 Bad Gateway +503 Service Unavailable +504 Gateway Time-out +505 HTTP Version not supported diff --git a/docs/http-rfcs.txt b/docs/http-rfcs.txt new file mode 100644 index 0000000..081d2d0 --- /dev/null +++ b/docs/http-rfcs.txt @@ -0,0 +1,23 @@ +INFO +---- +The following files were/are useful for the proper coding of +tinyproxy. Please note: someday tinyproxy will actually be RFC +compliant, but today is not that day. Right now tinyproxy is pretty +close to being HTTP/1.0 compliant, but there are probably a few +incompatibilities kicking around. + +RFCs +---- +1945 Hypertext Transfer Protocol -- HTTP/1.0 +2396 Uniform Resource Identifiers (URI): Generic Syntax +2616 Hypertext Transfer Protocol -- HTTP/1.1 +2617 HTTP Authentication: Basic and Digest Access Authentication + +POSSIBLE LOCATION +----------------- +There are many places to obtain a copy of the RFCs, but I use + + http://www.rfc-editor.org/ + +since it provides a great search feature for finding all the RFCs for +a particular topic. diff --git a/docs/man8/.gitignore b/docs/man8/.gitignore new file mode 100644 index 0000000..5ff70f3 --- /dev/null +++ b/docs/man8/.gitignore @@ -0,0 +1,3 @@ +*.1 +*.xml +*.txt diff --git a/docs/man8/Makefile.am b/docs/man8/Makefile.am new file mode 100644 index 0000000..b9eefaa --- /dev/null +++ b/docs/man8/Makefile.am @@ -0,0 +1,23 @@ +MAN8_FILES = \ + tinyproxy.txt + +A2X_ARGS = \ + -d manpage \ + -f manpage + +man_MANS = \ + $(MAN8_FILES:.txt=.8) + +.txt.8: +if HAVE_A2X + a2x $(A2X_ARGS) $< +else + @echo "*** a2x (asciidoc) is required to regenerate $(@) ***"; exit 1; +endif + +EXTRA_DIST = \ + $(man_MANS) + +CLEANFILES = \ + $(MAN8_FILES:.txt=.8) \ + $(MAN8_FILES:.txt=.xml) diff --git a/docs/man8/tinyproxy.txt.in b/docs/man8/tinyproxy.txt.in new file mode 100644 index 0000000..569bb81 --- /dev/null +++ b/docs/man8/tinyproxy.txt.in @@ -0,0 +1,152 @@ +TINYPROXY(8) +============ +:man source: Version @VERSION@ +:man manual: Tinyproxy manual + +NAME +---- + +tinyproxy - A light-weight HTTP proxy daemon + + +SYNOPSIS +-------- + +*tinyproxy* [-vldch] + + +DESCRIPTION +----------- + +*tinyproxy* is a light-weight HTTP proxy daemon designed to consume a +minimum amount of system resources. It listens on a given TCP port and +handles HTTP proxy requests. Designed from the ground up to be fast and +yet small, it is an ideal solution for use cases such as embedded +deployments where a full featured HTTP proxy is required, but the system +resources for a larger proxy are unavailable. + + +OPTIONS +------- + +*tinyproxy* accepts the following options: + +*-c *:: + Use an alternate configuration file. + +*-d*:: + Don't daemonize and stay in the foreground. Useful for debugging purposes. + +*-h*:: + Display a short help screen of command line arguments and exit. + +*-l*:: + Display the licensing agreement. + +*-v*:: + Display version information and exit. + + +SIGNALS +------- + +In addition to command-line options, there are also several signals that +can be sent to *tinyproxy* while it is running to generate debugging +information and to force certain events. + +*SIGHUP*:: + Force Tinyproxy to do a garbage collection on the current + connections linked list. This is usually done automatically after a + certain number of connections have been handled. + + +TEMPLATE FILES +-------------- + +There are two occasions when Tinyproxy delivers HTML pages to +the client on it's own right: + +. When an error occurred, a corresponding error page is returned. +. When a request for the stathost is made, a page summarizing the + connection statistics is returned. (See STATHOST below.) + +The layout of both error pages and the statistics page can be +controlled via configurable HTML template files that are plain +HTML files that additionally understand a few template +variables. + + +TEMPLATE VARIABLES +------------------ + +There are several standard HTML variables that are available in every +template file: + +*request*:: + The full HTTP request line. + +*cause*:: + The abbreviated cause of the error condition. + +*clientip*:: + The IP address of the client making the request. + +*clienthost*:: + The hostname of the client making the request. + +*version*:: + The version of Tinyproxy. + +*package*:: + The package name. Presently, resolves to 'tinyproxy'. + +*date*:: + The current date/time in HTTP format. + +In addition, almost all templates support: + +*detail*:: + A detailed, plain English explanation of the error and possible + causes. + +When Tinyproxy finds a variable name enclosed in braces, e.g. +"\{request}", then this is replaced by the value of the corresponding +variable before delivery of the page. + + +STATHOST +-------- + +Tinyproxy returns a HTML page with connection statistics when it +receives a HTTP request for a certain host -- the stathost. The +stathost name defaults to `tinyproxy.stats` and can be changed at +compile-time with the configure switch `--with-stathost` to any name or +IP address. + +The stat file template can be changed at runtime through the +configuration variable `StatFile`. + + +FILES +----- + +`/etc/tinyproxy/tinyproxy.conf`, `/var/run/tinyproxy.pid`, `/var/log/tinyproxy.log` + +BUGS +---- + +To report bugs in Tinyproxy, please visit +. + + +COPYRIGHT +--------- + +Copyright (c) 1998-2000 Steven Young; +Copyright (c) 2000-2001 Robert James Kaes; +Copyright (c) 2009 Mukund Sivaraman; +Copyright (c) 2009 Michael Adam. + +This program is distributed under the terms of the GNU General Public +License version 2 or above. See the COPYING file for additional +information. -- cgit v1.2.3