/mandos/trunk

To get this branch, use:
bzr branch http://bzr.recompile.se/loggerhead/mandos/trunk

« back to all changes in this revision

Viewing changes to debian/mandos-client.lintian-overrides

  • Committer: Teddy Hogeborn
  • Date: 2024-09-09 01:36:41 UTC
  • Revision ID: teddy@recompile.se-20240909013641-6zu6kx2f7meu134k
Make all required directories when installing

When installing into a normal system, one can assume that target
directories, such as /usr/bin, already exists.  But when installing
into a subdirectory for the purpose of creating a package, one cannot
assume that all directories already exist.  Therefore, when
installing, we must not check if any directories exist, and must
instead always create any directories we want to install into.

* Makefile (confdir/mandos.conf, confdir/clients.conf, install-html):
  Use the "-D" option to "install" instead of creating the directory
  separately.
  (install-server): Move creation of $(CONFDIR) down to before it is
  needed.  Don't check if the $(TMPFILES) or $(SYSUSERS) directories
  exist; instead create them by using the "-D" option to "install".
  Create the $(PREFIX)/sbin directory.  Always use
  "--target-directory" if possible; i.e. if the file name is the same.
  Create the $(DBUSPOLICYDIR) and $(DESTDIR)/etc/init.d directories by
  using the "-D" option to "install".  Don't check if the $(SYSTEMD)
  directory exists; instead create it by using the "-D" option to
  "install".  Create the $(DESTDIR)/etc/default and $(MANDIR)/man8
  directories by using the "-D" option to "install".  Create the
  $(MANDIR)/man5 directories explicitly.
  (install-client-nokey): Remove unnecessary creation of the
  $(CONFDIR) directory.  Don't check if the $(SYSUSERS) directory
  exists; instead create it by using the "-D" option to "install".
  Move the "--directory" argument to be the first argument, for
  clarity.  Create the $(PREFIX)/sbin directory.  Use the "-D"
  argument to "install" when installing
  $(INITRAMFSTOOLS)/hooks/mandos,
  $(INITRAMFSTOOLS)/conf.d/mandos-conf,
  $(INITRAMFSTOOLS)/conf-hooks.d/zz-mandos,
  $(INITRAMFSTOOLS)/scripts/init-premount/mandos,
  $(INITRAMFSTOOLS)/scripts/local-premount/mandos,
  $(DRACUTMODULE)/ask-password-mandos.path, and
  $(DRACUTMODULE)/dracut-module/ask-password-mandos.service.  Create
  the $(MANDIR)/man8 directory.

Reported-By: Erich Eckner <erich@eckner.net>
Thanks: Erich Eckner <erich@eckner.net> for analysis

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
# This directory contains secret client key files.
2
 
#
3
2
mandos-client binary: non-standard-dir-perm etc/keys/mandos/ 0700 != 0755
4
3
 
5
4
# The directory /usr/lib/<arch>/mandos/plugins.d contains setuid
6
 
# binaries which are not meant to be run outside an initial RAM disk
 
5
# binaries which are only meant to be run inside an initial RAM disk
7
6
# environment (except for test purposes).  It would be insecure to
8
7
# allow anyone to run them.
9
 
#
10
8
mandos-client binary: non-standard-dir-perm usr/lib/*/mandos/plugins.d/ 0700 != 0755
11
9
# Likewise for helper executables for plugins
12
10
mandos-client binary: non-standard-dir-perm usr/lib/*/mandos/plugin-helpers/ 0700 != 0755
13
11
 
14
12
# These binaries must be setuid root, since they need root powers, but
15
13
# are started by plugin-runner(8mandos), which runs all plugins as
16
 
# user/group "_mandos".  These binaries are not run in a running
17
 
# system, but in an initial RAM disk environment.  Here they are
 
14
# user/group "_mandos".  These binaries are never run in a running
 
15
# system, but only in an initial RAM disk environment.  Here they are
18
16
# protected from non-root access by the directory permissions, above.
19
 
#
20
 
mandos-client binary: setuid-binary usr/lib/*/mandos/plugins.d/mandos-client 4755 root/root
21
 
mandos-client binary: setuid-binary usr/lib/*/mandos/plugins.d/askpass-fifo 4755 root/root
22
 
mandos-client binary: setuid-binary usr/lib/*/mandos/plugins.d/splashy 4755 root/root
23
 
mandos-client binary: setuid-binary usr/lib/*/mandos/plugins.d/usplash 4755 root/root
24
 
mandos-client binary: setuid-binary usr/lib/*/mandos/plugins.d/plymouth 4755 root/root
 
17
mandos-client binary: elevated-privileges usr/lib/*/mandos/plugins.d/mandos-client 4755 root/root
 
18
mandos-client binary: elevated-privileges usr/lib/*/mandos/plugins.d/askpass-fifo 4755 root/root
 
19
mandos-client binary: elevated-privileges usr/lib/*/mandos/plugins.d/splashy 4755 root/root
 
20
mandos-client binary: elevated-privileges usr/lib/*/mandos/plugins.d/usplash 4755 root/root
 
21
mandos-client binary: elevated-privileges usr/lib/*/mandos/plugins.d/plymouth 4755 root/root
25
22
 
26
23
# The directory /etc/mandos/plugins.d can be used by local system
27
24
# administrators to place plugins in, overriding and complementing
28
25
# /usr/lib/<arch>/mandos/plugins.d, and must be likewise protected.
29
 
#
30
26
mandos-client binary: non-standard-dir-perm etc/mandos/plugins.d/ 0700 != 0755
31
27
# Likewise for plugin-helpers directory
32
28
mandos-client binary: non-standard-dir-perm etc/mandos/plugin-helpers/ 0700 != 0755
39
35
# The notice displayed from the postinst script really is critical
40
36
mandos-client binary: postinst-uses-db-input
41
37
 
42
 
# It is a really long line
43
 
mandos-client binary: manpage-has-errors-from-man usr/share/man/man8/plugin-runner.8mandos.gz *: warning *: can't break line
 
38
# These are very important to work around bugs or changes in the old
 
39
# versions, and there is no pressing need to remove them.
 
40
mandos-client binary: maintainer-script-supports-ancient-package-version *