summaryrefslogtreecommitdiffabout
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--NEWS35
-rw-r--r--README94
-rw-r--r--configure.ac5
-rw-r--r--src/vmod-tbf.315
4 files changed, 140 insertions, 9 deletions
diff --git a/NEWS b/NEWS
index e69de29..9c771b3 100644
--- a/NEWS
+++ b/NEWS
@@ -0,0 +1,35 @@
+vmod-tbf -- history of user-visible changes. 2013-10-19
+Copyright (C) 2013 Sergey Poznyakoff
+See the end of file for copying conditions.
+
+Please send vmod-tbf bug reports to <gray@gnu.org>
+
+
+Version 1.0, 2013-10-19
+
+Initial release
+
+=========================================================================
+Copyright information:
+
+Copyright (C) 2013 Sergey Poznyakoff
+
+ Permission is granted to anyone to make or distribute verbatim copies
+ of this document as received, in any medium, provided that the
+ copyright notice and this permission notice are preserved,
+ thus giving the recipient permission to redistribute in turn.
+
+ Permission is granted to distribute modified versions
+ of this document, or of portions of it,
+ under the above conditions, provided also that they
+ carry prominent notices stating who last changed them.
+
+Local variables:
+mode: outline
+paragraph-separate: "[ ]*$"
+eval: (add-hook 'write-file-hooks 'time-stamp)
+time-stamp-start: "changes. "
+time-stamp-format: "%:y-%02m-%02d"
+time-stamp-end: "\n"
+end:
+
diff --git a/README b/README
index e69de29..8c0f36d 100644
--- a/README
+++ b/README
@@ -0,0 +1,94 @@
+Vmod-tbf README
+Copyright (C) 2013 Sergey Poznyakoff
+See the end of file for copying conditions.
+
+* Introduction
+
+This file contains brief information about configuring, testing
+and using vmod-tbf. It is *not* intended as a replacement
+for the documentation, and is provided as a brief reference only.
+For accessing complete vmod-tbf documentation, see the section
+'Documentation' below.
+
+* Overview
+
+This module implements token bucket filtering for Varnish Cache.
+Token bucket filtering (TBF) allows for controlling the rate of
+data traffic. The following example illustrates the use of
+this module in VCL script:
+
+ import tbf;
+
+ sub vcl_recv {
+ if (!tbf.check(client.ip, "10 req/1s")) {
+ error 429 "Request rate exceeded."
+ }
+ }
+
+This will keep the incoming HTTP traffic at the rate of 10 requests
+per second.
+
+Additionally, this module provides several auxiliary functions for
+checking load average of the machine, getting system time, formatting
+UNIX timestamps in human-readable form, etc.
+
+* Installation
+
+In order to compile the package you need to have Varnish source tree
+configured and compiled, and the Berkeley DB library. The minimum
+prerequisites are Varnish 3.0.1 and BDB 4.2.
+
+Supposing that the varnish source tree is available under
+/usr/src/varnish-3.0.1, run:
+
+ ./configure --with-varnish-source=/usr/src/varnish-3.0.1
+
+The `--with-varnish-source' option is mandatory: it tells configure
+where Varnish sources reside.
+
+Once configured, do
+
+ make
+
+This will build the module. After this step you can optionally run
+'make test' to test the package.
+
+Finally, run the following command as root:
+
+ make install
+
+* Documentation
+
+The manual page vmod-tbf(3) will be available after successful install.
+To read it without actually installing the module, run
+`man src/vmod-tbf.3'.
+
+An online copy of the documentation is available from
+http://www.gnu.org.ua/software/vmod-tbf.
+
+* Bug reporting
+
+Send bug reports and suggestions to <gray@gnu.org>
+
+
+* Copyright information:
+
+Copyright (C) 2013 Sergey Poznyakoff
+
+ Permission is granted to anyone to make or distribute verbatim copies
+ of this document as received, in any medium, provided that the
+ copyright notice and this permission notice are preserved,
+ thus giving the recipient permission to redistribute in turn.
+
+ Permission is granted to distribute modified versions
+ of this document, or of portions of it,
+ under the above conditions, provided also that they
+ carry prominent notices stating who last changed them.
+
+
+Local Variables:
+mode: outline
+paragraph-separate: "[ ]*$"
+version-control: never
+End:
+
diff --git a/configure.ac b/configure.ac
index 0bb6d3f..6af8fd6 100644
--- a/configure.ac
+++ b/configure.ac
@@ -14,7 +14,7 @@
# You should have received a copy of the GNU General Public License
# along with vmod-tbf. If not, see <http://www.gnu.org/licenses/>.
AC_PREREQ(2.69)
-AC_INIT([vmod-tbf], 0.99.91, [gray@gnu.org])
+AC_INIT([vmod-tbf], 1.0, [gray@gnu.org])
AC_CONFIG_AUX_DIR([build-aux])
AC_CONFIG_MACRO_DIR([m4])
AC_CONFIG_SRCDIR(src/vmod_tbf.vcc)
@@ -23,7 +23,7 @@ AM_CONFIG_HEADER(config.h)
AC_CANONICAL_SYSTEM
AC_LANG(C)
-AM_INIT_AUTOMAKE([gnu tar-ustar])
+AM_INIT_AUTOMAKE([1.14 gnu tar-ustar])
AC_GNU_SOURCE
AC_PROG_CC
@@ -114,7 +114,6 @@ AC_CHECK_LIB(db, db_create,
[],
[AC_MSG_ERROR([header file db.h is not the same version as libdb])])])
-dnl FIXME: tests/Makefile
AC_CONFIG_FILES([
Makefile
src/Makefile
diff --git a/src/vmod-tbf.3 b/src/vmod-tbf.3
index 3521f0b..6ba3d3a 100644
--- a/src/vmod-tbf.3
+++ b/src/vmod-tbf.3
@@ -13,7 +13,7 @@
.\"
.\" You should have received a copy of the GNU General Public License
.\" along with vmod-tbf. If not, see <http://www.gnu.org/licenses/>.
-.TH VMOD-TBF 1 "August 14, 2013" "VMOD-TBF" "User Reference"
+.TH VMOD-TBF 1 "October 19, 2013" "VMOD-TBF" "User Reference"
.SH NAME
vmod-tbf \- token bucket filtering for Varnish
.SH SYNOPSIS
@@ -191,11 +191,14 @@ set req.http.X-Year = tbf.strftime("%Y", systime());
.PP
The \fBtbf.sleep\fR function suspends execution for a specified amount
of time.
-.\" The INCFILE variable is set by man.cgi script on Ulysses when
-.\" it finds the vmod-tbf.3.inc file located in the same directory
-.\" as this one.
-.if !"\V[INCFILE]"" \{\
-.so \V[INCFILE]
+.\"
+.\" The MANCGI variable is set by man.cgi script on Ulysses.
+.\" The download.inc file contains the default DOWNLOAD section
+.\" for man-based doc pages.
+.if "\V[MANCGI]"WEBDOC" \{\
+. ds package vmod-tbf
+. ds version 1.0
+. so download.inc
\}
.SH "SEE ALSO"
.BR vcl (7),

Return to:

Send suggestions and report system problems to the System administrator.