/mandos/release

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

« back to all changes in this revision

Viewing changes to Makefile

  • Committer: Teddy Hogeborn
  • Date: 2008-08-29 05:53:59 UTC
  • Revision ID: teddy@fukt.bsnet.se-20080829055359-wkdasnyxtylmnxus
* mandos.xml (EXAMPLE): Replaced all occurences of command name with
                        "&COMMANDNAME;".

* plugins.d/password-prompt.c (main): Improved some documentation
                                      strings.  Do perror() of
                                      tcgetattr() fails.  Add debug
                                      output if interrupted by signal.
                                      Loop over write() instead of
                                      using fwrite() when outputting
                                      password.  Add debug output if
                                      getline() returns 0, unless it
                                      was caused by a signal.  Add
                                      exit status code to debug
                                      output.

* plugins.d/password-prompt.xml: Changed all single quotes to double
                                 quotes for consistency.  Removed
                                 <?xml-stylesheet>.
  (ENTITY TIMESTAMP): New.  Automatically updated by Emacs time-stamp
                      by using Emacs local variables.
  (/refentry/refentryinfo/title): Changed to "Mandos Manual".
  (/refentry/refentryinfo/productname): Changed to "Mandos".
  (/refentry/refentryinfo/date): New; set to "&TIMESTAMP;".
  (/refentry/refentryinfo/copyright): Split copyright holders.
  (/refentry/refnamediv/refpurpose): Improved wording.
  (SYNOPSIS): Fix to use correct markup.  Add short options.
  (DESCRIPTION, OPTIONS): Improved wording.
  (OPTIONS): Improved wording.  Use more correct markup.  Document
             short options.
  (EXIT STATUS): Add text.
  (ENVIRONMENT): Document use of "cryptsource" and "crypttarget".
  (FILES): REMOVED.
  (BUGS): Add text.
  (EXAMPLE): Added some examples.
  (SECURITY): Added text.
  (SEE ALSO): Remove reference to mandos(8).  Add reference to
              crypttab(5).

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
WARN=-O -Wall -Wformat=2 -Winit-self -Wmissing-include-dirs \
2
2
        -Wswitch-default -Wswitch-enum -Wunused-parameter \
3
 
        -Wstrict-aliasing=1 -Wextra -Wfloat-equal -Wundef -Wshadow \
 
3
        -Wstrict-aliasing=2 -Wextra -Wfloat-equal -Wundef -Wshadow \
4
4
        -Wunsafe-loop-optimizations -Wpointer-arith \
5
5
        -Wbad-function-cast -Wcast-qual -Wcast-align -Wwrite-strings \
6
6
        -Wconversion -Wstrict-prototypes -Wold-style-definition \
7
 
        -Wpacked -Wnested-externs -Winline -Wvolatile-register-var
8
 
#       -Wunreachable-code 
9
 
#DEBUG=-ggdb3
 
7
        -Wpacked -Wnested-externs -Wunreachable-code -Winline \
 
8
        -Wvolatile-register-var
 
9
DEBUG=-ggdb3
10
10
# For info about _FORTIFY_SOURCE, see
11
 
# <http://www.kernel.org/doc/man-pages/online/pages/man7/feature_test_macros.7.html>
12
 
# and <http://gcc.gnu.org/ml/gcc-patches/2004-09/msg02055.html>.
13
 
FORTIFY=-D_FORTIFY_SOURCE=2 -fstack-protector-all -fPIC -fPIE
14
 
LINK_FORTIFY_LD=-z relro -fPIE
15
 
LINK_FORTIFY=-pie
 
11
# <http://gcc.gnu.org/ml/gcc-patches/2004-09/msg02055.html>
 
12
FORTIFY=-D_FORTIFY_SOURCE=2 # -fstack-protector-all
16
13
#COVERAGE=--coverage
17
14
OPTIMIZE=-Os
18
15
LANGUAGE=-std=gnu99
19
 
htmldir=man
20
 
version=1.0.12
21
 
SED=sed
22
 
 
23
 
## Use these settings for a traditional /usr/local install
24
 
# PREFIX=$(DESTDIR)/usr/local
25
 
# CONFDIR=$(DESTDIR)/etc/mandos
26
 
