[ previous ] [ Contents ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ next ]

# User service daemon and client specification

## Abstract

This is a specification for a Unix system facility to allow one program to invoke another when only limited trust exists between them.

## Copyright Notice

`userv` is Copyright 1996-2021 Ian Jackson; Copyright 2021 Genome Research Limited apropos work by Matthew Vernon; Copyright 2000 Ben Harris; Copyright 2016-2017 Peter Benie.

`userv` is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but without any warranty; without even the implied warranty of merchantability or fitness for a particular purpose. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with `userv`; if not, see `http://www.gnu.org/licenses/`.

## Contents

- 1 Introduction
- 2 Client program usage
  - 2.1 Options
  - 2.2 Security-overriding options
- 3 Execution environment of the service program
  - 3.1 File descriptors
  - 3.2 Environment
- 4 Service-side configuration
  - 4.1 Configuration file syntax
  - 4.2 Configuration file directives
  - 4.3 Errors in the configuration file
  - 4.4 Defaults
- 5 Information passed through the client/daemon combination
- 6 Applications and notes on use
  - 6.1 Examples
  - 6.2 Standard services and directory management
  - 6.3 Reducing the number of absolutely privileged subsystems
  - 6.4 Do not give away excessive privilege to `userv`-using facilities
  - 6.5 `userv` can often replace `sudo`, but not `really`
  - 6.6 Error handling and input streams (eg stdin)
  - 6.7 Don't give access to general-purpose utilities

[ previous ] [ Contents ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ next ]

User service daemon and client specification