chiark / gitweb /
userv-utils.git
7 years agoMake deprecated things not built by default by Makefile (and remove code in debian...
Ian Jackson [Tue, 17 May 2016 17:14:38 +0000 (18:14 +0100)]
Make deprecated things not built by default by Makefile (and remove code in debian/rules for achieving this).

7 years agowww-cgi: Install docs for mdw's env fetures
Ian Jackson [Tue, 17 May 2016 17:11:15 +0000 (18:11 +0100)]
www-cgi: Install docs for mdw's env fetures

7 years agowww-cgi: Record mdw's rework in debian/changelog
Ian Jackson [Tue, 17 May 2016 17:10:57 +0000 (18:10 +0100)]
www-cgi: Record mdw's rework in debian/changelog

7 years agoMerge branch 'mdw+fixes'
Ian Jackson [Tue, 17 May 2016 17:05:37 +0000 (18:05 +0100)]
Merge branch 'mdw+fixes'

7 years agowww-cgi/: Clean up environment filtering doc
Ian Jackson [Tue, 17 May 2016 15:25:17 +0000 (16:25 +0100)]
www-cgi/: Clean up environment filtering doc

Reword this a bit so it makes sense as a text doc, and make some minor
formatting changes.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agowww-cgi/: Document ?DEFAULTS environment filters
Ian Jackson [Tue, 17 May 2016 15:21:38 +0000 (16:21 +0100)]
www-cgi/: Document ?DEFAULTS environment filters

This feature was documented in the commit message, but not in the
tree.

Introduce a straight copy of the commit message from
 aa0bce91 "www-cgi: Introduce `?DEFAULTS' pattern to match the default set.""

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agowww-cgi/: Document customisable environment filters
Ian Jackson [Tue, 17 May 2016 15:19:26 +0000 (16:19 +0100)]
www-cgi/: Document customisable environment filters

This feature was documented in the commit message, but not in the
tree.

Introduce a straight copy of the commit message from
 f7b4be5a "www-cgi/: Allow customization of the environment filters."

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
7 years agowww-cgi/: Coding style fixes
Ian Jackson [Tue, 17 May 2016 15:17:56 +0000 (16:17 +0100)]
www-cgi/: Coding style fixes

Some of the merged branch introduced new functions with the { on the
next line.  Fix them.

Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
8 years agoucgi/: Return useful status codes when things go wrong.
Mark Wooding [Mon, 28 Mar 2016 22:27:56 +0000 (23:27 +0100)]
ucgi/: Return useful status codes when things go wrong.

It's simply wrong for the ucgi machinery to report status 200 OK when it
encounters trouble (e.g., the CGI program doesn't actually exist).
So report a useful status code as part of `error' or `syserror'.  We
assume that the latter is always a server-side error; the former might
be either, so we must annotate each call as appropriate.

10 years agoAdd quirkafleeg to git-daemon/Makefile to placate emacs makefile mode.
Ian Jackson [Wed, 11 Dec 2013 22:35:41 +0000 (22:35 +0000)]
Add quirkafleeg to git-daemon/Makefile to placate emacs makefile mode.

10 years agoRemove obsolete and broken dist target in root Makefile.
Ian Jackson [Wed, 11 Dec 2013 22:16:49 +0000 (22:16 +0000)]
Remove obsolete and broken dist target in root Makefile.

10 years agoProvide various documentation for userv-cgi in /usr/share.
Ian Jackson [Wed, 11 Dec 2013 22:14:14 +0000 (22:14 +0000)]
Provide various documentation for userv-cgi in /usr/share.

10 years agoBump Standards-Version to 3.7.0.0.
Ian Jackson [Wed, 11 Dec 2013 18:43:01 +0000 (18:43 +0000)]
Bump Standards-Version to 3.7.0.0.

10 years agoFix typo in userv-cgi long description.
Ian Jackson [Wed, 11 Dec 2013 18:42:11 +0000 (18:42 +0000)]
Fix typo in userv-cgi long description.

10 years agoBump Standards-Version to 2.2.0.0.
Ian Jackson [Mon, 9 Dec 2013 16:45:06 +0000 (16:45 +0000)]
Bump Standards-Version to 2.2.0.0.

10 years agoImprove adduser calls:
Ian Jackson [Mon, 9 Dec 2013 16:43:53 +0000 (16:43 +0000)]
Improve adduser calls:
   - no longer guard with calls to id, as adduser --quiet is idempotent
   - pass --shell /bin/false and --no-create-home

10 years agoChange default user for git-daemon to userv-git and default user for dyndns to userv...
Ian Jackson [Mon, 9 Dec 2013 16:42:32 +0000 (16:42 +0000)]
Change default user for git-daemon to userv-git and default user for dyndns to userv-dyndns.

10 years agoAdd debhelper token to postinst scripts.
Ian Jackson [Mon, 9 Dec 2013 16:41:04 +0000 (16:41 +0000)]
Add debhelper token to postinst scripts.

10 years agoAmericanise spelling of /usr/share/common-licences to ...-licenses.
Ian Jackson [Mon, 9 Dec 2013 16:40:02 +0000 (16:40 +0000)]
Americanise spelling of /usr/share/common-licences to ...-licenses.

10 years agoNo longer mention SLIP and udptunnel in the userv-ipif Description.
Ian Jackson [Mon, 9 Dec 2013 16:39:27 +0000 (16:39 +0000)]
No longer mention SLIP and udptunnel in the userv-ipif Description.

10 years agoAdd dependency on debhelper.
Ian Jackson [Mon, 9 Dec 2013 16:38:47 +0000 (16:38 +0000)]
Add dependency on debhelper.

10 years agoCorrect binary package dependencies by referencing substvars in debian/control.
Ian Jackson [Mon, 9 Dec 2013 16:38:15 +0000 (16:38 +0000)]
Correct binary package dependencies by referencing substvars in debian/control.

10 years agodh(1): fix so that it works.
Ian Jackson [Mon, 9 Dec 2013 15:54:16 +0000 (15:54 +0000)]
dh(1): fix so that it works.

Output is now identical except that:
 * changelog.Debian.gz -> changelog.gz symlink no longer present
 * DEBIAN/md5sums now _is_ present

10 years agoUse dh(1). WIP.
Ian Jackson [Sun, 8 Dec 2013 13:01:22 +0000 (13:01 +0000)]
Use dh(1).  WIP.

10 years agoipif: Provide head comment of service.c as a txt docs.
Ian Jackson [Wed, 4 Dec 2013 22:48:38 +0000 (22:48 +0000)]
ipif: Provide head comment of service.c as a txt docs.

10 years agoipif: Fix deprecation of udptunnel so it builds
Ian Jackson [Wed, 4 Dec 2013 19:14:30 +0000 (19:14 +0000)]
ipif: Fix deprecation of udptunnel so it builds

10 years agoipif: Deprecate udptunnel.
Ian Jackson [Wed, 4 Dec 2013 19:07:53 +0000 (19:07 +0000)]
ipif: Deprecate udptunnel.

10 years agoipif: Update docs to reflect fact that we are now using tun/tap.
Ian Jackson [Wed, 4 Dec 2013 19:05:35 +0000 (19:05 +0000)]
ipif: Update docs to reflect fact that we are now using tun/tap.

10 years agoUpdate to GPLv3+; update copyright notices everywhere.
Ian Jackson [Sun, 1 Dec 2013 18:58:02 +0000 (18:58 +0000)]
Update to GPLv3+; update copyright notices everywhere.

10 years agoREAMDE, copyright: Correct locations for GPL, and contact info.
Ian Jackson [Sun, 1 Dec 2013 18:29:22 +0000 (18:29 +0000)]
REAMDE, copyright: Correct locations for GPL, and contact info.

10 years agodyndns: Docuument existence in README.
Ian Jackson [Sun, 1 Dec 2013 18:22:18 +0000 (18:22 +0000)]
dyndns: Docuument existence in README.

10 years agomailq: Clarify set of relevant files in README.
Ian Jackson [Sun, 1 Dec 2013 18:22:00 +0000 (18:22 +0000)]
mailq: Clarify set of relevant files in README.

10 years agowww-cgi: Promise better status for this utility.
Ian Jackson [Sun, 1 Dec 2013 18:19:52 +0000 (18:19 +0000)]
www-cgi: Promise better status for this utility.

10 years agochangelog: 0.6.0 WIP
Ian Jackson [Sun, 1 Dec 2013 17:48:07 +0000 (17:48 +0000)]
changelog: 0.6.0 WIP

11 years agowww-cgi: Introduce `?DEFAULTS' pattern to match the default set.
Mark Wooding [Tue, 19 Feb 2013 20:22:14 +0000 (20:22 +0000)]
www-cgi: Introduce `?DEFAULTS' pattern to match the default set.

11 years agowww-cgi/ucgicommon.c: Split matching out from `filter_environment'.
Mark Wooding [Tue, 19 Feb 2013 20:17:08 +0000 (20:17 +0000)]
www-cgi/ucgicommon.c: Split matching out from `filter_environment'.

Makes the code a bit easier to follow, and prepares the ground for the
next change.

11 years agowww-cgi/: Yet more environment variables to be passed about.
Mark Wooding [Wed, 30 Jan 2013 01:14:36 +0000 (01:14 +0000)]
www-cgi/: Yet more environment variables to be passed about.

The `SSL_*' variables are used to pass information about SSL or TLS,
including the cipher suite in use, and the status of client
authentication.

The `REDIRECT_*' variables are used to pass information about a failed
request to a CGI script run as an Apache `ErrorDocument' or similar.

11 years agowww-cgi/: Allow customization of the environment filters.
Mark Wooding [Wed, 30 Jan 2013 00:35:02 +0000 (00:35 +0000)]
www-cgi/: Allow customization of the environment filters.

Sites can now configure `ucgi's environment filters, and end users can
configure `ucgitarget's filters.

By default, `ucgi' will look in `/etc/userv/ucgi.env-filter', but if
`UCGI_ENV_FILTER' is set in its environment, it will look there
instead.  The filter may contain wildcards and so on.

By default, `ucgitarget' looks in `.userv/ucgitarget.env-filter', or
`/etc/userv/ucgitarget.env-filter', if the former doesn't exist; but if
passed a `-e FILTER' option on its command line, it will look in the
file FILTER instead.  This filter may /not/ contain wildcards.

In both cases, if an explicitly named filter file can't be found then
the program fails; if the default filter files can't be found then they
fall back to built-in lists.

The reason for the asymmetry in interfaces is: it's hard to pass
command-line options to CGI scripts from webservers, but pretty easy to
set environment variables; whereas it's hard to pass environment
variables to a service program in a Userv configuration file, but easy
to pass command-line arguments.

11 years agowww-cgi/: Decentralize the whitelist of environment variables.
Mark Wooding [Wed, 30 Jan 2013 00:23:08 +0000 (00:23 +0000)]
www-cgi/: Decentralize the whitelist of environment variables.

There's no great need for `ucgi' to have a fierce whitelist of
environment variables to be passed to the service.  We'll assume that
the webserver hasn't put any critical secrets in its environment with
unfortunate names; and the service shouldn't put any trust in the
caller's filtering anyway.  If the webserver end takes a more relaxed
approach, we can leave questions of policy regarding environment
filtering largely up to the service -- which is the bit that users
actually have some control over.

To this end, therefore, move the main whitelist to `ucgitarget.c', and
put small list, containing some wildcard patterns, in `ucgi.c'.

11 years agowww-cgi/: Centralize environment variable filtering.
Mark Wooding [Wed, 30 Jan 2013 00:09:47 +0000 (00:09 +0000)]
www-cgi/: Centralize environment variable filtering.

Rather than have a different loop in each program which trundles through
a filter list picking up environment variables and doing things to the
ones that match, invent a new function `filter_environment' which does
the job, with extra steroids.

The new function works the other way around: it iterates over the
environment, comparing each variable to the filter list.  It also
supports some simple prefix-matching (`*' suffix) and blacklisting (`!'
prefix) operations.

Some new limits are introduced, on the maximum length of an environment
variable name, and the total number of variables accepted by `ucgi':
this is because these are no longer limited implicitly by the whitelist,
since it may contain wildcards and suchlike.

11 years agowww-cgi/ucgi.c: A bit more machinery for building the command line.
Mark Wooding [Wed, 30 Jan 2013 00:47:45 +0000 (00:47 +0000)]
www-cgi/ucgi.c: A bit more machinery for building the command line.

Move the state for building the command line into a structure, and
introduce a function for adding an argument.  We'll want this later.

11 years agowww-cgi/: Add some trivial tracing.
Mark Wooding [Tue, 29 Jan 2013 23:45:47 +0000 (23:45 +0000)]
www-cgi/: Add some trivial tracing.

The trace goes to standard output, and only happens when debugging is
turned on, both operationally (e.g., though the `ucgi-debug' link or
USERV_U_DEBUG variable) and at compile time (with the DEBUG macro, which
you can set, e.g., with `make DEBUG="-g -DDEBUG"'.

Trace output lines start with `;;'.

I'll be grateful for this when I start shaking things up.

11 years agowww-cgi/: Move `xrealloc' to `ucgicommon'.
Mark Wooding [Tue, 29 Jan 2013 23:53:55 +0000 (23:53 +0000)]
www-cgi/: Move `xrealloc' to `ucgicommon'.

Both programs will want it soon enough.

11 years agowww-cgi/ucgitarget.c: Use `error' to report unusual filesystem object.
Mark Wooding [Tue, 29 Jan 2013 23:49:38 +0000 (23:49 +0000)]
www-cgi/ucgitarget.c: Use `error' to report unusual filesystem object.

There's nothing useful in `errno'.  Let's not end up saying `Success'
here.

11 years agofinalise changelog
Ian Jackson [Sun, 27 Jan 2013 16:39:56 +0000 (16:39 +0000)]
finalise changelog

11 years agocheckpasswd: fix -other service file
Ian Jackson [Sun, 27 Jan 2013 16:39:45 +0000 (16:39 +0000)]
checkpasswd: fix -other service file

11 years agocheckpass: installation arrangements
Ian Jackson [Sun, 27 Jan 2013 16:34:57 +0000 (16:34 +0000)]
checkpass: installation arrangements

11 years agocheckpass: installation arrangements
Ian Jackson [Sun, 27 Jan 2013 16:34:26 +0000 (16:34 +0000)]
checkpass: installation arrangements

11 years agocheckpasswd: initial implementation
Ian Jackson [Sun, 27 Jan 2013 16:21:16 +0000 (16:21 +0000)]
checkpasswd: initial implementation

11 years agobuild improvements
Ian Jackson [Sun, 27 Jan 2013 15:27:16 +0000 (15:27 +0000)]
build improvements

11 years agowww-cgi: whitelist some more HTTP headers
Ian Jackson [Sun, 27 Jan 2013 15:26:39 +0000 (15:26 +0000)]
www-cgi: whitelist some more HTTP headers

11 years agoDocument in changelog changes since 0.4.2
Ian Jackson [Sun, 27 Jan 2013 13:55:17 +0000 (13:55 +0000)]
Document in changelog changes since 0.4.2

11 years agoMerge branch 'master' of login.chiark.greenend.org.uk:/home/ian/public-git/userv...
Ian Jackson [Sun, 27 Jan 2013 13:48:28 +0000 (13:48 +0000)]
Merge branch 'master' of login.chiark.greenend.org.uk:/home/ian/public-git/userv-utils

12 years agofinalise 0.4.2
Ian Jackson [Sun, 15 Jan 2012 01:00:12 +0000 (01:00 +0000)]
finalise 0.4.2

12 years agoallow input same size as buffer
Ian Jackson [Sun, 15 Jan 2012 00:49:01 +0000 (00:49 +0000)]
allow input same size as buffer

12 years agofix assertion to have correct test
Ian Jackson [Sun, 15 Jan 2012 00:42:31 +0000 (00:42 +0000)]
fix assertion to have correct test

12 years agoipif fixes
Ian Jackson [Sat, 14 Jan 2012 15:47:08 +0000 (15:47 +0000)]
ipif fixes

12 years agofix maintainer
Ian Jackson [Sat, 14 Jan 2012 15:27:52 +0000 (15:27 +0000)]
fix maintainer

12 years agofinalise 0.4
Ian Jackson [Sat, 14 Jan 2012 15:25:38 +0000 (15:25 +0000)]
finalise 0.4

12 years agoipif: service.c comment: fix some grammar
Ian Jackson [Sat, 20 Aug 2011 16:28:00 +0000 (17:28 +0100)]
ipif: service.c comment: fix some grammar

12 years agoipif: service.c comment: remove mention of protocols other than slip
Ian Jackson [Sat, 20 Aug 2011 16:25:46 +0000 (17:25 +0100)]
ipif: service.c comment: remove mention of protocols other than slip

12 years agoMerge branch 'zealot'
Ian Jackson [Sat, 20 Aug 2011 16:24:02 +0000 (17:24 +0100)]
Merge branch 'zealot'

Conflicts:
.gitignore
ipif/Makefile

12 years agoipif: abolish use of slip: fixes from testing
Ian Jackson [Sun, 15 May 2011 18:42:21 +0000 (19:42 +0100)]
ipif: abolish use of slip: fixes from testing

12 years agoipif: use tun, not slip; compiles, untested
Ian Jackson [Sun, 15 May 2011 18:23:01 +0000 (19:23 +0100)]
ipif: use tun, not slip; compiles, untested

13 years agoipif: fix some signed/unsigned pointer warnings
Ian Jackson [Thu, 21 Apr 2011 18:13:25 +0000 (19:13 +0100)]
ipif: fix some signed/unsigned pointer warnings

13 years agoipif: move #include of automech.h down so that it has definition of struct mechanism
Ian Jackson [Thu, 21 Apr 2011 18:13:11 +0000 (19:13 +0100)]
ipif: move #include of automech.h down so that it has definition of struct mechanism

13 years agoadd *.o to .gitignore
Ian Jackson [Thu, 21 Apr 2011 18:08:51 +0000 (19:08 +0100)]
add *.o to .gitignore

13 years ago.cvsignore -> .gitignore
Ian Jackson [Thu, 21 Apr 2011 18:08:15 +0000 (19:08 +0100)]
.cvsignore -> .gitignore

13 years agoipif: fix for make breakage
Ian Jackson [Thu, 21 Apr 2011 18:04:45 +0000 (19:04 +0100)]
ipif: fix for make breakage

13 years agoFix up default comment to not mention tcl
Ian Jackson [Sat, 22 May 2010 19:21:59 +0000 (20:21 +0100)]
Fix up default comment to not mention tcl

13 years agoBetter handling of .git suffixes
Ian Jackson [Sat, 22 May 2010 19:05:51 +0000 (20:05 +0100)]
Better handling of .git suffixes

13 years agoAttempt at a good package
Ian Jackson [Sat, 22 May 2010 18:52:02 +0000 (19:52 +0100)]
Attempt at a good package

13 years agogeneric fixes: more .gitignores
Ian Jackson [Sat, 22 May 2010 18:49:15 +0000 (19:49 +0100)]
generic fixes: more .gitignores

13 years agogeneric fixes: .gitignores
Ian Jackson [Sat, 22 May 2010 18:39:50 +0000 (19:39 +0100)]
generic fixes: .gitignores

13 years agogeneric build fix: makefile multi-line incompatibility fix
Ian Jackson [Sat, 22 May 2010 18:39:30 +0000 (19:39 +0100)]
generic build fix: makefile multi-line incompatibility fix

13 years agogeneric build fixes
Ian Jackson [Sat, 22 May 2010 18:36:07 +0000 (19:36 +0100)]
generic build fixes

13 years agowip releasing
Ian Jackson [Sat, 22 May 2010 18:33:46 +0000 (19:33 +0100)]
wip releasing

13 years agoAdd git-daemon to distclean
Ian Jackson [Sat, 22 May 2010 18:26:59 +0000 (19:26 +0100)]
Add git-daemon to distclean

13 years agoRotate the logfile
Ian Jackson [Sat, 22 May 2010 18:26:06 +0000 (19:26 +0100)]
Rotate the logfile

13 years agoChanges to make it appear to work on chiark
Ian Jackson [Sat, 22 May 2010 18:13:43 +0000 (19:13 +0100)]
Changes to make it appear to work on chiark

13 years agoWIP entirely new git approach with config parsers
Ian Jackson [Sat, 22 May 2010 16:25:07 +0000 (17:25 +0100)]
WIP entirely new git approach with config parsers

13 years agogit-daemon/chiark-urlmap: better security
Tony Finch [Wed, 31 Mar 2010 02:35:10 +0000 (03:35 +0100)]
git-daemon/chiark-urlmap: better security

Check the server IP address corresponds to the server hostname
when exporting VPN-only repositories.

Use symlinks under ~/.userv so that public-git directories
are not exported by default, as in the www-cgi configuration.

13 years agogit-urlmap: clarify comments
Tony Finch [Wed, 31 Mar 2010 02:30:52 +0000 (03:30 +0100)]
git-urlmap: clarify comments

13 years agogit-daemon: add Makefile and documentation.
Tony Finch [Wed, 31 Mar 2010 02:24:20 +0000 (03:24 +0100)]
git-daemon: add Makefile and documentation.

13 years agogit-daemon: invoke 'git upload-pack' instead of 'git-upload-pack'
Tony Finch [Wed, 31 Mar 2010 01:04:32 +0000 (02:04 +0100)]
git-daemon: invoke 'git upload-pack' instead of 'git-upload-pack'

13 years agogit-daemon: update TODO
Tony Finch [Wed, 31 Mar 2010 00:50:56 +0000 (01:50 +0100)]
git-daemon: update TODO

13 years agogit-daemon: include an example inetd.conf line.
Tony Finch [Wed, 31 Mar 2010 00:49:35 +0000 (01:49 +0100)]
git-daemon: include an example inetd.conf line.

13 years agogit-daemon: Simplify the filenames
Tony Finch [Wed, 31 Mar 2010 00:43:28 +0000 (01:43 +0100)]
git-daemon: Simplify the filenames

13 years agogit-daemon: fix and de-obfuscate the pkt-line parser.
Tony Finch [Wed, 31 Mar 2010 00:39:19 +0000 (01:39 +0100)]
git-daemon: fix and de-obfuscate the pkt-line parser.

13 years agogit-daemon: tidy up a bit
Tony Finch [Tue, 30 Mar 2010 23:52:01 +0000 (00:52 +0100)]
git-daemon: tidy up a bit

13 years agolog repository location
Tony Finch [Tue, 30 Mar 2010 20:58:52 +0000 (20:58 +0000)]
log repository location

13 years agogit-daemon: no need for a special configuration variable namespace
Tony Finch [Tue, 30 Mar 2010 20:56:41 +0000 (20:56 +0000)]
git-daemon: no need for a special configuration variable namespace

13 years agogit-daemon: overhaul configuration and add the userv service script
Tony Finch [Tue, 30 Mar 2010 20:14:55 +0000 (20:14 +0000)]
git-daemon: overhaul configuration and add the userv service script

Use a perl namespace to hold the userv variables that are set
by the git-daemon-urlmap script(s).

13 years agogit-daemon: config improvements
Tony Finch [Tue, 30 Mar 2010 17:45:36 +0000 (17:45 +0000)]
git-daemon: config improvements

Get configuration file(s) from the command line. Reverse order of
return values so user configs can just return the repo pathname.

13 years agogit-daemon: tweak comments
Tony Finch [Tue, 30 Mar 2010 15:09:49 +0000 (15:09 +0000)]
git-daemon: tweak comments

13 years agogit-daemon: allow userv to decide which services to allow.
Tony Finch [Tue, 30 Mar 2010 14:58:15 +0000 (14:58 +0000)]
git-daemon: allow userv to decide which services to allow.

13 years agogit-daemon: move checking to more appropriate place.
Tony Finch [Mon, 29 Mar 2010 16:17:45 +0000 (16:17 +0000)]
git-daemon: move checking to more appropriate place.

Less checking in the daemon itself; instead check in the
configuration which can be shared across the security boundary.

13 years agoNote what the git-upload-pack userv service needs to do
Tony Finch [Fri, 26 Mar 2010 19:07:01 +0000 (19:07 +0000)]
Note what the git-upload-pack userv service needs to do

13 years agogit-daemon: allow virtual hosts to forbit tilde parts in URLs
Tony Finch [Fri, 26 Mar 2010 18:56:43 +0000 (18:56 +0000)]
git-daemon: allow virtual hosts to forbit tilde parts in URLs

13 years agogit-daemon: suppress warnings
Tony Finch [Fri, 26 Mar 2010 18:28:22 +0000 (18:28 +0000)]
git-daemon: suppress warnings