# KEYDIR=$(DESTDIR)/etc/mandos/keys
27
 
# MANDIR=$(PREFIX)/man
28
 
# INITRAMFSTOOLS=$(DESTDIR)/etc/initramfs-tools
29
 
##
30
 
 
31
 
## These settings are for a package-type install
 
16
# PREFIX=/usr/local
32
17
PREFIX=$(DESTDIR)/usr
 
18
# CONFDIR=/usr/local/lib/mandos
33
19
CONFDIR=$(DESTDIR)/etc/mandos
34
 
KEYDIR=$(DESTDIR)/etc/keys/mandos
35
 
MANDIR=$(PREFIX)/share/man
36
 
INITRAMFSTOOLS=$(DESTDIR)/usr/share/initramfs-tools
37
 
##
 
20
# MANDIR=/usr/local/man
 
21
MANDIR=$(DESTDIR)/usr/share/man
38
22
 
39
 
GNUTLS_CFLAGS=$(shell pkg-config --cflags-only-I gnutls)
40
 
GNUTLS_LIBS=$(shell pkg-config --libs gnutls)
 
23
GNUTLS_CFLAGS=$(shell libgnutls-config --cflags)
 
24
GNUTLS_LIBS=$(shell libgnutls-config --libs)
41
25
AVAHI_CFLAGS=$(shell pkg-config --cflags-only-I avahi-core)
42
26
AVAHI_LIBS=$(shell pkg-config --libs avahi-core)
43
 
GPGME_CFLAGS=$(shell gpgme-config --cflags; getconf LFS_CFLAGS)
44
 
GPGME_LIBS=$(shell gpgme-config --libs; getconf LFS_LIBS; \
45
 
        getconf LFS_LDFLAGS)
 
27
GPGME_CFLAGS=$(shell gpgme-config --cflags)
 
28
GPGME_LIBS=$(shell gpgme-config --libs)
46
29
 
47
30
# Do not change these two
48
31
CFLAGS=$(WARN) $(DEBUG) $(FORTIFY) $(COVERAGE) $(OPTIMIZE) \
49
 
        $(LANGUAGE) $(GNUTLS_CFLAGS) $(AVAHI_CFLAGS) $(GPGME_CFLAGS) \
50
 
        -DVERSION='"$(version)"'
51
 
LDFLAGS=$(COVERAGE) $(LINK_FORTIFY) $(foreach flag,$(LINK_FORTIFY_LD),-Xlinker $(flag))
 
32
        $(LANGUAGE) $(GNUTLS_CFLAGS) $(AVAHI_CFLAGS) $(GPGME_CFLAGS)
 
33
LDFLAGS=$(COVERAGE)
52
34
 
53
 
# Commands to format a DocBook <refentry> document into a manual page
 
35
# Commands to format a DocBook refentry document into a manual page
54
36
DOCBOOKTOMAN=cd $(dir $<); xsltproc --nonet --xinclude \
55
37
        --param man.charmap.use.subset          0 \
56
38
        --param make.year.ranges                1 \
60
42
         /usr/share/xml/docbook/stylesheet/nwalsh/manpages/docbook.xsl \
61
43
        $(notdir $<); \
62
44
        $(MANPOST) $(notdir $@)
63
 
# DocBook-to-man post-processing to fix a '\n' escape bug
64
 
MANPOST=$(SED) --in-place --expression='s,\\\\en,\\en,g;s,\\n,\\en,g'
65
 
 
66
 
DOCBOOKTOHTML=xsltproc --nonet --xinclude \
67
 
        --param make.year.ranges                1 \
68
 
        --param make.single.year.ranges         1 \
69
 
        --param man.output.quietly              1 \
70
 
        --param man.authors.section.enabled     0 \
71
 
        --param citerefentry.link               1 \
72
 
        --output $@ \
73
 
        /usr/share/xml/docbook/stylesheet/nwalsh/xhtml/docbook.xsl \
74
 
        $<; $(HTMLPOST) $@
75
 
# Fix citerefentry links
76
 
HTMLPOST=$(SED) --in-place \
77
 
        --expression='s/\(<a class="citerefentry" href="\)\("><span class="citerefentry"><span class="refentrytitle">\)\([^<]*\)\(<\/span>(\)\([^)]*\)\()<\/span><\/a>\)/\1\3.\5\2\3\4\5\6/g'
78
 
 
79
 
PLUGINS=plugins.d/password-prompt plugins.d/mandos-client \
80
 
        plugins.d/usplash plugins.d/splashy plugins.d/askpass-fifo
81
 
CPROGS=plugin-runner $(PLUGINS)
82
 
PROGS=mandos mandos-keygen mandos-ctl $(CPROGS)
 
45
# DocBook-to-man post-processing to fix a \n escape bug
 
46
MANPOST=sed --in-place --expression='s,\\\\en,\\en,g;s,\\n,\\en,g'
 
47
 
 
48
PLUGINS=plugins.d/password-prompt plugins.d/password-request
 
49
PROGS=plugin-runner $(PLUGINS)
83
50
DOCS=mandos.8 plugin-runner.8mandos mandos-keygen.8 \
84
 
        plugins.d/mandos-client.8mandos \
 
51
        plugins.d/password-request.8mandos \
85
52
        plugins.d/password-prompt.8mandos mandos.conf.5 \
86
 
        plugins.d/usplash.8mandos plugins.d/splashy.8mandos \
87
 
        plugins.d/askpass-fifo.8mandos mandos-clients.conf.5
88
 
 
89
 
htmldocs=$(addsuffix .xhtml,$(DOCS))
90
 
 
91
 
objects=$(addsuffix .o,$(CPROGS))
92
 
 
93
 
all: $(PROGS) mandos.lsm
 
53
        mandos-clients.conf.5
 
54
 
 
55
objects=$(addsuffix .o,$(PROGS))
 
56
 
 
57
all: $(PROGS)
94
58
 
95
59
doc: $(DOCS)
96
60
 
97
 
html: $(htmldocs)
98
 
 
99
 
%.5: %.xml common.ent legalnotice.xml
100
 
        $(DOCBOOKTOMAN)
101
 
%.5.xhtml: %.xml common.ent legalnotice.xml
102
 
        $(DOCBOOKTOHTML)
103
 
 
104
 
%.8: %.xml common.ent legalnotice.xml
105
 
        $(DOCBOOKTOMAN)
106
 
%.8.xhtml: %.xml common.ent legalnotice.xml
107
 
        $(DOCBOOKTOHTML)
108
 
 
109
 
%.8mandos: %.xml common.ent legalnotice.xml
110
 
        $(DOCBOOKTOMAN)
111
 
%.8mandos.xhtml: %.xml common.ent legalnotice.xml
112
 
        $(DOCBOOKTOHTML)
113
 
 
114
 
mandos.8: mandos.xml common.ent mandos-options.xml overview.xml \
115
 
                legalnotice.xml
116
 
        $(DOCBOOKTOMAN)
117
 
mandos.8.xhtml: mandos.xml common.ent mandos-options.xml \
118
 
                overview.xml legalnotice.xml
119
 
        $(DOCBOOKTOHTML)
120
 
 
121
 
mandos-keygen.8: mandos-keygen.xml common.ent overview.xml \
122
 
                legalnotice.xml
123
 
        $(DOCBOOKTOMAN)
124
 
mandos-keygen.8.xhtml: mandos-keygen.xml common.ent overview.xml \
125
 
                 legalnotice.xml
126
 
        $(DOCBOOKTOHTML)
127
 
 
128
 
mandos.conf.5: mandos.conf.xml common.ent mandos-options.xml \
129
 
                legalnotice.xml
130
 
        $(DOCBOOKTOMAN)
131
 
mandos.conf.5.xhtml: mandos.conf.xml common.ent mandos-options.xml \
132
 
                legalnotice.xml
133
 
        $(DOCBOOKTOHTML)
134
 
 
135
 
plugin-runner.8mandos: plugin-runner.xml common.ent overview.xml \
136
 
                legalnotice.xml
137
 
        $(DOCBOOKTOMAN)
138
 
plugin-runner.8mandos.xhtml: plugin-runner.xml common.ent \
139
 
                overview.xml legalnotice.xml
140
 
        $(DOCBOOKTOHTML)
141
 
 
142
 
plugins.d/mandos-client.8mandos: plugins.d/mandos-client.xml \
143
 
                                        common.ent \
144
 
                                        mandos-options.xml \
145
 
                                        overview.xml legalnotice.xml
146
 
        $(DOCBOOKTOMAN)
147
 
plugins.d/mandos-client.8mandos.xhtml: plugins.d/mandos-client.xml \
148
 
                                        common.ent \
149
 
                                        mandos-options.xml \
150
 
                                        overview.xml legalnotice.xml
151
 
        $(DOCBOOKTOHTML)
152
 
 
153
 
# Update all these files with version number $(version)
154
 
common.ent: Makefile
155
 
        $(SED) --in-place \
156
 
                --expression='s/^\(<!ENTITY version "\)[^"]*">$$/\1$(version)">/' \
157
 
                $@
158
 
 
159
 
mandos: Makefile
160
 
        $(SED) --in-place \
161
 
                --expression='s/^\(version = "\)[^"]*"$$/\1$(version)"/' \
162
 
                $@
163
 
 
164
 
mandos-keygen: Makefile
165
 
        $(SED) --in-place \
166
 
                --expression='s/^\(VERSION="\)[^"]*"$$/\1$(version)"/' \
167
 
                $@
168
 
 
169
 
mandos-ctl: Makefile
170
 
        $(SED) --in-place \
171
 
                --expression='s/^\(version = "\)[^"]*"$$/\1$(version)"/' \
172
 
                $@
173
 
 
174
 
mandos.lsm: Makefile
175
 
        $(SED) --in-place \
176
 
                --expression='s/^\(Version:\).*/\1\t$(version)/' \
177
 
                $@
178
 
        $(SED) --in-place \
179
 
                --expression='s/^\(Entered-date:\).*/\1\t$(shell date --rfc-3339=date --reference=Makefile)/' \
180
 
                $@
181
 
        $(SED) --in-place \
182
 
                --expression='s/\(mandos_\)[0-9.]\+\(\.orig\.tar\.gz\)/\1$(version)\2/' \
183
 
                $@
184
 
 
185
 
plugins.d/mandos-client: plugins.d/mandos-client.o
 
61
%.5: %.xml
 
62
        $(DOCBOOKTOMAN)
 
63
 
 
64
%.8: %.xml
 
65
        $(DOCBOOKTOMAN)
 
66
 
 
67
%.8mandos: %.xml
 
68
        $(DOCBOOKTOMAN)
 
69
 
 
70
mandos.8: mandos.xml mandos-options.xml
 
71
        $(DOCBOOKTOMAN)
 
72
 
 
73
mandos.conf.5: mandos.conf.xml mandos-options.xml
 
74
        $(DOCBOOKTOMAN)
 
75
 
 
76
plugins.d/password-request: plugins.d/password-request.o
186
77
        $(LINK.o) $(GNUTLS_LIBS) $(AVAHI_LIBS) $(GPGME_LIBS) \
187
78
                $(COMMON) $^ $(LOADLIBES) $(LDLIBS) -o $@
188
79
 
189
 
.PHONY : all doc html clean distclean run-client run-server install \
 
80
.PHONY : all doc clean distclean run-client run-server install \
190
81
        install-server install-client uninstall uninstall-server \
191
82
        uninstall-client purge purge-server purge-client
192
83
 
193
84
clean:
194
 
        -rm --force $(CPROGS) $(objects) $(htmldocs) $(DOCS) core
 
85
        -rm --force $(PROGS) $(objects) $(DOCS) core
195
86
 
196
87
distclean: clean
197
88
mostlyclean: clean
198
89
maintainer-clean: clean
199
90
        -rm --force --recursive keydir confdir
200
91
 
201
 
check:  all
 
92
check:
202
93
        ./mandos --check
203
94
 
204
 
# Run the client with a local config and key
205
 
run-client: all keydir/seckey.txt keydir/pubkey.txt
 
95
# Run the server with a local key
 
96
run-client: all keydir/seckey.txt keydir/pubkey.txt \
 
97
        keydir/secring.gpg keydir/pubring.gpg
206
98
        ./plugin-runner --plugin-dir=plugins.d \
207
 
                --config-file=plugin-runner.conf \
208
 
                --options-for=mandos-client:--seckey=keydir/seckey.txt,--pubkey=keydir/pubkey.txt \
209
 
                $(CLIENTARGS)
 
99
                --options-for=password-request:--keydir=keydir
210
100
 
211
101
# Used by run-client
 
102
keydir/secring.gpg: keydir/seckey.txt
 
103
        gpg --homedir $(dir $<) --import $^
 
104
keydir/pubring.gpg: keydir/pubkey.txt
 
105
        gpg --homedir $(dir $<) --import $^
212
106
keydir/seckey.txt keydir/pubkey.txt: mandos-keygen
213
107
        install --directory keydir
214
108
        ./mandos-keygen --dir keydir --force
215
109
 
216
110
# Run the server with a local config
217
111
run-server: confdir/mandos.conf confdir/clients.conf
218
 
        ./mandos --debug --no-dbus --configdir=confdir $(SERVERARGS)
 
112
        ./mandos --debug --configdir=confdir
219
113
 
220
114
# Used by run-server
221
115
confdir/mandos.conf: mandos.conf
222
116
        install --directory confdir
223
 
        install --mode=u=rw,go=r $^ $@
 
117
        install $^ $@
224
118
confdir/clients.conf: clients.conf keydir/seckey.txt
225
119
        install --directory confdir
226
 
        install --mode=u=rw $< $@
 
120
        install clients.conf $@
227
121
# Add a client password
228
122
        ./mandos-keygen --dir keydir --password >> $@
229
123
 
230
 
install: install-server install-client-nokey
231
 
 
232
 
install-html: html
233
 
        install --directory $(htmldir)
234
 
        install --mode=u=rw,go=r --target-directory=$(htmldir) \
235
 
                $(htmldocs)
 
124
install: install-server install-client
236
125
 
237
126
install-server: doc
238
 
        install --directory $(CONFDIR)
239
 
        install --mode=u=rwx,go=rx mandos $(PREFIX)/sbin/mandos
240
 
        install --mode=u=rw,go=r --target-directory=$(CONFDIR) \
241
 
                mandos.conf
242
 
        install --mode=u=rw --target-directory=$(CONFDIR) \
 
127
        install --directory --parents $(CONFDIR) $(MANDIR)/man5 \
 
128
                $(MANDIR)/man8
 
129
        install --mode=0755 mandos $(PREFIX)/sbin/mandos
 
130
        install --mode=0644 --target-directory=$(CONFDIR) mandos.conf
 
131
        install --mode=0640 --target-directory=$(CONFDIR) \
243
132
                clients.conf
244
 
        install --mode=u=rwx,go=rx init.d-mandos \
245
 
                $(DESTDIR)/etc/init.d/mandos
246
 
        install --mode=u=rw,go=r default-mandos \
247
 
                $(DESTDIR)/etc/default/mandos
248
 
        if [ -z $(DESTDIR) ]; then \
249
 
                update-rc.d mandos defaults 25 15;\
250
 
        fi
251
133
        gzip --best --to-stdout mandos.8 \
252
134
                > $(MANDIR)/man8/mandos.8.gz
253
135
        gzip --best --to-stdout mandos.conf.5 \
255
137
        gzip --best --to-stdout mandos-clients.conf.5 \
256
138
                > $(MANDIR)/man5/mandos-clients.conf.5.gz
257
139
 
258
 
install-client-nokey: all doc
259
 
        install --directory $(PREFIX)/lib/mandos $(CONFDIR)
260
 
        install --directory --mode=u=rwx $(KEYDIR) \
261
 
                $(PREFIX)/lib/mandos/plugins.d
262
 
        if [ "$(CONFDIR)" != "$(PREFIX)/lib/mandos" ]; then \
263
 
                install --mode=u=rwx \
264
 
                        --directory "$(CONFDIR)/plugins.d"; \
265
 
        fi
266
 
        install --mode=u=rwx,go=rx \
267
 
                --target-directory=$(PREFIX)/lib/mandos plugin-runner
268
 
        install --mode=u=rwx,go=rx --target-directory=$(PREFIX)/sbin \
 
140
install-client: all doc /usr/share/initramfs-tools/hooks/.
 
141
        install --directory --parents $(PREFIX)/lib/mandos \
 
142
                $(CONFDIR) $(MANDIR)/man8
 
143
        install --directory --mode=0700 $(PREFIX)/lib/mandos/plugins.d
 
144
        chmod u=rwx,g=,o= $(PREFIX)/lib/mandos/plugins.d
 
145
        install --mode=0755 --target-directory=$(PREFIX)/lib/mandos \
 
146
                plugin-runner
 
147
        install --mode=0755 --target-directory=$(PREFIX)/sbin \
269
148
                mandos-keygen
270
 
        install --mode=u=rwx,go=rx \
 
149
        install --mode=0755 \
271
150
                --target-directory=$(PREFIX)/lib/mandos/plugins.d \
272
151
                plugins.d/password-prompt
273
 
        install --mode=u=rwxs,go=rx \
274
 
                --target-directory=$(PREFIX)/lib/mandos/plugins.d \
275
 
                plugins.d/mandos-client
276
 
        install --mode=u=rwxs,go=rx \
277
 
                --target-directory=$(PREFIX)/lib/mandos/plugins.d \
278
 
                plugins.d/usplash
279
 
        install --mode=u=rwxs,go=rx \
280
 
                --target-directory=$(PREFIX)/lib/mandos/plugins.d \
281
 
                plugins.d/splashy
282
 
        install --mode=u=rwxs,go=rx \
283
 
                --target-directory=$(PREFIX)/lib/mandos/plugins.d \
284
 
                plugins.d/askpass-fifo
 
152
        install --mode=4755 \
 
153
                --target-directory=$(PREFIX)/lib/mandos/plugins.d \
 
154
                plugins.d/password-request
285
155
        install initramfs-tools-hook \
286
 
                $(INITRAMFSTOOLS)/hooks/mandos
287
 
        install --mode=u=rw,go=r initramfs-tools-hook-conf \
288
 
                $(INITRAMFSTOOLS)/conf-hooks.d/mandos
 
156
                /usr/share/initramfs-tools/hooks/mandos
 
157
        install initramfs-tools-hook-conf \
 
158
                /usr/share/initramfs-tools/conf-hooks.d/mandos
289
159
        install initramfs-tools-script \
290
 
                $(INITRAMFSTOOLS)/scripts/init-premount/mandos
291
 
        install --mode=u=rw,go=r plugin-runner.conf $(CONFDIR)
 
160
                /usr/share/initramfs-tools/scripts/local-top/mandos
292
161
        gzip --best --to-stdout mandos-keygen.8 \
293
162
                > $(MANDIR)/man8/mandos-keygen.8.gz
294
163
        gzip --best --to-stdout plugin-runner.8mandos \
295
164
                > $(MANDIR)/man8/plugin-runner.8mandos.gz
296
165
        gzip --best --to-stdout plugins.d/password-prompt.8mandos \
297
166
                > $(MANDIR)/man8/password-prompt.8mandos.gz
298
 
        gzip --best --to-stdout plugins.d/mandos-client.8mandos \
299
 
                > $(MANDIR)/man8/mandos-client.8mandos.gz
300
 
        gzip --best --to-stdout plugins.d/usplash.8mandos \
301
 
                > $(MANDIR)/man8/usplash.8mandos.gz
302
 
        gzip --best --to-stdout plugins.d/splashy.8mandos \
303
 
                > $(MANDIR)/man8/splashy.8mandos.gz
304
 
        gzip --best --to-stdout plugins.d/askpass-fifo.8mandos \
305
 
                > $(MANDIR)/man8/askpass-fifo.8mandos.gz
306
 
 
307
 
install-client: install-client-nokey
308
 
# Post-installation stuff
309
 
        -$(PREFIX)/sbin/mandos-keygen --dir "$(KEYDIR)"
 
167
        gzip --best --to-stdout plugins.d/password-request.8mandos \
 
168
                > $(MANDIR)/man8/password-request.8mandos.gz
 
169
        -$(PREFIX)/sbin/mandos-keygen
310
170
        update-initramfs -k all -u
311
 
        echo "Now run mandos-keygen --password --dir $(KEYDIR)"
312
171
 
313
172
uninstall: uninstall-server uninstall-client
314
173
 
315
 
uninstall-server:
 
174
uninstall-server: $(PREFIX)/sbin/mandos
316
175
        -rm --force $(PREFIX)/sbin/mandos \
317
176
                $(MANDIR)/man8/mandos.8.gz \
318
177
                $(MANDIR)/man5/mandos.conf.5.gz \
319
178
                $(MANDIR)/man5/mandos-clients.conf.5.gz
320
 
        update-rc.d -f mandos remove
321
179
        -rmdir $(CONFDIR)
322
180
 
323
181
uninstall-client:
324
182
# Refuse to uninstall client if /etc/crypttab is explicitly configured
325
183
# to use it.
326
184
        ! grep --regexp='^ *[^ #].*keyscript=[^,=]*/mandos/' \
327
 
                $(DESTDIR)/etc/crypttab
 
185
                /etc/crypttab
328
186
        -rm --force $(PREFIX)/sbin/mandos-keygen \
329
187
                $(PREFIX)/lib/mandos/plugin-runner \
330
188
                $(PREFIX)/lib/mandos/plugins.d/password-prompt \
331
 
                $(PREFIX)/lib/mandos/plugins.d/mandos-client \
332
 
                $(PREFIX)/lib/mandos/plugins.d/usplash \
333
 
                $(PREFIX)/lib/mandos/plugins.d/splashy \
334
 
                $(PREFIX)/lib/mandos/plugins.d/askpass-fifo \
335
 
                $(INITRAMFSTOOLS)/hooks/mandos \
336
 
                $(INITRAMFSTOOLS)/conf-hooks.d/mandos \
337
 
                $(INITRAMFSTOOLS)/scripts/init-premount/mandos \
 
189
                $(PREFIX)/lib/mandos/plugins.d/password-request \
 
190
                /usr/share/initramfs-tools/hooks/mandos \
 
191
                /usr/share/initramfs-tools/conf-hooks.d/mandos \
338
192
                $(MANDIR)/man8/plugin-runner.8mandos.gz \
339
193
                $(MANDIR)/man8/mandos-keygen.8.gz \
340
194
                $(MANDIR)/man8/password-prompt.8mandos.gz \
341
 
                $(MANDIR)/man8/usplash.8mandos.gz \
342
 
                $(MANDIR)/man8/splashy.8mandos.gz \
343
 
                $(MANDIR)/man8/askpass-fifo.8mandos.gz \
344
 
                $(MANDIR)/man8/mandos-client.8mandos.gz
 
195
                $(MANDIR)/man8/password-request.8mandos.gz
345
196
        -rmdir $(PREFIX)/lib/mandos/plugins.d $(CONFDIR)/plugins.d \
346
 
                 $(PREFIX)/lib/mandos $(CONFDIR) $(KEYDIR)
 
197
                 $(PREFIX)/lib/mandos $(CONFDIR)
347
198
        update-initramfs -k all -u
348
199
 
349
200
purge: purge-server purge-client
350
201
 
351
202
purge-server: uninstall-server
352
 
        -rm --force $(CONFDIR)/mandos.conf $(CONFDIR)/clients.conf \
353
 
                $(DESTDIR)/etc/default/mandos \
354
 
                $(DESTDIR)/etc/init.d/mandos \
355
 
                $(DESTDIR)/var/run/mandos.pid
 
203
        -rm --force $(CONFDIR)/mandos.conf $(CONFDIR)/clients.conf
356
204
        -rmdir $(CONFDIR)
357
205
 
358
206
purge-client: uninstall-client
359
 
        -shred --remove $(KEYDIR)/seckey.txt
360
 
        -rm --force $(CONFDIR)/plugin-runner.conf \
361
 
                $(KEYDIR)/pubkey.txt $(KEYDIR)/seckey.txt
362
 
        -rmdir $(KEYDIR) $(CONFDIR)/plugins.d $(CONFDIR)
 
207
        -rm --force $(CONFDIR)/seckey.txt $(CONFDIR)/pubkey.txt
 
208
        -rmdir $(CONFDIR) $(CONFDIR)/plugins.d