/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 Makefile

  • Committer: Teddy Hogeborn
  • Date: 2008-08-16 03:29:08 UTC
  • Revision ID: teddy@fukt.bsnet.se-20080816032908-ihw7c05r2mnyk389
Add feature to specify custom environment variables for plugins.

* plugin-runner.c (plugin): New members "environ" and "envc" to
                            contain possible custom environment.
  (getplugin): Return NULL on failure instead of doing exit(); all
               callers changed.
  (add_to_char_array): New helper function for "add_argument" and
                       "add_environment".
  (addargument): Renamed to "add_argument".  Return bool.  Call
                 "add_to_char_array" to actually do things.
  (add_environment): New; analogous to "add_argument".
  (addcustomargument): Renamed to "add_to_argv" to avoid confusion
                       with "add_argument".
  (main): New options "--global-envs" and "--envs-for" to specify
          custom environment for plugins.  Print environment for
          plugins in debug mode.  Use asprintf instead of strcpy and
          strcat.  Use execve() for plugins with custom environments.
          Free environment for plugin when freeing plugin list.

Show diffs side-by-side

added added

removed removed

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