176 Commits

Author SHA1 Message Date
rofl0r
3da66364de configure.ac: fail if version script returns empty string 2020-09-06 20:32:52 +01:00
rofl0r
ab27e4c68b configure.ac: check for all "desired" CFLAGS at once
in case they're all accepted, which would be the case with any
halfways recent GCC, we save a lot of time over testing each flag
sequentially.
2020-09-06 16:58:28 +01:00
rofl0r
f20681e0c6 configure.ac: remove unused checks for malloc/realloc 2020-09-06 16:40:52 +01:00
rofl0r
8685d23225 configure.ac: remove check for strdup()
it was being used unconditionally anyway.
2020-09-06 16:32:37 +01:00
rofl0r
36c9b93cfe transparent: remove usage of inet_ntoa(), make IPv6 ready
inet_ntoa() uses a static buffer and is therefore not threadsafe.
additionally it has been deprecated by POSIX.

by using inet_ntop() instead the code has been made ipv6 aware.

note that this codepath was only entered in the unlikely event that
no hosts header was being passed to the proxy, i.e. pre-HTTP/1.1.
2020-09-06 16:22:11 +01:00
rofl0r
a547a298c7 generate manpages with pod2man instead of a2x/asciidoc(tor)
it turned out that the upstream section in tinyproxy.conf.5 wasn't rendered
properly, because in asciidoc items following a list item are always explicitly
appended to the last list item.
after several hours of finding a workaround, it was decided to change the
manpage generator to pod2man instead.

as pod2man ships together with any perl base install, it should be available
on almost every UNIX system, unlike asciidoc which requires installation
of a huge set of dependencies (more than 1.3 GB on Ubuntu 16.04), and the
replacement asciidoctor requires a ruby installation plus a "gem" (which is
by far better than asciidoc, but still more effort than using the already
available pod2man).

tinyproxy's hard requirement of a2x (asciidoctor) for building  from source
caused rivers of tears (and dozens of support emails/issues) in the past, but
finally we get rid of it. a tool such as a2x with its XML based bloat-
technology isn't really suited to go along with a supposedly lightweight
C program.

if it ever turns out that even pod2man is too heavy a dependency, we could
still write our own replacement in less than 50 lines of awk, as the pod
syntax is very low level and easy to parse.
2020-08-19 22:45:37 +01:00
rofl0r
5ba958829f add configure option to disable manpage generation
using --disable-manpage-support it's finally possibly to disable
the formerly obligatory use of a2x to generate the manpage
documentation.

this is the final solution to the decade old problem that users need
to install the enormous asciidoc package to compile TINYproxy from
source, or otherwise get a build error, even though the vast majority
is only interested in the program itself.

solution was inspired by PR #179.

closes #179
closes #111

note that since 1.10.0 release the generated release tarball includes
the generated manpages too; in which case neither the use of a2x
nor --disable-manpage-support is required.
2020-08-12 00:15:45 +01:00
rofl0r
e1d36d3f74 configure.ac: remove obsolete check for xsltproc
xsltproc was once[1] used to generate AUTHORS from xml input, but
fortunately this is no longer the case.

[1]: in a time when everybody thought XML would be a Good Idea (TM)
2020-08-11 23:35:50 +01:00
rofl0r
8ceebbf0c6 configure.ac: fix typo checking for asciidoctor in release 2020-08-11 17:50:07 +01:00
rofl0r
c2d4114427 add support for asciidoctor to generate manpages
asciidoctor is a modern replacement for asciidoc and much more lightweight,
issuing "apt-get install asciidoc" on ubuntu 16.04 results in an attempt to
install more than 1.3 GB of dependencies.
2020-08-11 15:25:02 +01:00
Michael Adam
f44d0f387b build: Remove now unused TINYPROXY_UNSTABLE variable from configure
Signed-off-by: Michael Adam <obnox@samba.org>
2018-09-05 01:34:51 +02:00
Michael Adam
9f4ed46c0a build: add new version mechanism based on VERSION file and a version.sh script
If this is a git checkout, and git is available, then git describe is
used. Otherwise, the new checked in VERSION file is taken for the version.

This mechanism uses a version.sh script inspired by
http://git.musl-libc.org/cgit/musl/tree/tools/version.sh

Signed-off-by: Michael Adam <obnox@samba.org>
2018-09-05 00:56:31 +02:00
Michael Adam
a662c11b8d Release 1.10.0
Signed-off-by: Michael Adam <obnox@samba.org>
2018-09-01 04:06:59 +02:00
Michael Adam
ec95d8b553 configure: remove unused variables
Signed-off-by: Michael Adam <obnox@samba.org>
2018-09-01 04:06:59 +02:00
rofl0r
a53f62a212 enable transparent proxy by default
by having all features turned on by default, the binary is only
slightly bigger, but users of binary distros get the whole package
and don't need to compile tinyproxy by hand if they need a feature
that wasn't compiled in.
it also prevents the confusion from getting syntax errors when a
config file using those features is parsed.
another advantage is that by enabling them these features may
actually get some more testing.
2018-02-27 20:13:35 +00:00
rofl0r
9cde492d68 configure.ac: remove -pedantic 2018-02-25 23:52:23 +00:00
rofl0r
116e59e933 activate reverse proxy support by default
closes #17
2018-02-06 15:22:22 +00:00
rofl0r
e9e0f0b4f0 configure.ac: remove -Wc++-compat 2017-11-29 19:11:04 +01:00
Michael Adam
f149b62475 Merge pull request #66 from rofl0r/configure_trim
Configure trim
2017-03-29 23:26:45 +02:00
Michael Adam
1e93411810 Merge pull request #59 from gmp216/pull
Fix OS X build
2017-01-04 16:21:27 +01:00
Greg
1b8a6ef561 configure.ac: add conditional for -z,defs 2017-01-04 09:19:04 -05:00
Greg
802a6aa93f Added conditional for xmllint by testing "a2x" without the -L flag. 2017-01-04 09:18:20 -05:00
rofl0r
c98f1cd25a configure: remove checks for standard types 2016-12-21 21:16:06 +00:00
rofl0r
c3cc308cc8 configure: remove checks for standard POSIX funcs
addresses #65
2016-12-21 21:16:06 +00:00
rofl0r
81a93f9e4f configure: do not check for standard POSIX headers
addresses #65
2016-12-21 21:01:37 +00:00
rofl0r
39c92a3f70 configure: do not check for standard C headers
addresses #65
2016-12-21 20:45:06 +00:00
rofl0r
909528e29c ship manpages as part of the dist tarball
`make dist` now creates the manpages and puts them into the tarball, so
the user does not need to have `a2x` installed to build them.

closes #2
2016-12-20 21:06:20 +00:00
Michael Adam
60e5fc7c57 build: remove foreign from AM_INIT_AUTOMAKE - generate INSTALL again
Closes #21

Signed-off-by: Michael Adam <obnox@samba.org>
2016-09-11 00:11:21 +02:00
John Spencer
186bbc3efb configure.ac: remove check for broken regex which breaks crosscompilation
in the unlikely case that the user's C library has broken regex support,
she should probably update to a bugfree version.
in its full consequence, checking if individual functions works basically
require to test every single function in use, which is nonsensical.
since this check required to compile and run a code sample on the host,
it cannot be checked in cross-compile scenarios and as it defaulted to yes
(broken), causes build failure in any such scenario.

closes #1

Signed-off-by: John Spencer <maillist-tinyproxy@barfooze.de>
Reviewed-by: Michael Adam <obnox@samba.org>
2016-01-19 22:50:20 +01:00
rofl0r
ee83293285 update URL 2016-01-03 21:16:21 +00:00
Michael Adam
308305d827 BB#110 secure the hashmaps by adding a seed
Based on a patch provided by gpernot@praksys.org on bugzilla.

Signed-off-by: Michael Adam <obnox@samba.org>
2014-12-13 01:21:02 +01:00
Michael Adam
7e1d8154de build: check for memmove
Signed-off-by: Michael Adam <obnox@samba.org>
2013-11-16 13:07:09 +01:00
Gaudenz Steinlin
c8b8247f70 [BB#115] Drop supplementary groups
Supplementary groups are inherited from the calling process. Drop all
supplementary groups if the "Group" configuration directive is set to
change to a different user. Otherwise the process may have more rights
than expected.

Reviewed-by: Michael Adam <obnox@samba.org>
2013-11-01 06:38:53 +01:00
Michael Adam
3cc59ec3be [BB#112] build: fix build with autoconf >= 2.69
Use AC_CONFIG_HEADERS instead of obsolete AM_CONFIG_HEADER.

Signed-off-by: Michael Adam <obnox@samba.org>
2013-04-09 22:35:20 +02:00
Mukund Sivaraman
2e4ea496b3 build: Prepend to LDFLAGS instead of replacing its contents 2012-01-23 16:25:24 +05:30
Mukund Sivaraman
e5fd1fd556 Make .xz compressed dist targets too 2011-09-11 11:52:21 +05:30
Mukund Sivaraman
5ad24ba99d Update URLs of Tinyproxy 2011-02-28 12:36:05 +05:30
Mukund Sivaraman
1e0ad98f7f Just fix the support URLs 2010-03-28 10:33:38 +05:30
Mukund Sivaraman
34088e2175 Revert "Update Tinyproxy website URLs"
This reverts commit b108162dfb408b4818a6ea8b2a148ddaf1506bbe.
2010-03-28 10:27:40 +05:30
Mukund Sivaraman
b108162dfb Update Tinyproxy website URLs 2010-03-27 08:22:51 +05:30
Mukund Sivaraman
0697a9047d Remove obsolete ChangeLog file 2010-01-25 21:16:39 +05:30
Mukund Sivaraman
13eb2258e0 Don't check for overlength strings 2010-01-25 12:47:13 +05:30
Mukund Sivaraman
8631a9d531 Update the AUTHORS file
This uses an XML based system now to store author names.
We also keep a pre-generated AUTHORS file checked in.
2010-01-18 17:35:51 +05:30
Mukund Sivaraman
26cfec06a0 Bump master version to 1.9.0 2010-01-17 19:21:22 +05:30
Mukund Sivaraman
aea157d7c9 Bump version to 1.8.0 2010-01-17 14:30:06 +05:30
Mukund Sivaraman
21c6164910 Bump version number in override too 2010-01-16 10:18:14 +05:30
Mukund Sivaraman
bbccb57929 Fix case of Bugzilla product name 2010-01-16 10:17:07 +05:30
Mukund Sivaraman
d6a247cc04 Make bzip2 compressed dist tarballs
We publish bzip2 compressed tarballs starting with the 1.8.x releases.
2010-01-11 04:17:26 +05:30
Mukund Sivaraman
e42d1cf9fd Use a configure arg to request regex checking
Disabling the regex check seems to be required during cross-compiles,
where it's not possible to test the target's regex library at
compile time.
2010-01-03 13:52:00 +05:30
Mukund Sivaraman
8077fd8936 Reindent the last configure.ac changes 2010-01-03 13:41:49 +05:30