Bug#1001418: ITP: libvmod-selector -- match strings with backends, regexen and other strings
Package: wnpp
Severity: wishlist
Owner: Michael Fladischer <fladi@debian.org>
X-Debbugs-Cc: debian-devel@lists.debian.org
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
* Package name : libvmod-selector
Version : 2.6.0
Upstream Author : 2018, UPLEX Nils Goroll Systemoptimierung
* URL : https://gitlab.com/uplex/varnish/libvmod-selector
* License : BSD-2-clause
Programming Lang: C
Description : match strings with backends, regexen and other strings
Varnish Module (VMOD) for matching strings against sets of fixed
strings. A VMOD object may also function as an associative array,
mapping the matched string to one or more of a backend, another
string, an integer, or a regular expression. The string may also map
to a subroutine that can be invoked.
.
The VMOD is intended to support a variety of use cases that are
typical for VCL deployments, such as:
.
* Determining the backend based on the Host header or the prefix of
the URL.
* Rewriting the URL or a header.
* Generating redirect responses, based on a header or the URL.
* Permitting or rejecting request methods.
* Matching the Basic Authentication credentials in an Authorization
request header.
* Matching media types in the Content-Type header of a backend
response to determine if the content is compressible.
* Accessing data by string match, as in an associative array, or by
numeric index, as in a standard array.
* Dispatching subroutine calls based on string matches.
* Executing conditional logic that depends on features of the request
or response that can be determined by matching headers or URLs.
.
Operations such as these are commonly implemented in native VCL with
an if-elsif-elsif sequence of string comparisons or regex matches.
As the number of matches increases, such a sequence becomes cumbersome
and scales poorly -- the time needed to execute the sequence increases
with the number of matches to be performed.
With the VMOD, the strings to be matched are declared in a tabular
form in vcl_init, and the operation is executed in a few lines.
I intend to maintain this package as part of the Varnish Packaging Team.
-----BEGIN PGP SIGNATURE-----
iQFFBAEBCgAvFiEEqVSlRXW87UkkCnJc/9PIi5l90WoFAmGyZywRHGZsYWRpQGRl
Ymlhbi5vcmcACgkQ/9PIi5l90WrgcQf9FRsoGoZizDrzo8KYNW4FnJ86vr65jcVq
iyMM3EmZUdW9hM5i9Fb6V7JQRKnAmu0UUjtJ5JI69I6uzumTQyJ3h+dE70PVLqoM
UlhPvqGcu3GXcZZ7KClK2ugJYGBzDj38+azQxN3EGrI1zDqBB8GFfCvqEj8l1Unh
MLOG43TzRsDv+InWrchSyBnAYdzKP+wEXx8e0WsfyoXMJ+c+8wvnPzsuYC/qr2UM
U0JiFiOorY+yGHq50fSAbnASvfuzQ/vzJuB31HUw5whMy0tEEOJRCETdCTxHjI1Z
On9bYK8rbwoFV+2s3Bvpylu+EkmtKnnt2bk8Zr2OKOGdDKrWVXoORw==
=/CHl
-----END PGP SIGNATURE-----
Reply to: